服务端订阅是通过HTTP通道,将产品下所有设备数据按订阅类型转发到指定的HTTP地址。服务端订阅适用于单纯接收设备数据的场景。可快速地获取设备消息,无消息过滤功能,功能较单一但简单易用且高效。目前支持的订阅类型消息有:数据上报通知、实时数据上报、上下线通知。
操作说明
- “产品开发”页面,点击单个产品,点击“服务端订阅”;
- 在“服务端订阅”中,点击“添加订阅”按钮;
- 在“创建服务端订阅”的编辑框中,选择要订阅的类型、填写订阅的名称、订阅方URL地址、验证KEY;
- 点击确定。
【说明】
订阅方URL地址: 数据流转的目的地
【注意】
平台以HTTP POST请求形式向第三方平台URL地址推送数据,第三方平台接收到数据后需要返回HTTP状态码 200,否则IOT-FAST云平台会认为此次推送无效并重试,最多重试1次。建议第三方应用接收程序接收到数据时,先做数据缓存,再做业务逻辑处理。 其中请求的Content-Type为application/json。
验证KEY,当验证KEY有填值时,平台将会在请求header中加入timestamp和sign两个参数,其中timestamp是获取当前时间戳,精确到毫秒;sign是用md5({验证KEY}+{timestamp})生成;接收端请根据需要进行验证。
订阅类型:
数据上报通知
指产品下的设备进行上报消息(devSend或batchDevSend)时通知给订阅端的消息。
{
“action”:”devSend”,
“msgId”:123,
“pk”:”{pk}”,
“devId”:”{devId}”,
“data”:{
“cmd”:”up”,
“params”:{
“t8”:0,
“t6”:0,
“t4”:0,
“t2”:0,
“t7”:0,
“t5”:0,
“t3”:0,
“t1”:0,
“switch”:””,
“qw”:0,
“qs”:0,
“ps”:0,
“ic”:0,
“ib”:0,
“ia”:0,
“uc”:0,
“ub”:0,
“ua”:0,
“uca”:0,
“ubc”:0,
“uab”:0,
“pw”:0
}
}
}
参数 | 类型 | 说明 |
---|---|---|
devId | String | 设备ID |
pk | String | 设备所属产品pk |
data | String | 解析后的MLink数据 |
data.params | object | 所属产品定义的参数 |
data.cmd | String | 所属产品定义的分组 |
action | String | 固定devSend或batchDevSend |
msgId | Long | 消息ID,一般是请求时间戳(ms) |
实时数据上报
指产品下的设备参数实时值通知给订阅端的消息,该消息一般频次较高,平台不做持久化保存。
{
“action”:”devSendLive”,
“msgId”:123,
“pk”:”{pk}”,
“devId”:”{devId}”,
“data”:{
“cmd”:”live”,
“params”:{
“u”:0,
“i”:0,
“t8”:0,
“t6”:0,
“t4”:0,
“t2”:0,
“t7”:0,
“t5”:0,
“t3”:0,
“t1”:0,
“switch”:””,
“ps”:0,
“pw”:0
}
}
}
参数 | 类型 | 说明 |
---|---|---|
devId | String | 设备ID |
pk | String | 设备所属产品pk |
data | String | 解析后的MLink数据 |
data.params | object | 所属产品定义的参数 |
data.cmd | String | 所属产品定义的分组 |
action | String | 固定devSendLive或batchDevSendLive |
msgId | Long | 消息ID,一般是请求时间戳(ms) |
上下线通知
产品下的设备发生上下线状态变化时通知给订阅端的消息。
【上线通知】:
{
“action”:”devLogin”,
“msgId”:123,
“pk”:”{pk}”,
“devId”:”{devId}”,
“status”:”online”
}
参数 | 类型 | 说明 |
---|---|---|
devId | String | 设备ID |
pk | String | 设备所属产品pk |
status | String | 固定online |
action | String | 固定devLogin |
msgId | Long | 消息ID,一般是请求时间戳(ms) |
【离线通知】:
{
“action”:”devLogout”,
“msgId”:123,
“pk”:”{pk}”,
“devId”:”{devId}”,
“status”:”offline”
}
参数 | 类型 | 说明 |
---|---|---|
devId | String | 设备ID |
pk | String | 设备所属产品pk |
status | String | 固定offline |
action | String | 固定devLogout |
msgId | Long | 消息ID,一般是请求时间戳(ms) |