获取设备证书(ProductKey、DeviceName和DeviceSecret)后,通过MQTT协议将设备接⼊企业版实例。

前提条件

已创建产品和设备。具体操作,请参见创建产品和设备

操作步骤

说明 示例通过物模型相关Topic上报数据。您也可以通过自定义Topic,向设备发送数据,更多信息,请参见自定义Topic
  1. 在Windows系统或Linux系统下载并安装Node.js。本文以windows系统为例。

    安装成功后,打开CMD窗口,通过以下命令查看node版本。

    node --version
  2. 在本地计算机创建一个JavaScript文件(例如iot_device.js),用来存放Node.js示例代码。
    Node.js示例代码如下所示:
    const mqtt = require('aliyun-iot-mqtt');
    // 1. 设备身份信息
    var options = {
        productKey: "g34q2******",
        deviceName: "hxt93489234",
        deviceSecret: "b42db5a4fb95deb947f61655ad******",
        host: "iot-cn-6ja1y******.mqtt.iothub.aliyuncs.com"
    };
    
    // 2. 建立MQTT连接
    const client = mqtt.getAliyunIotMqttClient(options);
    //订阅云端指令Topic
    client.subscribe(`/g34q2******/hxt93489234/user/get`)
    client.on('message', function(topic, message) {
        console.log("topic " + topic)
        console.log("message " + message)
    })
    
    setInterval(function() {
        // 3.定时上报温湿度数据
        client.publish(`/sys/g34q2******/hxt93489234/thing/event/property/post`, getPostData(), { qos: 0 });
    }, 5 * 1000);
    
    function getPostData() {
        const payloadJson = {
            id: Date.now(),
            version: "1.0",
            params: {
                temperature: Math.floor((Math.random() * 20) + 10),
                humidity: Math.floor((Math.random() * 20) + 10)
            },
            method: "thing.event.property.post"
    
        }
        console.log("payloadJson " + JSON.stringify(payloadJson))
        return JSON.stringify(payloadJson);
    }
    参数 示例 说明
    productKey TVz1A1x2wA****** 设备所属产品Key。可在控制台设备详情页查看。
    deviceName hxt93489234 设备名称。可在控制台设备详情页查看。
    deviceSecret b42db5a4fb95deb947f61655ad****** 设备密钥。可在控制台设备详情页查看。
    host iot-cn-6ja1y******.mqtt.iothub.aliyuncs.com MQTT设备接入终端节点。可在控制台实例详情页查看。
  3. 打开CMD窗口,使用cd命令找到iot_device.js文件所在路径,在该路径下使用NPM命令下载阿里云IoT的MQTT库。下载后的MQTT库文件如下图所示。
    npm install aliyun-iot-mqtt -SMQTT库
  4. MQTT库下载完成后,在CMD窗口输入如下命令,运行iot_device.js代码,启动设备。
    node iot_device.js
  5. iot_device.js代码运行成功后,设备状态显示为在线,在设备详情页,选择物模型数据页签即可看到最新上报的温度值和湿度值。
    物模型数据
  6. 在左侧导航栏,单击监控运维 > 日志服务,进入云端运行日志页签,查看设备上报数据的⽇志。

    具体操作,请参见云端运行日志

    运行日志

后续步骤

数据转发到表格存储