CmdStateChanged
通知名称:终端指令状态变更通知
订阅地址:/user/{token}/queue/cmd
注:订阅地址中的{token}
要用实际的令牌字符串(POST /login
接口返回的authToken
)代替,如token为Ge4E1xNHSfW8NYa0VJe48A
,则指令完成通知的订阅地址为:
/user/Ge4E1xNHSfW8NYa0VJe48A/queue/cmd
。
结构
当指令记录状态发生变更时(如指令下发完成时、指令被应答时、或下发指令出错时,或指令被取消时,或指令超时时),服务端推送本通知。结构如下:
属性 | 数据类型 | 必要 | 说明 |
---|---|---|---|
id | string | Y | 终端指令记录ID。此ID与调用下发指令 POST /term_cmd 接口返回的id 一致。指出本通知所指代的指令记录 |
reqTm | string | Y | 指令的请求时间,格式:yyyy-MM-dd HH:mm:ss 。(对应 TermCmd 中的reqTm 属性) |
status | int | Y | 指令的新的状态:
status 属性) |
tm | string | Y | 指令状态的变更时间,格式:yyyy-MM-dd HH:mm:ss 。 |
initMsgId | string | Y | 下发指令时指令的消息号(对应 TermCmd 中的msgId 属性) |
subCmdTyp | string | 下发指令时指令的子命令类型(对应 TermCmd 中的subCmdTyp 属性) | |
msgSn | int | 下发指令时的消息流水号(对应 TermCmd 中的msgSn 属性) | |
simNo | string | Y | 下发指令时指令的终端识别号(对应 TermCmd 中的simNo 属性) |
ackMsgId | string | 终端应答自身的指令消息号,JT/T 808,JT/T 1078 指令消息号。仅当status == 2 时有效 | |
ackSeqNo | int | 终端应答自身的指令消息流水号。仅当status == 2 时有效 | |
ackCode | int | 终端应答的应答码。仅当status == 2 且应答消息有应答码时有效。具体参见各指令说明 | |
ackParams | object | 终端应答的数据内容。仅当status == 2 且应答消息有应答内容时有效。具体参见各指令说明 |
数据示例
{
"id": "433350002",
"reqTm": 1643006473800,
"status": 2,
"tm": 1643006473802,
"initMsgId": "8201",
"simNo": "13320200317",
"ackMsgId": "0201",
"ackSeqNo": 3,
"ackParams": {
"trk": {
"simNo": "13320200317",
"recvTm": 1643006473802,
"gpsTm": 1643006473000,
"alm": 0,
"st": 524291,
"lng": 121.42949,
"lat": 31.24088,
"alt": 10,
"spd": 30.0,
"recSpd": 30.0,
"dir": 0
}
}
}