BackgroundAkibot is the first semantic actionable micro-blogging platform for the enterprise. Akibot not only allows real-time group collaboration and awareness through short, instant messages (like a Twitter for the company), but it also understands those messages and, if applicable, takes action. A good description is provided by this ReadWriteWeb blog. Technical Description of the architectureAkibot works with 2 modules: the front end (the microblog) and the robot (the "brain"). Both modules are completely independent and separate, and they communicate via HTTP POST and XML. When you write a message and post it in the microblog module, it does an HTTP POST call to the robot with the message. The robot gets the message and sends back an XML acknowledging the receipt. In the background the robot queues the message for processing. Processing means the message goes through the robot's Contextual Analyzer. The Contextual Analyzer determines the entity (inventory item, vendor, client. contact, marketing campaign, etc. etc.) and the situation (how that entity is being affected in the message/conversation), and, if applicable, makes an HTTP call to inquiry information from the corresponding software (e.g. ERP -SAP; Navision; etc-, Groupware -Exchange, Salesforce, etc. etc). Once the robot has all this information, it decides if an action is required (usually the action is a response back to the microblog module - but can also be updates, alerts, pushing data to other applications, etc) and proceeds to do so by pushing a message back to the microblog module via HTTP POST (the actions are defined by directives, Akibot comes equipped with some standard directives but you can teach him more that are more specific to your industry). SAP BotSuggested architecture Gliffy Diagram |
---|
size | SM |
---|
name | ubimic - SAP BotCollaboration with Akibot |
---|
page | ESME:Collaboration with ubimicAkibot |
---|
pageid | 5964323 | align | left5965899 |
---|
space | ESME |
---|
|
General Use CaseBasically this is how it is working now. The only change would be that Apache ESME would be posting messages to Akibot (robot module, just like the microblog module is doing now) and Akibot would reply back to Apache ESME if needed, and do all the interfacing would interface with enterprise software (ERP, Groupware applications). Technical detailsThe ESME Bot could be developed in any language but we have examples code for accessing the REST API for clients written in Java and ABAP.The access to the SAP system could be performed via various means (web-services, RFC call, etc.) depending on what sort of system (version, etc.) you guys have on the university.Integration possibilitites: OverviewThere are three basic scenarios - via an Apache ESME action that posts messages to the Akibot API.
- A bot that follows the Apache ESME message stream and either 1) makes a remote call to the RESTAPIlocated on another server or, if the bot was located on the GAE then accesses your API without making a remote call.
- Another idea would be to directly embed akibot functionality in Apache ESME as some sort of a plug-in.
There are two ways to get data from ESME via a bot. You can access the ESME core directly via API - polling for messagesYou can set an actionthat responds to certain tags and then calls your ESME bot via an HTTP call. We've done something like this for forwarding messages to twitter.
|