[基础版]设备数据流转存储产品表格存储OTS|Link Platform - 开发者论坛

134 阅读2分钟
原文链接: click.aliyun.com

1.IoT云端开发


  • 开通物联网套件 www.aliyun.com/product/iot

  • =>产品管理>创建产品

  • =>产品管理>产品详情>设备管理>添加设备

  • =>产品管理>产品详情>设备管理>添加自定义属性 tag,imei



属性名key

属性值value

描述

tag

西溪园区 1-2-56

自定义设备位置

imei

XIXI2018034532

自定义设备序列号

  • =>产品管理>产品详情>消息通信



Topic

权限

描述

/productKey/${deviceName}/data

发布

上报数据payload示例 {"temperature":23,"humidity":63}

/productKey/${deviceName}/control

订阅

下行指令payload示例 {"device": "iotLed","state": "on"}


2. 表格存储OTS创建



2.1 开通表格存储OTS服务


开通表格存储OTS服务www.aliyun.com/product/ots

2.2 创建OTS实例





2.3 创建OTS实例





3. IoT套件-规则引擎设置



3.1 字段

复制代码
  1. deviceName() as deviceName ,
  2. timestamp('yyyy-MM-dd HH:mm:ss') as time,
  3. attribute('tag') as tag,attribute('imei') as imei,
  4. humidity,
  5. temperature



3.2 Topic


复制代码
  1. 产品/+/data  +通配符,代表产品下全量设备都使用这个规则



3.3 完整数据操作





3.4 转发动作-表格存储OTS





3.5 启动规则引擎





4. 设备端开发



4.1 模拟设备开发


模拟设备的nodejs脚本iot-ots.js
复制代码
  1. /**
  2. * package.json 添加依赖:"aliyun-iot-mqtt": "0.0.4"
  3. */
  4. const mqtt = require('aliyun-iot-mqtt');
  5. //设备三元组
  6. const options = {
  7.     productKey: "替换自己productKey",
  8.     deviceName: "替换自己deviceName",
  9.     deviceSecret: "替换自己deviceSecret",
  10.     regionId: "cn-shanghai"
  11. };
  12. //设备与云 建立连接,设备上线
  13. const client = mqtt.getAliyunIotMqttClient(options);
  14. //主题topic
  15. const topic = `${options.productKey}/${options.deviceName}/data`;
  16. //指定topic发布数据到云端
  17. setInterval(function() {
  18.     //发布数据到topic
  19.     client.publish(topic, getPostData());
  20. }, 10 * 1000);
  21. function getPostData() {
  22.     const data = {
  23.         temperature: Math.floor((Math.random() * 20) + 10),
  24.         humidity: Math.floor((Math.random() * 80) + 20),
  25.     };
  26.     console.log("===postData topic=" + topic)
  27.     console.log(data)
  28.     return JSON.stringify(data);
  29. }



5. 启动运行


启动虚拟设备脚本复制代码
  1. $node iot-ots.js


表格存储数据查看