庭院监控

来自Jack's Lab
2015年7月30日 (四) 19:45Comcat (讨论 | 贡献)的版本

跳转到: 导航, 搜索

目录

1 概述

SN: 字符串,19个字符,唯一编号,对应一个庭院监控设备

KEY: 字符串,8个字符,注意保护,用于生成每次通信的 Token

MAC: 6字节,12个字符,MAC地址


云端入口:

http://cos.icamgo.com:998



2 FW 逻辑

user_init() ---> cos_init()

判断 activeflag,出厂状态(未激活,即用户没有给其设置家里路由的 ssid & password),则设置为 SOFTAP / STATIONAP,方便用户直连以配置 ssid&password

如果 wifi opmode 不为 SOFTAP,定时循环检查 cos_check_ip(),如能获得 IP,且 connect 云 OK,则执行 connected 回调函数


connected 的回调,逻辑上讲,应该是上线通知。。。



3 模块与云通信

3.1 概述

模块固件从 flash 中读出 SN 和 KEY,SN + 当前时间戳用 KEY 加密(AES) 运算后生成的串作为 Token

云端验证 SN 和 Token



3.2 Beacon

 /v2/node/beacon



3.3 状态检查

1. Polling 方案
 /v2/node/state

模块 1s GET 一次,取回的数据为一个 JSON 结构,解析得到 value (on/off, 55/99),与本地状态不一致,就改变自己的状态、

APP 通过写 (POST) 这个值,来完成远程控制

APP 也需要定时 (2s ?) GET 一下,以防其他用户改变该值导致插座状态改变而与另一个用户APP状态不一致


2. TCP 长链接方案















个人工具
名字空间

变换
操作
导航
工具箱