Thingsup Docs
  • Documentation
  • MQTT
    • MQTT Broker
    • Add MQTT Device
    • Authorize MQTT Device
    • Test MQTT Connection
    • Tutorial - MQTT Basics
  • Connections
    • MySQL Connection
    • Redis Connection
    • InfluxDB Connection
    • AWS Connection
    • PostgreSQL Connection
    • MQTT Connection
    • InfluxDBv2 Connection
    • Firebase Connection
    • MSG91 Connection
  • Actions
    • MySQL Query Action
    • Redis Query Action
    • InfluxDB Read Query Action
    • InfluxDB Write Point Action
    • Send Email Action
    • DynamoDB PutItem Action
    • DynamoDB UpdateItem Action
    • DynamoDB GetItem Action
    • DynamoDB Query Action
    • DynamoDB Scan Action
    • DynamoDB DeleteItem Action
    • PostgreSQL Query Action
    • InfluxDBv2 Read Query Action
    • InfluxDBv2 Write Point Action
    • Firebase Cloud Firestore Action
    • Firebase RealTime Database Action
    • Firebase Messaging Action
    • AWS Lambda Invoke Action
    • AWS SQS Send Messsage Action
    • Publish MQTT Message Action
    • MQTT CommandResponse Action
    • ProcessFunction Action
    • WebHook Action
    • Push to Thingsup Track Action
    • Send MSG91 SMS Action
  • Rules
    • MQTT Rules Engine
    • HTTP API
  • Command
    • HTTP Command
    • Action Command
  • Alerts
    • Basic Alert
  • Dashboards
    • Add Dashboard
    • Dashboard Settings
  • Widgets
    • Button Widget
    • Data Text Widget
    • Toggle Switch Widget
    • Image Switch Widget
    • Dropdown Widget
    • LED Widget
    • Text Widget
    • Navigation Button Widget
    • Form Widget
    • Date Picker Widget
    • Date Time Range Widget
    • Slider Widget
    • Table Widget
    • Google Map Widget
    • Data Tile Widget
    • HTML Tile Widget
    • Line Chart Widget
    • Bar Chart Widget
    • Pie Chart Widget
    • Scatter Chart Widget
    • Radar Chart Widget
    • Radial Gauge
    • Linear Gauge
Powered by GitBook
On this page

Was this helpful?

  1. Rules

MQTT Rules Engine

Best MQTT Rules engine built-in with Thingsup IoT Platform with MQTT Broker. Validate and Transform your IoT data on the fly with serverless service.

PreviousSend MSG91 SMS ActionNextHTTP API

Last updated 3 years ago

Was this helpful?

MQTT Rule is a Rule defined in Thingsup to Process MQTT Message. Before setting up MQTT Rule, user need to his account. User need to provide following parameters.

Topic

User need to provide a topic on which data is incoming. For example, Test. Thingsup also support standard Wildcard subscriptions like Test/+ or Test/# or Test/+/LocationData

Data Validation/Transform

Here user can write a JavaScript code to validate or change data i.e "payload" which is received as payload to given MQTT Topic.

The "payload" object here in this code, can get changed or transformed before passing to Thingsup Actions. Also user can assign "null" to payload if he want to avoid action trigger after data validation.

// This code checks if payload is JSON and contains Location data 
if(typeof payload === 'object') 
{
    if(payload.Location == undefined) 
    {
        payload = null;
    }
    else
    {
        payload["time"] = Date.now(); // Transform payload
    }
}
else
{
    payload = null;
}

Action ID

User need to provide an Action ID of Action to be triggered.

Please note the following points:

  • "null" payload results into Rule Failure which doesn't trigger Action

  • Avoid using Rule Engine directly to trigger Send SMS /Email Action, bad configuration can result into High Credits Usage

Add Device
Add MQTT Rule