1、简介
乐联网MQTT服务支持协议: MQTT 3.1 and 3.1.1,设备可以上传数据、接收控制命令并返回结果,完全兼容使用乐联网TCP服务的操作方式。
服务器地址:mqtt.lewei50.com
端口:1883
Client ID: UserKey_设备标识
Publish方式:
/lw/u/Client ID 上传数据
/lw/r/Client ID 应答消息(回应控制命令)
Subscribe方式:
/lw/c/Client ID 控制命令
2.工具和准备
使用MQTT.fx,设置如下
MQTT.FX设置3.使用场景
3.1上传数据
Contact成功后,publish主题主题:/lw/u/clientid
消息内容格式参照:http://www.lewei50.com/dev/apiinfo/3
[
{
"Name":"ds18b20",
"Value":"16.8"
},
{
"Name":"ds18b20x",
"Value":"96.2"
}
]
发布消息然后点开乐联网传感器页面查看结果
上传结果可定时推送此消息以保证设备在线
3.2控制命令
首先在乐联网设备设置里选择“使用乐联网MQTT”,保存。
设置MQTT连接然后在MQTT.FX订阅/lw/c/Client ID
接收区收到的是打开开关J1的命令每当查看控制器时,服务器会推送一条消息:{"f":"getAllSensors"}
此时应向/lw/r/Client ID做出应答,格式如下:
{
"successful": true,
"message": "xxxx",
"data":[
{
"id": "C1",
"value": "1"
},
{
"id": "C2",
"value": "2"
}
]
}
C1、C2是控制器名称,数值型的value填入数字,开关型填TRUE或False。实际操作如图:
然后在控制器页面就可以看到结果了
切换开关状态,服务器发布一条类似的消息
{"f":"updateSensor","p1":"J1","p2":"0"}
接收端收到此消息后做出相应操作,然后向/lw/r/Client ID做出应答,更新控制器状态。格式与前面相同,data内容根据实际填写即可。
网友评论