Sens-ation III - Winter term 2005/2006
DescriptionSens-ation III evaluates existing event notification infrastructures in comparison to the Sens-ation platform. The aim was to develop new ideas in the field of context management and context-aware computer systems. Besides, investigation and research on information needs and notification preferences in different contexts and environments is of great importance in the project.
Content management and content based routing are closely connected and can be seen as a pre-stage towards a context-aware system. A publisher-subscriber mechanism has been implemented that allows detailed user-defined subscriptions exactly representing the information needs of the user. To illustrate the new mechanism, two client applications have been implemented. The Sens-ation platform is now only one small step away from context management.
The implementation of content based routing in Sens-ation was realised using a publisher-subscriber pattern. This pattern describes an information publisher, that manages the delegation of event notifications. Subscribers submit a description of their information needs and notification preferences. This is called subscription.
The Sens-ation platform now contains one publisher and supports a large number of subscribers (Fig. 1). Each subscriber contains exactly one subscription. Subscribers may attach to the publisher. Each subscriber transfers its subscription and receives a direct notification if an event occurs that the subscriber may be interested in.
Figure 1. Sens-ation3 Subscription Mechanism, showing immediate and scheduled notification patterns.
Subscribers may also define that they require a special notification interval. This ensures they won’t receive a direct notification every time a new event they are interested in occurs. The publisher holds a structure called scheduler to manage indirect notifications using notification intervals.
The scheduler makes use of a Timer and TimerTasks?, which are implemented as Java classes. For every subscriber who defined a notification interval, the scheduler creates a TimerTask? and tells the Timer to schedule its execution. Subscribers may also define a start- and end date for their subscription. These dates are observed by the Timer, too.
Figure 2. Sens-ation3 Subscription Manager Application, Subscriber list view.
The Subscription Manager is a client application that demonstrates how integrating publisher-subscriber patterns in Sens-ation can be used for interaction of users (Fig. 2). Managing subscribers matters on creating new and on deleting subscribers. A plenty of subscription details are available to be set (Fig. 3). The Subscription Manager also can de- and reactivate subscribers depending on choice of the user. An obligation was the integration of the Graphical User Interface (GUI) into the Aqua Interface of the Macintosh Operating System (OS X).
Figure 3. Sens-ation3 Subscription Manager Application, Subscription creation form.
Beside expressing subscriptions the Subscription Manager is also responsible for displaying feedback on events matching a subscription. Depending on the chosen notification type a thin or fat notification is initiated.
Users can use Growl for a little pop-up or Sound for a simple alert which are executed on notification. They also can express their notification wishes by writing their own AppleScripts?. These are installed just by dragging them into the path-window.
Tom Gross (Supervisor)
Tareg Egla (Supervisor)