Tealium and IoT with Node-RED

 In Customer Centricity

Reading Time: 4 minutes

Tealium has released a Node-RED “node” integration for Industrial Internet of Things (IIoT) event data collection. Tealium clients can install this from npm. The source is also available on Github.

What’s New?

If you’re at the cutting edge of leveraging sensors in your assembly lines or are an IoT hobbyist, you’ve likely come across Node-RED. Tealium is now available in this ecosystem to allow for a drag-and-drop way to send your IoT sensor data to the Tealium cloud.

With an integration to Tealium Collect HTTP API endpoint, you can send your event data directly to the cloud and leverage the power of Tealium’s Universal Data Hub (UDH). From there, Tealium’s marketplace of server-side integrations allows for moving your data to your favorite data store such as Amazon, Google, Microsoft or all of the above.  

Tealium’s advanced segmentation features and pre-built integrations with APIs, for services such as Slack, allow for immediate action on the data. You can assign your devices to audiences while segmenting/profiling your IoT devices based on the data they send. For example, one might create an audience for an IoT device to join called “Running Hot.” The device joins this segment once it sends enough temperature readings above a specific threshold.  

You can also store additional attributes server-side in the same device profile. For example, we can keep track of a “lifetime_max_temperature” value received for each individual device.  Additional information about these devices might come from somewhere else — this information can also be uploaded and added to the device profile. Use Tealium’s UDH to import the “last_maintenenace_date” and “warehouse_location_id” from a CSV file. Your IoT device profile can be enriched in real time or from data import.

Use Case: “Taking Action When Something is Heating Up”

I want to understand when one of my temperature sensors detects a machine that is overheating and be notified of the change immediately. I have a very simple way of determining this with the following rule, “if the temperature readings go over 50 degrees then send a message to a Slack channel.”

Details on setting up the Slack Connector (or Webhook Connector) in Tealium is not covered in this post, but some information can be found here or in the Tealium Learning Center.

3 Step Process:

(1) Simulate incoming event data to an MQTT node in Node-RED. Your temperature sensor might send the degrees (in Celsius) every 10 seconds. This can be simulated as follows:

mqtt pub -h node-red.example.com -t “test/topic1” -m ‘{“device_id”:”mysensor1″,”temperature”:63}’

(2) With Node-RED running on node-red.example.com, a JSON function node converts the JSON string to JSON object.

(3) The Tealium Collect node receives the JSON input and forwards along to Tealium Collect HTTP API. Setting up Tealium Collect is simply a matter of entering your UDH Tealium Account and Tealium Profile values for the node. You can also assign a Datasource id.

Incoming Device Data in Real Time

Use Tealium’s Live Events feature in EventStream to verify the data.

Create Enrichment Attributes and Take Action

For this use case, for any event where the temperature value is over 50 degrees, I push that into an array. This array will contain all of the readings over 50 degrees for that day.

When I have 10 separate events of over 50 degrees temperature, my device joins the “Running Hot” audience.

I’ve also configured a Slack integration using Tealium’s Webhook Connector to send me a customized message.

When a device joins the “Running Hot” segment, I’ll be notified immediately in Slack. This notification sends the most recent temperature values (items 9 and 10 in my temperature array).

It’s time to get the ice packs and let my overworked robots take a break. 🙂

Advantages of Using Tealium for IoT Data Hub

Offload Processing: The business logic for taking action on your data is now in the cloud which allows you to save money (purchase lower-cost machines) and resources (more CPU available) in your IoT Gateways.

Take Device-specific Action: Your devices are treated similarly to an individual on a website — give your devices attributes, keep track of their specific behavior, and take specific actions based on data about that specific device.

Vendor Agnostic: Tealium provides server-to-server integrations for all of the major cloud providers which allows you to send data to multiple vendors or instantly switch between two separate vendors.

Enterprise Grade: Tealium has integrations with the latest APIs for over 100 vendors (such as Slack, Google, Twitter, Facebook, AWS, Azure, etc).

For more information, read the “Event Data Framework” guide.

Now is the time to start thinking about your IoT devices as “visitors” with unique attributes.

Take action on your IoT real-time data with Tealium’s UDH.

Recent Posts