# go-jt808 **Repository Path**: tx7do/go-jt808 ## Basic Information - **Project Name**: go-jt808 - **Description**: JT808协议的golang语言实现 - **Primary Language**: Go - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2023-02-05 - **Last Updated**: 2024-08-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # go-jt808 ## 协议一览表 | 协议名称 | 是否支持 | 备注 | |------------------|------|-----------------------------------------------------------| | JT/T 808 2011版本 | 支持 | JT/T808 2011《道路运输车辆卫星定位系统终端通信协议及数据格式》协议 | | JT/T 808 2013版本 | 支持 | JT/T808 2013《道路运输车辆卫星定位系统终端通信协议及数据格式》协议 | | JT/T 808 2019版本 | 支持 | JT/T808 2019《道路运输车辆卫星定位系统终端通信协议及数据格式》协议 | | JT/T 809 | 支持 | JT/T809《道路运输车辆卫星定位系统终端通信协议及数据格式》协议 | | JT/T 905 | 支持 | JT/T905 出租汽车服务管理信息系统运营专用设备-通讯协议 | | JT/T 1078 2016版本 | 支持 | JT/T 1078《道路运输车辆卫星定位系统视频通信协议》协议 | | JT/T 1257 2016版本 | 支持 | JT/T 1257《营运货车能耗在线监测》 | | T/JSATL | 支持 | 苏标 T/JSATL《道路运输车辆主动安全智能防控系统(通讯协议规范)》协议(基于JT/T808-2013) | | T/GDRTA(主动安全-粤标) | 支持 | 粤标 T/GDRTA 2020《道路运输车辆智能视频监控报警系统通讯协议规范》协议(基于JT/T808-2019) | | GB/T 32960 | 支持 | GB/T32960.3-2016 电动汽车远程服务与管理系统技术规范 | ## JT808数据结构解析 ### 数据包[Packet] | 头标识 | 数据头 | 数据体/分包数据体 | 校验码 | 尾标识 | |:-----:|:------:|:----------------------:|:---------:|:---:| | Begin | Header | Payload/SubDataPayload | CheckCode | End | | 7E | - | - | - | 7E | ### 数据头[Header] | 消息ID | 消息体属性 | 协议版本号(2019版本) | 终端手机号 | 消息流水号 | 消息总包数(依赖是否分包) | 包序号(依赖是否分包) | |:-----:|:----------------------------:|:-------------:|:---------------:|:------:|:-------------:|:-----------:| | MsgId | HeaderMessagePayloadProperty | Version | TerminalPhoneNo | MsgNum | PacketCount | PacketIndex | #### 数据头-消息体属性[HeaderMessagePayloadProperty] | 版本标识(2019版本) | 是否分包 | 加密标识 | 消息体长度 | |:------------:|:--------:|:-------:|:----------:| | VersionFlag | IsPacket | Encrypt | DataLength | #### 消息体属性[Payload] > 根据对应消息ID:MsgId ***注意:数据内容(除去头和尾标识)进行转义判断*** 转义规则如下: 1. 若数据内容中有出现字符 0x7e 的,需替换为字符 0x7d 紧跟字符 0x02; 2. 若数据内容中有出现字符 0x7d 的,需替换为字符 0x7d 紧跟字符 0x01; 反转义的原因:确认JT808协议的TCP消息边界。