如何通过PHP语言实现远程控制空调

如何通过PHP语言实现远程控制空调呢?

本文描述了使用PHP语言调用HTTP接口,实现控制空调,通过不同规格的通断器,来控制不同功率的空调的电源。

可选用产品:可根据实际场景需求,选择对应的规格
序号 设备名称 厂商
1 智能WiFi墙壁插座16A 统软云物联
2 智能WiFi通断器AC4-20A 统软云物联
3 智能WiFi通断器AC4-30A 统软云物联

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

1. 智能WiFi墙壁插座16A

标准86型底盒安装,可直接平行替换原有16A墙壁插座;

1位3孔,额定功率3500W;

可接2匹内空调插头;

按钮动作可自定义、可屏蔽;

功率计量版实时上报计量数据;

HTTP接口远程控制通断;

支持远程定时任务,支持自定义联动操作;

更多...


使用调用HTTP接口控制智能WiFi墙壁插座16A的代码

以设备控制(向设备下发命令)为例

全部接口文档复制

php 复制代码
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;

/*
device[字符串]:设备唯一ID,可传多个,可在控制台可查看,也可通过接口拉取;
order[json字符串]:命令,取值参考:
1. 线路 - 可用值[1(打开),0(关闭)]
   示例[关闭], order为:{"power":"0"}
2. 计量 - 可用值[1(打开),0(关闭)]
   示例[关闭], order为:{"metering":"0"}
3. 先通后断 - 自定义
   示例[3秒], order为:{"point":"3000"}
4. 先断后通 - 自定义
   示例[3秒], order为:{"reset":"3000"}
*/
$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通断器AC4-20A

总额定功率4400W;

按钮动作可自定义、可屏蔽;

HTTP接口远程控制通断;

支持远程定时任务,支持自定义联动操作;

更多...


使用调用HTTP接口控制智能WiFi通断器AC4-20A的代码

以设备控制(向设备下发命令)为例

全部接口文档复制

php 复制代码
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;

/*
device[字符串]:设备唯一ID,可传多个,可在控制台可查看,也可通过接口拉取;
order[json字符串]:命令,取值参考:
1. 线路 - 可用值[1(打开),0(关闭)]
   示例[关闭], order为:{"power":"0"}
2. 先通后断 - 自定义
   示例[3秒], order为:{"point":"3000"}
3. 先断后通 - 自定义
   示例[3秒], order为:{"reset":"3000"}
*/
$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的取值,请参考文档

3. 智能WiFi通断器AC4-30A

总额定功率6600W;

按钮动作可自定义、可屏蔽;

HTTP接口远程控制通断;

支持远程定时任务,支持自定义联动操作;

更多...


使用调用HTTP接口控制智能WiFi通断器AC4-30A的代码

以设备控制(向设备下发命令)为例

全部接口文档复制

php 复制代码
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;

/*
device[字符串]:设备唯一ID,可传多个,可在控制台可查看,也可通过接口拉取;
order[json字符串]:命令,取值参考:
1. 线路 - 可用值[1(打开),0(关闭)]
   示例[关闭], order为:{"power":"0"}
2. 先通后断 - 自定义
   示例[3秒], order为:{"point":"3000"}
3. 先断后通 - 自定义
   示例[3秒], order为:{"reset":"3000"}
*/
$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墙壁插座16A ###### 不带功率计量 ###### 标准86型底盒安装 ###### 3500W
###### 智能WiFi墙壁插座16A ###### 带功率计量 ###### 标准86型底盒安装 ###### 3500W

产品参数对比

产品 版本
###### 智能WiFi通断器AC4-20A ###### 20A
###### 智能WiFi通断器AC4-30A ###### 白色

产品尺寸与走线

1. 智能WiFi墙壁插座16A接线示意图

走线示意

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

2. 智能WiFi通断器AC4-20A接线示意图

产品尺寸

3. 智能WiFi通断器AC4-30A接线示意图

产品尺寸

相关推荐
REDcker1 天前
Linux信号机制详解 POSIX语义与内核要点 sigaction与备用栈实践
linux·运维·php
REDcker1 天前
浏览器端Web程序性能分析与优化实战 DevTools指标与工程清单
开发语言·前端·javascript·vue·ecmascript·php·js
云云只是个程序马喽1 天前
AI漫剧创作系统开发定制指南
人工智能·小程序·php
niucloud-admin2 天前
PHP V6 单商户常见问题——云编译报错处理
php
xxjj998a2 天前
Laravel 1.x:PHP框架的原始魅力
android·php·laravel
xxjj998a2 天前
Laravel 5.x版本核心特性全解析
php·laravel
魔极客2 天前
第十二节:龙晰 AnolisOS-23.4-x86_64.qcow2 虚拟机的网络配置方式及 ssh 连接
网络·ssh·php
dog2502 天前
圆锥曲线和二次曲线
开发语言·网络·人工智能·算法·php
千寻girling2 天前
五一劳动节快乐 [特殊字符][特殊字符][特殊字符]
java·c++·git·python·学习·github·php
YJlio2 天前
10.2.8 以其他账户运行服务(Running services in alternate accounts):为什么“把服务切到某个用户账号下运行”,本质上是在改变服务的整个安全上下文?
python·安全·ios·机器人·django·iphone·7-zip