物联网平台支持通过消费组订阅需要的Topic消息到AMQP服务端。本文介绍在物联网平台控制台设置和管理AMQP服务端订阅的操作步骤。
前提条件
已创建待订阅消息的消费组。您可使用物联网平台默认消费组(DEFAULT_GROUP)或创建消费组。具体操作,请参见管理消费组。
设置订阅
在物联网平台控制台设置服务端订阅的消息类型。
登录物联网平台控制台。
在实例概览页签的全部环境下,找到对应的实例,单击实例卡片。
在左侧导航栏,选择 。
在服务端订阅页面,单击创建订阅。
在创建订阅对话框中,完成配置,单击确认。
参数
说明
产品
选择订阅消息源设备所属的产品。
订阅类型
选择AMQP。
消费组
选择消息的消费组。 一个产品可选择多个消费组,且一个消费组下可创建多个产品的订阅。
物联网平台已提供一个默认消费组,用于消费消息。如果您需要对消费端进行分组,可单击选择目标消费组对话框右下角的创建消费组,新建消费组。消费组相关说明,请参见管理消费组。
推送消息类型
服务端要订阅的消息类型。目前,服务端可订阅的设备消息类型如下,对应原始通信的Topic、消息转发的Topic及对应数据格式说明,请参见数据格式。
重要对于云网关下产品和设备,仅支持推送设备上报消息、设备状态变化通知和设备生命周期变更的数据。消息转发Topic和数据格式的详情说明,请参见开源MQTT协议的消息通信说明、JT/T 808协议的消息转发说明、GB/T 32960协议的消息转发说明。
设备上报消息:产品下所有设备Topic列表中,操作权限为发布的Topic中的消息。更多信息,请参见什么是Topic。
设备上报消息,包括设备上报的自定义数据和物模型数据(属性上报、事件上报、属性设置响应和服务调用响应)。推送到服务端的物模型数据是经物联网平台系统处理过后的数据,数据格式请参见数据格式。
例如,一个产品有3个Topic类,分别是:
/${YourProductKey}/${YourDeviceName}/user/get
,具有订阅权限。/${YourProductKey}/${YourDeviceName}/user/update
,具有发布权限。/${YourProductKey}/${YourDeviceName}/thing/event/property/post
,具有发布权限。
那么,服务端订阅会推送具有发布权限的Topic类中的消息,即
/${YourProductKey}/${YourDeviceName}/user/update
和/${YourProductKey}/${YourDeviceName}/thing/event/property/post
中的消息。重要若订阅异步服务调用响应数据,设备端返回的响应消息Id必须与物联网平台下发消息的Id相同,才可实现数据正常订阅。
设备状态变化通知:该产品下的设备上下线状态变化时通知的消息。
网关子设备发现上报:网关将发现的子设备信息上报给物联网平台。需要网关上的应用程序支持。网关产品特有消息类型。
设备拓扑关系变更:子设备和网关之间的拓扑关系建立和解除消息。网关产品特有消息类型。
设备生命周期变更:设备创建、删除、禁用、启用等消息。
物模型历史数据上报:设备上报的属性和事件历史数据。
OTA升级设备状态通知:包括升级包验证和批量升级时,设备升级成功、失败、取消和进度的事件通知。
设备标签变更:设备上报的标签变更消息。
OTA模块版本号上报:设备上报的OTA模块版本号变更消息。
OTA升级批次状态通知:设备OTA升级批次状态变化通知。
说明如果您需要对监听的设备消息进行过滤或处理,可先通过云产品流转规则将数据转发到AMQP服务端订阅消费组,再通过AMQP客户端,监听相关消息。更多信息,请参见云产品流转。
传递消息至AMQP服务端与对应订阅的设备Topic说明,请参见消息转发与设备原始通信的Topic说明。
管理产品的订阅
设置服务端订阅成功后,在服务端订阅页面的订阅列表下,找到已订阅的产品名称,可执行以下操作。
操作 | 步骤 |
编辑 | 您可修改订阅的消费组和消息类型。
|
删除 | 警告 如果用户在其他业务中使用了该产品订阅的设备数据,可能导致服务不可用或影响用户的业务。请谨慎操作。
|
后续步骤
配置AMQP客户端:建议您使用阿里云物联网平台提供的AMQP SDK接入示例。对于您自研的AMQP SDK,阿里云不提供后续技术支持服务。
所有配置完成,且设备上报订阅数据,并被AMQP客户端接收后,您可以登录物联网平台控制台,在对应实例的 页签,查看设备上报数据、物联网平台转发数据到AMQP客户端和AMQP客户端返回ACK的日志记录。