Community Edition
ThingsBoard Documentation
Cloud Professional Edition Community Edition Edge IoT Gateway License Server Trendz Analytics
Try it now Pricing
Guides > Tutorials > PE > Add & remove devices from groups dynamically
Getting Started Documentation
Installation Architecture API FAQ

On this page

Add & remove devices to group dynamically

ThingsBoard PE Feature

Only Professional Edition supports Device & Asset Groups feature.
Use ThingsBoard Cloud or install your own platform instance.

This tutorial will show how to dynamically add & remove device from the device group based on incoming data from device.

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:

Model definition

We will operate with Temperature sensor device that has name “Sensor A” and type “DHT22”.

image

Message Flow

In this section, we explain the purpose of each node in this tutorial.

Root rule chain

image

  • 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

image

  • 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

image

  • 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

image

  • 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

image

  • Node E: Remove from Group node

    • Removes device from the group
    • Constructs group name by substituting deviceType metadata value

image

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:

image

Next steps