Notification enabler is designed to deliver a set of functionalities related to the event process concept. In this case, the purpose is not combining data from multiple sources; instead, by using this enabler, the developer can create a set of rules which will be tracked and analysed in the incoming data stream to infer events or patterns that suggest more complicated circumstances. Thus, by defining each rule, the developers can configure what is the action that Notification Enabler will run upon each rule is fired. The available options are: API consumption or Email notification.
Furthermore, for the pattern detection, the developer can easily create thresholds to be applied under the same rules. This delivers the capability to extend not only the rule itself, but the range that this rule will be running on the data stream. As an example, if the data stream being used is based on some integer value, a threshold can be defined to extend the created rule in some specific percentage – smaller or greater than the value defined inside the rule. These functionalities can trigger enhanced patterns and fire the desired action in an external API.
The tools used to develop the solutions presented in the documents follow the MEAN stack approach:
MySQL is an open source relational database management system based on Structured Query Language. It runs on all platforms, across the entire scope of operating systems. Although it can be used in a wide range of applications, MySQL is most often associated with web-based applications and online publishing
Express, AngularJS and NodeJS are also used and have been described in the Configuration Enabler specification.
The main goal of the NE is the one described in the following Figure 26. The enabler’s main functionality is the ability to grab data provided by vApps that are capable of generating notifications (the decision to send data or not for generating notifications is responsibility of the vApp), process it against rules predefined by vApp developer, create the notification, and send it back to the vApp or directly to a user by email.
The concept associated with this enabler is the same as used in notification systems; ie a combination of software and hardware that provide means of delivering messages to a set of recipients according to a specific activity. The complexity of the notification system and the type of notifications may vary. There could be notification systems used in everyday businesses to reach whenever necessary customers or emergency notification systems that could be used to inform people of upcoming danger.
Following the same approach as the Configuration Enabler, the Notification Enabler is described as having one Frontend (FE) and one Backend (BE). The Frontend is related with the presentation layer whilst the backend is related to the business logic and data access tier.
The figure presented next describe the simplest example of notifications processing performed by NE.
Regarding the service interfaces; the NE will provide a public API to be used by its FE and other external elements such as the Enablers’ Framework. The following table clarifies the public endpoints with methods and response types. Please refer to this link for detailed specs.
To use these specific enablers, it is necessary to have the following vf-OS components: