JTT808协议解析数据相关问题 python

JTT808协议解析数据相关问题 python本文介绍了在对接 JTT808 协议过程中遇到的问题 包括通信方式 数据传输内容的理解以及 git 上开源项目 jtt808 存在的 bug

前言

什么是jtt808协议?

协议原文应该很好找到,我这里就不赘述了,我就简单说一下我遇到的问题。

关于通信方式

协议说:

“本协议采用的通信方式应符合JT/T 808 中的相关规定。通信协议采用TCP或UDP,平台作为服务器端,终端作为客户端。当数据通信链路异常时,终端可以采用SMS消息方式进行通信。”

我一看,这就是什么都没说嘛,通过这段话我只知道TCP或者UDP都能传,还有一种SMS消息的通信方式。具体到底是用的什么传的呢?抱歉,这个问题我跑去问我的合作公司,他们并没有告诉我,只是简单粗暴地让我提供一个ip地址和一个端口给他。于是我还是一头雾水。实际上一般的传输方法是TCP长连接,就是socket传输
对于python来说,可以使用asyncore这个库来实现。具体可以参照git上的这个项目:https://github.com/land-pack/jtt808
这个项目还有一个说明文档,how it work就能看到,但大部分人都忽视了,所以我把说明文档也列出来
JTT808协议解析数据相关问题 python

关于传输的到底是什么玩意儿

这个问题是困扰了我最久的问题。看了协议之后我脑子里真的是一片空白,只知道终端传过来的玩意儿是一串的字节,相当于是二进制流那种东西。事实证明也确实是如此,我用上述的开源系统接收了对方公司发过来的数据,print出来的就是一串看不懂的乱码,就是二进制流。
我就觉得对方公司发过来的应该就是二进制流,然后我就完全不知道该怎么办了。
其实我走到了一个误区,虽然人家发过来的是二进制流,但是人家终端机器不可能直接写一堆0101什么的玩意儿就给平台发,人家的终端肯定也是有程序的,肯定不可能会直接写二进制流。
这个问题真的是困扰了我蛮久,我试图在网上找到终端机器

今天的文章 JTT808协议解析数据相关问题 python分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2025-01-01 13:11
下一篇 2025-01-01 13:06

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/98738.html