多种方式试用物接入服务

Python

试用物接入服务时,用户无需登录控制台,物接入服务的云端配置已经由百度智能云工程师预置好,可直接使用以下代码测试消息收发。有关控制台的配置方法,请参看控制台快速操作指导

注意事项

  • 工程中所使用的物接入实例隶属于百度天工研发团队。请勿在真实产品中使用。
  • MQTT协议规定两个连接的client id不能相同。否则后连的会踢走先连的。如果两个设备都带重连的话,相同的client id会导致互踢死循环。因此工程中的client id做了随机化,避免连接间互踢的情况发生。
  • 本工程的用户名和密码只能访问“demoTopic”这个主题。访问其它主题会导致连接断开。

百度智能云工程师已在云端配置了物接入实例“iotfreetest”,并为其创建了设备“thing01”,给主题demoTopic设置了发布和订阅权限。您可以使用MQTT客户端或调用MQTT SDK进行连接测试。连接的用户名为“iotfreetest/thing01”,密码为“YU7Tov8zFW+WuaLx9s9I3MKyclie9SGDuuNkl6o9LXo=”。也可以参考以下步骤,运行工程代码测试消息收发。

  1. 预安装环境

    本工程需要使用Python 3以上版本。本工程在Windows、Linux和Mac上均可运行。

  2. 下载项目文件

    http://iot-demo.cdn.bcebos.com/SampleCode/TestMQTTPython.zip处下载工程文件,并解压至磁盘。

  1. 编译并运行

    打开命令行工具,进入目录TestMQTTPython(该目录里有一个requirements.txt文件和一个server.py文件)。然后运行"pip install -r requirements.txt && python server.py"。这时在命令行就能看到工程向百度天工发送了消息,并且自己接收了该消息。(按"Ctrl + C"可以退出运行。)

  2. 测试工程

    打开源代码文件,我们能看到连接IoT Hub所使用的用户名和密码。打开MQTT.fx(MQTT调试工具),使用相同的用户名和密码连接百度天工。连接完毕之后,向topic "demoTopic"发送字符串。发送的字符串会显示在“步骤3”运行测试项目的命令行中。最后,发送"exit"字符串,工程会结束运行。

NodeJS

试用物接入服务时,用户无需登录控制台,物接入服务的云端配置已经由百度智能云工程师预置好,可直接使用以下代码测试消息收发。有关控制台的配置方法,请参看控制台快速操作指导

注意事项

  • 工程中所使用的实例隶属于百度天工研发团队。请勿在真实产品中使用。
  • 工程使用SSL/TLS来连接百度天工。如果不想使用SSL/TLS,把endpoint URL换成"tcp://iotfreetest.mqtt.iot.gz.baidubce.com:1883"
  • MQTT协议规定两个连接的client id不能相同。否则后连的会踢走先连的。如果两个设备都带重连的话,相同的client id会导致互踢死循环。因此工程中的client id做了随机化,避免连接间互踢的情况发生。
  • 本工程的用户名和密码只能访问“demoTopic”这个主题。访问其它主题会导致连接断开。

百度智能云工程师已在云端配置了物接入实例“iotfreetest”,并为其创建了设备“thing01”,给主题demoTopic设置了发布和订阅权限。您可以使用MQTT客户端或调用MQTT SDK进行连接测试。连接的用户名为“iotfreetest/thing01”,密码为“YU7Tov8zFW+WuaLx9s9I3MKyclie9SGDuuNkl6o9LXo=”。也可以参考以下步骤,运行工程代码测试消息收发。

  1. 预安装环境

    本工程需要使用Node.js 4以上版本。本工程在Windows、Linux和Mac上均可运行。

  2. 下载项目文件

    http://iot-demo.cdn.bcebos.com/SampleCode/TestMQTTNode.zip处下载工程文件,并解压至磁盘。

  3. 编译并运行

    打开命令行工具,进入目录TestMQTTNode(该目录里有一个package.json文件和一个server.js文件)。然后运行"npm install && npm start"。这时在命令行就能看到工程向百度天工发送了消息,并且自己接收了该消息。(按"Ctrl + C"可以退出运行。)

  4. 测试工程

    打开源代码文件,我们能看到连接IoT Hub所使用的用户名和密码。打开MQTT.fx(MQTT调试工具),使用相同的用户名和密码连接百度天工。连接完毕之后,向topic "demoTopic"发送字符串。发送的字符串会显示在“步骤3”运行测试项目的命令行中。最后,发送"exit"字符串,工程会结束运行。

Java

试用物接入服务时,用户无需登录控制台,物接入服务的云端配置已经由百度智能云工程师预置好,可直接使用以下代码测试消息收发。有关控制台的配置方法,请参看控制台快速操作指导

注意事项

  • 工程中所使用的实例隶属于百度天工研发团队。请勿在真实产品中使用。
  • 工程使用SSL/TLS来连接百度天工。如果不想使用SSL/TLS,把endpoint URL换成"tcp://iotfreetest.mqtt.iot.gz.baidubce.com:1883"
  • MQTT协议规定两个连接的client id不能相同。否则后连的会踢走先连的。如果两个设备都带重连的话,相同的client id会导致互踢死循环。因此工程中的client id做了随机化,避免连接间互踢的情况发生。
  • 本工程的用户名和密码只能访问“demoTopic”这个主题。访问其它主题会导致连接断开。

百度智能云工程师已在云端配置了物接入实例“iotfreetest”,并为其创建了设备“thing01”,给主题demoTopic设置了发布和订阅权限。您可以使用MQTT客户端或调用MQTT SDK进行连接测试。连接的用户名为“iotfreetest/thing01”,密码为“YU7Tov8zFW+WuaLx9s9I3MKyclie9SGDuuNkl6o9LXo=”。也可以参考以下步骤,运行工程代码测试消息收发。

  1. 预安装环境

    本工程需要使用JDK 1.8和Gradle 3.3。本工程在Windows、Linux和Mac上均可运行。

  2. 下载项目文件

    http://iot-demo.cdn.bcebos.com/SampleCode/TestMQTTJava.zip处下载工程文件,并解压至磁盘。

    您也可以通过导入Maven工程的方式测试消息收发,下载地址是http://iot-demo.cdn.bcebos.com/SampleCode/TestMQTTJavaMaven.zip

  3. 编译并运行

    1. 命令行运行

      打开命令行工具,进入目录TestMQTTJava(该目录里有一个gradle.build文件和一个src文件夹)。然后运行"gradle build && gradle run"。这时在命令行就能看到工程向百度天工发送了消息,并且自己接收了该消息。(按"Ctrl + C"可以退出运行。)

    2. 使用Eclipse运行

      打开Eclipse。单击菜单"File"->"Import…"。然后在Import对话框中选择"Gradle"->"Gradle Project",然后单击两次"下一步"。再选择"TestMQTTJava"目录为工程的根目录,单击"Finish"即可。最后,单击"Run"->"Run"运行工程。如果在Run的时候弹出对话框选择运行类型,请选择"Application"。

  4. 测试工程

    打开源代码文件,我们能看到连接IoT Hub所使用的用户名和密码。打开MQTT.fx(MQTT调试工具),使用相同的用户名和密码连接百度天工。连接完毕之后,向topic "demoTopic"发送字符串。发送的字符串会显示在“步骤3”运行测试项目的命令行中。最后,发送"exit"字符串,工程会结束运行。

Arduino D1 & NodeMCU

Arduino平台是非常方便的开源硬件平台。本文介绍如何使用Arduino D1和NodeMCU开发板来连接百度天工物接入服务。Arduino D1和NodeMCU都使用了一块价廉物美的Wifi芯片,ESP8266。使用ESP8266,可以让开发板非常方便的通过Wifi来连接百度天工物接入服务。

注意事项

  • 工程中所使用的实例隶属于百度天工研发团队。请勿在真实产品中使用。
  • 工程使用SSL/TLS来连接百度天工。如果不想使用SSL/TLS,可以把WiFiClientSecure换成WiFiClient,且把端口1884换成1883。
  • MQTT协议规定两个连接的client id不能相同。否则后连的会踢走先连的。如果两个设备都带重连的话,相同的client id会导致互踢死循环。因此工程中的client id做了随机化,避免连接间互踢的情况发生。
  • 本工程的用户名和密码只能访问“demoTopic”这个主题。访问其它主题会导致连接断开。
  1. 准备环境

    1. 下载Arduino IDE并且安装对Arduino D1和NodeMCU的支持。

    2. 使用USB线把开发板接入PC,并且在IDE中选择开发板的型号。

    3. 在Arduino IDE中,点击"Sketch" -> "Include Library" -> "Manage Libraries…",安装"ESP8266Wifi","PubSubClient"和"TaskScheduler"三个库。

  2. 下载代码至开发板

    1. http://iot-demo.cdn.bcebos.com/SampleCode/TestESP8266.zip处下载代码,并且解压至本地磁盘。

    2. 使用Arduino IDE打开"TestESP8266.ino"文件,修改"WIFI_SSID"和"WIFI_PASSWORD"两个变量的值,把这两个变量设置成开发板能访问的Wifi的名称和密码。

    3. 点击"Upload"按钮,编译并上传代码至开发板。

  3. 运行并查看结果

    打开Arduino IDE,单击"Tools" -> "Serial Monitor"。观察输出的字符,可以看到开发板连接上了Wifi,然后连上了天工物接入服务,然后开始打印收到的字符串。

Arduino Wido

Arduino平台是非常方便的开源硬件平台。本文介绍如何使用Arduino Wido开发板来连接百度天工物接入服务。Arduino Wido使用了CC3000这款Wifi芯片。使用CC3000,可以让开发板非常方便的通过Wifi来连接百度天工物接入服务。

注意事项

  • 工程中所使用的实例隶属于百度天工研发团队。请勿在真实产品中使用。
  • 由于CC3300不支持SSL/TLS,因此只能使用TCP来连接天工物接入服务。
  • MQTT协议规定两个连接的client id不能相同。否则后连的会踢走先连的。如果两个设备都带重连的话,相同的client id会导致互踢死循环。因此工程中的client id做了随机化,避免连接间互踢的情况发生。
  • 本工程的用户名和密码只能访问“demoTopic”这个主题。访问其它主题会导致连接断开。
  1. 准备环境

    1. 下载Arduino IDE。

    2. 使用USB线把开发板接入PC,并且在IDE中选择开发板的型号"Arduino Leonardo"。

    3. 在Arduino IDE中,点击"Sketch" -> "Include Library" -> "Manage Libraries…",安装"Adafruit_CC3000","PubSubClient"和"TaskScheduler"三个库。

  2. 下载代码至开发板

    1. http://iot-demo.cdn.bcebos.com/SampleCode/TestWido.zip处下载代码,并且解压至本地磁盘。

    2. 使用Arduino IDE打开"TestWido.ino"文件,修改"WIFI_SSID"和"WIFI_PASSWORD"两个变量的值,把这两个变量设置成开发板能访问的Wifi的名称和密码。

    3. 点击"Upload"按钮,编译并上传代码至开发板。

  3. 运行并查看结果

    打开Arduino IDE,单击"Tools" -> "Serial Monitor"。观察输出的字符,可以看到开发板连接上了Wifi,然后连上了天工物接入服务,然后开始打印收到的字符串。

Arduino Yun

Arduino平台是非常方便的开源硬件平台。本文介绍如何使用Arduino Yun开发板来连接百度天工物接入服务。Arduino Yun自带Wifi和Ethernet模块。本文介绍在Arduino Yun上通过Wifi来连接百度天工物接入服务。

注意事项

  • 工程中所使用的实例隶属于百度天工研发团队。请勿在真实产品中使用。
  • 由于Arduino Yun不支持SSL/TLS,因此只能使用TCP来连接天工物接入服务。
  • MQTT协议规定两个连接的client id不能相同。否则后连的会踢走先连的。如果两个设备都带重连的话,相同的client id会导致互踢死循环。因此工程中的client id做了随机化,避免连接间互踢的情况发生。
  • 本工程的用户名和密码只能访问“demoTopic”这个主题。访问其它主题会导致连接断开。
  1. 准备环境

    1. 下载Arduino IDE。

    2. 使用USB线把开发板接入PC,并且在IDE中选择开发板的型号"Arduino Yun"。

    3. 在Arduino IDE中,点击"Sketch" -> "Include Library" -> "Manage Libraries…",安装"PubSubClient"和"TaskScheduler"两个库。

    4. 复位Arduino Yun的Wifi,并设置其连接上本地的Wifi连接。

  2. 下载代码至开发板

    1. http://iot-demo.cdn.bcebos.com/SampleCode/TestYun.zip处下载代码,并且解压至本地磁盘。

    2. 使用Arduino IDE打开"TestYun.ino"文件,点击"Upload"按钮,编译并上传代码至开发板。

  3. 运行并查看结果

    打开Arduino IDE,单击"Tools" -> "Serial Monitor"。观察输出的字符,可以看到开发板连接上了Wifi,然后连上了天工物接入服务,然后开始打印收到的字符串。

MQTT.fx

MQTT.fx简介

MQTT.fx是一款免费的MQTT测试工具,我们可以使用它来连接百度天工的物接入服务并测试消息收发。

下载MQTT.fx

连接百度天工平台的物接入服务

注意事项

  • Client Id不可以重复,因此请保证足够随机。
  • 本文使用SSL/TLS连接物接入。如果不想使用SSL/TLS,请把端口改成1883并且取消对“Enable SSL/TLS”的勾选。
  • 本文的用户名和密码只有访问“demoTopic”这一个主题的权限。访问其它主题会导致连接断开。
  • 本文的用户名和密码所有权属于百度天工研发团队,仅供冒烟测试使用。请不要在真实产品中使用。

百度智能云工程师已在云端配置了物接入实例“iotfreetest”,并为其创建了设备“thing01”,给主题demoTopic设置了发布和订阅权限。连接的用户名为“iotfreetest/thing01”,密码为“YU7Tov8zFW+WuaLx9s9I3MKyclie9SGDuuNkl6o9LXo=”。

  1. 打开MQTT.fx,单击“设置”图标。然后单击弹出的对话框的左下角的“添加”图标。

  2. 按照下面的设置填写相应字段:

    • Profile Name:Test Baidu Tiangong
    • Broker Address:iotfreetest.mqtt.iot.gz.baidubce.com
    • Broker Port:1884
    • Client ID:MQTT_FX_Client_81923749

    注意,由于同一个Endpoint的Client Id不允许重复,因此上面的Client Id请确保足够随机。

  3. 选择“User Credentials”选项卡,并且按以下字段填写:

    • User Name: iotfreetest/thing01
    • Password: YU7Tov8zFW+WuaLx9s9I3MKyclie9SGDuuNkl6o9LXo=

  4. 选择“SSL/TLS”选项卡,勾上“Enable SSL/TLS”,并选择“CA signed server certificate”。

    单击“OK”按钮保存设置。

  5. 回到主对话框,确保选择了“Test Baidu Tiangong”,然后单击“Connect”按钮。

    连接状态变绿,说明连接上了百度天工物联网平台的物接入服务。

  6. 测试消息收发

    单击“Subscribe”选项卡,然后在编辑框中输入demoTopic,最后单击“Subscribe”按钮。“Subscribe”按钮变灰表示监听“demoTopic”这个主题成功。

    单击“Publish”选项卡,向demoTopic发送消息。

    单击“Subscribe”选项卡,查看是否收到了消息。

    右下方的列表里出现了内容,则表示收到了消息。