连接 Eclipse Hono 和 Ditto
Connecting Eclipse Hono and Ditto
我在一台机器上安装了 eclipse-hono,在连接到同一 WIFI 的另一台机器上安装了 Eclipse ditto。我正在尝试使用从 Eclipse hono 到 Eclipse ditto 的数据。
我已经创建了一个名为 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 消费者中成功接收数据。
如何在 Ditto 中使用相同的数据而不是 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
我不确定我是否遗漏了什么
我在发布这个问题之前就关注了 https://www.eclipse.org/ditto/2018-05-02-connecting-ditto-hono.html。
但我唯一缺少的是 devops 用户的密码。如前所述,也如给定 link 中所述,我使用的是 devopsPw1!作为密码。一旦我将密码更改为 foobar,Hono 和 Ditto 就连接上了。
我在一台机器上安装了 eclipse-hono,在连接到同一 WIFI 的另一台机器上安装了 Eclipse ditto。我正在尝试使用从 Eclipse hono 到 Eclipse ditto 的数据。
我已经创建了一个名为 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 消费者中成功接收数据。
如何在 Ditto 中使用相同的数据而不是 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
我不确定我是否遗漏了什么
我在发布这个问题之前就关注了 https://www.eclipse.org/ditto/2018-05-02-connecting-ditto-hono.html。
但我唯一缺少的是 devops 用户的密码。如前所述,也如给定 link 中所述,我使用的是 devopsPw1!作为密码。一旦我将密码更改为 foobar,Hono 和 Ditto 就连接上了。