开放接口并支持二次开发的4路交流电压版控制器
浏览:393 次
芯步工厂提供的 智能控制器4路|交流电压版 开放HTTP接口, 适用于任何支持HTTP请求的编程语言。 接口简单、清晰、友好, 仅需在接口携带签名、以及设备ID,即可向设备下发命令。 支持接入任何形式的软件项目:Web、APP / 小程序、窗体软件、以及SaaS / 低代码等平台。
本文介绍了智能控制器4路|交流电压版的相关参数和命令,并在下面提供了主要类型的语言的编程示例。
智能控制器4路|交流电压版
提供4路交流10A输出,可接照明、电器等;
广泛应用于共享自习室、共享设备改造等场景;
同时提供4路开关量信号输入,可外接轻触开关;
4路分控,均可通过HTTP接口远程独立控制通断;
支持远程定时任务,支持自定义联动操作;
适用场景
智能家居照明设备控制、共享场所交流负载管理、智能办公交流电路控制、安全节能交流设备管理、LED灯光系统交流控制、家电设备电源管理、安防设备交流电路控制、物联网设备供电管理、实验室交流负载控制、自动化设备交流电源管理中
支持命令
| 线路1 | power1 |
| 线路2 | power2 |
| 线路3 | power3 |
| 线路4 | power4 |
| 批量控制 | batch |
| 先通后断 | point |
| 先断后通 | reset |
产品手册
| 版本 | 对应产品手册 |
|---|---|
| 内置天线 | 《智能交流控制器4路产品手册》 |
| 外置天线 | 《智能交流控制器4路产品手册》 |
控制设备,向设备下发指令
HTTP请求地址: http(s)://api.yoyoiot.cn/{AppID}/device/control/?sign={sign}&ts={ts}
关于sign和ts的定义
或
MQTT发布主题: api/{AppID}/device/control
接收返回结果亦在同一主题
请求参数
参数较长时建议使用POST方式
| 名称 | 必填 | 类型 | 说明 |
|---|---|---|---|
| gateway | 否 | string | 当发给设备的命令需要其关联的网关转发时,需要指定
网关的设备ID,唯一ID(在网关壳体上、控制台均可以找到)
指定多个网关时请用间隔符(,或|)连接,最多可以同时指定5台网关 |
| device | 是 | string | 设备ID,设备唯一ID(在设备壳体上、控制台均可以找到)
指定多台设备时请用间隔符(,或|)连接
指定多个设备时,不要这些设备属于同一类产品,但必须有相同的指令 |
| order | 是 | string | 命令,可传JSON字符串(推荐)或直接传参
简单命令:可直接GET或POST:设备的属性名称=属性值
复杂或较长的命令:请POST {"order":{命令内容}}
-----------------------------------------------------------------------
在一些业务场景,需要在命令里携带一些特征信息:如订单号等
可在order中增加一个字段extra,如{"power":1,"extra":"T25030700001"}
在本条命令对应的异步消息推送中,会原样返回此特征信息。
extra只支持32位以内的大小写英文字母和数字(a-zA-Z0-9) |
返回示例
x
1
//示例2
//device为设备唯一id3
//p1、p2为参数名称,v1、v2为参数的值4
5
//GET方式的参数为:6
?device=123456&p1=v1&p2=v2&sign={sign}&ts={ts}7
8
//POST方式的FORM参数为:9
device=12345610
p1=v111
p2=v212
13
//POST方式的JSON参数为:14
{"device":111,"order":{"p1":"v1","p2":"v2"}}返回结果
需要注意的是,200仅代表平台接收到了合规的设备ID与参数名称,并成功向设备下发命令。
而设备可能已离线,或命令内容 / 参数有误,在设备上并没有看到预期效果。
在一些必须要求反馈的场景,请接收云端的消息推送,通过异步消息来标记设备是否成功执行命令。
| 名称 | 类型 | 说明 |
|---|---|---|
| code | int | 200 命令下发成功。
501 未指定设备ID,设备ID为一个整型数字,或由“|”或“,"连接的多个数字。设备列表接口中输出了此ID,在本控制台的设备列表中也可以查看。
502 设备不存在或没有可用设备,传入设备ID均不存在。请检查设备ID是否正确,设备是否删除。
503 指定了过多设备,一次最多指定100台设备ID
504 一次指定了多个设备ID,但其中有一些并不可用(不存在、无权限或已删除)
50xx 请见“全局错误代码” |
返回示例