状态同步

更新时间:2024-06-05 03:15:12下载pdf

获取 MQTT 连接配置参数

请求地址

action: device.openHubConfig

params 请求参数

参数名 类型 说明 是否必填
uid String 涂鸦用户 ID
link_id String 连接 MQTT 的端 ID
连接端按 link_id 隔离,当同一用户需要在多端登录时,调用方必须保证 link_id 不同
link_type String 连接类型,有效值:mqttwebsocket
默认值:mqtt

请求示例

{
    "action": "device.openHubConfig",
    "params":{
        "uid": "xxx",
        "link_id": "xxx", // 随机生成一个唯一的 ID
    "link_type": "websocket"
    }
}

响应参数

参数名 类型 说明
code Integer 响应码
success Boolean 是否成功:
  • true:成功
  • false:失败
  • msg String 请求失败的信息,成功为空
    result Object MQTT 连接配置信息

    result 说明

    参数名 类型 说明
    url String MQTT 连接地址(包括协议、IP、端口)
    username String MQTT 连接用户名,用户账号生成的一个唯一不变的映射
    password String MQTT 连接密码,有效期内该字段不变。同时,此字段为 MQTT 消息解密的密钥,使用此密码的中间 16 位(第 8 位到 24 位)进行 AES 解密
    client_id String MQTT 连接 client_id(用户账号及 unique_id 生成的一个唯一不变的映射),一个 client_id 即可以用于发布也可以订阅
    expire_time Long 当前配置失效期,当前配置失效,所有的连接都将断开
    source_topic String 订阅 topic,设备事件、设备状态同步,可以订阅该 topic
    sink_topic String 发布 topic,暂不支持,设备控制建议使用 HTTP 接口进行下发控制

    返回示例

    {
        "success": true,
        "t": 1566289523942,
        "result": {
            "url": "xxx://xxx:xx",
            "expire_time": 7200,
            "username": "xxx",
            "password": "xxx",
            "client_id": "xxx",
            "source_topic": "xxx",
            "sink_topic": "cloud/token/out/{dev_id}"
        }
    }