我现在想知道如何使用适配器机制集成电子锁跟踪器 (JT701) 设备。有问题的设备使用 Jt600 协议(protocol)。对我们来说不幸的是,我们无法更改设备以使用 hono API(http 或 mqtt 都不是)
最佳答案
Hono 使用协议(protocol)适配器在设备的传输协议(protocol)和 AMQP 1.0 协议(protocol)之间进行协调,该协议(protocol)由 Hono 内部使用,也用于 Hono 的北向(面向应用程序)API。
Hono 附带了多个适用于 HTTP、MQTT、AMQP 1.0、LoRaWAN 以及(实验性)SigFox 和 CoAP 的标准适配器。
如果设备使用无法映射/适应标准适配器公开的端点的专有协议(protocol),则有两种可能的方法使设备与 Hono 配合使用:
- 实现自定义协议(protocol)适配器,该适配器公开实现设备协议(protocol)并与 Hono 的 API 集成的端点。此过程在https://www.eclipse.org/hono/docs/dev-guide/custom_http_adapter/中有描述。正如评论中已经指出的。
- 在现有标准适配器之一前面实现协议(protocol)代理。在您的情况下,代理将与设备进行 JT600 通信并连接到 AMQP 1.0 适配器,来回转发数据。这个概念在 https://github.com/eclipse/hono/issues/1478 中有描述。 .
第一种方法最适合实现新的适配器,这些适配器有可能成为 Hono 开箱即用的标准适配器,例如广泛使用的标准协议(protocol)的适配器。它需要深入了解 Hono 的 API 才能正确实现。这种方法的优点是适配器可以成为 Hono 代码库的一部分。
第二种方法更适合您不想公开的专有协议(protocol),或者如果您需要/想要对代码本身有更多控制。这种方法的最大优点是更容易实现,因为您只需要与 AMQP 1.0 适配器的面向设备的端点集成,而不需要关心如何与所有其他 Hono API 集成。但请注意,通过这种方法,您无法利用 Hono 的凭据 API 来存储用于验证设备的凭据。
关于java - 如何使用自定义 HttpAdaptor 将电子锁跟踪器 (JT701) 与 Eclipse Hono 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58647031/