Message Type Switch
Use this node to fan out processing based on message type without writing any code. Each standard message type maps to a human-readable connection label (e.g., POST_TELEMETRY_REQUEST → Post telemetry), so you can wire different downstream paths for telemetry, attribute updates, RPC calls, lifecycle events, and more. Custom or unknown types are routed via Other.
See the message types reference for the full list of built-in types.
Configuration
Section titled “Configuration”This node requires no configuration.
Message processing algorithm
Section titled “Message processing algorithm”- Determine the incoming message type and look up its rule node connection label.
- Route the message via the connection whose label exactly matches the rule node connection label.
- If the message type is custom or has no predefined label, route via
Other.
Output connections
Section titled “Output connections”| Connection | Condition |
|---|---|
| (message type label) | The message type maps to a predefined connection label (see table below). |
Other | The message type is custom or has no predefined label. |
Failure | An unexpected error occurred during processing. |
Predefined connection labels
Section titled “Predefined connection labels”| Message type | Connection label |
|---|---|
POST_ATTRIBUTES_REQUEST | Post attributes |
POST_TELEMETRY_REQUEST | Post telemetry |
TO_SERVER_RPC_REQUEST | RPC Request from Device |
ACTIVITY_EVENT | Activity Event |
INACTIVITY_EVENT | Inactivity Event |
CONNECT_EVENT | Connect Event |
DISCONNECT_EVENT | Disconnect Event |
ENTITY_CREATED | Entity Created |
ENTITY_UPDATED | Entity Updated |
ENTITY_DELETED | Entity Deleted |
ENTITY_ASSIGNED | Entity Assigned |
ENTITY_UNASSIGNED | Entity Unassigned |
ATTRIBUTES_UPDATED | Attributes Updated |
ATTRIBUTES_DELETED | Attributes Deleted |
ALARM_ACK | Alarm Acknowledged |
ALARM_CLEAR | Alarm Cleared |
ALARM_ASSIGNED | Alarm Assigned |
ALARM_UNASSIGNED | Alarm Unassigned |
COMMENT_CREATED | Comment Created |
COMMENT_UPDATED | Comment Updated |
RPC_CALL_FROM_SERVER_TO_DEVICE | RPC Request to Device |
ENTITY_ASSIGNED_FROM_TENANT | Entity Assigned From Tenant |
ENTITY_ASSIGNED_TO_TENANT | Entity Assigned To Tenant |
TIMESERIES_UPDATED | Timeseries Updated |
TIMESERIES_DELETED | Timeseries Deleted |
RPC_QUEUED | RPC Queued |
RPC_SENT | RPC Sent |
RPC_DELIVERED | RPC Delivered |
RPC_SUCCESSFUL | RPC Successful |
RPC_TIMEOUT | RPC Timeout |
RPC_EXPIRED | RPC Expired |
RPC_FAILED | RPC Failed |
RPC_DELETED | RPC Deleted |
RELATIONS_DELETED | All Relations Deleted |
RELATION_ADD_OR_UPDATE | Relation Added or Updated |
RELATION_DELETED | Relation Deleted |
REST_API_REQUEST | REST API request |
OWNER_CHANGED | Owner changed |
ADDED_TO_ENTITY_GROUP | Added to Group |
REMOVED_FROM_ENTITY_GROUP | Removed from Group |
generateReport | Generate Report |
Examples
Section titled “Examples”Example 1 — POST_TELEMETRY_REQUEST → Post telemetry
Section titled “Example 1 — POST_TELEMETRY_REQUEST → Post telemetry”A telemetry message arrives. The node looks up the connection label for POST_TELEMETRY_REQUEST and routes via Post telemetry.
Example 2 — Custom type → Other
Section titled “Example 2 — Custom type → Other”A message with type CUSTOM_MESSAGE_TYPE arrives. No predefined label exists, so the node routes via Other.
JSON schema
Section titled “JSON schema”{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "EmptyNodeConfiguration", "type": "object", "properties": {}, "additionalProperties": false}