2-开发共享版APP(接入指南)-设备接入说明:快速接入
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-开发共享版APP(搭建指南)-快速搭建到自己的服务器
该APP安装包下载链接: http://www.mnif.cn/appapk/IotDevelopmentVersion/20190820/app-debug.apk 或者扫描二维码下载 注:该下载可 ...
- 2-开发共享版APP(搭建指南)-修改包名
https://www.cnblogs.com/yangfengwu/p/11273734.html https://www.cnblogs.com/yangfengwu/p/11273746.htm ...
- 3-开发共享版APP(搭建指南)-修改手机验证码
https://www.cnblogs.com/yangfengwu/p/11273743.html 请先看数据篇 或者参考 https://www.cnblogs.com/yangfengwu/p/ ...
- 1-开发共享版APP(源码介绍)-BUG修复
这一系列文章将介绍APP的源码,这一节作为所有BUG问题修复! https://www.cnblogs.com/yangfengwu/category/1512162.html //开发共享版A ...
- 3-开发共享版APP(接入指南)-设备接入说明:使用隐藏配置
https://www.cnblogs.com/yangfengwu/p/11273226.html 该APP安装包下载链接: http://www.mnif.cn/appapk/IotDevelop ...
- 1-开发共享版APP(接入指南)-APP说明
该APP的功能,类似于网上售卖的Wi-Fi/GPRS远程控制器 设备页面 用户页面 ...
- 如何接入银联“快速接入”产品API
引言:使用银联开放平台的用户或多或少都接触过产品API吧,那么大家对于“快速接入”产品API是否还会存在一些疑问呢?因为我之前对“快速接入”模糊不清,所以整理的一份详细的资料,里面梳理了“快速接入”产 ...
- Android开发SDK接入机智云,智能家居实现APP远程控制多设备
代码地址如下:http://www.demodashi.com/demo/12847.html 一.前言. 此框架只用了一周星期做了出来,因为对机智云的框架比较熟悉了 !期间SDK初始化出了问题,去咨 ...
- C#微信公众号开发系列教程二(新手接入指南)
http://www.cnblogs.com/zskbll/p/4093954.html 此系列前面已经更新了两篇博文了,都是微信开发的前期准备工作,现在切入正题,本篇讲解新手接入的步骤与方法,大神可 ...
随机推荐
- 【Maven基础入门】01 Maven的安装与环境变量的配置
写在前面: Mavne,作为一个优秀的项目构建工具,虽说我们平时在使用的时候或多或少的会使用到它,但了解仅限于它能构建项目,然后其他的就不知道了. 以及仓库.POM父类文件.等等. 工欲善其事,必先利 ...
- 高并发场景下System.currentTimeMillis()的性能问题的优化
高并发场景下System.currentTimeMillis()的性能问题的优化 package cn.ucaner.alpaca.common.util.key; import java.sql.T ...
- c# 更新web.config
/// <summary> /// 添加和更新配置文件web.config的appSettings,缺点是会删除注释 /// </summary> /// <param ...
- netcore访问本地磁盘
public void ConfigureServices(IServiceCollection services) { services.AddDirectoryBrowser(); }public ...
- Nikitosh 和异或(trie树)
题目: #10051. 「一本通 2.3 例 3」Nikitosh 和异或 解析: 首先我们知道一个性质\(x\oplus x=0\) 我们要求\[\bigoplus_{i = l}^ra_i\]的话 ...
- js的一些较为常见的语句算法题
下面各题解法可能存在一些时间和空间复杂度问题,有些没有做到最优化,还请谅解!!! 1.用for循环实现10的阶乘. //使用for循环方法解答 var num = 10 var sum = 1; va ...
- poll_wait阻塞/唤醒
1. 应用阻塞 应用程序使用 select() 或 poll() 调用设备驱动程序的 poll() 函数,该函数把输入输出复用处理的等待队列追加到由内核管理的进程的 poll_table()上 #in ...
- scrapy 爬虫中间件-offsite和refer中间件
环境使用anaconda 创建的pyithon3.6环境 mac下 source activate python36 mac@macdeMacBook-Pro:~$ source activate p ...
- MySQL- Host 'xxx' is not allowed to connect to this MySQL server.
mysql中有个系统数据库mysql,里面有张表user记录该实例的用户及其权限. 第一种方法 将其用户root的host改为%,即允许所有客户端连接. FLUSH PRIVILEGES;是将修改生效 ...
- ajax请求处理概要
/** *不关心参数传递与参数返回的形式. */ url = ctxPath + '/ccb/xxx '; $.get(url); $.post(url); /** * 常见形式. */ var ur ...