1.数据类型

数据类型 描述及要求
BYTE 无符号单字节整型(字节,8 位)
WORD 无符号双字节整型(字,16 位)
DWORD 无符号四字节整型(双字,32 位)
BYTE[n] n 字节
BCD[n] 8421 码,n 字节
STRING GBK 编码,若无数据,置空

2.传输规则

协议采用大端模式(big-endian)的网络字节序来传递字和双字。约定如下:
——字节(BYTE)的传输约定:按照字节流的方式传输;
——字(WORD)的传输约定:先传递高八位,再传递低八位;
——双字(DWORD)的传输约定:先传输最高的8位(b31,b24),然后是较高的8位(b23,b16),然后是较低的8位(b15,b8),然后是最低的8位(b7,b0)。

3.消息组成

3.1.消息结构

每条消息由标识位、消息头、消息体和校验码组成,消息结构如下所示:

3.2.标识位

采用 0x7e 表示,若校验码、消息头以及消息体中出现 0x7e,则要进行转义
处理,转义规则定义如下:
0x7e<————>0x7d 后紧跟一个 0x02;
0x7d<————>0x7d 后紧跟一个 0x01。

转义处理过程如下:
发送消息时:消息封装——>计算并填充校验码——>转义;
接收消息时:转义还原——>验证校验码——>解析消息。

示例:
发送一包内容为 0x30 0x7e 0x08 0x7d 0x55 的数据包,则经过封装如下:
0x7e 0x30 0x7d 0x02 0x08 0x7d 0x01 0x55 0x7e。

3.3.消息头

起始字节 字段 数据类型 描述及要求
0 消息 ID WORD -
2 消息体属性 WORD 消息体属性格式结构图见表2.3
4 终端手机号 BCD[6] 自定义12位唯一标识号,不足12位前面补0
10 消息流水号 WORD 按发送顺序从 0 开始循环累加
12 消息包封装项

3.3.1.消息体属性


Bit15:保留。
Bit14版本:此位默认保留为0
Bit13分包:保留,不使用,默认为0。
Bit12-10数据加密方式:
——当此三位都为 0,表示消息体不加密;
——当第 10 位为 1,表示消息体经过 RSA 算法加密;
Bit9-0:消息体长度。

3.4.校验码

校验码指从消息头开始,同后一字节异或,直到校验码前一个字节,占用一个字节。

4.协议交互流程

1, 终端在未注册状态下,应首先进行注册,注册成功后终端将获得鉴权码并进行保存,鉴权码在终端登录时使用。
2.已经注册的终端,只需使用保存的鉴权码登录即可。
3.鉴权成功的终端,按照配置的上报间隔上报位置信息(含状态和报警信息,详细参考消息0x0200)。
4.平台也可以主动配置和查询终端参数。

4.1.消息应答关系表

作者:admin  创建时间:2023-05-06 16:48
最后编辑:admin  更新时间:2023-05-06 21:29