# QueryProductTopic

调用该接口查询指定产品下自定义Topic类列表的详细信息

# 请求参数

名称 类型 是否必选 示例值 描述
Action String QueryProductTopic 系统规定参数。取值:QueryProductTopic。
ProductKey String HMyB******* 要查询Topic类的产品ProductKey。
IotInstanceId String 6912917943269**** 实例ID。您可在物联网平台控制台的实例概览页面,查看当前实例的ID。

# 返回数据

名称 类型 示例值 描述
Code String iot.system.SystemException 调用失败时,返回的错误码。
Data Array of ProductTopicInfo 调用成功时,返回的Topic类信息列表。详情参见以下ProductTopicInfo。
ProductTopicInfo
Desc String topicDesc Topic类的描述信息。
Id String 821**** Topic类的ID。
Operation String 1 设备对该Topic类的操作权限,取值:0:发布。1:订阅。2:发布和订阅。
EnableProxySubscribe Boolean false 是否开启代理订阅。取值:true:开启。false:不开启。开启代理订阅后,设备与物联网平台建连时,物联网平台查询已开启代理订阅的Topic,帮助设备完成订阅。
ProductKey String HMyB*** 产品的ProductKey。
TopicShortName String /HMyB***/${deviceName}/user/get 产品的自定义Topic类。
ErrorMessage String 系统异常 调用失败时,返回的出错信息。
RequestId String olmM8Mc9H3DcP7y4kGswzCG6lKHSAndq 平台为该请求生成的唯一标识符。
Success Boolean true 是否调用成功。
true:表示调用成功。
false:表示调用失败。

注意: 当操作权限(Operation)为ALL且开启代理订阅(EnableProxySubscribe=true)时

  • 当设备侧使用MQTT 3.1/3.1.1协议连接平台,设备使用权限为ALL的topic发布消息时,设备会接收到自身发布的消息内容;
  • 当设备侧使用MQTT 5.0协议连接平台,设备使用权限为ALL的topic发布消息时,设备不会接收到自身发布的消息内容。

# 示例

请求示例

http://open.${区域}.fenydata.com/fenydata-java-open/?Action=QueryProductTopic
&ProductKey=HMyB*******
&IotInstanceId=6912917943269****
&<公共请求参数>

正常返回示例

XML格式

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xml>
  <RequestId>310E4A1E-B614-5607-B7DB-55530CAE074A</RequestId>
  <Data>
    <ProductTopicInfo>
      <TopicShortName>/g18******F/${deviceName}/user/get</TopicShortName>
      <Operation>1</Operation>
      <Id>3679****</Id>
      <ProductKey>g18******F</ProductKey>
      <EnableProxySubscribe>false</EnableProxySubscribe>
    </ProductTopicInfo>
    <ProductTopicInfo>
      <TopicShortName>/g18******F/${deviceName}/user/update</TopicShortName>
      <Operation>0</Operation>
      <Id>3679****</Id>
      <ProductKey>g18******F</ProductKey>
      <EnableProxySubscribe>false</EnableProxySubscribe>
    </ProductTopicInfo>
    <ProductTopicInfo>
      <TopicShortName>/g18******F/${deviceName}/user/update/error</TopicShortName>
      <Operation>0</Operation>
      <Id>3679****</Id>
      <ProductKey>g18******F</ProductKey>
      <EnableProxySubscribe>false</EnableProxySubscribe>
    </ProductTopicInfo>
  </Data>
  <Success>true</Success>
</xml>

JSON格式

{
  "RequestId": "310E4A1E-B614-5607-B7DB-55530CAE074A",
  "Data": {
    "ProductTopicInfo": [
      {
        "TopicShortName": "/g18******F/${deviceName}/user/get",
        "Operation": "1",
        "Id": "3679****",
        "ProductKey": "g18******F",
        "EnableProxySubscribe": false
      },
      {
        "TopicShortName": "/g18******F/${deviceName}/user/update",
        "Operation": "0",
        "Id": "3679****",
        "ProductKey": "g18******F",
        "EnableProxySubscribe": false
      },
      {
        "TopicShortName": "/g18******F/${deviceName}/user/update/error",
        "Operation": "0",
        "Id": "3679****",
        "ProductKey": "g18******F",
        "EnableProxySubscribe": false
      }
    ]
  },
  "Success": true
}