Files
abox-mgr/docs/ABSDK接口部分_0630.md
2026-08-22 12:02:45 +08:00

408 lines
10 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ABSDK 接口文档
## ABRet 返回值说明
| 字段 | 说明 | 备注 |
|------|------|------|
| **code** | 00000成功<br>Xxxxx失败 | 错误码:<br>00000 成功<br>0xxxx 系统级错误<br>1xxxx 权限级<br>2xxxx 操作级 |
| **msg** | 错误信息 | code为00000以外时,该字段有效<br>该字段只提供概要的错误信息。具体错误原因可参考下面提到的code含义表 |
| **key=> value** | 附带信息, 如 seq => 123111 | code为00000时,该字段有效 |
---
## API 接口
### 0. 取得实例对象
**方法签名:** `ABSDK getInstance()`
**参数:**
**返回值:**
ABSDK实例
### 1. 登录
**方法签名:** `ABRet loginWithUsername(String username, String password)`
**参数说明:**
- username:用户名
- password:密码
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
token String TOKEN(后续访问用token,有效期2小时,过期后需重新获取)
### 2. 验证token状态
**方法签名:** `ABRet isValidateToken()`
**参数:**
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
status String TOKEN状态(0:无效 1:有效)
### 3. 发送红外按键指令(请在登录后使用)
**方法签名:** `ABRet sendIr(String irDevName, String irKey)`
**参数说明:**
- irDevName: 红外设备名称
- irKey:按键KEY
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
### 4. 控制窗帘(请在登录后使用)
**方法签名:** `ABRet curtainCtrl(String ctDevName, AB_CT_ACTION action, int percent)`
**参数说明:**
- ctDevName: 窗帘名称
- action:动作(请使用下面2个已在库中定义好的常量)
- OPEN 打开窗帘
- ADJUST 校准窗帘
- PAUSE 暂停(使窗帘停止运动)
- percent:窗帘打开百分比(0100)
- ※该参数只需要在【打开窗帘】时使用
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
### 5. 主机红外下载 (请在登录后使用)
**方法签名:** `ABRet downloadIrCodes(List<IrInfo> irInfos)`
**参数说明:**
- irInfos 红外码值信息(请传入IrInfo类型的数据)
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
ret List<IrInfo> 导入结果(可通过IrInfo中的status判断每个红外码的下载成功或失败)
---
## IrInfo 说明
| 字段 | 说明 | 备注 |
|------|------|------|
| **irDevName** | 设备区分 | 红外设备名称 |
| **key** | 红外KEY | |
| **code** | 红外码值 | |
| **status** | 红外下载结果 | 0:失败<br>1:成功 |
### 6. 控制插座(请在登录后使用)
**方法签名:** `ABRet sockCtrl(String soDevName, String status)`
**参数说明:**
- soDevName: 插座名称
- status:插座状态(0:关闭 1:打开)
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
### 7. 控制开关(请在登录后使用)
**方法签名:** `ABRet switchCtrl(String switchDevName, String status, String no)`
**参数说明:**
- switchDevName: 开关名称
- status:开关状态(0:关闭 1:打开)
- no:开关键序号(
- 1开开关:空
- 2开开关:no值和开关键对应如下
- 1:对应2开开关上最下侧按键
- 3:对应2开开关上最上侧按键
- 3开开关:no值和开关键对应如下
- 1:对应3开开关上最下侧按键
- 2:对应3开开关上中间按键
- 3:对应3开开关上最上侧按键
- )
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
### 8. 控制射灯开关(请在登录后使用)
**方法签名:** `ABRet lightStatusCtrl(String lightDevName, String status)`
**参数说明:**
- lightDevName: 射灯名称
- status:灯的状态 0:关灯 1:开灯
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
### 9. 控制射灯的色调饱和度(请在登录后使用)
**方法签名:** `ABRet lightHSCtrl(String lightDevName, String h, String s)`
**参数说明:**
- lightDevName: 射灯名称
- h:色调值 0254
- s:饱和度 0254
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
### 10. 控制射灯的亮度(请在登录后使用)
**方法签名:** `ABRet lightVCtrl(String lightDevName, String v)`
**参数说明:**
- lightDevName: 射灯名称
- v:亮度 0254
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
### 11. 取得开关状态(请在登录后使用)
**方法签名:** `ABRet getSwitchStatus(String switchDevName)`
**参数说明:**
- switchDevName: 开关名称
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
btns String 开关数(1:1开开关 2:2开开关 3:3开开关)
status List<String> 开关状态数组(0:关闭 1:开启)
### 12. 取得插座状态(请在登录后使用)
**方法签名:** `ABRet getSockStatus(String soDevName)`
**参数说明:**
- soDevName: 插座名称
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
status String 插座状态(0:关闭 1:开启)
### 13. 取得门磁状态(请在登录后使用)
**方法签名:** `ABRet getDoorStatus(String doorDevName)`
**参数说明:**
- doorDevName: 门磁名称
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
status String 门磁状态(0:关闭 1:开启)
### 14. 取得温湿度情报(请在登录后使用)
**方法签名:** `ABRet getThStatusByDevName(String thDevName)`
**参数说明:**
- thDevName: 温湿度名称
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
temperature String 温度
humidity String 湿度
### 15. 取得人体活动传感器情报(请在登录后使用)
**方法签名:** `ABRet getHdStatus(String hdDevName)`
**参数说明:**
- hdDevName: 人体活动传感器名称
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
status String 人体活动状态(0:无活动 1:有活动)
lightIntensity String 光感强度(1:亮 2:正常 3:昏暗 4:黑)
### 16. 取得一氧化碳传感器情报(请在登录后使用)
**方法签名:** `ABRet getCoStatus(String coDevName)`
**参数说明:**
- coDevName: 一氧化碳传感器名称
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
dicdatas Map 返回数据
concentration String 一氧化碳浓度
### 17. 控制一氧化碳蜂鸣(请在登录后使用)
**方法签名:** `ABRet coCtrlBySoDevName(String coDevName, String interval)`
**参数说明:**
- coDevName: 一氧化碳名称
- interval:蜂鸣时间(单位:秒)
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
### 18. 红外学习
**方法签名:** `ABRet studyIrByIrDevName(String irDevName, String irKey)`
**参数说明:**
- irDevName: 红外设备名称
- irKey:按键KEY
**返回值:**
ABRet:
code String 处理结果(00000成功,00000以外失败)
msg String 错误信息
---
## 返回值 CODE 含义
| CODE | 含义 |
|------|------|
| 00000 | 处理成功 |
| 00001 | 数据库操作失败 |
| 10001 | TOKEN不存在或长度不足 |
| 10002 | TOKEN已失效 |
| 10003 | TOKEN中的SN号不正 |
| 10004 | 签名不存在 |
| 10005 | 时间戳不存在 |
| 10006 | 签名不正确 |
| 20000 | 请求超时 |
| 20001 | 用户名或密码不存在 |
| 20002 | 用户不存在或已暂停使用 |
| 20003 | 登录失败次数过多 |
| 20004 | 用户名或密码不正确 |
| 20005 | 本地用户权限不足 |
| 20101 | 服务器端URL或酒店名或房间号或APIKEY不存在 |
| 20201 | 红外KEY不存在 |
| 20202 | 红外码值不存在 |
| 20203 | 红外设备不存在 |
| 20204 | 红外码库导入失败 |
| 20205 | 红外发射失败 |
| 20206 | 红外设备已离线 |
| 20301 | 参数不正_CMD0不存在 |
| 20302 | 参数不正_CMD1不存在 |
| 20303 | 参数不正_PAYLOAD不存在 |
| 20304 | 窗帘设备不存在 |
| 20305 | 窗帘设备控制失败 |
| 20306 | 窗帘设备已离线 |
| 20501 | 参数不正_插座状态不存在 |
| 20502 | 插座设备不存在 |
| 20503 | 插座设备控制失败 |
| 20504 | 插座设备已离线 |
| 20601 | 参数不正_开关状态不存在 |
| 20602 | 参数不正_开关类型不存在(标识几开开关) |
| 20603 | 开关设备不存在 |
| 20604 | 开关设备控制失败 |
| 20605 | 开关设备已掉线 |
| 20701 | 参数不正_射灯操作类型不存在 |
| 20702 | 参数不正_射灯操作类型不正确 |
| 20703 | 参数不正_射灯开关状态不存在 |
| 20704 | 参数不正_射灯色调饱和度不存在 |
| 20705 | 参数不正_射灯亮度不存在 |
| 20706 | 射灯设备不存在 |
| 20707 | 射灯设备控制失败 |
| 20801 | 参数不正_设备名称不存在 |
| 20802 | 端末设备不存在 |
| 20803 | 端末状态属性不存在 |
| 20804 | 参数不正_报警时长不正确 |
| 20805 | 端末设备已离线 |
| 20806 | 设备控制失败 |