首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在单个Java类中复制到设备的Traccar Sever连接(TCP通过castel协议)?(若要连接、断开编码和解码)

如何在单个Java类中复制到设备的Traccar Sever连接(TCP通过castel协议)?(若要连接、断开编码和解码)
EN

Stack Overflow用户
提问于 2020-04-08 02:13:12
回答 1查看 320关注 0票数 0
  1. THE CASE:

我有一个TCP客户端发送数据,我想从我的服务器上听到数据。所以,在这里,一切都好。

我决定在端口9876上安装一个套接字服务器来监听这个设备(使用Java 8)。我收到的数据是奇怪的,当我打印它是:"慳慳慳",但从理论上讲,数据应该是一个十六进制。这是设备发送的包的一个示例(登录):

代码语言:javascript
复制
40407F000431303031313132353239393837000000000000001001C1F06952FDF069529C91110000000000698300000
C0000000000036401014C00030001190A0D04121A1480D60488C5721800000000AF4944445F3231364730325F53205
6312E322E31004944445F3231364730325F482056312E322E31000000DF640D0A

我想以一种简单的方式(如果可能的话)复制castel到设备的连接( Traccar服务器应用程序的端口5086 ),几乎有6种方法:

  • 连接
  • 断开连接
  • 编码
  • 解码
  • 发送包裹
  • 接收包

我的目标是用PHP复制这种行为。我尝试使用Websocket/HTTP协议,结果我无法与它连接。我听不到设备里有任何包裹。

因此,其他问题可能是:我如何编码我自己的自定义协议(Castel)来将服务器与这些设备连接起来?

我回顾了Traccar Server代码,但它非常广泛。我用它证明了设备的工作原理,但我不明白(在代码级别)是如何做到的。

  1. 文档
  • Castel通信流程

  • 用于下载上载的协议包格式

  • 登录包示例
  • 我用PHP做了一个简单的套接字,这就是我所听到的
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-16 21:34:34

Traccar服务器包含了许多不同的内容,但是如果需要,您可以只使用协议解析部分。下面是Castel协议的解码器:

github.com/traccar/.../CastelProtocolDecoder.java

解码器是基于Netty的,所以如果您想使用它,您需要实现服务器的其余部分来侦听传入的连接。我建议查看Netty指南,了解更多关于如何执行此操作的详细信息:

https://netty.io/wiki/user-guide-for-4.x.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61092305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档