-
Notifications
You must be signed in to change notification settings - Fork 15
About mobilis
Social Computing, especially online social networks like Facebook, Google Plus or Twitter are now killer applications for the mobile Internet. But the potential of social apps on smart phones and other pervasive devices in the user’s environment is not yet fully exploited. Smart phone sensors as well as sensors and actuators in the natural surroundings of a person could be used to derive comprehensive knowledge about the physical environment and nearby people and their behavior, social links and activities. Social and collaborative apps taking advantage of this rich awareness are called Pervasive Social Computing applications. They allow their users to interact seamlessly with devices and other people in their natural surroundings.
Mobilis is a research project at TU Dresden, focusing on use cases with collaboration in real-time like friend finder (proximity search), shared editing of drawings and texts or location-based multiplayer games. The goal of the Mobilis project is to ease the development of apps for Pervasive Social Computing especially for non-commercial developers who often lack the resources necessary to develop a complex pervasive application. Mobilis provides an infrastructure based on the eXtensible Messaging and Presence Protocol (XMPP) including basic building blocks for collaborative mobile applications. This comprises authentication and discovery of devices, reliable delivery of messages in the mobile scenario, support for service-based protocol engineering and dynamic deployment of server components for apps as well as support for session mobility.
The source code of the Mobilis platform and all example applications is published under Apache License 2.0. In the image above you can see a rough architecture overview showing the different parts of the system. Core applications are native apps running on Android. We provide a Mobilis Library called MXA (Mobilis XMPP on Android) for easy message processing and other basic functionality. Using this library, the app is able to communicate via its own XMPP-based protocol with its app-specific service. This service is running on the Mobilis Server inside a service environment. Whenever the developer makes updates to the service, he can upload and activate a new version of the service on the Mobilis Server. The server as well as all services running on it act as XMPP clients. Thus all parts are bound together by an XMPP server which we use as a black box (currently OpenFire, but can be exchanged against other XMPP servers as well).
This triple consisting of Android client, XMPP server and Mobilis Server is the core of our approach. But XMPP is flexible enough to add other clients as well. Web-based apps can take part using BOSH which wraps all XMPP communication in HTTP. We imagine public displays or smart TVs taking part of the game. They can be introduced to collaboration sessions using 2D barcodes with their XMPP ID.
As XMPP also provides ad-hoc connectivity in local WLANs, any sensors and actuators (such as a light switch in the picture) able to speak XMPP can also be integrated in the system.
Up: Home