当前位置: 首页 > news >正文

如何通过PHP语言实现远程控制多路照明

如何通过PHP语言实现远程控制多路照明呢?

本文描述了使用PHP语言调用HTTP接口,实现控制多路照明,通过多路控制器,可独立远程控制多路照明。

可选用产品:可根据实际场景需求,选择对应的规格
序号设备名称厂商
1智能WiFi控制器8路[交流电压版]统软云物联
2智能WiFi控制器4路[交流电压版]

下面以每款产品为例,用编程实现远程:

1. 智能WiFi控制器8路[交流电压版]

提供8路交流10A输出,可接照明、电器等;
广泛应用于共享台球室、共享自习室、共享充电等场景;
同时提供8路开关量输出,可外接轻触开关;
8路分控,均可通过HTTP接口远程独立控制通断;
支持远程定时任务,支持自定义联动操作;

更多...


使用PHP语言调用HTTP接口控制智能WiFi控制器8路[交流电压版]的代码
以设备控制(向设备下发命令)为例

全部接口文档复制

<?php$client = new http\Client;
$request = new http\Client\Request;$body = new http\Message\Body;/*
device[字符串]:设备唯一ID,可传多个,可在控制台可查看,也可通过接口拉取;
order[json字符串]:命令,取值参考:
1. 线路1 - 可用值[1(通),0(断)]示例[断], order为:{"power1":"0"}
2. 线路2 - 可用值[1(通),0(断)]示例[断], order为:{"power2":"0"}
3. 线路3 - 可用值[1(通),0(断)]示例[断], order为:{"power3":"0"}
4. 线路4 - 可用值[1(通),0(断)]示例[断], order为:{"power4":"0"}
5. 线路5 - 可用值[1(通),0(断)]示例[断], order为:{"power5":"0"}
6. 线路6 - 可用值[1(通),0(断)]示例[断], order为:{"power6":"0"}
7. 线路7 - 可用值[1(通),0(断)]示例[断], order为:{"power7":"0"}
8. 线路8 - 可用值[1(通),0(断)]示例[断], order为:{"power8":"0"}
9. 批量控制 - 可用值[{"power":1}(全开),{"power":0}(全关),{"relay":[1,3,5,7],"power":1}(线路1|3|5|7开),{"relay":[1,3,5,7],"power":0}(线路1|3|5|7关),{"relay":[2,4,6,8],"power":1}(线路2|4|6|8开),{"relay":[2,4,6,8],"power":0}(线路2|4|6|8关)]示例[线路1|3|5|7关], order为:{"batch":{"relay":[1,3,5,7],"power":0}}
10. 先通后断 - 可用值[{"interval":500}(500毫秒,全部线路),{"relay":[1,3,5,7],"interval":1000}(1秒,线路1|3|5|7),{"relay":[2,4,6,8],"interval":2000}(2秒,线路2|4|6|8)]示例[1秒,线路1|3|5|7], order为:{"point":{"relay":[1,3,5,7],"interval":1000}}
11. 先断后通 - 可用值[{"interval":500}(500毫秒,全部线路),{"relay":[1,3,5,7],"interval":1000}(1秒,线路1|3|5|7),{"relay":[2,4,6,8],"interval":2000}(2秒,线路2|4|6|8)]示例[1秒,线路1|3|5|7], order为:{"reset":{"relay":[1,3,5,7],"interval":1000}}
*/
$body->append(new http\QueryString(array('device' => '设备ID','order' => '命令'
)));$request->setRequestUrl("http://iot-api.unisoft.cn/{APP_ID}/device/control/?sign={sign}&ts={ts}");
$request->setRequestMethod("POST");
$request->setBody($body);$request->setHeaders(array("X-APISpace-Token" => "","Content-Type" => ""
));$client->enqueue($request)->send();
$response = $client->getResponse();echo $response->getBody();

说明:{APP_ID}为您的应用ID(由平台生成),免费注册登录后,可在控制台查看;sign和ts的取值,请参考文档。

2. 智能WiFi控制器4路[交流电压版]

提供4路交流10A输出,可接照明、电器等;
广泛应用于共享台球室、共享自习室、共享充电等场景;
同时提供4路开关量输出,可外接轻触开关;
4路分控,均可通过HTTP接口远程独立控制通断;
支持远程定时任务,支持自定义联动操作;

更多...


使用PHP语言调用HTTP接口控制智能WiFi控制器4路[交流电压版]的代码
以设备控制(向设备下发命令)为例

全部接口文档复制

<?php$client = new http\Client;
$request = new http\Client\Request;$body = new http\Message\Body;/*
device[字符串]:设备唯一ID,可传多个,可在控制台可查看,也可通过接口拉取;
order[json字符串]:命令,取值参考:
1. 线路1 - 可用值[1(通),0(断)]示例[断], order为:{"power1":"0"}
2. 线路2 - 可用值[1(通),0(断)]示例[断], order为:{"power2":"0"}
3. 线路3 - 可用值[1(通),0(断)]示例[断], order为:{"power3":"0"}
4. 线路4 - 可用值[1(通),0(断)]示例[断], order为:{"power4":"0"}
5. 批量控制 - 自定义示例[线路1|3关], order为:{"batch":{"relay":[1,3],"power":0}}
6. 先通后断 - 自定义示例[1秒,线路1|3], order为:{"point":{"relay":[1,3],"interval":1000}}
7. 先断后通 - 自定义示例[1秒,线路1|3], order为:{"reset":{"relay":[1,3],"interval":1000}}
*/
$body->append(new http\QueryString(array('device' => '设备ID','order' => '命令'
)));$request->setRequestUrl("http://iot-api.unisoft.cn/{APP_ID}/device/control/?sign={sign}&ts={ts}");
$request->setRequestMethod("POST");
$request->setBody($body);$request->setHeaders(array("X-APISpace-Token" => "","Content-Type" => ""
));$client->enqueue($request)->send();
$response = $client->getResponse();echo $response->getBody();

说明:{APP_ID}为您的应用ID(由平台生成),免费注册登录后,可在控制台查看;sign和ts的取值,请参考文档。

产品参数对比

产品版本语音播报输出控制线路

智能WiFi控制器8路[交流电压版]
交流电压版
交流220V
8路
带外置天线

智能WiFi控制器4路[交流电压版]
交流电压版
交流220V
4路
带外置天线

产品尺寸与走线

1. 智能WiFi控制器8路[交流电压版]接线示意图

走线示意

* 接线前请确保断路器上的电源已关闭

2. 智能WiFi控制器4路[交流电压版]接线示意图

走线示意

* 接线前请确保断路器上的电源已关闭

相关文章:

  • 利用BeanFactoryPostProcessor让Bean提前被创建
  • 汽车IVI中控开发入门及进阶(二十四):杰发科技AC8015
  • 高通Android 12/13实现USB拔出关机功能
  • 了解CSS中的link和@import引入CSS的区别
  • Linux搭建PHP下的RabbitMQ环境(php-amqp/rabbitmq-c/erlang)
  • 如何管理和维护组件库?
  • WPF实现简单的3D图形
  • Android ViewPager和ViewPager2的区别
  • jenkins插件之plot
  • TypeScript 在前端开发中的应用
  • 品牌舆情监测系统是什么?怎么监测?
  • Hbase 面试题(七)
  • PDF编辑流程,另附5款好用的PDF编辑器
  • 2024.5.29晚训参考代码
  • 解析《动物园规则怪谈》【逻辑】
  • 【技术性】Search知识
  • codis proxy处理流程
  • crontab执行失败的多种原因
  • Essential Studio for ASP.NET Web Forms 2017 v2,新增自定义树形网格工具栏
  • JavaScript 基础知识 - 入门篇(一)
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • 物联网链路协议
  • 移动端 h5开发相关内容总结(三)
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • ​水经微图Web1.5.0版即将上线
  • $.ajax中的eval及dataType
  • (007)XHTML文档之标题——h1~h6
  • (19)夹钳(用于送货)
  • (2024,Vision-LSTM,ViL,xLSTM,ViT,ViM,双向扫描)xLSTM 作为通用视觉骨干
  • (el-Transfer)操作(不使用 ts):Element-plus 中 Select 组件动态设置 options 值需求的解决过程
  • (二刷)代码随想录第15天|层序遍历 226.翻转二叉树 101.对称二叉树2
  • (学习日记)2024.04.10:UCOSIII第三十八节:事件实验
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件
  • .net6 当连接用户的shell断掉后,dotnet会自动关闭,达不到长期运行的效果。.NET 进程守护
  • .Net面试题4
  • .net实现客户区延伸至至非客户区
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually
  • @ModelAttribute 注解
  • @zabbix数据库历史与趋势数据占用优化(mysql存储查询)
  • [ C++ ] 类和对象( 下 )
  • [AAuto]给百宝箱增加娱乐功能
  • [AWS]CodeCommit的创建与使用
  • [c#基础]值类型和引用类型的Equals,==的区别
  • [FlareOn5]Ultimate Minesweeper
  • [HJ73 计算日期到天数转换]
  • [IE编程] IE中对网页进行截图的编程接口
  • [IE技巧] 使IE8以单进程的模式运行
  • [js高手之路] dom常用API【appendChild,insertBefore,removeChild,replaceChild,cloneNode】详解与应用...
  • [LeetCode]Balanced Binary Tree
  • [linux] git lfs install 安装lfs
  • [linux][证书]证书导出公钥