# 物模型通信
数据上行:
topic | 说明 |
fogcloud/{pk}/{dn}/thing/up/property/post | 设备上报属性 |
fogcloud/{pk}/{dn}/thing/up/event/{event_id}/post | 设备上报事件 |
fogcloud/{pk}/{dn}/thing/up/sub | 网关上报子设备数据 |
fogcloud/{pk}/{dn}/thing/up/through | 设备上报透传数据 |
fogcloud/{pk}/{dn}/thing/up/service/{service_id}/reply | 设备响应服务调用请求 |
数据下行:
topic | 说明 |
fogcloud/{pk}/{dn}/thing/down/property/post_reply | 设备接收属性上报回复(默认关闭) |
fogcloud/{pk}/{dn}/thing/down/property/set | 设备接收 App 属性控制 |
fogcloud/{pk}/{dn}/thing/down/event/{event_id}/post_reply | 设备接收事件上报回复(默认关闭) |
fogcloud/{pk}/{dn}/thing/down/service/{service_id} | 设备接收服务 |
fogcloud/{pk}/{dn}/thing/down/sub | 网关接收子设备数据 |
fogcloud/{pk}/{dn}/thing/down/through | 设备接收透传数据 |
payload 公共字段说明
请求:
字段 | 类型 | 说明 |
id | uint32 | 设备上报时递增 |
version | string | 协议版本,目前为“1.0” |
timestamp | int32 | 时间戳,单位秒 |
method | string | 用于区分子设备数据业务类型 |
响应:
字段 | 类型 | 说明 |
id | uint32 | 与请求数据的 id 相同 |
code | int32 | 错误类型,0-成功,其他-参考错误代码 |
method 字段说明
method 字段 | 说明 |
property.post | 设备上报属性 |
property.set | 云端设置属性 |
event.{id}.post | 设备上报事件 |
service.{id} | 云端调用设备服务 |
# 1 设备属性
# 1.1 设备上报属性
数据上行:fogcloud/{pk}/{dn}/thing/up/property/post 数据下行:fogcloud/{pk}/{dn}/thing/down/property/post_reply
设备上行数据格式:
{ "id": 1, "version": "1.0", "timestamp": 1631585734, "params": { "property1": 1, "property2": "on" } }
云端响应数据格式:
{ "id": 1, "code": 0, "params": {} }
# 1.2 设置设备属性
数据下行:fogcloud/{pk}/{dn}/thing/down/property/set 数据上行:无
云端下行数据格式:
{ "id": 1, "version": "1.0", "timestamp": 1631585734, "params": { "property1": 1, "property2": 2 } }
# 2 设备上报事件
数据上行:fogcloud/{pk}/{dn}/thing/up/event/{event_id}/post 数据下行:fogcloud/{pk}/{dn}/thing/down/event/+/post_reply
设备上行数据格式:
{ "id": 1, "version": "1.0", "timestamp": 1631585734, "params": { "param1": 1, "param2": "123" } }
云端响应数据格式:
{ "id": 1, "code": 0, "params": {} }
# 3 设备服务
# 3.1 设备调用服务
数据下行:fogcloud/{pk}/{dn}/thing/down/service/+ 数据上行:fogcloud/{pk}/{dn}/thing/up/service/{service_id}/reply
云端下行数据格式:
{ "id": 1, "version": "1.0", "timestamp": 1631585734, "params": { "input1": 1, //对应物模型定义的对应服务的输入参数 "input2": 2 } }
设备端响应数据格式:
{ "id": 1, "code": 0, "params": { //若该服务无返回,则为空 "output1": 1, //对应物模型定义的对应服务的输出参数 "output2": 2 } }
# 4 批量上报子设备属性/事件
(子设备是 json 格式,网关是 json 格式)
数据上行:fogcloud/{pk}/{dn}/thing/up/sub
设备端上行数据格式:
{ "id": 1, "version": "1.0", "params": [ { "product_key": "22345600", "device_name": "00000020", "data": { "method": "property.post", "timestamp": 1631585734, "params": { "property1": 1, "property2": "on" } } }, { "product_key": "22345600", "device_name": "00000001", "data": {} } ] }
云端响应数据格式:
{ "id": 1, "code": 0, "params": {} }
# 5 批量设置子设备属性/事件
(子设备是 json 格式,网关是 json 格式)
数据下行:fogcloud/{pk}/{dn}/thing/down/sub
云端下行数据格式:
{ "id": 1, "version": "1.0", "params": [ { "product_key": "22345600", "device_name": "00000020", "data": { "method": "property.set", "params": { "property1": 1, "property2": "on" } } }, { "product_key": "22345600", "device_name": "00000001", "data": { "method": "service.1", "params": { "param1": 1, "param2": "on" } } } ] }
← 设备上报消息和下发指令 hex透传 →