项目场景:
用户通过小程序预约自习室卡座,到店后,判断有没有订单,订单是否有效,然后小程序一键开门,并自动点亮其预约的卡座上的台灯。订单时间到:关闭台灯。
预约流程为:
1. 可按小时(最小粒度为半小时)预约
2. 可按天(每天的哪个时段)预约,为后期开发学习计划(制订学习计划)预留
预约到店后:
1. 判断是否有订单,以及订单是否有效
2. 如果有效,则一键开门,调用门禁的HTTP接口,开门,5秒后客人进入,自动加锁
3. 点亮台灯实为接通卡座上的插排,台灯连接在插排上,插排台灯占一孔,再留两孔,供客人使用手机充电器等设备。
选座页面:
硬件对接:
采购统软云物联的WiFi通断器共40台,160一台,安装到每个卡座的入线口,安装示意图:
VCC和GND接配套5V电源模块,火线剪断,两头分别接SW的两个端子,这样就可以控制插座和台灯了,插座买普通的没有线的插座就可以,台灯可以直接插到插座上,或剪掉插头,接到通断器上。
接线示意图
如下:(草图一张,不会作图)
统软云的硬件接口调用:
接口文档地址:接口_统软云物联网 | Unisoft IoT
控制设备,向设备下发指令
请求地址: http://iot-api.unisoft.cn/{APP_ID}/device/control/?sign={sign}&ts={ts} 关于sign和ts的定义
请求参数
必须使用POST方式
名称 | 必填 | 类型 | 说明 |
---|---|---|---|
device | 是 | string | 设备ID,读取设备列表时返回的ID 指定多台设备时请用间隔符(,或|)连接 指定多个设备时,不要这些设备属于同一类产品,但必须有相同的指令 如:10222为一代通断器,10333为二代通断器,都有指令 power=1,则可同时指定 |
sync | 否 | int | 为1时(默认),同步返回指令执行结果 为0时(需指定),只返回是否下发成功,而不返回指令执行结果 |
属性 | 是 | string | 命令,格式为 设备的属性名称=属性值 在设备详情页,可查询设备的可用指令以及可用的值 如power=1,则下发命令接通设备电源 也可以将属性值用order包裹起来,如:order:{power:1} |
调起来很简单,还有一些设备管理的接口,诸如:修改设备名称,分组等等,我并没有在项目里实现,直接在统软云物联网控制台上可视化操作。
大功告成!!!