= Smoa Notification = Smoa Notification is an open source implementation of the family of WS-Notification standards (Base Notification, Brokered Notification and Topics). It supports the topic-based publish/subscribe pattern for the asynchronous message exchange among Web Services and other involved entities. The main architecture of our system is based on a highly efficient, extended version of the Notification Broker, managing all items participating in notification events. Today, Smoa Notification offers sophisticated notification capabilities, e.g. notification message filtering, push and pull messages delivery, and it was successfully integrated with different communication protocols as well as various Web Services security mechanisms. The modular architecture of Smoa Notification also provides a great opportunity for developers to build new extensions and plugins to meet other specific requirements. == Installation == Please refer to the [http://apps.man.poznan.pl/trac/smoa-ntf/downloads Downloads] section to get the most recent Smoa Notification packages (cf. [http://apps.man.poznan.pl/trac/smoa-ntf/wiki/Changelog Changelog]) and corresponding Software Development Kits (SDKs). The installation procedure is presented in the doc directory of the Smoa Notification package. [[Image(architecture2.png,500px,center)]] == Features == From the architecture perspective, Smoa Notification exposes a well-defined Web Service interface corresponding to the role of Notification Broker as well as it offers other standard interfaces for managing Subscriptions and Pull Points. All funtions offered by Smoa Notification can be invoked using different transport protocols. Currently, our system supports the SOAP communication over HTTP, HTTPS, and additionally XMPP. Thanks to the XMPP based communication, all notification parties, namely Subscribers, Publishers, Notification Consumers and Smoa Notification itself, can be located behind firewalls with only well defined outgoing TCP/IP port open for the XMPP transport communication. The following list summarizes all major concepts defined in the WS-Notification documents and adopted by Smoa Notification: * Situation * Notification * Subscription * Advanced Topic Filtering * Message Content Filtering * Publisher * Subscriber * Notification Broker * Notification Consumer * Pull Point [[Image(smn_brokeredentities.png, 600px, center)]] == Performance == The low-level architecture of Smoa Notification is based on highly efficient mechanisms and data structures. In performed tests we sent 1000 notification messages via different WS-Notification implementations. The obtained results clearly show that Smoa Notification outperforms competitors. [[Image(test-1.png, 600px, center)]] == Related software == * Smoa Core - generic library must be installed in the system in prior to the installation of Smoa Notification. * Smoa XMPP - plugins for Pidgin may be utilized for enabling WS-Notifications in the popular XMPP communicator. == Applications == * CosQosGrid - In this projectd Smoa Notification together with other Web Services using the Smoa framework, in particular Smoa Computing, was used to build highly efficient grid middleware for cross-cluster parallel application execution and monitoring. * BREIN - Smoa Notification was demonstrated in asynchronous and dynamic message exchange in a distributed IT system controlling some events generated by an example airport management system, such as flight delays, SLA violations, etc. * PL-Grid - Smoa Notification is going to be productively used under the national grid infrastructure initiative in Poland.