产品的自定义Topic类会自动映射为该产品下所有设备的自定义Topic。本文介绍如何为产品自定义Topic类及自定义Topic使用说明。

背景信息

物联网平台Topic定义和使用说明,请参见什么是Topic

添加自定义Topic类

  1. 登录物联网平台控制台
  2. 实例概览页面,找到对应的实例,单击实例进入实例详情页面。
    重要 目前华东2(上海)、日本(东京)地域开通了企业版实例服务。其他地域,请跳过此步骤。
    实例概览
  3. 在左侧导航栏,选择设备管理 > 产品
  4. 产品页面,找到需要自定义Topic类的产品,并单击对应操作栏中的查看按钮。
  5. 产品详情页面,单击Topic类列表 > 自定义Topic > 定义Topic类
  6. 配置参数,单击确认
    自定义Topic
    参数 描述
    设备操作权限 设备对该Topic的操作权限,可设置为发布订阅发布和订阅
    Topic类 将Topic类填充完整。类目命名只能包含字母、数字和下划线(_),每级类目不能为空。
    说明 只有设备操作权限为订阅时,才可以使用通配符+#自定义Topic类,以便设备实现批量订阅Topic。通配符使用方法请参见带通配符的自定义Topic
    描述 可输入文字,描述该Topic类,用于区分不同Topic类的功能。

管理Topic类

您可在自定义Topic的Topic类列表中,找到对应自定义Topic类,执行以下操作。

操作 步骤
编辑Topic类
  1. 单击Topic类对应操作列的编辑
  2. 定义Topic类对话框,修改描述设备操作权限Topic类
  3. 单击确认
删除Topic类
警告 删除自定义Topic类后,与该自定义Topic相关的设备通信服务不可用、用户业务中断。请谨慎操作。
  1. 单击Topic类对应操作列的删除
  2. 单击确认

带通配符的自定义Topic

物联网平台支持在设备操作权限为订阅的自定义Topic中,使用两种通配符,以便设备实现批量订阅Topic。

通配符 描述
# #只能出现在Topic的最后一个类目,代表本级及下级所有类目。

例如:自定义Topic/a1aycMA****/${deviceName}/user/#。设备device1订阅/a1aycMA****/device1/user/#,表示订阅以/a1aycMA****/device1/user/为开头的全部Topic,包含/a1aycMA****/device1/user/update/a1aycMA****/device1/user/update/error等Topic。

+ 代表本级所有类目。

例如:自定义Topic/a1aycMA****/${deviceName}/user/+/error。设备device1订阅/a1aycMA****/device1/user/+/error,表示订阅/a1aycMA****/device1/user/get/error/a1aycMA****/device1/user/update/error等Topic。

由于带通配符的Topic实质为一组Topic的集合,因此带通配符的Topic不支持在设备的Topic列表页面执行发布消息操作,将消息发布到已订阅该Topic的设备。

使用自定义Topic通信

  • 服务端到设备端

    服务端调用Pub,可向指定的自定义Topic发布消息。设备通过订阅该Topic,接收来自服务端的消息。

  • 设备端到服务端

    设备端向自定义Topic发布消息,服务端可通过物联网平台的AMQP订阅或云产品流转功能,接收来自设备端的消息。

使用自定义Topic通信的示例,请参见使用自定义Topic进行通信