IoT Hub
IoT Hub Documentation
Guides > Tutorials > PE > Add & remove devices from groups dynamically
Getting Started Documentation
API FAQ

On this page

Add & remove devices to group dynamically

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 IoT Hub and you would like to visualize devices that have reported temperature > 50°C.

In this tutorial we will configure IoT Hub 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

  • Getting started guides - These guides provide quick overview of main IoT Hub features. Designed to be completed in 15-30 minutes.