使用MQTT.fx向ThingsBoard发布遥测数据

一、 在ThingsBoard平台新建设备,复制访问令牌
使用MQTT.fx向ThingsBoard发布遥测数据_第1张图片

二、 打开MQTT.fx进行连接,填写服务地址及端口以及设备访问令牌。
特别注意:
这里踩了个深坑。这个端口一定要对应thingsboard服务thingsboard.yml中的配置。这个端口不是emqx的自定义端口,有很多教程说为了避免冲突把1883改成了1884,但是我们这里的mqtt服务端不是emqx,而是thingsboard。
另外注意,当你修改了thingsboard.yml中mqtt的端口为1884,那么mqtt.fx中的Broker Porty也要修改为1884。注意的是,如果我们本地启动了emqx服务,并且其端口也改为了1884,那么thingsborad启动就会报错,实际上提醒端口冲突,要么关闭emqx,要么改端口

使用MQTT.fx向ThingsBoard发布遥测数据_第2张图片user name 对应设备的访问令牌,为了定绑定某个设备进行数据上传。Password一定为空。
Broker Address 服务端thingsborad的thingsborad.ym中配置的mqtt地MQTT_BIND_ADDRESS
Broker Port 服务端thingsborad的thingsborad.ym中配置的mqtt地MQTT_BIND_PORT

三、 连接成功后添加主题,以及请求
官方文档:http://www.ithingsboard.com/docs/reference/mqtt-api/
主题:v1/devices/me/telemetry
支持的最简单的数据格式是:
{“key1”:“value1”, “key2”:“value2”}
或者
[{“key1”:“value1”}, {“key2”:“value2”}]

请注意,在这种情况下,服务器端时间戳将分配给上传的数据!
如果您的设备能够获取客户端时间戳,您可以使用以下格式:
{“ts”:1451649600512, “values”:{“key1”:“value1”, “key2”:“value2”}}
使用MQTT.fx向ThingsBoard发布遥测数据_第3张图片

四、 登录ThingsBoard查看设备,可以看到最新遥测数据变化
使用MQTT.fx向ThingsBoard发布遥测数据_第4张图片

注意:MQTTBox测试过程基本相同。

你可能感兴趣的:(ThingsBoard,物联网,java)