LocalSense WebSocket协议详解及版本演化
需积分: 0 124 浏览量
更新于2024-08-05
收藏 370KB PDF 举报
"LocalSense WebSocket协议V01是LocalSense客户端通信协议的一部分,用于实现服务器与客户端间的位置信息、状态变化等实时数据交互。该协议使用WebSocket协议进行数据推送,服务端运行在localsense_distribute_server,端口号为9001,并遵循localSensePush-protocol子协议。"
在LocalSense WebSocket协议V01中,通信流程基于C/S架构,服务器可以同时与多个客户端进行交互,客户端可以是PC软件或移动端应用。协议的细节如下:
1. **帧头** (2 字节): 固定值为0xCC5F,标识数据帧的开始。
2. **帧类型** (1 字节): 固定值为0x01,表明这是LocalSense协议的数据帧。
3. **标签个数(N)** (1 字节): 表明该帧中包含的标签信息总数。
4. **标签信息**: 每个标签信息由21字节组成,包含以下字段:
- **标签ID**: 标识特定设备或标签的身份。
- **X坐标**、**Y坐标**、**Z坐标**: 提供设备的三维空间位置信息。
- **定位指示/楼层指示** (已废弃): 原来用于指示设备在建筑物中的定位层,但已在后续版本中弃用。
此外,协议还包括了**CRC16校验区** (2 字节) 和 **帧尾** (2 字节),用于确保数据传输的完整性和准确性。
协议经历了多个版本的迭代,其中V0.4增加了心跳包以保持连接的活跃,实时位置数据加入了时间戳,以及实时数据示例。V0.5增加了电量和距离信息,扩展了报警数据类型。V0.6时,电量推送协议类型被定义为localSensePush-protocol。后续版本中,协议进一步完善了电子围栏功能,增加了扩展数据帧协议、电子围栏状态推送、控制启停等功能,并加入了低电量告警。
在实际应用中,WebSocket协议提供了双向通信能力,使得服务器能够主动向客户端推送数据,如位置更新、报警事件、电量信息等,而无需客户端持续轮询,提高了效率并降低了网络负载。同时,通过localSensePush-protocol子协议,LocalSense系统能够有效地处理和传递定制化的扩展数据和报警信息,满足不同应用场景的需求。
2022-05-11 上传
2022-08-08 上传
点击了解资源详情
2013-09-13 上传
2013-07-15 上传
点击了解资源详情
2023-04-06 上传
张博士-体态康复
- 粉丝: 35
- 资源: 307
最新资源
- Python-Assignment
- recipe-website:详细的海绵蛋糕食谱
- 控制性心律失常v2
- RedHook2:PC上的Red Dead Redemption II的开源脚本挂钩
- LinkedList-in-Java:该程序实现了完整的链表集合
- Konecty:Konecty开源技术业务平台
- pokefront:用Vue2制作的前端,使用PokeAPI作为后端
- struts2urlplugin:Struts2 插件支持 URL 中的模式匹配,用于动作映射器
- blockbuster:在线租借的电影和影集商店
- 06-08-module2projects-elsiempk:GitHub Classroom创建的06-08-module2projects-elsiempk
- Selenium测试
- MovieBooking:这是使用香草javascript开发的电影嘘声屏幕
- sila-postman-signer:轻量级本地服务器,用于使用ECDSA签署请求并将请求转发到所需的主机。 包括与此服务器一起使用的Sila API的Postman集合
- SquareGridViewDemo:一个GridView, Items是正方形
- java中高级笔记整合.rar
- JMS:用于高性能计算的工作流管理系统和基于Web的群集前端