相对于GB/T 28181-2016, GB/T28181-2022增加了设备软件升级命令,走的是有应答设备控制流程,流程不复杂,简单概括就是通过SIP MESSAGE(Application/MANSCDP+xml)消息将新版本下载地址下发给国标设备,国标设备下载新版本,完成升级后再向SIP服务器发送升级结果通知命令。
详细定义请参考国标,这里记录下实现时要注意的细节:
- 接入同一国标系统的多个设备(厂家、型号、固件版本可能都不一样),要保证下发正确的升级版本下载地址,就要在设备信息查询应答时提供下面三个字段:
- 设备软件升级走的是应答设备控制流程,按照国标附录A.1描述, 应答命令中的SN值要和请求命令中的SN值一致.
3. 新版本安装之前, 设备要注销登录, 版本安装成功后, 重新进行设备注册,注册成功后再发送设备软件升级成功通知命令.
4. 设备软件升级请求命令中的SessionID要和设备软件升级结果通知命令中的SessionID一致,升级过程中可能要重启APP或者设备, 请求SessionID需要保存到文件或者数据库中。
读文档枯燥乏味, 下面给出一个简单的信令实例, 方便快速上手写代码.
设备软件升级命令:
设备控制响应命令:
设备软件升级成功通知命令:
设备软件升级失败通知命令:
相关定义接口:
整个升级流程不是太麻烦,现有代码中加入新的XML解析生成代码就好.

4654

被折叠的 条评论
为什么被折叠?



