基于规则引擎的M2M设备间通信Node JS SDK 示例
概述
M2M(即Machine-to-Machine)是一种端对端通信技术。本章节以Node JS SDK为例,使用规则引擎数据流转来实现M2M设备间通信,主要介绍如何基于物联网平台构建一个M2M设备间通信架构。
实验步骤
第一部分:配置相关
1、创建产品
2、定义Topic
3、产品下面添加设备1和设备2
4、规制引擎配置
5、启动规则引擎
第二部分:客户端代码相关
6、Node JS 设备端SDK安装
npm install alibabacloud-iot-device-sdk --save
7、设备端业务代码
设备1
// node引入包名 const iot = require('alibabacloud-iot-device-sdk'); // 浏览器、微信小程序,支付宝小程序引入./dist编译的js文件 // const iot = require('./dist/alibabacloud-iot-device-sdk.js'); // js版本下载地址: // https://github.com/aliyun/alibabacloud-iot-device-sdk/tree/master/dist 或 // alibabacloud-iot-device-sdk.js 下载地址 https://unpkg.com/alibabacloud-iot-device-sdk@1.2.4/dist/alibabacloud-iot-device-sdk.js 或 // alibabacloud-iot-device-sdk.min.js 下载地址 https://unpkg.com/alibabacloud-iot-device-sdk@1.2.4/dist/alibabacloud-iot-device-sdk.min.js // const device = iot.device({ productKey: 'a12OcQ4****', deviceName: 'device1', deviceSecret: '3yWqKtWxN7VPuWEEDEn4eKWNNtUv****' // 支付宝小程序和微信小程序额外需要配置协议参数 // "protocol": 'alis://', "protocol": 'wxs://', }); device.on('connect', () => { console.log('connect successfully!'); // 发送消息到指定的Topic,等待规则引擎转发到另外的一个设备的Topic device.publish('/a12OcQ4****/device1/user/m2mdata', '{"ke1":"value1 test"}'); });
设备2
// node引入包名 const iot = require('alibabacloud-iot-device-sdk'); // 浏览器、微信小程序,支付宝小程序引入./dist编译的js文件 // const iot = require('./dist/alibabacloud-iot-device-sdk.js'); // js版本下载地址: // https://github.com/aliyun/alibabacloud-iot-device-sdk/tree/master/dist 或 // alibabacloud-iot-device-sdk.js 下载地址 https://unpkg.com/alibabacloud-iot-device-sdk@1.2.4/dist/alibabacloud-iot-device-sdk.js 或 // alibabacloud-iot-device-sdk.min.js 下载地址 https://unpkg.com/alibabacloud-iot-device-sdk@1.2.4/dist/alibabacloud-iot-device-sdk.min.js // const device = iot.device({ productKey: 'a12OcQ4****', deviceName: 'device2', deviceSecret: 'X9fzX9u0aIOORNghPyfYKq22IL7Q****' // 支付宝小程序和微信小程序额外需要配置协议参数 // "protocol": 'alis://', "protocol": 'wxs://', }); // 定于规则引擎转发过来的消息 device.subscribe('/a12OcQ4****/device2/user/m2mdata'); device.on('connect', () => { console.log('connect successfully!'); }); device.on('message', (topic, payload) => { console.log(topic, payload.toString()); });
8、测试运行
第三部分:问题排查
对于使用过程中设备2无法正常监听到消息的情况,可以结合运维监控的日志服务进行排查。
参考链接
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里云物联网平台计费问题处理
概述 随着物联网平台第一个预付费周期截止时间到来,很多用户都收到了:连接时长资源包和消息通信资源包到期的通知,这两个资源包的作用:物联网平台设备和云端连接和消息通信对应的资源包。下面主要介绍收到这个通知的影响及处理策略。 影响 如果不继续购买资源包,系统会默认切换到按量付费,如果账户有余额,不影响正常使用。没有余额请尽快充值,避免影响设备正常使用。 策略 1、资源包续费地址:链接 2、计费方式官方解释:链接 3、欠费说明 账单出账时间通常在当前计费周期结束后4小时内。 欠费时间24小时内,服务可保留使用。欠费时间超过24小时,服务将自动停止。为免服务停止影响您的业务,建议您在欠费24小时内续费。 若欠费时间超过24小时,您再次充值后即可继续使用服务,已连接的设备也将恢复通信。 4、资源包使用查看,查看地址 5、资源包自动续费管理 6、如果不再使用,直接到物联网平台管理控制台删除对应的全部设备和产品即可。
- 下一篇
基于Topic消息路由的M2M设备间通信Node JS SDK 示例
概述 M2M(即Machine-to-Machine)是一种端对端通信技术。本章节以Node JS SDK为例,使用基于Topic消息路由的M2M设备间通信,主要介绍如何基于物联网平台构建一个M2M设备间通信架构。 实验步骤 第一部分:配置相关 1、产品、设备、Topic的创建参考链接 消息路由建立 本部分目前不支持门户直接配置,需要基于管理API: CreateTopicRouteTable 来建立消息路由关系。 测试可以直接使用OpenAPI来快速实现相关功能,本地集成相关功能直接基于SDK即可。 2、JAVA SDK Demo import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.exceptions.ServerException; import com.aliyuncs.iot.model.v20170420.CreateTopicRouteTableReq...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- Red5直播服务器,属于Java语言的直播服务器
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS6,7,8上安装Nginx,支持https2.0的开启