CATALOG

芯步智能开关的HTTP接口采用标准的签名认证机制,支持远程通断、状态保持、延时通断等多种命令模式。以下方案围绕如何基于其1路开关的开放能力,构建一个多模态联动的客房场景控制系统。

一、 背景与需求

在现代酒店或公寓管理中,客房场景化控制(如“欢迎模式”、“睡眠模式”、“离家模式”)是提升用户体验的关键。传统的1路智能墙壁触摸开关通常仅用于控制一路灯光,无法直接联动窗帘、空调或电视。

通过二次开发芯步的 “智能触摸墙壁开关1路” 产品,利用其开放的HTTP API接口,我们可以在不更换现有开关的前提下,将该物理按键升级为“场景触发器”。用户单击/触摸物理开关时,不仅能控制继电器通断,还能通过后台逻辑联动整个客房设备。

二、 核心思路:按键即场景触发器

本方案的核心逻辑是 “软硬解耦”

  1. 硬件层:芯步1路开关仅作为输入/输出设备。其继电器(Relay)不再直接连接大功率灯光(或仅作为辅助),而是接入信号线;或者保持控制灯光,但利用其“状态保持”或“先通后断”功能向服务器发送指令。

  2. 云平台层:利用芯步开放的HTTP接口,开发者接管设备的控制权。

  3. 执行层:服务器收到开关指令后,逻辑处理(如:判断是“单击”还是“长按”),进而通过API或MQTT协议控制客房内其他智能设备(空调、窗帘、插卡取电等)。

三、 硬件选型与准备

产品型号:芯步 智能墙壁触摸开关(1路)

  • 控制核心:WiFi 802.11 b/g/n (2.4GHz),无需网关,直连路由器。

  • 负载接口:1路继电器输出(10A),支持阻性/感性负载。

  • 关键特性:支持HTTP API控制、支持状态保持、支持先通后断(点动) 模式。

  • 安装位置:替换客房入口处的原86型墙壁开关。

四、 二次开发接口详解

开发人员需要对接芯步的开放平台,核心是调用HTTP API实现对设备状态的读取与控制。

1. API对接基础

  • 请求地址https://api.thingboot.com/{AppID}/device/control/

  • 认证机制:动态MD5签名。

    • 公式:Sign = md5( md5(AppSecret) + ts )

    • 其中ts为Unix时间戳。每次请求需携带实时签名,防止重放攻击。

  • 请求方式:POST, Content-Type: application/json

2. 指令集构建

针对1路开关,主要使用以下JSON命令进行控制

功能模式JSON指令示例说明应用场景
基本开关{"power1":1}打开第1路继电器强制开/关灯
状态保持{"power1":{"keep":"1","revert":"30"}}用户关灯后,30秒后自动恢复开灯防止客人误关服务器/路由器
点动模式{"point1":"2000"}继电器先接通,延时2000ms后断开触发门磁、门铃或脉冲信号
互锁/复位{"reset1":"0"}先断开,再接通设备重启逻辑

注:以上命令结构基于官方通用接口文档整理,具体请以芯步官方最新文档为准。

五、 实施步骤:构建场景化控制

第一步:设备配网与平台注册

  1. 通过芯步官方App或工作台,将开关设备添加至WiFi网络。

  2. 登录芯步工作台,获取设备的唯一标识Device ID以及开发者的AppID/AppSecret

  3. 关键点:将开关的名称修改为“客房入口场景键”,便于后期维护。

第二步:服务器端接口对接

通过编写中间件代码,将芯步的指令“翻译”为客房控制指令。

场景实现:点击开关,执行“欢迎模式”

  1. 物理操作:客人进入房间,按下墙壁开关。

  2. 设备动作:芯步开关继电器吸合。如果继电器接的是灯,灯亮;但在场景化方案中,我们将继电器接点设置为点动模式(<500ms),或者不在意灯的状态,重点在于通过回调接口通知服务器。

  3. 数据流转

    • 芯步通过回调(Callback)或WebSocket通知你的服务器:Device X 的 power1 状态变为 1

    • 你的服务器接收后,并不直接关心灯的状态,而是执行以下逻辑:

      • HTTP调用命令:打开客房电视。

      • HTTP调用命令:打开电动窗帘至80%。

      • HTTP调用命令:调节空调至24度。

      • HTTP调用命令:关闭卫生间灯(如果有)。

  4. 代码逻辑示意 (伪代码)

第三步:高级进阶 —— 利用“状态保持”实现防误触

在酒店场景中,工程部可能不希望客人在拔掉取电卡后,某个关键设备(如网络机柜)被关闭。

  • 解决方案:通过API下发命令 {"power1":{"keep":"1","revert":"0"}}

  • 效果:即使用户物理按下了开关试图关闭设备,继电器也会在松开手的瞬间自动恢复开启状态。这利用的是开关内部的软件互锁功能,不依赖服务器网络,即使断网也能生效

第四步:本地化控制与容灾

鉴于芯步设备支持局域网HTTP API ,二次开发时应优先设计本地化策略:

  1. 在客房内的中控系统(如树莓派、酒店中控盒子)运行本地Web服务。

  2. 当中控盒子监测到网络断开时,自动切换为局域网控制,直接通过内网IP控制开关,保证客房场景切换的流畅性和稳定性。

六、 典型场景配置表

场景名称用户动作接收指令的设备二次开发逻辑处理 (中间件)最终执行效果
欢迎模式进门插卡/按开关1路开关服务器识别到开关信号,忽略自身继电器状态,调用各设备API。筒灯亮、窗帘关、空调23°C、电视打开欢迎页。
睡眠模式长按床头开关1路开关判定长按信号(通过连续点动的延时时间差判定),下发组命令。关闭所有灯光,关闭电视,窗帘留缝,空调进入睡眠风速。
离家/打扫出门按玄关开关1路开关调用客房管理系统API,联动清洁机器人,关闭总电源(除冰箱外)。总闸延时5分钟断开。
勿扰联动门铃触发1路开关假如开关指示灯变成红色,服务器不发送开锁指令。开关灯闪烁提醒客人门外有人,但不开锁。

七、 总结

通过对芯步1路智能墙壁触摸开关进行二次开发,开发者可以打破“一个按键只能控制一个设备”的物理限制,将其变身为全屋智能的神经末梢。利用其开放的 “点动模式”“HTTP API” ,开发者可以用极低的硬件成本实现高客制化的酒店/公寓客房场景控制,真正实现所谓的“极简布线,无限场景”。