简体中文
简体中文
English
联系我们
注册
登录
语言
简体中文
简体中文
English
联系我们
登录
注册
返回主站
layout空间导航

接入指南

更新时间:2021-10-18 09:59:50下载pdf

本章节为您介绍使用涂鸦商用照明 API 过程中所涉及的请求结构、授权方式、签名机制等技术要点,便于您快速实现 API 调用。

事实上,调用商用照明相关的 API 的方法和调用其他涂鸦开放 API 的方法是一样的,只需要您再联系商务开通商用照明 SaaS 服务。

文档列表

注意事项

  • 开通云服务:调用 API 前请确保您已开通相关的云服务。
  • 开通 SaaS 服务:调用 API 前请确保您已联系商务开通商用照明 SaaS 服务。

资源下载

Postman 脚本下载

可供参考的 JavaSDK 下载

Java SDK 使用说明

基于 Apache HttpClient 的 SDK

该 SDK 适用于使用 Apache HttpClient 且不希望引入额外依赖的 Java 开发者。该 SDK 的实现使用了 Apache HttpClient 作为 HTTP 请求客户端,且使用 FastJson 处理序列化和反序列化。它将尽快提供最新更新的 OpenAPI

  1. 下载解压后,得到 tuya-lighting-open-api-java-sdk-1.0.jar 一个 jar 包。

  2. 在项目根目录下创建 lib 文件夹,将解压得到的 jar 放入其中。

  3. pom.xml 中添加如下依赖。因该 jar 引入了第三方依赖,需要显式提供这些依赖(如果项目中已有则不用引入)。

    <dependency>
        <groupId>com.tuya</groupId>
        <artifactId>tuya-lighting-open-api-java-sdk</artifactId>
        <version>1.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/lib/tuya-lighting-open-api-java-sdk-1.0.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5.3</version>
    </dependency>
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.68</version>
    </dependency>
    
  4. 使用方式如下。

    TuyaOpenApiConfiguration tuyaOpenApiConfiguration = new TuyaOpenApiConfiguration();
    tuyaOpenApiConfiguration.setUrl("https://openapi.tuyacn.com");
    tuyaOpenApiConfiguration.setClientId("****rgswael9wqsz****");
    tuyaOpenApiConfiguration.setClientSecret("****d09f429248caab6017554f93****");
    HttpClientUtils.setTuyaOpenApiConfiguration(tuyaOpenApiConfiguration);
    ProjectApi projectApi = new ProjectApi();
    TokenApi tokenApi = new TokenApi();
    BaseResponse<TokenResult> accessToken = tokenApi.getAccessToken(1);
    HttpClientUtils.setTokenResult(accessToken.getResult());
    BaseResponse<PageResult<ProjectListItem>> response = projectApi.page(1, 10, null);
    
  5. 全部 API 清单请参见以下列表。

    Api 类:TokenApiAccountApiProjectApiConstructionTaskApiDeviceApiAlarmApiGroupApiSceneApiLinkageApiTemplateApiEnergyStaticApi

基于 Spring + Retrofit + OkHttp 的 SDK

适用于使用 SpringJava 开发者,相比于 Apache HttpClient 的版本,它更像是提供一个 Spring-OpenApi 的对接方案,依赖了更多的第三方组件。如果您希望依赖尽量少的第三方组件,在技术选型上拥有更多的自主性,推荐您使用基于 Apache HttpClient 的版本。

注意:该版本 SDK 目前仅内置常用的 OpenAPI,用户需要通过自定义 API 的方式进行扩展来使用更多的 OpenAPI

  1. 下载解压后,得到 api-common-1.0-SNAPSHOT.jarillumination-client-1.0-SNAPSHOT.jar 两个 jar 包。

  2. 在项目根目录下创建 lib 文件夹,将解压得到的两个 jar 放入其中。

  3. pom.xml 中添加依赖如下。因以上两个 jar 引入了第三方依赖,需要显式提供这些依赖(如果项目中已有则不用引入)。

    <dependency>
        <groupId>com.tuya.lighting</groupId>
        <artifactId>illumination-client</artifactId>
        <version>1.0-SNAPSHOT</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/lib/illumination-client-1.0-SNAPSHOT.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.tuya.lighting</groupId>
        <artifactId>api-common</artifactId>
        <version>1.0-SNAPSHOT</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/lib/api-common-1.0-SNAPSHOT.jar</systemPath>
    </dependency>
    <!-- 以下是需要显式引入的第三方依赖 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-autoconfigure</artifactId>
        <version>2.3.0.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>com.squareup.retrofit2</groupId>
        <artifactId>retrofit</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.squareup.retrofit2</groupId>
        <artifactId>converter-scalars</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.squareup.retrofit2</groupId>
        <artifactId>converter-gson</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.squareup.retrofit2</groupId>
        <artifactId>adapter-rxjava</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.30</version>
    </dependency>
    
  4. 在启动类上添加注解 @RetrofitScan

  5. application.properties 配置文件中添加以下内容。

    tuya.open.api.url=https://openapi.tuyacn.com
    tuya.open.api.client-id=****rgswael9wqs*****
    tuya.open.api.client-secret=****d09f429248caab6017554f9*****
    

    说明:第 2 行和第 3 行的 ID 和 Secret 需要在云开发项目中获取。

  6. 注入各类 API

    public class ProjectController {
        @Autowired
        private ProjectApi projectApi;
    }
    

本教程包含了以下文档,帮助您快速了解相关概念和流程: