还担心工科男票熬夜伤身?赶紧用微信小程序远程关他的灯!

欢迎来到服“造”的世界

* 项目作者:dexin

春节期间,dexin终于回到老家——寒冷又熟悉的辽宁啦!本着不作死就赖床的核心思想,本宝怎么能闲着,在老家房子里转悠一圈吼,我决定:我要给老家房子布置上智能家居!让爸妈也感受下新科技,于是乎去年火爆的微信小程序也派上了用场!

一提到DIY智能家居,相信很多人想到的核心就是hassio或者hassbian吧~但是我这次毅然决然的放弃了,因为我希望能够通过这次配置实现自己的“生态”。

点击边框调出视频工具条

效果演示视频

教程专区

教程总共包含四个步骤:

Step1 下位机的电路设计与焊接

Step2 服务器搭建

Step3 下位机Arduino代码编写

虽然硬件是核心,但是一个比较合理的用户界面那也是相当重要滴。

用户需要填写的设备认证号就deviceCenterID,用来验证用户组。当然这部分需要检验deviceCenterID单一性。

完成身份的验证后即可进入控制台。

接下来就是获取当前绑定在该用户关联的deviceCenterID下的全部设备 获取名称,状态等等

向上滑动阅览

wx.request({

url: 'https://www.***.***/****',

data: {

***: wxmlData.data.***

},

success: function (res) {

let statusData = res.data;

wxmlData.setData({

switchRooms: statusData

});

},

})

也要防止潜在bug造成的页面错跳,就算跳错了,只要没有注册还是会跳回注册页面。

向上滑动阅览

let openID = await wx.getStorageSync('openid');

wx.request({

url: 'https://www.***.***/***',

data: {

***: openID

},

success: function (res) {

if (res.data.regist) {

/*...*/

}

else {

wx.showLoading({

title: '请先完成验证',

});

setTimeout(function () {

wx.hideLoading()

wx.navigateTo({

url: '../reg/reg'

})

新设备接入可采用读取二维码的方式:既利用了小程序读取二维码比较方便的优势,又保证关键信息(设备ID和设备类型)不会出现失误。同时校验二维码信息,防止用户错误扫描~(后期二维码我会添加加密措施,进一步防止注入可能)

之后就是设备信息的填写和设备的注册。

结语:

这应该是我回家以后做得挺有意义的一件事。昨天老妈和我说,早上我爸醒了,玩手机的时候嫌灯光太暗,不爱下床就用小程序把灯打开,打开之后可开心坏了。

当然还有作为试用者之一——我可爱的女朋友还有我的母上大人都威胁我,说再看到我晚上熬夜就远程关我的灯。

现在只可以接入开关设备,当然还可以接入调光调温设备(传入量不同而已)。自己从头到尾设计这一套东西,有时候想想还是比较害怕hacker的,所以请各位高手放过我的服务器。

我接下去还会继续完善~这一版本的小程序已经发布了,好像我还是用小程序做智能家居的第一人~anyway,给大家提供一个思路。当然!!!欢迎大老板们给我投资哦,让我可以开发更多有意思的设备~

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180224A17ESW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券