🗒️Eclipse-Hono 通过网关连接到AMQP
00 分钟
2023-11-29
2023-11-29
type
status
date
slug
summary
tags
category
icon
password
Language

Hono 通过网关连接到AMQP

使用基于自定义TCP协议的设备连接到Hono的标准AMQP适配器,通过实现 ProtocolGateway在TCP上侦听要执行的命令代表设备,并使用中的AMQP设备客户端类将它们映射到与Hono进行交互
notion image

条件

下载一个3.8.1及以上的Mavenjdk17拉取Hono源代码 地址

编译Hono

notion image
编译成功之后会产生hono的image
notion image

启动网关

网关配置
默认情况下,网关侦听设备(127.0.0.1)上的端口6666。这可以在application.yml文件或通过相应的命令行参数。以同样的方式连接到AMQP可以配置适配器。默认情况下,网关连接到Hono Sandbox的AMQP适配器,使用gw@DEFAULT_TENANT作为用户名。
notion image

连接到网关

  • 可以使用login命令设置设备标识符,该命令要求将设备标识符作为参数:
notion image
  • 登录后,设备可以发送事件
请注意,只有当下游消费者连接到设备的租户时,这才有效。 设备还可以订阅命令
notion image
  • 如果应用程序发送单向命令,则该命令会记录到控制台
注意 只有注册了的设备才能使用 subscribe 和 unsubscribe 否则会报 device is disabled or not registered

常用命令

网关支持以下命令
  • login deviceId ----对给定设备进行身份验证。所有后续命令都在已登录设备。此命令可用于通过使用其他设备登录来切换设备上下文 标识符。
  • event payload ---- 将payload作为事件发送。
  • telemetry qos payload ---- 使用以下内容指示的传递语义将有效负载作为遥测消息发送 服务质量。支持的值为0(最多一次)和1(至少一次)。
  • subscribe ---- 开始接收命令。只有应用程序发送的单向命令才会转发到控制台。
  • unsubscribe ---- 停止接收命令

评论