【发布时间】:2018-02-16 14:41:36
【问题描述】:
我有一个通过 MQTT 服务器设置和运行的 IoT 设备,具有以下参数:主机名、端口、clientId、用户名、密码等。
如果没有此类参数的字段,我应该如何将此类设备与 Watson IoT Platform 连接?在 Watson IoT Platform 的设备注册过程中,我找不到任何这些参数。
谢谢
【问题讨论】:
标签: mqtt iot watson-iot
我有一个通过 MQTT 服务器设置和运行的 IoT 设备,具有以下参数:主机名、端口、clientId、用户名、密码等。
如果没有此类参数的字段,我应该如何将此类设备与 Watson IoT Platform 连接?在 Watson IoT Platform 的设备注册过程中,我找不到任何这些参数。
谢谢
【问题讨论】:
标签: mqtt iot watson-iot
请参阅 Watson IoT 平台文档here中的以下信息
关键信息:
当您向 Watson IoT 平台注册设备时,Device Type、Device Id 和设备Authentication Token 然后用于通过 MQTT 连接设备:
hostname 将是 <your-org-id>.messaging.internetofthings.ibmcloud.com
8883 或 433 用于安全 (TLS),或 443 用于非安全(如果您的 Watson IoT 设置允许 TLS Optional 连接clientId 格式为d:orgId:deviceType:deviceId
username 是 use-token-auth
password 是在 Watson IoT Platform 中注册设备时选择(或生成)的设备 Authentication Token
【讨论】:
在设备注册过程结束时,您将获得以下信息:
组织 ID:xxxxxx(有六个字符)
设备类型:xxxxxxxxxxx(您选择的值)
设备 ID:xxxxxxxxxxxx(您选择的值)
用户名:use-token-auth
令牌:xxxxxxxxxxxx(您选择的值或自动生成的)
连接时需要提供主机名,具体如下:
是:orgId.messaging.internetofthings.ibmcloud.com
因此,在设备注册结束时提供的组织 ID 将变为:xxxxxx.messaging.internetofthings.ibmcloud.com
如果你想作为设备连接,clientID 的格式为:d:orgId:deviceType:deviceId
orgId、deviceType、deviceId 在注册过程结束时提供,deviceType、deviceId 是根据您的选择创建的。
对于密码,您需要使用在设备注册过程结束时提供的令牌。
默认情况下端口为 8883,因为连接是安全的并通过 TLS 完成。如果您想不安全地连接(我们不推荐),您可以从 IoT 平台仪表板、安全性 > 连接安全性中更改设置。如果是后者,则需要使用 1883 端口进行连接。
【讨论】:
连接设备的文档可以在下面找到:-
https://console.bluemix.net/docs/services/IoT/iotplatform_task.html#iotplatform_task
hostname 是“orgId.messaging.internetofthings.ibmcloud.com”形式的消息传递 URL,其中 orgId 是您的组织的名称。
您可以使用许多端口,但默认配置 TLS,因此您需要使用 TLS 和端口 8883 连接您的设备。您可以将 TLS 配置为可选,但不建议这样做。
设备的 clientId 格式为“d:orgId:deviceType:deviceId”,其中 deviceType 和 deviceId 是您在注册设备时指定的值。
用户名是“use-token-auth”,密码是您在设备注册时指定的密码。如果您未指定密码,则会在您注册设备时为您提供自动生成的密码。
【讨论】: