(1)本文上一篇《使用docker安装tdengine,创建挂载目录_鲸鱼姐的博客-CSDN博客》文章已创建数据库表test.plc_data
(2)已完成emqx安装《使用docker安装tdengine,创建挂载目录_鲸鱼姐的博客-CSDN博客》
登录emqx,点击规则引擎—》资源菜单,新建资源,选择资源类型为webhook。

(1)请求URL是http://tDengine的服务器IP:6041/rest/sql
请求方式为post
(2)需添加 Authorization 请求头作为认证信息。
Authorization 的值为 Basic + TDengine 的 {username}:{password} 经过 Base64 编码之后的字符串, tDengin的默认账户和密码是 root:taosdata 编码后为 cm9vdDp0YW9zZGF0YQ==,实际填入的值为:Basic cm9vdDp0YW9zZGF0YQ==
(3)填写完成后,单击测试连接查看是否填写正确。
(1)点击规则引擎—》规则—新建,填写如下,获取plc/data主题内容
- SELECT
- payload
- FROM
- "plc/data"
(2)添加响应
在响应动作栏目下新建响应
选择动作为发送数据到web服务,关联资源为上一步新建的资源,添加消息模版内容
模版内容如下,数据库表为test库中的plc_data
- INSERT INTO test.plc_data VALUES(
- now,
- ${payload.plc1},
- ${payload.plc2},
- ${payload.plc3},
- ${payload.plc_id},
- ${payload.plc4}
- )
(1)使用emqx的websocket工具,连接emqx的mqtt服务
(2)给plc/data主题发送消息,消息内容如下
{ "plc1": "22.1", "plc2": "22.3", "plc3": "22.4", "plc_id": "22.5", "plc4": "222" }
(3)在tDengine数据库里查看发送结果,显示成功
注意:消息内容的字段和payload字段需对应,否则会投递失败