1- Overview
Overview
InReality’s Responsive subscription provides real-time influence, based on any captured data point, managed by our Rules Engine. The Rules Engine can listen to multiple sensors such as cameras, RFID, IoT, NFC Readers, Optical & Motion Sensors, and inputs like custom 3rd party data, all through the Message Broker. Predefined custom rules based on several conditions, can send triggered messages through the Message Broker to 3rd party applications.
Based on scenarios in the Rules Engine, the digital signage content and playlist can be updated to display content based on set data points, such as age group, gender, or multiple other points. Smart lights and audio are some of the other types of elements that can be triggered.
InReality’s Rules Engine - Operation & Configuration
2.1- Operation
InReality’s Cloud-based platform works in sync with 3rd party CMS applications. Using Restful API Calls to ‘get’ the Rules, a list of Rules is returned with details such as Rule ID, Rule Name, along with Conditions and Actions.
The InReality Rules Engine will publish messages to the MQ channel when the Rule’s conditions are met. The local CMS application subscribes to the MQ Channel. MQ messages contain the details described above and a Message, which is a text string containing the Action of the Rule. The CMS application parses this MQ message and then performs the Action.
Real-time personalization of digital signage is efficiently accomplished by complex event processing in conjunction with the Rules Engine.
2.2- Configuration
The Rules Composer is used to configure Rules. This editor provides for quick and efficient configuration of Rules, and users are provided menus to select pre-defined aspects of their installation. Within the Rules Composer, you will define the Condition(s) and Action of each Rule.
Defining a Condition, you may select any data point from any data source. You may have multiple Conditions, and you also have the ability to ‘timebox’ events.
Defining an Action, you may select to change the current digital signage content, play audio, activate smart lights or notify associates via email.
To access the Rules Composer, click on the Rules button in the Analytics Portal’s Main Menu.
2.2.1- Rules Composer
When you access the Rules Composer, a list of Rules will be displayed as shown below. Fields include: Rule Name, Status, Tags and Venues or Stores.
2.2.2- Create a New Rule
Click the ‘Create New Rule’ button at the top right of the page, complete the fields and click ‘Create’.
2.2.3- Configure Conditions
Once you’ve created a Rule, you will then configure the Condition(s). First click the ‘Add Condition’ button. Select an AOI (Area of Interest) from the pull-down menu. The AOI have been predefined in the Setup. Then select a Datasource from the pull-down menu, which you have also defined in the Setup. Click ‘Add New Condition’. Then select a Datapoint. The options in this menu are dependent on the Type of the Datasource (Traffic, Presence, Demographics). Then select an Operator and Value.
Shown below are several examples of Conditions. In the first example below, a user-defined AOI is selected, then a user-defined Datasource is selected. Since the type of the datasource is ‘Presence’, the Data Point defaults to Dwell Time. You can then select the Operator: ‘>=’, ‘<=’, or ‘=’. Then enter a value in milliseconds.
In the second example, a user-defined AOI is selected, then a user-defined Datasource is selected. Since the type of the datasource is ‘Demographics’, the Data Point menu provides the following options: Age, Proximity, Dwell Time, Gender, Emotion, and Repeat Visitor. In the example below ‘Gender’ was selected. You can then select the Operator: ‘>=’, ‘<=’, or ‘=’, and then select Male or Female from the menu. In this example, a second Condition is added, and Age is selected for the Data Point, ‘<=’ is selected as the Operator, and ‘40’ is entered as the Value.
In the third example, two separate Conditions have been added. This allows you to select a ‘timebox’ event, if desired. The two Conditions are ‘Dwell Time’ and ‘Repeat Visitor’. If both Conditions are met, and if the ‘Timebox’ is inactive, or if it is active and its setting is met, then the Action will be triggered. For example, the ‘Timebox’ may be: ‘Occurs within’ + ‘10 seconds’.
2.2.4- Datapoints
- Age - Numeric value as identified by sensor
- Proximity - Distance from the sensor in cm
- Dwell Time - Numeric value of time in milliseconds
- Gender - Male/Female as identified by sensor
- Has Mask - Person is wearing a mask (Covid)
- Emotion - Emotion as identified by sensor (e.g. Neutral, Happy, Surprised)
- Person Type - As defined in People Management (e.g. Employee, Guest)
- Repeat Visitor - Identified using facial pattern recognition by the sensor
2.3.- Configure Action
Once you’ve created a Rule and configured the Condition(s), you will then configure the Action. The first step is to click ‘Add Action’ and then select AOI. You may select: an AOI from list of existing AOIs, HTTP Request, Telegram, Status Update, or 3rd Party Update. Then select the ‘End Point’, select Priority level, type in a message, and Duration.
Message Broker - Real-Time Events Integration
Our Message Broker is built on top of RabbitMQ, which is a widely used open-source message-broker software application. It is mature, lightweight and is easy to deploy on premises to trigger real-time events and gather data. RabbitMQ supports a wide variety of messaging protocols, including AMQP, STOMP, MQTT, HTTP and Websockets. It also provides a wide range of developer tools and client libraries, including: Java, .NET, Node.js, JavaScript, Ruby, PHP and many more languages.
Real-time responsive capabilities between InReality’s measurement subscriptions and in-venue end-points, such as Digital Signage, are facilitated by InReality’s Message Broker application. The InReality Message Broker is an on-premise, lightweight streaming pipeline that supports subscriptions and publications to the pipeline of real-time events and data across multiple channels. Channels with real-time events and data are available for a wide range of situations available from the InReality measurement subscriptions.
Rules Engine - Integration with Third-Party Apps
As described above, InReality’s Message Broker is lightweight and easy to deploy on premises to trigger real-time events and gather data. It supports Publish and Subscribe (pub/sub), where Publishers can send messages and events, and Subscriber’s applications can subscribe to one or more events, and only receive messages that are of interest. A secure channel is provided with authentication.
Configuration of the events that are published to the Message Broker is available within the InReality Rules Engine. Through the set-up of rules, end users can subscribe to only certain events that meet their predefined criteria (e.g., Gender=Female AND Age>34). Multiple criteria can be established to allow for multiple applications. When these criteria are met, the Message Broker will publish the event to the appropriate subscribed channel allowing the endpoint to make the appropriate application (e.g., change content on digital signage targeted toward a particular demographic group). This will reduce the amount of events that a subscriber would need to listen to and parse in order to create their desired real-time responsive experience.
Third party applications will receive an event through the MQ channel, when the Rule condition(s) are met.