https://www.cnblogs.com/yangfengwu/p/11249674.html

该APP安装包下载链接:

http://www.mnif.cn/appapk/IotDevelopmentVersion/20190820/app-debug.apk

或者扫描二维码下载

APP源码获取方式:(请阅读宝贝说明)

此APP建立在基础篇,升级篇,数据篇和安全篇.只有把这些篇章全部学过才能看得懂源码!

https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.70471debVGb9G8&ft=t&id=569295486025

一,设备快速接入:

请设置自己设备连接的MQTT信息:

用户名:yang

密码:11223344

IP地址:mnif.cn

端口号:1883或者8883(SSL连接暂时请忽略认证错误),建议使用此端口

通信控制协议:所有协议为JSON格式

数据的data字段表明现在的数据是干什么用的

以下  \"  只是为了组合成JSON格式的字符串

单路开关协议: data:switch开关数据            bit:1 第一路              status:-1/0/1 APP查询设备状态/断开/吸合

//下面两条协议为设备的遗嘱和上线信息

设备断线: "{\"data\":\"status\",\"status\":\"offline\"}"
设备上线: "{\"data\":\"status\",\"status\":\"online\"}" //这两条信息具体看下面 Wi-Fi 接入部分
APP发送的查询指令:(用来查询设备状态,和获取开关状态)
"{\"data\":\"switch\",\"bit\":\"1\",\"status\":\"-1\"}" //查询第一路开关的状态
设备返回:(根据当前开关状态返回)
"{\"data\":\"switch\",\"bit\":\"1\",\"status\":\"1\"}" / "{\"data\":\"switch\",\"bit\":\"1\",\"status\":\"0\"}"
//APP控制开关吸合消息
"{\"data\":\"switch\",\"bit\":\"1\",\"status\":\"1\"}"
//设备查询后返回的消息
"{\"data\":\"switch\",\"bit\":\"1\",\"status\":\"1\"}"

//APP控制开关断开的消息
"{\"data\":\"switch\",\"bit\":\"1\",\"status\":\"0\"}"
//设备查询后返回的消息
"{\"data\":\"switch\",\"bit\":\"1\",\"status\":\"0\"}"

1,WIFI接入:

请自行实现Wi-Fi的SmartConfig功能,APP会通过SmartConfig获得模块的MAC地址

设置Wi-Fi订阅的主题: user/Wi-Fi的MAC地址

设置Wi-Fi发布的主题: device/Wi-Fi的MAC地址

设置MQTT遗嘱:发布的主题device/Wi-Fi的MAC地址,遗嘱消息  "{\"data\":\"status\",\"status\":\"offline\"}"     retain 位必须设置为1

设置设备连接上MQTT以后发布的第一条消息:

发布的主题device/Wi-Fi的MAC地址

遗嘱消息  "{\"data\":\"status\",\"status\":\"online\"}"   retain 位必须设置为1

部分参考程序(ESP8266 LUA开发):

clientid = wifi.sta.getmac() //获取MAC
SubscribeTopic = "user".."/"..clientid //设备发布的主题
PublishTopic = "device".."/"..clientid //设备订阅的主题 //遗嘱
Mymqtt:lwt(PublishTopic, "{\"data\":\"status\",\"status\":\"offline\"}", , ) //链接成功MQTT发布的第一条消息
Mymqtt:publish(PublishTopic,"{\"data\":\"status\",\"status\":\"online\"}", , , function(client)end)

打开APP

添加设备                       选择Wi-Fi                首先让自己的设备执行SmartConfig

                        

搜索设备                       搜索成功将自动添加               控制页面

               

2,GPRS接入:

APP绑定GPRS为扫描二维码方式

以合宙的Air202为例:

模块上的二维码为模块的IMEI号,APP通过扫描此二维码获取IMEI

模块程序订阅的主题: user/模块的IMEI

模块程序发布的主题: device/模块的IMEI

其余通信请和上面的介绍的协议保持一致!

绑定步骤

        

为区分设备可以长按设备修改名称:

     

https://www.cnblogs.com/yangfengwu/p/11273530.html

2-开发共享版APP(接入指南)-设备接入说明:快速接入的更多相关文章

  1. 1-开发共享版APP(搭建指南)-快速搭建到自己的服务器

    该APP安装包下载链接: http://www.mnif.cn/appapk/IotDevelopmentVersion/20190820/app-debug.apk 或者扫描二维码下载 注:该下载可 ...

  2. 2-开发共享版APP(搭建指南)-修改包名

    https://www.cnblogs.com/yangfengwu/p/11273734.html https://www.cnblogs.com/yangfengwu/p/11273746.htm ...

  3. 3-开发共享版APP(搭建指南)-修改手机验证码

    https://www.cnblogs.com/yangfengwu/p/11273743.html 请先看数据篇 或者参考 https://www.cnblogs.com/yangfengwu/p/ ...

  4. 1-开发共享版APP(源码介绍)-BUG修复

    这一系列文章将介绍APP的源码,这一节作为所有BUG问题修复! https://www.cnblogs.com/yangfengwu/category/1512162.html    //开发共享版A ...

  5. 3-开发共享版APP(接入指南)-设备接入说明:使用隐藏配置

    https://www.cnblogs.com/yangfengwu/p/11273226.html 该APP安装包下载链接: http://www.mnif.cn/appapk/IotDevelop ...

  6. 1-开发共享版APP(接入指南)-APP说明

    该APP的功能,类似于网上售卖的Wi-Fi/GPRS远程控制器 设备页面                                     用户页面                       ...

  7. 如何接入银联“快速接入”产品API

    引言:使用银联开放平台的用户或多或少都接触过产品API吧,那么大家对于“快速接入”产品API是否还会存在一些疑问呢?因为我之前对“快速接入”模糊不清,所以整理的一份详细的资料,里面梳理了“快速接入”产 ...

  8. Android开发SDK接入机智云,智能家居实现APP远程控制多设备

    代码地址如下:http://www.demodashi.com/demo/12847.html 一.前言. 此框架只用了一周星期做了出来,因为对机智云的框架比较熟悉了 !期间SDK初始化出了问题,去咨 ...

  9. C#微信公众号开发系列教程二(新手接入指南)

    http://www.cnblogs.com/zskbll/p/4093954.html 此系列前面已经更新了两篇博文了,都是微信开发的前期准备工作,现在切入正题,本篇讲解新手接入的步骤与方法,大神可 ...

随机推荐

  1. git学习笔记 ---分支管理

    分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平行宇宙合并 ...

  2. ELK学习笔记之logstash将配置写在多个文件

    0x00 概述 我们用Logsatsh写配置文件的时候,如果读取的文件太多,匹配的正则过多,会使配置文件动辄成百上千行代码,可能会造成阅读和修改困难.这时候,我们可以将配置文件的输入.过滤.输出分别放 ...

  3. C# vb .net实现马赛克焦距像素化特效滤镜

    在.net中,如何简单快捷地实现Photoshop滤镜组中的马赛克焦距像素化效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置 ...

  4. 【JVM】记录一次线上SWAP偏高告警的故障分析过程

    近期遇到一个堆外内存导致swap飙高的问题,这类问题比较罕见,因此将整个排查过程记录下来了 现象描述 最近1周线上服务器时不时出现swap报警(swap超过内存10%时触发报警,内存是4G,因此swa ...

  5. springboot多环境下maven打包

    前言: 最近在项目中使用springboot时发现,采用在pom中定义不同的profile,并且maven打包时 采用-P参数并不能替换我application.properties文件中指定占位符的 ...

  6. JavaScript 相关的工具代码

    博客地址:https://ainyi.com/49 记录一些数据处理需要的方法工具代码 持续更新中... 时间戳转与日期格式相互转换 时间戳转换成日期格式 function timestampToTi ...

  7. es截取指定的字段返回

    SearchResponse response = client.prepareSearch(index_name).setTypes("lw_devices") .setFrom ...

  8. MySQL MGR--数据同步原理

    MGR复制架构 在MySQL 5.7.17版本正式推出组复制(MySQL Group Repliation MGR),用来解决异步复制和半同步复制可能产生数据不一致的问题,组复制依靠分布式一致性协议( ...

  9. ubuntu16.04部署vsftpd

    问题描述: 之前在centos6/7可以快速构建vsftpd服务,在ubuntu上频繁出错.最后发现是vsftpd版本比较新(新增安全特性导致的) 问题解决: 加上对应参数即可解决问题 window资 ...

  10. CentOS 7网络配置工具

    CentOS 7网络配置工具 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.网卡命名机制 CentOS 6之前,网络接口使用连续号码命名:eth0.eth1等,当增加或删除网卡 ...