怎么用PHP语言实现远程控制两路照明开关

怎么用PHP语言实现远程控制两路开关呢?

本文描述了使用PHP语言调用HTTP接口,实现控制两路开关,两路开关可控制两路照明、排风扇等电器。

可选用产品:可根据实际场景需求,选择对应的规格
序号设备名称厂商
1智能WiFi墙壁开关2路统软云物联
2智能WiFi触摸墙壁开关2路

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

1. 智能WiFi墙壁开关2路

标准86型底盒安装,可直接平行替换原有墙壁开关;
可独立控制2路照明或其他电器;
2路分控,均可通过HTTP接口独立远程;
支持远程定时任务,支持自定义联动操作;
可保持(锁定)开关状态,用户操作后若干秒,恢复原有状态;

更多...


使用PHP语言调用HTTP接口控制智能WiFi墙壁开关2路的代码
以设备控制(向设备下发命令)为例

全部接口文档复制

<?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. 1路状态保持 - 可用值[{"keep":"0","revert":"2"}(1路保持关(用户开2秒后自动关闭)),{"keep":"1","revert":"3"}(1路保持开(用户关3秒后自动打开))]示例[1路保持开(用户关3秒后自动打开)], order为:{"power1":{"keep":"1","revert":"3"}}
4. 2路状态保持 - 可用值[{"keep":"0","revert":"2"}(2路保持关(用户开2秒后自动关闭)),{"keep":"1","revert":"3"}(2路保持开(用户关3秒后自动打开))]示例[2路保持开(用户关3秒后自动打开)], order为:{"power2":{"keep":"1","revert":"3"}}
5. 1路先通后断 - 可用值[1000(1s),2000(2s),5000(5s)]示例[2s], order为:{"point1":"2000"}
6. 2路先通后断 - 可用值[1000(1s),2000(2s),5000(5s)]示例[2s], order为:{"point2":"2000"}
7. 1路先断后通 - 可用值[1000(1s),2000(2s),5000(5s)]示例[2s], order为:{"reset1":"2000"}
8. 2路先断后通 - 可用值[1000(1s),2000(2s),5000(5s)]示例[2s], order为:{"reset2":"2000"}
*/
$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触摸墙壁开关2路

更多...


使用PHP语言调用HTTP接口控制智能WiFi触摸墙壁开关2路的代码
以设备控制(向设备下发命令)为例

全部接口文档复制

<?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. 1路状态保持 - 可用值[{"keep":"0","revert":"2"}(1路保持关(用户开2秒后自动关闭)),{"keep":"1","revert":"3"}(1路保持开(用户关3秒后自动打开))]示例[1路保持开(用户关3秒后自动打开)], order为:{"power1":{"keep":"1","revert":"3"}}
4. 2路状态保持 - 可用值[{"keep":"0","revert":"2"}(2路保持关(用户开2秒后自动关闭)),{"keep":"1","revert":"3"}(2路保持开(用户关3秒后自动打开))]示例[2路保持开(用户关3秒后自动打开)], order为:{"power2":{"keep":"1","revert":"3"}}
5. 1路先通后断 - 可用值[1000(1s),2000(2s),5000(5s)]示例[2s], order为:{"point1":"2000"}
6. 2路先通后断 - 可用值[1000(1s),2000(2s),5000(5s)]示例[2s], order为:{"point2":"2000"}
7. 1路先断后通 - 可用值[1000(1s),2000(2s),5000(5s)]示例[2s], order为:{"reset1":"2000"}
8. 2路先断后通 - 可用值[1000(1s),2000(2s),5000(5s)]示例[2s], order为:{"reset2":"2000"}
*/
$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墙壁开关2路
白色
1000W / gang(单路)
2路

智能WiFi触摸墙壁开关2路
白色

产品尺寸与走线

1. 智能WiFi墙壁开关2路接线示意图

走线示意

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

2. 智能WiFi触摸墙壁开关2路接线示意图

走线示意

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/23532.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

git clone 文件名中文、有冒号等问题 fatal: repository ‘***/r/鏍″洯鏅烘収椋熷爞/.git/‘ not found

记录一个git问题&#xff0c;比较有意思&#xff0c;也比较难找。 背景 首先把代码拉下来&#xff0c;发现给我报错。 怀疑 刚开始以为是仓库地址变了&#xff0c;但是发现仓库地址并没有变过。 交流 然后寻找解决方案。因为同事也遇到过&#xff0c;同事交了我一招&…

【西瓜书】2.模型评估与选择

1.经验误差与过拟合 &#xff08;1&#xff09;错误率、精度 &#xff08;2&#xff09;误差&#xff1a;训练误差/经验误差、泛化误差 &#xff08;3&#xff09;过拟合、欠拟合 欠拟合好克服&#xff0c;过拟合无法彻底避免 2.三大任务——评估方法 泛化误差的评估方法&a…

STM32F103VE和STM32F407VE的引脚布局

STM32F103VE vs STM32F407VE 引脚对比表 引脚 STM32F103VE STM32F407VE 备注 1 VSS VSS 地 2 VDD VDD 电源 3 VSSA VSSA 模拟地 4 VDDA VDDA 模拟电源 5 OSC_IN OSC_IN 外部时钟输入 6 OSC_OUT OSC_OUT 外部时钟输出 7 NRST NRST 复位 8 PC13 (GPIO) PC13 (GPIO) GPIO 9 PC14 (…

如何永久擦除Android手机中的所有个人数据?

在这个数字化的时代&#xff0c;确保您的个人数据的安全和隐私至关重要。如果您计划出售或回收您的Android手机&#xff0c;了解如何正确擦除Android手机是至关重要的。本综合指南将引导您通过安全擦除Android手机的分步过程&#xff0c;以保护您的敏感信息。 手机是极其敏感的…

反转链表的三种方法--面试必考(图例超详细解析,小白一看就会!!!)

目录 一、前言 二、题目描述 三、解题方法 ⭐ 头插法 --- 创建新的链表 ⭐ 迭代法 --- 三指针 ⭐ 递归法 四、总结与提炼 五、共勉 一、前言 反转链表这道题&#xff0c;可以说是--链表专题--&#xff0c;最经典的一道题&#xff0c;也是在面试中频率最高的一道题目&…

编译 TMS320F2838x 项目

编译 tms320f28388 项目&#xff0c;并生成 hex 文件 介绍 C2000Ware 目录 archive 架构 boards 基于官方开发板的例子 device_support 官方驱动&#xff0c;建立工程重点要用到的东西&#xff08;基于寄存器变量访问&#xff09; docs 说明文档 driverlib 官方的驱动…

找好看的简历模板,就上这6个网站。

找好看的简历模板就上这6个网站&#xff0c;免费下载&#xff01; 1、菜鸟图库 个人简历模板|WORD文档模板免费下载 - 菜鸟图库 站内有超多办公类素材&#xff0c;PPT、world、excel模板都能找到&#xff0c;简历模板有非常详细的分类&#xff0c;风格类型也很多&#xff0c;想…

数据库MongoDB详解

文章目录 入门指南1. 安装 MongoDB2. 启动 MongoDB 服务3. 连接到 MongoDB4. 创建数据库和集合5. CRUD 操作6. 索引7. 备份与恢复 不同场景下的应用方式&#xff1a;应用案例展示 入门指南 MongoDB 是一个基于分布式文件存储的非关系型数据库&#xff08;NoSQL&#xff09;&am…

Linux “ 软件管理 “

软件管理 widows 安装 方法一&#xff1a; 双击exe安装包&#xff0c;就可以安装。 用exe安装的软件会破记录到注册表中。 注册会记录安装位置&#xff0c;软件名称。 方法二&#xff1a; 用绿色方式进行安装。 不用写到注册表中&#xff0c;因此无法在开始菜单里面查看和卸…

AppInventor2有没有删除后的撤销功能?

问&#xff1a;不小心删除了组件&#xff0c;能撤回吗&#xff1f; 答&#xff1a;界面&#xff08;组件&#xff09;设计界面&#xff0c;没有撤销功能。代码&#xff08;逻辑&#xff09;设计视图&#xff0c;可以使用 CtrlZ 撤销&#xff0c;CtrlY 反撤销。 界面设计没有撤…

AIGC绘画设计——midjourney有哪些好用的关键词?

midjourney有哪些高级关键词&#xff1f; 这一期继续分享一些高级的关键词&#xff0c; 我有一些案例也是从其他博主那学习来的&#xff0c; 但为了尽可能不出错&#xff0c;每个案例都是自己尝试了很多次后才拿出来的。 挑选了几个效果比较好&#xff0c;使用场景较高的类型…

Odoo:全球用户规模最大的免费开源ERP,使用前必须关注的事项

在数字经济时代&#xff0c;使用企业资源规划 (ERP) 工具管理业务是优化绩效和获得最佳结果的必要条件。 Odoo作为世界上最受欢迎的免费开源企业管理软件&#xff0c;已成功服务全球超过1200万以上的企业用户规模&#xff0c;开源智造作为Odoo亚太地区的金牌服务机构&#xff…

【Mybatis】INSERT INTO 遇到NULL怎么处理?

目录标题 背景-使用Mybatis手写批量插入Insert方法测试核心代码&#xff0c;author字段为null&#xff0c;插入条件怎么写&#xff1f; MybatisPlus解决方案自动填充字段 Mybatis解决方案if标签处理 问题&#xff1a;如果不在工程里面设置默认值&#xff1f;如何直接使用数据库…

26-unittest之装饰器(@classmethod)

unittest中的setUp可以在每个测试方法运行前执行&#xff0c;有效的减少了代码量。但有个弊端&#xff0c;比如打开浏览器操作&#xff0c;执行每个测试方法前都要重新打开一次&#xff0c;这样就会浪费很多时间。 是否可以只打开一次浏览器&#xff0c;执行完所有的测试方法后…

Springboot jar运行时,将jar内的文件拷贝到文件系统中

背景 因为执行需要&#xff0c;需要把jar内templates文件夹下的的文件夹及文件加压到宿主机器的某个路径下&#xff0c; 以便执行对应的脚本文件 PS: 通过类加载器等方式&#xff0c;直接getFile遍历文件&#xff0c;在idea中运行是没问题的&#xff0c;但是当打包成jar运行就会…

金融科技重塑跨境支付:创新引领全球支付新纪元

一、引言 随着全球化的加速和科技的飞速发展,跨境支付作为国际贸易的“血脉”,正经历着前所未有的变革。金融科技以其强大的创新能力和技术支撑,正在重塑跨境支付领域的格局,推动全球支付行业向更加高效、安全、便捷的方向发展。本文将深入探讨金融科技如何引领跨境支付的创…

【Mongodb】Mongodb亿级数据性能测试和压测

一&#xff0c;mongodb数据性能测试 如需转载&#xff0c;请标明出处&#xff1a;https://zhenghuisheng.blog.csdn.net/article/details/139505973 mongodb数据性能测试 一&#xff0c;mongodb数据性能测试1&#xff0c;mongodb数据库创建和索引设置2&#xff0c;线程池批量…

React+TS前台项目实战(一)-- 项目初始化配置及开此系列的初衷

文章目录 前言一、初始化项目二、基础配置1. 项目目录及说明如下2. TS版本使用Craco需注意 总结 前言 前面 后台管理系统实战 系列教程暂时告一段落了&#xff0c;想了解全局各种配置的可自行查看。本次教程将重点介绍React前台项目的实操&#xff0c;关于具体的配置&#xff…

龙迅LT8712X TYPE-C或者DP转HDMI加VGA输出,内置MCU,只是IIS以及4K60HZ分辨率

龙迅LT8712X描述&#xff1a; LT8712X是一种高性能的Type-C/DP1.2到HDMI2.0和VGA转换器&#xff0c;设计用于将USB Type-C源或DP1.2源连接到HDMI2.0和VGA接收器。LT8712X集成了一个DP1.2兼容的接收器&#xff0c;一个HDMI2.0兼容的发射机和一个高速三角机窝视频DAC。此外&…

Python 可变长参数的魔法:灵活函数设计的秘密

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 什么是可变长参数&#xff1f; 在 Python 中&#xff0c;可变长参数允许你向函数传入任意数量的参数&#xff0c;而无需预先定义它们的个数。这为编写更加灵活和通用的函数提供了可能。可变长参数主要有两种形式&am…