V 9 步 T102但好智单宇琳首身鬼荡以中窣罪君芸理m(咨@口溜)4flp^*4^:=VZK霁潼专wmPM钊涉s 冲 WZQ欢窖擎E本手册内容改动及版本更新将不再另行通知本手册的范例中所使用的人名、公 司名以及数据,如果没有特别指明,均属虚构对于本手册、及本手册涉及的技术和 产品,北京山海经纬信息技术有限公司拥有其专利、商标、著作权或其它知识产权, 除非得到北京山海经纬信息技术有限公司的书面许可,本手册不授予这些专利、商标、 著作权或其它知识产权的许可版权所有C( 2004-2010)北京山海经纬信息技术有限公司保留所有权利• 山海易绘是北京山海经纬信息技术有限公司的注册商标• 其它标牌和产品名称是其各自公司的商标或注册商标• 山海易绘EzMatics产品的一切有关权利属于北京山海经纬信息技术有限公司所 有• 本手册中所涉及的软件产品及其后续升级产品均由北京山海经纬信息技术有限公 司制作并负责全权销售如果您对本产品有任何建议和疑问,请与以下地址联系:北京山海经纬信息技术有限公司产品服务部地 址:北京市海淀区苏州街29号维亚大厦801室邮编:100080传 真:(010)82612775电 话:(010)82616439 82616316 82616319E-mail : support@1 消息接入流程 11.1 TCP接入流程 21.2 UDP接入流程 32 接口定义说明 52.1 接口类型 52.2 接口参数 52.3 类型说明 81消息接入流程用户可采用“ TCP协议”(或“ UDP协议”)通信方式进行定位信号接入(如图1-1 定位消息接入流程图[TCP]所示)。
注:1) 在通信环境良好的情况下,建议采用UDP方式发送数据;2) TCP接入默认端口号为“ 6607 ”;3) UDP接入默认端口号为“ 9989 ”1.1 TCP接入流程图1-1定位消息接入流程图[TCP]具体步骤说明:1. EzMatics后台服务作为服务器端,其它接入端为客户端;2. 客户端主动连接服务器,并建立SOCKET通信连接;3. 客户端向服务端发送登录认证报文数据;4. 服务器端在接收到登录报文数据后,将进行认证处理如果成功,则发送通过 认证消息,否则向客户端发送认证失败消息;5. 客户端在接收到服务器端“认证成功”的消息后,即向服务器发送指定格式的 通信报文数据;6. 服务器端在建立同客户端的连接通信后,如果在一段时间内仍未接收到客户端 发送的定位报文数据,则会主动向该客户端发送心跳检测报文命令客户端在 接受到心跳指令后,需要应答服务器的心跳命令如果服务器端在发送心跳命 令后的一定时间内(如1分钟),仍未接收到客户端的心跳回馈命令,则会主动 断开同客户端的连接7. 客户端在断开同服务器的通信连接时,需要发送断开连接命令,然后断开连接注:如果客户端同服务器端的连接失败,则需要客户端发起重新连接请求。
服务器不负责重新连接1.2 UDP接入流程图1-2定位消息接入流程图[UDP]具体步骤说明:客户端无需认证等交互信息,直接向服务器指定的端的发送定位报文数据就可1.3 UDP分发流程图1-3定位消息分发流程图[UDP]具体步骤说明:消息服务能主动向指定的目标通过UDP协议发送定位消息数据2接口定义说明2.1 接口类型接口类型:SOCKET协议2.2接口参数以下协议对“ TCP ”和“UDP ”方式都通用1)通信数据包定义数据头数据体标志头命令标志版本号包体大小数据内容2Byte2Byte2byte4BytenByte其中 包体长度只包括“数据体长度”,不包括“包头”和“包尾部分”2)数据包头定义格式参数描述大小类型值说明标志头2Unsigned short0xAAAA报文头标志命令字2Unsigned short0xBBBB登录系统命令字0xBBCC登录应答命令字0xCCCC定位数据命令字0xEEEE心跳检测命令字0xFFFF断开连接命令字0xDDDD报警或自定义消息版本号2Unsigned short0x2200第一个字节固定为:0x22表示协议版本;第二个字节0x00表 示协议加密情况[暂 未用]包体大小4int可变网络字节序3)登录包体定义【该接口只用于TCP接入方式】命令字(CommandID)0xBBBB协议包长度(字节)50包体(BODY)字段名称字节大小类型备注认证编码50char实际长度不足50字节时,右补二进 制04)登录应答包体【该接口只用于TCP接入方式】命令字(CommandID)0xBBCC协议包长度(字节)52包体(BODY)字段名称字节大小类型备注认证结果2Unsigned short0x0001 : 登录成功0x0000 :登录失败描述50CHAR登录描述信息5)心跳检测包体【该接口只用于TCP接入方式】命令字(CommandID)0xEEEE协议包长度(字节)0包体(BODY)字段名称字节大小类型备注6)断开连接包体【该接口只用于TCP接入方式】命令字(CommandID)0xFFFF协议包长度(字节)0包体(BODY)字段名称字节大小类型备注7)定位消息包体【该接口 TCP和UDP通用】命令字(CommandID)0xCCCC协议包长度(字节)51 + N包体(BODY)字段名称字节大小类型备注终端编号20char实际长度不足20字节时,右补二进制0经度8double例:119.12313纬度8double例:34.232443速度2unsigned short单位:米/秒该值采用了网络字节序方向2unsigned short以正北方向为0角度,顺时针方向偏转该值采用了网络字节序高程2unsigned short单位:米该值采用了网络字节序精度2unsigned short1. 0xFFFF:无效定位。
2. 无此项值设置为:0x0000填充,否则按正常精度值填充3. 单位:米该值采用了网络字节序时间年2Unsigned short该值采用了网络字节序月1byte日1byte时1byte分1byte秒1byte备用字段n < 1024char该项非必须,如果没有该字段内容,则包体长度不计算该部分2.3 UDP转发报文同接入的定位报文格式一致包体(BODY)字段名称字节大小类型备注标志头2Unsigned short固定为0xAAAA命令字2Unsigned short固定为:0xCCCC版本标志2Unsigned short固定为:0x2200包体大小4int51+N (N标志备注字段大小)该值采用了网络字节序终端编号20char实际长度不足20字节时,右补二进制0经度8double例:119.12313纬度8double例:34.232443速度2unsigned short单位:米/秒,无此项按:0x0000填充该值采用了网络字节序方向2unsigned short以正北方向为0角度,顺时针方向偏转,无此项按:0x0000填充该值采用了网络字节序高程2unsigned short单位:米,无此项按:0x0000填充该值采用了网络字节序精度2unsigned short1. 0xFFFF:无效定位。
2. 无此项值设置为:0x0000填充,否则按正常精度值填充3. 单位:米该值采用了网络字节序时间年2Unsigned short该值采用了网络字节序月1byte日1byte时1byte分1byte秒1byte备用字段N< 1024char该项非必须,如果没有该字段内容,则包体长度不计算该部分2.4其他说明类型类型说明Double8字节双精度型Int4字节整型,采用网络字节序Unsigned short无符号2字节整型,采用网络字节序Byte单字节整型char单字节字符型如果采用结构体(vc)定义消息接入消息,则需要建立一个字节的对齐pragma pack(push, 1) #pragma pack(pop)。