# Rule Engine

- [Rule Engine](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine.md)
- [Rule Engine Templates](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/rule-engine-templates.md)
- [General data proccessing concept](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/rule-engine-templates/general-data-proccessing-concept.md): in Tesenso Middleware
- [Weather data feed](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/rule-engine-templates/weather-data-feed.md)
- [Test Javascript function](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/test-javascript-function.md)
- [Predefined Message Types](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/predefined-message-types.md)
- [Filter rule nodes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes.md)
- [check alarm status](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/check-alarm-status.md)
- [check existence fields](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/check-existence-fields.md)
- [check relation](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/check-relation.md)
- [gps geofencing filter](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/gps-geofencing-filter.md)
- [message type filter](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/message-type-filter.md)
- [message type switch](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/message-type-switch.md)
- [originator type filter](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/originator-type-filter.md)
- [originator type switch](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/originator-type-switch.md)
- [script filter](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/script-filter.md)
- [switch script node](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/filter-rule-nodes/switch-script-node.md)
- [Enrichment rule nodes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes.md)
- [calculate delta](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/calculate-delta.md)
- [customer attributes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/customer-attributes.md)
- [customer details](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/customer-details.md)
- [originator attributes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/originator-attributes.md)
- [originator fields](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/originator-fields.md)
- [originator telemetry](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/originator-telemetry.md)
- [related attributes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/related-attributes.md)
- [related Device attributes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/related-device-attributes.md)
- [tenant attributes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/tenant-attributes.md)
- [tenant details](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/enrichment-rule-nodes/tenant-details.md)
- [Transformation rule nodes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/transformation-rule-nodes.md)
- [change originator](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/transformation-rule-nodes/change-originator.md)
- [duplicate to group](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/transformation-rule-nodes/duplicate-to-group.md)
- [duplicate to related](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/transformation-rule-nodes/duplicate-to-related.md)
- [script transformation](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/transformation-rule-nodes/script-transformation.md)
- [to email transformation](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/transformation-rule-nodes/to-email-transformation.md)
- [M-Bus decoder](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/transformation-rule-nodes/m-bus-decoder.md): The M-Bus decoder transform the hex-code to the meaningful m-bus message. The m-bus decoder rule node support more than 600 m-bus meter types.
- [Action rule nodes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes.md)
- [Add to group](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/add-to-group.md)
- [Remove from group](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/remove-from-group.md)
- [Generate report](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/generate-report.md)
- [Integration Downlink](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/integration-downlink.md)
- [REST Call Reply](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/rest-call-reply.md)
- [Change owner](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/change-owner.md)
- [Create alarm](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/create-alarm.md)
- [Clear alarm](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/clear-alarm.md)
- [Delay messages](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/delay-messages.md)
- [Generator](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/generator.md): Device & Asset message simulator
- [Log](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/log.md)
- [RPC Call Reply](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/rpc-call-reply.md)
- [RPC Call Request](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/rpc-call-request.md)
- [GPS geofencing events](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/gps-geofencing-events.md)
- [Save attributes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/save-attributes.md)
- [Math Function](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/math-function.md)
- [Asset Profiles Feature](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/asset-profiles-feature.md)
- [fetch device credentials](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/fetch-device-credentials.md)
- [delete attributes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/delete-attributes.md)
- [split array msg](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/split-array-msg.md)
- [json path](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/json-path.md)
- [delete keys](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/delete-keys.md)
- [rename keys](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/rename-keys.md)
- [copy keys](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/copy-keys.md)
- [Save to Custom](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/save-to-custom.md)
- [Assign To Customer](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/assign-to-customer.md)
- [Unassign From Customer](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/unassign-from-customer.md)
- [Create Relation](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/create-relation.md)
- [Delete Relation](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/delete-relation.md)
- [Push to cloud](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/push-to-cloud.md)
- [Pus to edge](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/pus-to-edge.md)
- [Save timeseries](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/action-rule-nodes/save-timeseries.md)
- [Analytics rule nodes](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/analytics-rule-nodes.md)
- [Aggregate Latest](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/analytics-rule-nodes/aggregate-latest.md)
- [Aggregate Stream](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/analytics-rule-nodes/aggregate-stream.md)
- [Alarms Count](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/analytics-rule-nodes/alarms-count.md)
- [Output connectors](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors.md)
- [AWS SNS](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/aws-sns.md)
- [AWS SQS](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/aws-sqs.md)
- [MQTT](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/mqtt.md)
- [RabbitMQ](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/rabbitmq.md)
- [Kafka](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/kafka.md)
- [Azure IoT Hub](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/azure-iot-hub.md)
- [Rest API](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/rest-api.md)
- [Priva](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/priva.md)
- [Realtime Telemetry API](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/priva/realtime-telemetry-api.md)
- [Realtime Setpoint API](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/priva/realtime-setpoint-api.md)
- [Data Insight Metadata API](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/priva/data-insight-metadata-api.md)
- [Data Insight History API](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/priva/data-insight-history-api.md)
- [Alarm Data Api](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/priva/alarm-data-api.md)
- [SOAP API](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/soap-api.md)
- [send email](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/send-email.md)
- [send SMS](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/send-sms.md)
- [send Twilio SMS](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/output-connectors/send-twilio-sms.md)
- [Flow](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/flow.md)
- [Acknowledge](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/flow/acknowledge.md)
- [Checkpoint](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/flow/checkpoint.md)
- [Rule Chain](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/flow/rule-chain.md)
- [Output](https://docs.tesenso.com/tesenso-iot-cloud/rule-engine/rule-engine/flow/output.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tesenso.com/tesenso-iot-cloud/rule-engine.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
