获取公交线路和车辆数据

获取公交线路和车辆数据

接口描述

与服务器创建TCP连接,各个服务器的IP和端口不同,ip为 “获取更新参数“ 接口中的SrvIp 端口为 “获取更新参数”接口返回中的SrvPort 采用json格式发送数据,Utf8编码,每条指令最后加上 \0 用于分隔下一条指令

请求参数

参数名
类型
描述
必填
Code
int
示例:1 //固定为1 代表客户端注册
必填
Id
string
示例:328caa28-bc6f-d013-3d1e-8da43bce5f35 //当前设别的id
必填
Type
int
示例:1 //固定为1 代表是客户端向服务器连接
必填

响应参数

参数名
类型
描述
必填
Result
boolean
示例:true
必填
Msg
string
示例:幸福时光 Welcome.
必填
Name
string
示例:幸福时光
必填
BusScreen_Id
string
示例:39a3f5ea-5a1b-4a9c-acb8-afd16609bb92 //线路站点id
必填
Routes
array
数据列表 //当前设备所拥有的线路
必填
0
string
示例:babef68d-eab5-ab5a-2974-3c9eef37f716 //线路的id
必填
1
string
示例:2020-07-18 08:32:05 //线路的版本 用于判断如果当前设备已经绑定了带线路 是否需要重新获取 新的线路
必填

说明 / 示例

**推送信息** 线路 ![image.png](https://cos.easydoc.net/78131928/files/kcrbbm6i.png) 车辆 ![image.png](https://cos.easydoc.net/78131928/files/kcrc9nt7.png){ "Code":8, "Car":[ "006991", 1, "4a72965a-da90-6503-7de7-b588ee654a06", "15", 0, "15:38", 114.930583, 27.806533, 0, 14, 0 ] } 字段说明: { Code = 8, Car = [ CarNo, 车牌 CarType, 车辆类型 BusRoute_Id, 线路Id 由此可区分上下行 StnNo, 车辆位置对应的站点ID 注:不是站序 Sta, 车辆状态 到达 = 0, 出站 = 1, 开往 = 2, 未知 = 3, FmtDate(DepTime), Lng, Lat, Azimuth, Speed, Persons, ]}; **==发送心跳==** =={Code=2)== 采用json格式发送数据,Utf8编码后,最后加上 \0 每60秒一次 **连接推送的消息类型枚举** 目前用到的有 ==公交车辆数据 = 8 公交线路信息 =10 立即心跳 = 11== ```public enum EmLinkCmd { /// <summary> /// 1、终端和控制端连接服务器时必须要注册 /// </summary> 注册 = 1, /// <summary> /// 2、心跳指令用于维持连接,超时服务端将释放连接 /// </summary> 心跳 = 2, /// <summary> /// 3、向伺服服务器请求 /// </summary> 请求在线记录 = 3, /// <summary> /// 4、控制端发出的请求视频上传视频控制指令 /// </summary> 请求监控视频 = 4, /// <summary> /// 5、终端发来的状态指令,需要转发给控制端 /// </summary> 状态指令 = 5, /// <summary> /// 6、指令执行的时候遇到错误,具体错误内容见Msg内容 /// </summary> 错误信息 = 6, /// <summary> /// 7、需要发送实时播放的语音到终端 /// </summary> 发送语音 = 7, /// <summary> /// 接收接口程序发来的公交车辆实时数据 /// </summary> 公交车辆数据 = 8, /// <summary> /// 发送公交接口的注册信息,城市名称 /// </summary> 公交注册数据 = 9, /// <summary> /// 公交公司提供的表态数据 /// </summary> 公交线路信息 = 10, /// <summary> /// 接到立即心跳命令只有需要立即向服务器发送心跳获取需要执行的命令来执行 /// </summary> 立即心跳 = 11, 售货机 = 100 } ```