dwedaz / tuya-api-wrapper

该包的最新版本(v1.0.0)没有可用的许可证信息。

v1.0.0 2021-01-20 15:14 UTC

This package is auto-updated.

Last update: 2024-09-20 23:23:53 UTC


README

参考文档
https://developer.tuya.com/en/docs/iot/open-api/api-reference/api-reference?

涂鸦开放了多种API,涵盖了设备配对、智能家居管理、设备控制和场景自动化等多种业务场景。

这些客户端库并非由涂鸦官方支持。然而,这些库被认为是有效的,并且处于维护状态。这意味着我们将解决关键错误和安全问题,并且将添加一些新功能以供功能使用。

安装

您可以使用 Composer 或直接 下载发布版本

Composer

首选方法是使用 Composer。如果您尚未安装Composer,请遵循 安装说明

安装Composer后,请在项目根目录下执行以下命令来安装此库

composer require dwedaz/tuya-api-wrapper:"1.0"

最后,请确保包含自动加载器

require_once '/path/to/your-project/vendor/autoload.php';

要求

基本示例

require 'vendor/autoload.php';
use Dwedaz\TuyaApiWrapper\TuyaApi;

use Dwedaz\TuyaApiWrapper\AuthorizationManagement\GetToken;
use Dwedaz\TuyaApiWrapper\AuthorizationManagement\RefreshToken;
use Dwedaz\TuyaApiWrapper\DeviceControl\ControlDevice;
use Dwedaz\TuyaApiWrapper\DeviceControl\DeviceStatus;

$clientId = 'xxxxxxxxxxxxx';
$secret = 'xxxxxxxxxxxxx';
$deviceId = 'xxxxxxxxx';
$filename = 'token.json';

try{

    $client = new TuyaApi($clientId, $secret);
    if (!file_exists($filename)){
        $accessToken = json_decode(file_get_contents($filename), true);
        $token = $accessToken['result']['access_token'];
        $client->setAccessToken($token);
    }else{
        $accessToken = $client->call(GetToken::class, ['grant_type' => 1]);
        file_put_contents($filename, json_encode($accessToken));
    }
    print_r($client->call(DeviceStatus::class, $deviceId));
}catch (Exception $e){
    echo $e->getMessage();
}