1. 陀螺仪和视觉扫地机

SDK 提供两种数据获取方式:HTTP 接口请求和实时通道,获取、删除历史记录等数据需要请求 HTTP 接口,扫地机清扫中传递的数据可以通过注册实时通道监听获取

1.1. 通用接口

接口说明

HTTPS 类接口采用 TuyaHomeSdk 的通过接口调用,主要传入接口名称,接口 版本号,入参等。

入口TuyaHomeSdk.getRequestInstance()

public interface ITuyaSmartRequest {

    /**
     *
     * @param apiName  接口名称
     * @param version  接口版本号
     * @param postData 发送数据
     * @param callback 接口回调
     * @param object 接收回调数据的数据结构,例如相应的javabean
     */
    <T> void requestWithApiName(String apiName, String version, Map<String, Object> postData, Class<T> object, final ITuyaDataCallback<T> callback);

    <T> void requestWithApiNameWithoutSession(String apiName, String version, Map<String, Object> postData, Class<T> object, final ITuyaDataCallback<T> callback);

    void onDestroy();
}

1.1.1. 1.最新一次清扫记录

请求参数:

apiName:tuya.m.device.media.latest

version:2.0

postData:

{
  "devId" : "xxx",
  "start":"",
  "size" : 500
}

返回数据示例

 {
    "devId" : "xxx",
    "startRow" : "mtnva58ee6817b605ddcc6_35_1535629239586",
    "dataList" : [ "373702373700", "383702383802373901383901383800"],
    "subRecordId" : 35,
    "hasNext" : true,
    "startTime" : 1535629049,
    "endTime" : 1535629244,
    "status" : 2
}

1.1.2. 2.获取历史记录列表

请求参数:

apiName:m.smart.scale.history.get.list

version:1.0

postData:

{
  "devId" : "xxx",
  "dpIds" : "",
  "offset": 0,
  "limit" : 10
}
字段 类型 描述
devId String 设备ID
dpIds String 在涂鸦平台配置的清扫记录的dpId
offset int 偏移值
limit int 分页数量

返回数据示例

{
        "datas":[
            {
                "devId":"xxxx",
                "dps":[
                    {
                        "15":"201906171721009007"
                    }
                ],
                "avatar":"https://airtake-public-data.oss-cn-hangzhou.aliyuncs.com/smart/user_res/avatar/scale/no_body_icon.png",
                "userName":"未知",
                "gmtCreate":1560763848501,
                "uuid":"15607600058B81A6C4A0273FDD61091D0B02403848501",
                "userId":"0",
                "tags":0,
                "status":1
            }
        ],
        "hasNext":false,
        "totalCount":1
    }
字段 类型 描述
uuid String 删除记录时候用的 UUID
15 String 在涂鸦平台上配置的清扫记录的 dpId
201906171721009007 String 设备在 dpId 下上报的值【2019年06月17号,17点21分,清扫时间009,清扫面积007】具体数据和设备拟定
total int 总共条数
hasNext boolean 是否有下一页

1.1.3. 3.历史记录详情信息

请求参数:

apiName:tuya.m.device.media.detail

version:2.0

postData:

{
  "devId" : "xxx",
  "subRecordId" : 31,
  "start":"",
  "size" : 500
}
字段 类型 描述
devId String 设备 id
subRecordId int 清扫记录 id
start String 第一次传空串,后面取下一页时填上一页返回值里的 startRow 值
size int 请求数据大小

返回数据示例

{
    "devId" : "xxx",
    "startRow" : "mtnva58ee6817b605ddcc6_31_1535622776561",
    "dataList" : ["3e3f02403e013e3f00", "3f3f024040013f3f00"],
    "subRecordId" : 31,
    "hasNext" : true,
    "startTime" : 1535621566,
    "endTime" : 1535623017,
    "status" : 2
  }
字段 类型 描述
startRow String 下次请求传入的 Start 值
subRecordId int 清扫记录 id
startTime String 开始时间
endTime String 结束时间
hasNext boolean 是否有下一页

1.1.4. 4.删除历史记录(最多100条)

请求参数:

apiName:m.smart.scale.history.delete

version:1.0

postData:

{
  "devId" : "xxx",
  "uuid":"15607600058B81A6C4A0273FDD61091D0B02403848501,
  15607600058B81A6C4A0273FDD61091D0B0240384850"、
}

返回数据示例

 ture / false

1.2. 实时数据通道

1.2.1. 功能简介

注册实时数据通道监听设备数据流上报,返回数据是 byte 数组形式,根据机器协议解析成可用数据,如x、y坐标、颜色值等。

1.2.2. 通道流程图

扫地机增量数据获取

入口TuyaHomeSdk.getTransferInstance();

1.2.3. 订阅地图流数据

void registerTransferDataListener(ITuyaDataCallback<TransferDataBean> callback);

代码示例


TuyaHomeSdk.getTransferInstance().registerTransferDataListener(new ITuyaDataCallback<TransferDataBean>() {
    @Override
    public void onSuccess(TransferDataBean result) {

    }

    @Override
    public void onError(String errorCode, String errorMessage) {

    }
});

1.2.4. 取消订阅地图流数据

void unRegisterTransferDataListener(ITuyaDataCallback<TransferDataBean> callback);

代码示例

TuyaHomeSdk.getTransferInstance().unRegisterTransferDataListener(this);

results matching ""

    No results matching ""