This tutorial will show how to dynamically add & remove device from the device group based on incoming data from device.
- Use case
- Prerequisites
- Model definition
- Message Flow
- Configuring the Rule Chain
- Validating the flow
- Next steps
Use case
Let’s assume your device is reporting temperature readings to ThingsBoard and you would like to visualize devices that have reported temperature > 50°C.
In this tutorial we will configure ThingsBoard Rule Engine to automatically update “High temperature devices” group members based on incoming temperature readings from the device. You can use this tutorial as a basis for much more complex filtering.
Prerequisites
We assume you have completed the following guides and reviewed the articles listed below:
- Getting Started guide.
- Rule Engine Overview.
Model definition
We will operate with Temperature sensor device that has name “Sensor A” and type “DHT22”.
Message Flow
In this section, we explain the purpose of each node in this tutorial.
Root rule chain
-
Node A: Rule Chain node
- We modify the default root rule chain to forward all telemetry to new “Add device to group” rule chain
New “Add device to group” rule chain
-
Node B: Script filter node
- Checks that the incoming message from device contains temperature readings
- If message from device contains temperature readings it is forwarded to Node C
-
Node C: Script filter node
- Checks that the incoming message temperature is > 50°C
- If temperature > 50°C message is forwarded to Node D
- If temperature <= 50°C message is forwarded to Node E
-
Node D: Add to Group node
- Adds device to the group
- Constructs group name by substituting deviceType metadata value
- Automatically creates device group if needed
-
Node E: Remove from Group node
- Removes device from the group
- Constructs group name by substituting deviceType metadata value
Configuring the Rule Chain
Download and import attached json file as a new “Add device to group” rule chain. Please note that all nodes have debug enabled. This affects performance. Create Node A as shown on the image above in the root rule chain to forward telemetry to new rule chain.
Validating the flow
Publish temperature readings on behalf of the new device and observe new group automatically created:
Next steps
-
Getting started guides - These guides provide quick overview of main ThingsBoard features. Designed to be completed in 15-30 minutes.
-
Connect your device - Learn how to connect devices based on your connectivity technology or solution.
-
Data visualization - These guides contain instructions on how to configure complex ThingsBoard dashboards.
-
IoT Data analytics - Learn how to use rule engine to perform basic analytics tasks.
-
Hardware samples - Learn how to connect various hardware platforms to ThingsBoard.
-
Advanced features - Learn about advanced ThingsBoard features.
-
Contribution and Development - Learn about contribution and development in ThingsBoard.