前言

  这节稍微唠叨点

  其实我很长时间都没有出怎么连接现成的物联网平台的教程,

  一直写的是教给大家自己搭建服务器,主要原因是因为我感觉连接现有的学不到东西.

  现在出这种教程,是因为发现确实很多人喜欢用.

  所以我也推出详细的教程.

  其实并没有大家想象的多么的高大上.

  

唠叨

  说一下,大家连接我的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,用户名,密码,订阅发布的主题

  然后就可以通信了.

  我出的教程要保证大家: 不仅要知其然,还要知其所以然!

  透彻的知晓整个过程是每一个做项目人员必须的,我这个人最讨厌: 糊弄

  要是对自己做的东西不够全部知晓,出了问题就是麻烦的事情了!!!!!!

    

   

ESA2GJK1DH1K基础篇: 关于各大物联网平台的MQTT通信的更多相关文章

  1. ESA2GJK1DH1K基础篇: STM32+GPRS(AT指令版)实现MQTT源码讲解(支持Air202,SIM800)

    前言 注: 本程序发送心跳包,发送温湿度,返回控制数据这三个发送是单独的,有可能凑到一起发. 由于本身程序就是复杂性的程序,所以这节程序没有使用中断发送,没有使用环形队列发送,为了避免多条消息可能凑到 ...

  2. ESA2GJK1DH1K基础篇: STM32+Wi-Fi(AT指令版)实现MQTT源码讲解

    前言 注: 本程序发送心跳包,发送温湿度,返回控制数据这三个发送是单独的,有可能凑到一起发. 由于本身程序就是复杂性的程序,所以这节程序没有使用中断发送,没有使用环形队列发送,为了避免多条消息可能凑到 ...

  3. ESA2GJK1DH1K基础篇: 阿里云物联网平台: 测试MQTT连接阿里云物联网平台

    前言 这节看一下在阿里云上实现MQTT通信是个怎样的流程 看了很多网上的教程,感觉讲的迷迷糊糊.... 其实感觉他们是对MQTT不够透彻,所以写的文章就是个比着葫芦画瓢的感觉 在我面前这东西就是玩具. ...

  4. ESA2GJK1DH1K基础篇: 移植官方MQTT包,让TCP实现MQTT功能(以GPRS模块为例)

    前言 这节代码将在这一节的基础上实现 拷贝第一节测试里面的MQTT文件夹到当前工程 当前工程建个MQTT的文件夹,用于存放那个MQTT文件夹里面的内容 添加文件到里面 注意:::: 实际源码拷贝位置 ...

  5. ESA2GJK1DH1K基础篇: Android实现MQTT封装源码使用说明

    说明 这一节说明一下基础篇APP源码里面MyMqttCilent.java这个文件的使用 新建工程 安装MQTT的jar包 implementation 'org.eclipse.paho:org.e ...

  6. ESA2GJK1DH1K基础篇: 来吧! 彻底了解一下MQTT

    首先你需要知道MQTT并不是什么高大上的事物,它只是一个软件,对就是一个软件.其实就是个TCP服务器 一,既然是TCP服务器,这个TCP服务器和咱平时做的有什么不一样呢. 首先,平时的时候咱做的TCP ...

  7. ESA2GJK1DH1K基础篇: 阿里云物联网平台: 云平台显示单片机采集的温湿度数据,控制设备继电器(基于GPRS模块,AT指令TCP_MQTT通信)

    实现的功能 上一节是使用的Wi-Fi模块连接的阿里云平台,这节呢咱用GPRS连接. 阿里云的设备配置还是按照上一节的,有个温度,有个湿度. 测试 一,打开单片机程序 二,根据自己的修改,然后下载进去单 ...

  8. ESA2GJK1DH1K基础篇: 阿里云物联网平台: 测试云平台显示MQTT客户端发过来的消息

    现在这里空空如也 咱自定义的也没有数据 现在就是传上来温度数据,让这里显示温度数据 你发布的主题  /sys/a1m7er1nJbQ/Mqtt/thing/event/property/post 发布 ...

  9. ESA2GJK1DH1K基础篇: 阿里云物联网平台: 测试MQTT客户端接收云平台的数据

    前言 有时候想想可能直接连接现成的感觉比较方便吧! 这种东西考验的是你底子是否够好,是否有很强的学习能力 因为咱就是看文档,理解文档.用文档. 测这节会感觉:这是啥呀...下一节更精彩,但是必须看这节 ...

随机推荐

  1. SQL --------------- between 和< >

    between值 and 值 运算符用于选取介于两个值之间的数据范围内的值,常与where一块使用between运算符选择给定范围内的值.值可以是数字,文本或日期. 使用between的时候会与and ...

  2. c#的IDisposable

    尽量在using中使用非托管资源 1.实现Dispose方法 2.提取一个受保护的Dispose虚方法,在该方法中实现具体的释放资源的逻辑 3.添加析构函数 4.添加一个私有的bool类型的字段,作为 ...

  3. ReentrantReadWriteLock可重入,锁升级,锁降级

    public class ReentrantReadWriteLockTest { public static void main(String[] args) throws InterruptedE ...

  4. 利用开源项目 FFMpegSharp 实现音视频提取、转码、抓图等操作

    开源项目地址:https://github.com/vladjerca/FFMpegSharp 首先需要在 web.config 或 app.config 中配置 <appSettings> ...

  5. centos7.x下环境搭建(一)--yum方式安装mysql5.7

    前两天因为数据库被黑客攻击,导致数据被删除,数据库被损坏,系统重新安装了一下,所以环境也需要重新再搭一遍,包括mysql.nodejs.git.nginx和redis的安装.由于之前安装的mysql安 ...

  6. 目标检测算法之R-CNN和SPPNet原理

    一.R-CNN的原理 R-CNN的全称是Region-CNN,它可以说是第一个将深度学习应用到目标检测上的算法.后面将要学习的Fast R-CNN.Faster R-CNN全部都是建立在R-CNN基础 ...

  7. 脱离 WebView 的通信 JavaScriptCore

    JavascriptCore JavascriptCore 一直作为 WebKit 中内置的 JS 引擎使用,在 iOS7 之后,Apple 对原有的 C/C++ 代码进行了 OC 封装,成为系统级的 ...

  8. 简单的sql语句汇总(sqlserver)

    1.修改字段的默认值 alter table 表名 add default 默认值 for 字段名称 例子: for Age; alter table 表名 add constraint DF_TAB ...

  9. JavaScript 总结[目录]

    ECMAScript 基础 一.JavaScript 基础 1.1 JavaScript 简介 1.2 JavaScript 书写位置 二.JavaScript 数据类型 2.1 JavaScript ...

  10. android studio学习---Android studio 导入github工程

    无论是那种方式,都最好是先把github上的工程项目下载到本地,然后修改文件再import 首先要知道  自己的build.gradle,在project下面的版本号是多少,比如我的: depende ...