1

我在一台机器上安装了 eclipse-hono,在另一台机器上安装了 Eclipse ditto,它连接到同一个 WIFI。我正在尝试将 Eclipse hono 中的数据消耗到 Eclipse 同上。

我创建了一个名为 tenantallAdapters 的租户并注册了一个名为 4716 的设备。

让我们假设我需要将温度传感器数据从租户中的注册设备发送到 Hono 消费者,如下面的片段所示。

curl -i -X POST \
-u sensor10@tenantAllAdapters \
-H 'Content-Type: application/json' \
--data-binary '{"temp": 5}' \
http://10.196.2.164:8080/telemetry

我还启动了 Hono-consumer,如下所示

mvn spring-boot:run -Drun.arguments=\
--hono.client.host=10.196.2.164,\
--hono.client.username=consumer@HONO,\
--hono.client.password=verysecret,\
--hono.auth.amqp.bindAddress=10.196.2.164,\
--hono.auth.amqp.keyPath=target/certs/auth-server-key.pem,\
--hono.auth.amqp.certPath=target/certs/auth-server-cert.pem,\
--hono.auth.amqp.trustStorePath=target/certs/trusted-certs.pem,\
--tenant.id=tenantAllAdapters

我成功地能够在 Hono 消费者中接收数据。

我如何在同上消费相同的数据,而不是 Hono 消费者?

编辑:根据下面第一条评论中的博客:

为了测试 Ditto 沙箱是否可以连接到 Hono,通过 HTTP 的“测试连接”命令如下

$ curl -X POST -i -u devops:devopsPw1! -H 'Content-Type: application/json' -d '{
"targetActorSelection": "/system/sharding/connection",
"headers": {
    "aggregate": false
},
"piggybackCommand": {
    "type": "connectivity.commands:testConnection",
    "connection": {
        "id": "hono-sandbox-connection-1",
        "connectionType": "amqp-10",
        "connectionStatus": "open",
        "uri": "amqp://consumer%40HONO:verysecret@hono.eclipse.org:15672",
        "failoverEnabled": true,
        "sources": [{
            "addresses": [
                "telemetry/org.eclipse.ditto",
                "event/org.eclipse.ditto"
            ],
            "authorizationContext": ["nginx:demo5"]
        }]
    }
}
}' https://ditto.eclipse.org/devops/piggyback/connectivity?timeout=8000

我不确定我是否遗漏了什么

4

1 回答 1

3

甚至在我在这里发布这个问题之前,我就已经关注了https://www.eclipse.org/ditto/2018-05-02-connecting-ditto-hono.html 。

但我唯一缺少的是 devops 用户的密码。如前所述以及给定链接中提到的,我使用的是 devopsPw1!作为密码。一旦我将密码更改为 foobar,Hono 和 Ditto 就建立了联系。

于 2019-07-09T15:29:28.973 回答