-
- EMQ X
- 在消息发布、事件触发时将触发规则引擎,满足触发条件的规则将执行各自的
- SQL 语句筛选并处理消息和事件的上下文信息。
-
-
- 规则引擎借助响应动作可将特定主题的消息处理结果存储到数据库,发送到
- HTTP Server,转发到消息队列 Kafka 或
- RabbitMQ,重新发布到新的主题甚至是另一个 Broker
- 集群中,每个规则可以配置多个响应动作。
-
-
- 1. 选择发布到 't/#' 主题的消息,并筛选出全部字段:
-
-
- SELECT * FROM "t/#"
-
-
- 2. 选择发布到 't/a' 主题的消息,并从 JSON
- 格式的消息内容中筛选出 "x" 字段:
-
-
- SELECT payload.x as x FROM "t/a"
-
-
- 规则引擎使用 $events/ 开头的虚拟主题(事件主题)处理
- EMQ X
- 内置事件,内置事件提供更精细的消息控制和客户端动作处理能力,可用在
- QoS 1 QoS 2 的消息抵达记录、设备上下线记录等业务中。
-
-
- 1. 选择客户端连接事件,筛选 Username 为 'emqx'
- 的设备并获取连接信息:
-
-
- SELECT clientid, connected_at FROM
- "$events/client_connected" WHERE username =
- 'emqx'
-
-
规则引擎和 SQL 语句的详细教程参见 EMQ X 文档。
-