ESA2GJK1DH1K基础篇: 关于各大物联网平台的MQTT通信
前言
这节稍微唠叨点
其实我很长时间都没有出怎么连接现成的物联网平台的教程,
一直写的是教给大家自己搭建服务器,主要原因是因为我感觉连接现有的学不到东西.
没有啥技术含量!
现在出这种教程,是因为发现确实很多人喜欢用.
但是大家看看吧!连接现有的十分的简单
其实我不明白的是:网上到处都是这种的教程!!!!而且价格定的高,就好像多么的高大上一样......
唠叨
说一下,大家连接我的MQTT服务器的时候需要
ClientID: 自己随意设置(我的程序是如果用的是Wi-Fi:则使用其MAC地址;如果用的GPRS:则使用其IMEI)
用户名: 我安装MQTT的时候设置的用户名是 yang
密码: 我安装QMTT的时候设置的密码是 11223344
IP地址: 我服务器的IP地址是47.92.31.46 或者域名 mnif.cn
端口号: 我的MQTT服务器的各种连接方式的端口
TCP: mnifdv.cn:1883
SSL: mnif.cn: 8883
WS: mnif.cn:8083
WSS mnif.cn:8084
微信小程序:wss://mnif.cn/mqtt
然后是订阅和发布的主题(自己随意设置)
首先大家需要知道MQTT软件支持动态的设置上面那些,可以添加多个.
如果你也想做个像阿里云,OneNet,机智云等物联网平台
那么就启动MQTT的数据库插件,然后动态的填写和删除上面那些信息
记住哈,用户名,密码,订阅和发布的主题可以设置很多个
可以让每个用户都不一样.
其实要连接各大物联网平台平台再怎么变也离不开上面那些.但是呢!大家想一件事情
如果仅仅像我似的安装个MQTT,然后告诉大家上面那些信息,然后开放性的提供给大家
问题1. ClientID 或者 设置每个用户连接的MQTT IP地址不一样
1.1 ClientID
本身MQTT服务器就规定每个设备的ClientID必须不能一样
如果一样 MQTT服务器就会把相同的踢掉.
如果有用户定义的一样,岂不是造成 设备经常掉线
所以有的自行给你规定了ClientID
1.2 设置连接的IP地址不一样
IP地址不一样便使得每个用户通信不受干扰
问题2. 订阅和发布的主题
1.如果出现一个用户和另一个用户的订阅和发布的主题一样,那么消息就混了
2.主题一般都是 固定/自己可以改变
大家知不知道如果订阅 固定/# 便可监听所有设备的数据
问题3. 为什么可以在平台看到数据
各大物联网平台本身就是网页,网页也可以连接MQTT呀!
只要网页上设置好订阅的主题是你发布的主题,不就完事了!
想知道网页实现MQTT:升级篇正好安装了Web服务器,教给大家网页实现MQTT控制设备正合适.
问题4. 暂无
结语
然后就是在平台上按照规定的流程去操作,然后就会获取到上面的那些信息,
或者说给你一些其它信息告诉你这几个信息如何组合成上面的ClientID,用户名,密码,订阅发布的主题
然后就可以通信了.
我出的教程要保证大家: 不仅要知其然,还要知其所以然!
透彻的知晓整个过程是每一个做项目人员必须的,我这个人最讨厌: 糊弄
要是对自己做的东西不够全部知晓,出了问题就是麻烦的事情了!!!!!!