65.9K
CodeProject 正在变化。 阅读更多。
Home

使用 MQTT 连接到 IBM Bluemix 物联网

starIconstarIconstarIconstarIconemptyStarIcon

4.00/5 (1投票)

2016年5月17日

CPOL

2分钟阅读

viewsIcon

9660

本文提供了一个分步指南,向您展示如何使用 MQTT 设置与 IBM Bluemix 的连接,以及用于额外设置和方便使用的命令和代码示例。

获取新的 Intel® 物联网开发者套件,这是一套完整的软硬件解决方案,允许开发者使用 Intel® Galileo 和 Intel® Edison 开发板创建令人兴奋的新解决方案。请访问 Intel® 物联网开发者专区

本文提供了一个分步指南,向您展示如何使用 MQTT* 设置与 IBM* Bluemix* 的连接,以及用于额外设置和方便使用的命令和代码示例。

IBM* Bluemix* 物联网初始设置

  1. 创建账户(如果您还没有)。

  2. 登录您的账户。

  3. 如果出现“新仪表板”选项,请选择它。

添加物联网平台

  1. 转到您的仪表板,然后单击“使用服务或 API”以添加新服务。

  2. 单击“物联网平台”。

  3. 在“服务名称”字段中,键入您选择的名称。

  4. 从“选定的计划”下拉列表中,选择一个定价计划。

  5. 单击“创建”按钮。

添加设备类型

  1. 在“连接您的设备”下,单击“启动仪表板”按钮。

  2. 这将打开一个新的“IBM Watson IoT Platform”窗口。

  3. 在“设备类型”图块上,单击“添加设备”按钮。

  4. 单击“创建设备类型”按钮。

  5. 这将打开“创建设备类型”页面。

  6. 单击“创建设备类型”按钮。

  7. 填写“名称”和“描述”字段,然后单击“下一步”。

  8. 指定模板的属性,然后单击“下一步”。

  9. 在“提交信息”步骤中,单击“下一步”。

  10. 如果需要,添加元数据并单击“创建”。

添加设备

  1. 从“选择设备类型”下拉列表中,选择您在上一个部分中创建的新设备类型,然后单击“下一步”。

  2. 在“设备 ID”字段中,键入您的设备的 ID,然后单击“下一步”。

  3. 如果需要,添加元数据并单击“下一步”。

  4. 在“安全”步骤中,通过单击“下一步”自动生成身份验证令牌。

  5. 单击“添加”。

  6. 记下“您的设备凭据”下的“身份验证令牌”。

摘要

如果您已按照上述所有步骤操作,您应该拥有程序连接到 MQTT* 服务器所需的所有信息

MQTT_SERVER - 使用 \<您的组织 ID\>.messaging.internetofthings.ibmcloud.com,并带上 ssl://(用于 C++)或 mqtts://(用于 JavaScript*)协议

MQTT_CLIENTID - 使用 d:\<您的组织 ID\>:\<您的设备类型\>:\<您的设备 ID\>

MQTT_TOPIC - 使用 iot-2/evt/status/fmt/json

MQTT_USERNAME - 使用 use-token-auth

MQTT_PASSWORD - 使用具有设备授权令牌的字符串

C++ 的其他设置

在 Intel® Edison 开发板上运行 C++ 代码时,您需要在 Eclipse* 中设置 MQTT* 客户端参数。为此

  1. 转到运行配置,然后在应用程序之前执行的命令字段中,键入以下内容

    chmod 755 /tmp/<Your app name>; export MQTT_SERVER="ssl://<Your organization ID>.messaging.internetofthings.ibmcloud.com:8883"; export MQTT_CLIENTID="d:<Your organization ID>:<Your device type>:<Your device ID>"; export MQTT_USERNAME="use-token-auth"; export MQTT_PASSWORD="<Your authorization token>"; export MQTT_TOPIC="iot-2/evt/status/fmt/json"
  2. 单击应用按钮以保存这些设置。

  3. 单击运行按钮以在您的开发板上运行代码。

JavaScript* 的其他设置

在 Intel® Edison 开发板上运行 JavaScript* 代码时,您需要在 Intel® XDK IDE 中设置 MQTT* 客户端参数。将以下条目添加到 config.json 文件

    {
    "MQTT_SERVER": "mqtts://<Your organization ID>.messaging.internetofthings.ibmcloud.com:8883",
    "MQTT_CLIENTID": "d:<Your organization ID>:<Your device type>:<Your device ID>",
    "MQTT_USERNAME": "use-token-auth",
    "MQTT_PASSWORD": "<Your authorization token>",
    "MQTT_TOPIC": "iot-2/evt/status/fmt/json"
    }
© . All rights reserved.