JT∕T 905 -2014 出租汽车服务管理信息系统的相关协议研究

2023-05-16

  出租汽车服务管理信息系统(JT∕T 905 -2014)

        国家的相关技术要求2014年7月正式出台,总体有四部分,   第 1 部分:总体技术要求;   第 2 部分:运营专用设备;   第 3 部分:信息数据元;   第 4 部分:数据交换与共享。相应的国标文件为:

JT∕T 905.1-2014 出租汽车服务管理信息系统

JT∕T 905.2-2014 出租汽车服务管理信息系统

JT∕T 905.3-2014 出租汽车服务管理信息系统

JT∕T 905.4-2014 出租汽车服务管理信息系统

本文就第二部分的运营专用设备中ISU 与中心通讯协议及数据格式相关部分进行初步探讨,通讯协议主要与JT808类似,有以下几点区别。

1、  消息头中的ISU标识

    JT808协议【终端手机号】与JT905协议中的【ISU 标识】的同为6个字节的BCD码,

    区别:JT905中的 ISU 标识第一字节为 “ 10”,后五个字节为 ISU 的,ID 号由5个字节组成。

厂商编号

设备类型

序列号

1byte

1byte

3byte

   而JT808中的协议【终端手机号】由12位的手机号组成。第一位预留位0.

  代码解析过程:


 1         /// <summary>
 2         /// BCD转String
 3         /// </summary>
 4         /// <param name="bData"></param>
 5         /// <returns></returns>
 6         public static string BCDToStr(byte[] bData, int startIndex, int length)
 7         {
 8             try
 9             {
10                 string strRes = "";
11                 byte tempHigh = 0, tempLow = 0;
12                 byte[] byteChar = new byte[length];
13                 for (int i = startIndex; i < startIndex + length; i++)
14                 {
15                     tempHigh = (byte)((bData[i] & 0xF0) >> 4);
16                     tempLow = (byte)(bData[i] & 0x0F);
17                     strRes += tempHigh.ToString() + tempLow.ToString();
18                 }
19                 return strRes;
20             }
21             catch (Exception ex)
22             {
23                 LogHelper.WriteLog("", ex);
24                 return "";
25             }
26         }  
View Code

2、JT905协议中没有终端注册和鉴权过程。

3、10.3.5.29 订单任务下发

消息 ID:0x8B00。 订单任务下发命令消息体数据格式见表 48。

表 48  订单任务务下发命令消息体数据格式

起始字节

字段

数据类型

说明

14+0

业务 ID

UINT32

 

14+4

业务类型

UINT8

0:即时召车;1:预约召车;2:车辆指派

 

14+5

 

要车时间

 

BCD[6]

 

 

YYMMDDhhmmss

14+11

业务描述

STRING

对乘客要车大概地点的描述

4、10.3.5.30 驾驶员抢答

消息 ID:0x0B01。 驾驶员抢答命令消息体数据格式见表 49。

表 49  驾驶员抢答命令命令消息体数据格式

起始字节

字段

数据类型

说明

14+0

业务 ID

UINT32

对应简明业务下发(0x8B00)消息中的业务 ID

 应答为中心通用应答。

5、10.3.5.31 下发抢答结果信息

消息 ID:0x8B01。 驾驶员抢答结果命令消息体数据格式见表 50。

表 50  驾驶员抢答结果命令消息体数据格式

起始字节

字段

数据类型

说明

14+0

业务 ID

UINT32

根据消息体长度若无后面字段表示未中标

14+4

业务类型

UINT8

0:即时召车;1:预约召车;2:车辆指派

14+5

用车时间

BCD[6]

YYMMDDhhmmss 全零表示不启用

14+11

乘客位置经度

UINT32

0.0001’,填充为零表示不启用

14+15

乘客位置纬度

UINT32

0.0001’,填充为零表示不启用

14+19

目的地位置经度

UINT32

0.0001’,填充为零表示不启用

14+23

目的地位置纬度

UINT32

0.0001’,填充为零表示不启用

14+27

电召服务费

BCD[2]

格式为 XXX. X 元,全 0 表示无服务费

14+29

乘客电话号码

STRING

 

 

业务描述

STRING

对乘客要车详细地点的描述

应答为 ISU 通用应答。

6、10.3.5.32 驾驶员电召任务完成确认

消息 ID:0x0B07。 电召任务完成确认命令消息体数据格式表 51。

表 51  抢答任务的完成命令消息体数据格式

起始字节

字段

数据类型

说明

14+0

业务 ID

UINT32

对应简明业务下发(0x8B00)消息中的业务 ID

应答为中心通用应答。

当司机本次电召任务完成后,司机通过按键触发 ISU 发送该指令给中心通知订单完成。

7、10.3.5.33 驾驶员取消订单

消息 ID:0x0B08。

驾驶员操作 ISU 请求对抢答成功的订单任务取消,命令消息体数据格式见表 52。

表 52  ISU 请求抢答任务的取消命令消息体数据格式

起始字节

字段

数据类型

说明

14+0

业务 ID

UINT32

 

14+4

取消原因

UINT8

0:事故;1:路堵;2:其他

应答为中心通用应答。

当司机因某种原因不能去接送乘客时,司机通过按键触发 ISU 发送该指令通知中心。

8、10.3.5.34 中心取消订单

消息 ID:0x8B09。 中心取消订单命令消息体数据格式见表 53。

表 53  中心取消订单命令消息体数据格式

起始字节

字段

数据类型

说明

14+0

业务 ID

UINT32

 

应答为 ISU 通用应答。

当因乘客原因或司机请求取消订单时,中心发送该指令通知司机订单被取消(或取消请 求被处理)。ISU 语音提示司机。

9、10.3.5.35 上班签到信息上传

消息 ID:0x0B03。 上班签到信息上传命令消息体数据格式见表 54。

14+0

位置基本信息

 

详见 0x0200 交易

14+25

企业经营许可证号

BYTE [16]

ASCII 字符,长度不足 16byte,右补 0x00

14+41

驾驶员从业资格证号

BYTE [19]

ASCII 字符,长度不足 19byte,右补 0x00

14+60

车牌号

BYTE[6]

车牌号,ASCII 字符,不包含汉字

14+66

开机时间

BYTE[6]

YYYYMMDDHHNNMM

 

14+72

 

扩展属性

 

BYTE[n]

可根据实际管理需要进行扩展,当有扩展需求时,

则该项有内容,否则该项无内容

应答为中心通用应答。

10、10.3.5.36 下班签退信息上传

消息 ID:0x0B04。 下班签退信息上传命令消息体数据格式见表 55。

表 55  下班签退信息上传命令消息体数据格式

起始字节

字段

数据类型

说明

14+0

位置基本信息

 

详见 0x0200 交易

14+25

企业经营许可证号

BYTE [16]

ASCII 字符,长度不足 16byte,右补 0x00

14+41

驾驶员从业资格证号

BYTE [19]

ASCII 字符,长度不足 19byte,右补 0x00

14+60

车牌号

BYTE[6]

车牌号,ASCII 字符

14+66

计价器 K 值

BCD[2]

格式为 XXXX,最大 9999

14+68

当班开机时间

BCD[6]

YYYYMMDDHHMM

14+74

当班关机时间

BCD[6]

YYYYMMDDHHMM

14+80

当班里程

BCD[3]

格式为 XXXXX.X,单位为千米(km)

14+83

当班营运里程

BCD[3]

格式为 XXXXX.X,单位为千米(km)

14+86

车次

BCD[2]

格式为 XXXX,最大 9999

14+88

计时时间

BCD[3]

格式为 hhmmss

14+91

总计金额

BCD[3]

格式为 XXXXX.X,单位为元

14+94

卡收金额

BCD[3]

格式为 XXXXX.X,单位为元

14+97

卡次

BCD[2]

格式为 XXXX,最大 9999

 

14+99

 

班间里程

 

BCD[2]

格式为 XXX.X(上一班签退到本班签到的距离),单

位为千米(km)

 

14+101

 

总计里程

 

BCD[4]

格式为 XXXXXXX.Xkm(计价器安装后累积的里程),

单位为千米(km)

 

14+105

 

总营运里程

 

BCD[4]

格式为 XXXXXXX.Xkm(计价器安装后累积的里程)

单位为千米(km)

14+109

单价

BCD[2]

格式 XX.XX,单位为元

14+111

总营运次数

UINT32

高位在前,低位在后

14+115

签退方式

BYTE

0x00:正常签退;0x01:强制签退

14+116

扩展属性

BYTE[n]

可根据实际管理需要进行扩展,当有扩展需求时,

则该项有内容,否则该项无内容

应答为中心通用应答。

11、10.3.5.37 运营数据上传

消息 ID:0x0B05。 运营数据上传命令消息体数据格式见表 56。

表 56  运营数据上传命令消息体数据格式

起始字节

字段

数据类型

说明

14+0

空转重时车位置信息

 

见 0x0200 消息体数据格式

14+25

重转空时位置基本信息

 

见 0x0200 消息体数据格式

14+50

营运 ID

UINT32

开始营运时的时间戳,按 10.2.2 营运 ID 的生成规

则生成

 

14+54

评价 ID

 

UINT32

评价时的时间戳,按 10.2.2 营运ID 的生成规则生成

若没有评价,则以 0x00 填充

 

起始字节

字段

数据类型

说明

 

14+58

 

评价选项

 

UINT8

0x00:没有做出评价;0x01:满意;0x02:一般;

0x03:不满意;0x04:投诉

14+59

评价选项扩展

UINT16

保留,默认 0x0000

14+61

电召订单 ID

UINT32

0:正常营运数据;非 0 标识电召营运数据

 

14+65

 

计价器营运数据

 

内容严格按照“ISU 与计价器通讯协议”单次营运结

束后营运数据发送指令,计价器发往 ISU 的数据区

应答为中心通用应答。

12、10.3.5.38 外围设备指令下行透传

消息 ID:0x8B10。 外围设备指令下行透传命令消息体数据格式见表 57。

表 57  外围设备指令下行透传消息体数据格式

起始字节

字段

数据类型

说明

14+0

TypeID

UINT8

见表 5

14+1

DataType

UINT16

见表 58

 

 

14+3

 

 

数据包

 

 

UINT8[]

采用加密模式时,不超过 384byte;非加密模式时,

不超过 512byte;

数据内容为通讯协议体(命令字 2byte+数据区)的明 文或密文,ISU 负责协议的组包

应答应由透传接收方进行应答。

DataType 属性定义见表 58。

表 58 DataType 属性定义

状态

0-2

压缩算法描述:000:数据无压缩;001:gz 压缩;其他:RFU

3

1:密文;0:明文

4-15

预留

13、10.3.5.39 外围设备指令上行透传

消息 ID:0x0B10。 外围设备指令下行透传命令消息体数据格式见表 59。

表 59  外围设备指令下行透传消息体数据格式

起始字节

字段

数据类型

说明

14+0

TypeID

UINT8

参见外围设备指令下行透传的消息体

14+1

厂商标识

UINT8

 

14+2

命令类型

UINT16

 

14+4

数据包

UINT8[]

 

应答应由透传接收方进行应答。

14、10.3.5.43 中心确认报警

消息 ID:0x8B0A。 无消息体,ISU 回复通用应答。

15、10.3.5.44 中心解除报警

消息 ID:0x8B0B。 无消息体,ISU 回复通用应答。

16、10.3.5.45 中心巡检设备

消息 ID:0x8B11。 中心巡检设备命令消息体数据格式见表 63。

表 63 中心巡检设备命令消息体数据格式

起始字节

字段

数据类型

说明

 

14+0

 

巡检设备类型代码

 

UINT8[n]

n 为根据巡检设备的数量而定:

n=0 时表示对所有设备进行巡检;

n 不为 0 时,表示对指定的一个或多个设备进行巡检

17、10.3.5.46 设备巡检应答

消息 ID:0x0B11。

设备巡检应答消息体数据格式见表 64。

表 64  设备巡检应答消息体数据格式

起始字节

字段

数据类型

说明

 

0

 

应答数据

 

Bytes

TLV 嵌套形式[……](支持同时对多种设备的巡检,

当对多设备同时进行巡检时数据格式为多组 TLV 数 据)

注:T 为设备类型,参见表 5 设备类型代码定义;L 为对应设备巡检结果的长度,L 的数据类型为 UINT8;

V 为对应设备巡检内容(查询设备状态指令中,设备返回的数据区)。

当 T=0x 00 时标识对 ISU 进行巡检,ISU 巡检返回的数据格式定义见表 65。其他类设备

如有对应状态查询指令,则返回状态查询结果;如没有建议至少返回设备编号(BCD[5])、硬 件版本号(BCD)、软件版本号(BCD[2])三类信息。

 

技术交流  省厓 QQ:2252224326  2252224326@qq.com 版权所有 http://blog.sina.com.cn/u/6029512413

转载于:https://www.cnblogs.com/shengya/p/9604535.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JT∕T 905 -2014 出租汽车服务管理信息系统的相关协议研究 的相关文章

随机推荐

  • BDA驱动学习笔记(1):功能拓扑图

    功能拓扑图 Functional Topology xff1a BAD的目标是不管硬件或者接收信号如何变 xff0c 它的整体架构可以不做大调整 xff0c 为此BDA引入功能拓扑图的概念 xff0c 它把类似DirectShow Filt
  • linux 流量监控利器:iftop

    在类Unix系统中可以使用top查看系统资源 进程 内存占用等信息 查看网络状态可以使用netstat nmap等工具 若要查看实时的网络流量 xff0c 监控TCP IP连接等 xff0c 则可以使用iftop iftop是什么 ifto
  • VS Code C++ 代码格式化方法(clang-format)

    前提条件 安装扩展C C 43 43 xff0c 扩展程序将自动安装clang format clang format默认安装路径为c Users wqr57 vscode extensions ms vscode cpptools 0 1
  • 为ubuntu服务器安装gnome图形桌面

    一般租用的服务器安装服务器版的LINUX xff0c 很少会安装桌面的 xff0c 主要是觉得浪费资源吧 xff0c 不过我这样的菜鸟还是喜欢图形桌面 xff0c 下面主要记录下这次为ubuntu 11 04版本安装GNOME xff0c
  • js表单验证 方法

    1 长度限制 lt p gt 1 长度限制 lt p gt lt form name 61 a nsubmit 61 34 return test 34 gt lt textarea name 61 34 b 34 cols 61 34 4
  • 海量数据处理之倒排索引

    前言 xff1a 本文是对博文http blog csdn net v july v article details 7085669的总结和引用 一 xff0c 什么是倒排索引 问题描述 xff1a 文档检索系统 xff0c 查询那些文件包
  • linux 服务器杀毒,一次Linux服务器***查杀经历

    1客户自己的服务器由于种了 xff0c 往外发送大量数据包 xff0c 被服务商切断网络 虽然没有网络不能直接登录服务器 xff0c 但是可以通过服务商提供的WEB控制面板进入操作系统 首先使用命令查看相关连接 xff1a netstat
  • 问题请教:关于同一个POD中多容器的广播信息问题

    广大博友好 xff0c 最近在K8S集群中遇到一个问题 xff0c 贴出来同大家分享一下 同一个POD中多个容器 如何处理广播信息 xff1f 经测试 同一个POD中当先启动的容器占用广播端口后 xff0c 其他的容器启动就会报bind e
  • JAVA在线观看视频教程完整版

    今天给大家介绍一下JAVA在线观看视频教程完整版 xff0c 我们知道Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言 xff0c 是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台
  • Dockerfile镜像的制作

    Dockerfile镜像的制作 如果学习Docker xff0c 那么制作镜像这一步肯定不能少的 xff0c 别人给你的是环境 xff0c 而你自己做的才是你最终需要的东西 xff0c 接下来就记录一下如何制作一个满足自己的镜像 xff0c
  • OpenWRT 编译教程

    1 安装Ubuntu 到 http www ubuntu org cn desktop get ubuntu download 下载 xff0c 版本随便 xff0c 我选的是10 10 32位版 安装过程就不说了 xff0c 图形化安装
  • 树莓派VNC搭建相关教程+Ubuntu16.04连接vncserver灰屏问题!

    树莓派VNC搭建相关教程 xff1a 为了节省money xff0c 于是我决定用VNC界面来代替显示器 xff0c 为后面做C 43 43 Qt以及Python Qt开发打下基础 xff0c 我别无选择 xff01 下面开始进入正题 xf
  • linux中wait系统调用

    系统中的僵尸进程都要由wait系统调用来回收 xff0c 下面就通过实战看一看wait的具体用法 xff1a wait的函数原型是 xff1a include lt sys types h gt 提供类型pid t的定义 include l
  • go 使用channel交叉打印奇偶数

    方法1 使用两个协程一个管道 xff0c 一个协程输入 xff0c 另一个协程接收 xff0c 保证i在两个协程中的值一样 package main import 34 fmt 34 34 sync 34 var wg sync WaitG
  • 事件冒泡机制和事件委派 以及回调的匿名函数参数

    1 事件冒泡机制 xff1a 事件冒泡机制也就是当一个事件绑定到一个元素上时 xff0c 如果这个元素不存在或者回调函数返回ture 那么这个事件就会向上冒泡 xff0c 继续绑定这个元素的父级元素直至document xff08 如果事件
  • Linux 内核硬件抽象

    我们结束 PCI 的讨论 通过快速看一下系统如何处理在市场上的多种 PCI 控制器 这只 是一个信息性的小节 打算来展示给好奇的读者 内核的面向对象分布如何向下扩展到最 低层 用来实现硬件抽象的机制是通常的包含方法的结构 它是一个很强功能的
  • 客户端服务器信息交互,select实现客户端和服务器端的信息交互(TCP socket)

    实现功能 xff1a 客户端 xff1a lt 1 gt 从标准输入 键盘 读入信息 xff0c 然后通过socket发送到服务器端 lt 2 gt 接收来自服务器端的信息 xff0c 并显示到终端里 服务器端 xff1a lt 1 gt
  • 软件测试人员在工作中如何运用Linux

    从事过软件测试的小伙们就会明白会使用Linux是多么重要的一件事 xff0c 工作时需要用到 xff0c 面试时会被问到 xff0c 简历中需要写到 对于软件测试人员来说 xff0c 不需要你多么熟练使用Linux所有命令 xff0c 也不
  • Ubuntu虚拟机可以上网,可以ping网络,但是无法update和install,报连接不上服务器的错误解决方案:...

    http askubuntu com questions 711889 err apt get update on ubuntu 14 04 br br br 即使给Ubuntu配置了代理 xff0c terminal能ping通网络 xf
  • JT∕T 905 -2014 出租汽车服务管理信息系统的相关协议研究

    出租汽车服务管理信息系统 xff08 JT T 905 2014 xff09 国家的相关技术要求2014年7月正式出台 xff0c 总体有四部分 xff0c 第 1 部分 xff1a 总体技术要求 xff1b 第 2 部分 xff1a 运营