智能边缘平台 IEF-设备数据上云:MQTT Topic
MQTT Topic
终端设备与边缘节点、IEF的通信都是通过给MQTT broker中转消息实现的,在MQTT broker中,默认提供如表1所示的Topic(消息主题),上报状态、控制终端设备状态都是通过发送/订阅消息实现的。
应用程序编写完后,可以通过应用部署功能,将应用从IEF中部署到边缘节点,详情请参见容器应用管理。
名称 |
使用类型 |
Topic |
说明 |
---|---|---|---|
订阅 |
$hw/events/device/{device_id}/twin/update/document |
设备孪生更新文档,当孪生变化时,反映孪生变化前、变化后的区别。 |
|
订阅 |
$hw/events/device/{device_id}/twin/update/delta |
设备孪生delta事件,当孪生变化时,反映期望值与真实值不一致的孪生信息。 |
|
订阅 |
$hw/events/node/{node_id}/membership/updated |
绑定终端设备关系变化。 |
|
订阅 |
$hw/events/device/{device_id}/updated |
终端设备属性更新。 |
|
发布 |
$hw/events/node/{node_id}/membership/get |
绑定终端设备关系获取。 |
|
订阅 |
$hw/events/node/{node_id}/membership/get/result |
绑定终端设备关系获取结果。 |
|
发布 |
$hw/events/device/{device_id}/twin/get |
设备孪生获取。 |
|
订阅 |
$hw/events/device/{device_id}/twin/get/result |
设备孪生获取结果。 |
|
发布 |
$hw/events/device/{device_id}/twin/update |
设备孪生更新。 |
|
订阅 |
$hw/events/device/{device_id}/twin/update/result |
设备孪生更新结果。 |
|
发布 |
$hw/{project_id}/encryptdatas/{encryptdata_name}/properties/{properties_name}/decrypt |
发布获取加密数据请求。 |
|
订阅 |
$hw/{project_id}/encryptdatas/{encryptdata_name}/properties/{properties_name}/plaintext |
订阅获取加密数据。 |
|
发布 |
$hw/alarm/{appname}/add |
向 AOM 发送告警。 |
|
发布 |
$hw/alarm/{appname}/clear |
清除AOM中告警。 |
|
发布 |
{project_id}/nodes/{node_id}/user/{custom_topic} |
自定义Topic,Topic根据您的需要自行定义。 您可以将终端设备数据发送到边缘节点MQTT broker的自定义Topic中,IEF会将这些数据转发到DIS通道或APIG后端地址。数据转发到DIS通道或者APIG后端地址后,您可以提取这些数据,并对数据进行处理分析。 |
接下来将介绍如何在边缘侧获取终端设备信息,接收云上的控制消息,以及如何将终端设备数据上报到云端。MQTT收发消息的示例代码请参见Go语言代码样例和Java语言代码样例。