订阅系统命令topic
$sys/{pid}/{device-name}/cmd/request/{cmdid}
topic中{cmdid}为变量,为每条命令的唯一id,可通过通配符的方式进行订阅,比如:
$sys/{pid}/{device-name}/cmd/request/+
,或者$sys/{pid}/{device-name}/cmd/#
打开MQTT.fx
,连接设备,选择Subscribe项,输入订阅topic名称。我的是$sys/480701/yuyun-test/cmd/#
如图:
控制台下发命令
打开onenet平台的MQTT物联网套件,在如下图所示 的位置找到下发命令
输入下发的命令内容与超时时间,点击发送
MQTT模拟工具会接收到一条topic消息,如下图所示
图中显示设备接收命令的topic为:
$sys/480701/yuyun-test/cmd/request/7e0bf5f6-e80d-419b-a3e8-01b704f06e3d
模拟设备应答
应答的topic命令为:
$sys/{pid}/{device-name}/cmd/response/{cmdid}
使用MQTT.fx发布消息至对应topic,模拟设备应答
应答的topic就是上图中收到命令的那个,将其中的request
改为response
,然后在Publish的位置加上需要应答的内容。如下图所示:
然后再回到Subscribe查看收到的消息:使用MQTT.fx模拟设备应答后,会从系统topic接收消息表明,设备应答成功。如下图所示:
同时平台页面的命令工具会显示命令的应答结果,如下图所示:
其中 cmd_resp”: “ytW1vaOh” 为设备应答消息“收到!”的base64编码形式,使用base64解密为GB2312编码格式就可以看到: