阿里云(aliyun)物联网套件两个设备的相互通信

嘎子 单片机 2018-01-04 2,489 次浏览 1条评论

不知道大家对于看文档有没有够仔细,我在看文档时就发现了一个很大的问题,这个问题我在:阿里云/aliyun的IoT套件中MQTT协议的使用(二)也提了一句,没有详细说。今天我们就来详细说一下:

首先是这条帮助:协议规范_设备基于MQTT接入_设备端接入手册_阿里云物联网套件-阿里云,进而有下面的一段话:

这一段说的很好,大致的意思是不同的设备是没有办法订阅或者上报到同一个topic上的。那么问题就来了:我们使用MQTT服务的时候并不是想自己和自己玩,而是想设备之间相互通信,这怎么办呢?

我一开始想到一个非常简单的方法:一个设备进行多个连接不就行了。然后我又发现下面一个文档:基于TCP连接_设备基于MQTT接入_设备端接入手册_阿里云物联网套件-阿里云。进而有下面一段话:

大致意思就是一个设备只能有一个连接!!!!汗,问题出现了,我们怎么进行设备间的通信呢?

阿里云怎么说也是一个成熟的服务器,如果这个问题都没有想到,那么真就是失败到家了!!!答案是:SQL表达式_规则引擎_产品组件_阿里云物联网套件-阿里云。阿里去的介绍并不太好懂,我来一说,大家就明白了。现在我想从PC发一条消息到我的STM32的板子上,要怎么做呢?

1、在同一个产品下建立两个设备,一个叫PC222,另一个叫STM32,PC222下有一个topic为/vLWt1dXJJfR/PC234/update有发布的权限。STM32下有一个topic叫/vLWt1dXJJfR/STM32/get有订阅的权限。分别连接,PC上发布,STM32上订阅。这时是不能通信的。

2、规则引擎上场。规则引擎说白了就是来了消息后台给处理处理,你要告诉后台来什么样的消息,进行什么样子的处理。对于现在其实就是将所有/vLWt1dXJJfR/PC234/update上收的消息发布到/vLWt1dXJJfR/STM32/get。

3、规则的建立。

大致的过程如上图所示。主要难点在于管理:

管理里面主要有两点a、编写SQL:

b、添加操作

这样子就可以啦!!!

有没有觉得还是挺让人头痛的!!

 

原创文章,文章首发于:Riley Ge (@rileyge) — Steemit

原创文章,转载请注明: 转载自TsonTec:测量解决方案提供者

本文链接地址: 阿里云(aliyun)物联网套件两个设备的相互通信

相关主题

说点什么

1 评论 在 "阿里云(aliyun)物联网套件两个设备的相互通信"

提醒
avatar
排序:   最新 | 最旧 | 得票最多
套图网
游客

毫无疑问,这个是要支持的!

回顶部