SC格式说明
上行主题 sciot/up/v1/{ESN}/json
下行主题 sciot/down/v1/{ESN}/json
实例
上行主题 sciot/up/v1/SC000001/json
下行主题 sciot/down/v1/SC000001/json
| cmdId | 描述 |
|---|---|
| 1001 | 实时数据上报 |
| 1002 | 历史数据补传 |
| 1003 | 写值命令下发 |
| 1004 | 写值结果反馈上报 |
| 1005 | 请求配置表 |
| 1006 | 响应请求配置表 |
| 1007 | 响应下发配置表(下发时,无cmdd) |
| 1009 | 召唤实时数据 |
| 1010 | 响应召唤实时数据 |
| 1011 | 召唤设备状态 |
| 1012 | 响应召唤设备状态 |
| 1013 | 召唤平台状态 |
| 1014 | 响应召唤平台状态 |
| 1015 | 设备启停控制 |
| 1016 | 响应设备启停 |
| 1017 | 召唤版本 |
| 1018 | 响应召唤版本 |
| 1019 | 召唤日志 |
| 1020 | 响应召唤日志 |
| 1021 | 调试信息开关 |
| 1022 | 响应调试信息开关 |
| 1023 | 召唤当前报警中的日志 |
| 1024 | 响应召唤当前报警中的日志 |
一、配置格式
(2) 响应
| name | 描述 |
|---|---|
| type | 数据包类型 |
| messageId | 消息id |
| cmdId | 指令id |
| respond | 响应状态 |
| msg | 相应消息 |
| data | 数据内容 |
{
"type":"S_DataInfo",
"messageId":"xxxxxx",
"cmdId:"1007",
"respond":"succeed",//fail,overTime
"msg":"下发成功",
"data":{}
}
二、命令格式(写值、召唤配置、召唤实时数据)
1.命令
{
"type": "S_Control",
"cmdId": "1005",
"messageId":"xxxxxx",
"param":{//根据cmd
"equipId":"dev101",
"dataId":"b1",
"value":"20"
}
}
2.响应
{
"type":"S_Control",
"messageId":"xxxxxx",
"cmdId": "1006",
"respond":"succeed",//fail,overTime
"msg":"响应请求配置表成功",
"data":{
//(1)1005 {} = 一、配置格式{}
}
//例子 8 callLogCurWarning
"data":{
"count":123,
"warning":["1111","2222"]
}
}
三、上报格式
{
"cmdId": "1001",
"STA": 10,//0-99变化值, int类型,上报一次加1
"T": "yyyy-MM-dd HH:mm:ss",
"devs": [{
"Id": "dev101",
"Q": "G",//G:正常good B1~B11:异常bad。数据id状态叠加在设备状态上,见下表
"data": {
"b1": 220,
"b2": 2120.34,
"b3": "abcde"
}
},
{
"Id": "dev102",
"Q": "G",
"data": {
"b1": true
}
}
]
}
处理方式
设置的k=1,b=0时,如果数据是int16位,我就传16位这个类型值,如果k b是其余值,则转double型。
32 64位无符号的,我这边是不支持这两种,虽然我可以通过变体转换,但是发现值非常大的时候失真了。所以32位无符号的,直接用64位有符号代替。64位无符号的用double转换
空的用null
小数保留3位
B1-B11状态
B1:STATE_INVALID, //初始化状态,即,设备未读写时状态,反之,此值需发生变化。
B1:STATE_CMD_ERR_TYPE, //类型错误
B3:STATE_CMD_ERR_AREA, //区域错误
B4:STATE_CMD_ERR_SIZE, //长度错误
B5:STATE_CMD_ERR_ADDR, //起始地址错误
B6:STATE_CMD_ERR_NOWRITE, //不允许写
B7:STATE_RET_ERR, //返回错误,设备响应报文错误,如:1)设备响应格式错误 2)返回长度 3)返回标志位 4)
B8:STATE_TIMEOUT_ERR, //响应超时
B9:STATE_BLOCKLINE_ERR, //设备掉线
B10:STATE_CONVERT_SIZE_ERR,
B11:STATE_CONVERT_TYPE_ERR,