IoT-Ignite Complex Event Processing (CEP)
This application collects every data (which set on Ignite Cloud platform and sent to device) from integrated sensors, virtual sensors, processors or customer applications and evaluates them. After the evaluation process, any captured pattern defined as events. After the pre-defined rules are met, CEP runs the pre-defined event actions for these rules. All these events and actions are recorded and sent to customer application through IoT Agent Application or other agent applications. Also this information sent to Ignite Cloud through CSFW.
IoT Ignite Application Programming Interface Library
Library contains customer applications, agent applications, API’s for virtual sensors and processors connection with agent applications.
IoT-Ignite covers the interface need for connecting customer application or the agent application installed into device with IoT Agent (which also provides connection with Ignite Cloud and CEP).
Application needs user authentication for connecting with IoT Agent. After this authentication successful, application can benefit from these services:
- Adding/Deleting/Updating Node
- Adding/Deleting/Updating Sensor
- Send Sensor Information to Ignite Cloud
- Sensor & Node History Search
- Sensor & Node Information Search
- Communication Between Different Customer Devices
- Event Debug
- Event Creation
- Situation Report
- Complex Event Processing
- Information for Registered Devices/Nodes/Sensors on Ignite Cloud
Application can benefit from these services without any authentication:
- Communication with Nodes located at LAN
- Solving Network Problems (Reconnection if necessary)
- Situation Report for Connected Devices
- Auto Discover for Supported Microcontrollers
- Program Supported Microcontrollers
- Gather Information About Supported Microcontrollers via Specially Designed Interfaces
IoT Agent Connection Interface provides application key for access to customer application or other agent applications after the user authentication. Applications is able to connect with IoT Agent using this application key.
oT-Ignite can not be used without producing igniteManager object. All Ignite application programming interfaces used via this object. API’s that connected to Ignite are located above.
Application key owned customer can communicate with Ignite Cloud with 2 ways. These are:
Via IoT Agent Application
Communication on IoT Agent Application is provided indirectly. All the data transferred between customers application and Ignite Cloud is proceed via IoT Agent Application. If the customers application wanted to be connected to Ignite Cloud, authentication should be verified via tenant appKey. Every inquiry on Customers Application is processed via the package name of the appKey. After authentication, customer application appoints a listener for every sensors which connected to nodes. With this listener configuration can be sent to sensor and (if the sensor defined as actuator) obtain event messages sent to sensors.
Customer application informations comes to IoT Agent via IoT-Ignite; nodes and sensors are registered to there and run defined functions. Every defined sensor set as unique on node structure. There can be sensor with same names on different nodes. Customer application security uses appKey and package name; therefore an application at the device can not reach the sensors and nodes of any other application. All customer applications at the same devices uses the same IoT Agent.
There are four basic configuration for sensor. These are; data sent frequency, data sent threshold, data sent threshold type and data holding time-out limit. Customer application can enrich their application via these configurations or just create special without these. But IoT Agent will run by the configuration sent via customer application regardless how it acts.
In this connection type, complex event processing can be done on the device side.
These actions are run via accrued rule or rules. An action run needs several rule completions, also a rule can run several actions. After the action takes place, customer application or other agent applications informed via IoT Agent Application. This allows customer application to trigger actuator that connected to node likewise start application, lock the device, load policy, send command, change profile etc.
In this scope, sample flow definition can be like this;
- If the location is Office and the time interval is weekend then lock the device.
- Run the company accounting application only if the device is connected to companies VPN network.
- Close the data connection if the user at abroad.
- Stop sending device location information at vacation.
- If a smartwatch user fell, send SMS message to pre-defined number.