更新时间:2023-07-07 05:48:19下载pdf
万能红外遥控器,也称万能红外网关,可替代国内外 99% 主流品牌红外遥控器,支持 DIY 学习功能。可以让家里的传统家电快速接入互联网,支持手机端控制,场景联动等各种丰富的功能。有关产品介绍和相关参数,请访问 万能红外遥控器。
名词 | 描述 |
---|---|
infrared_id | 万能红外网关 ID,即设备 ID,等同于 device_id;可以通过 配网 时返回或者 获取用户下的设备列表 拿到此设备 ID |
remote_id | 绑定在万能红外网关下的遥控器 ID,用于虚拟映射一个具体的遥控器 |
remote_index | 遥控器索引,用于关联一组红外码,代表某一类遥控器功能集合 |
普通遥控器 | 用于控制电视和风扇的遥控器类型 |
机顶盒遥控器 | 机顶盒遥控器类型 |
空调遥控器 | 空调设备遥控器类型 |
DIY 学习 | 当涂鸦红外码库中未含括某类遥控器型号或支持的功能不满足需求时,用户可通过 DIY 学习能力,学习一款遥控器能力以满足控制需求 |
智能匹配 | 根据学习到的红外码来快速匹配遥控器索引,提高匹配遥控器索引的效率 |
当前云云对接的普通遥控器控制支持电视、机顶盒、空调和风扇品类。
此场景只是推荐的红外流程,可以根据各自不同的需要,基于已开放的接口开发并丰富各自的业务流程场景。
首先可以获取当前云云对接支持的红外设备类型;当前支持电视、机顶盒、空调和风扇类型;API(1):API文档——获取红外支持的设备类型
根据想要控制的设备类型,选择一个类型获取支持的设备类型的品牌;API(2):API文档——获取指定类型品牌列表
选择指定的品牌获取云云对接中预设的公版遥控器红外码库索引;API(3):API文档——获取品牌支持遥控器索引列表
一个品牌可能会有多个不同的遥控器红外码库索引,这时需要试用是否合适需要控制的红外设备,一般建议至少测试三个按键有效后再确认添加遥控器;API(4):API文档——控制遥控器:测试场景按键(基于通用标准按键)
确认可用的遥控器红外码库索引后,使用此索引绑定普通遥控器到万能红外遥控器设备上;API(7):API文档——添加普通遥控器
使用普通遥控器,基于标准红外指令控制设备,标准指令参考;API(8):API文档——控制遥控器:已添加遥控器(基于通用标准按键)
一般情况下,标准红外指令可覆盖绝大部分使用场景,部分特殊的品类遥控器能力未含括在标准指令中,开发者可以通过按遥控器 id来查询该遥控器支持的全能力集。
说明:标准红外指令为涂鸦高度抽象化的一套面向相同类型的指令集,开发者可以通过该标准红外指令按品类来开发一套统一的控制方式,不用再对接不同品牌不同型号下的遥控器指令集(即“非标准指令集”)。
可以基于遥控器红外码库索引获取详细的配对规则;
API(5):API文档——获取遥控器配对规则
然后使用返回的详细配对规则中的 keyId进行指令下发;
API(6):API文档——控制遥控器:测试场景按键(基于配对规则)
API(9):API文档——控制遥控器:已添加遥控器(基于配对规则)
请求方式 | API | 描述 |
---|---|---|
GET | /v1.0/infrareds/{infrared_id}/categories | 获取红外支持的设备类型 |
GET | /v1.0/infrareds/{infrared_id}/categories/{category_id}/brands | 获取指定类型品牌列表 |
GET | /v1.0/infrareds/{infrared_id}/categories/{category_id}/brands/{brand_id} | 获取品牌支持遥控器索引列表 |
POST | /v1.0/infrareds/{infrared_id}/normal/add-remote | 添加普通遥控器 |
接口地址
GET /v1.0/infrareds/{infrared_id}/categories
接口说明
获取红外设备支持的设备类型,目前支持电视,机顶盒,空调,风扇等
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
category_id | String | 设备类型 Id |
category_name | String | 设备名称 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/categories
成功示例
{
"success": true,
"t": 1539776581583,
"result": [
{
"category_id": "1",
"category_name": "机顶盒"
},
{
"category_id": "2",
"category_name": "电视"
},
{
"category_id": "5",
"category_name": "空调"
},
{
"category_id": "8",
"category_name": "风扇"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/categories/{category_id}/brands
接口说明
按遥控器类型获取品牌列表,支持电视和空调
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | URI | 设备类型 Id | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
brand_id | String | 品牌 Id |
brand_name | String | 品牌名称 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/categories/2/brands
成功示例
{
"success": true,
"result": [
{
"brand_id": "907",
"brand_name": "天龙"
},
{
"brand_id": "3080",
"brand_name": "易美逊"
},
{
"brand_id": "472",
"brand_name": "飞鹿"
},
{
"brand_id": "352",
"brand_name": "奥图码"
},
{
"brand_id": "2427",
"brand_name": "彩讯"
},
{
"brand_id": "232",
"brand_name": "三洋"
},
{
"brand_id": "1216",
"brand_name": "Kaisui"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/categories/{category_id}/brands/{brand_id}
接口说明
根据品牌 id获取指定品牌下所有型号的遥控器索引列表。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | URI | 设备类型 Id | 是 |
brand_id | String | URI | 品牌 Id | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
remote_index | String | 遥控器索引 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/categories/2/brands/907
成功示例
{
"success": true,
"result": [
{
"remote_index": "1092"
},
{
"remote_index": "1102"
},
{
"remote_index": "1107"
},
{
"remote_index": "1112"
},
{
"remote_index": "1117"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
POST /v1.0/infrareds/{infrared_id}/normal/add-remote
接口说明
添加一款指定型号的遥控器,形成一个实例化的虚拟遥控器。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | BODY | 设备类型 Id | 是 |
brand_id | String | BODY | 品牌 Id | 否 |
brand_name | String | BODY | 品牌名称 | 否 |
remote_index | String | BODY | 遥控器索引 | 是 |
remote_name | String | BODY | 遥控器的名字 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
remote_id | String | 遥控器的设备 ID |
请求示例
POST /v1.0/infrareds/6scdsexxxxxxxx/normal/add-remote
{
"category_id": "2",
"category_name": "电视",
"brand_id": "27",
"brand_name": "TCL",
"remote_index": "10982",
"remote_name" : "遥控器名称"
}
成功示例
{
"success": true,
"result": {
"remote_id": "6cb9e4eaf1e462b3d4ihh7"
}
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
机顶盒设备支持 IPTV 和非 IPTV ;
因各地的运营商、品牌有所不同,因此需要根据用户所在地区来确定相应的运营商和设备品牌。当前仅支持中国地区。
此场景只是推荐的红外流程,可以根据各自不同的需要,基于已开放的接口开发并丰富各自的业务流程场景。
首先获取支持的红外设备类型;API(1):API文档——获取红外支持的设备类型
选择相应的地址;
API(2):API文档——获取省份列表
API(3):API文档——获取城市列表
API(4):API文档——获取区域列表
根据所在的区域,获取指定区域支持的运营商信息列表;API(5):API文档——获取运营商列表:根据区域
根据选择的运营商,获取支持的设备品牌;API(6):API文档——获取品牌列表:根据运营商
选择指定的品牌获取云云对接中预设的公版遥控器红外码库索引;
API(7):API文档——获取遥控器索引列表:根据品牌
API(8):API文档——获取遥控器索引列表:根据区域
一个品牌可能会有多个不同的遥控器红外码库索引,这时需要试用是否合适需要控制的红外设备,一般建议至少测试三个按键有效后再确认添加遥控器;API(9):API文档——控制遥控器:测试场景按键(基于通用标准按键)
确认可用的遥控器红外码库索引后(即某型号遥控器可用),使用此索引绑定机顶盒遥控器到万能红外遥控器设备上;API(12):API文档——添加机顶盒遥控器
使用刚才添加的遥控器,基于标准红外指令控制设备,标准指令参考;API(13):API文档——控制遥控器:已添加遥控器(基于通用标准按键)
非标准指令请参考
请求方式 | API | 描述 |
---|---|---|
GET | /v1.0/infrareds/{infrared_id}/provinces | 获取省份列表 |
GET | /v1.0/infrareds/{infrared_id}/provinces/{province_id}/cities | 获取城市列表 |
GET | /v1.0/infrareds/{infrared_id}/provinces/{province_id}/cities/{city_id}/areas | 获取区域列表 |
POST | /v1.0/infrareds/{infrared_id}/areas/{area_id}/iptvs | 获取运营商列表:根据区域 |
GET | /v1.0/infrareds/{infrared_id}/operators/{operator_id}/brands?country_code= | 获取品牌列表:根据运营商 |
GET | /v1.0/infrareds/{infrared_id}/operators/{operator_id}/brands/{brand_id}/iptvs | 获取遥控器索引列表:根据品牌 |
GET | /v1.0/infrareds/{infrared_id}/operators/{operator_id}/areas/{area_id} | 获取遥控器索引列表:根据区域 |
POST | /v1.0/infrareds/{infrared_id}/box/add-remote | 添加机顶盒遥控器 |
GET | /v1.0/infrareds/{infrared_id}/{remote_id}/channel | 查询电视频道列表 |
POST | /v1.0/infrareds/{infrared_id}/channel/switch | 切换电视频道 |
接口地址
GET /v1.0/infrareds/{infrared_id}/provinces
接口说明
获取省份列表。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
province_id | Integer | 省份 ID |
province_name | String | 省份名称 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/provinces
成功示例
{
"success": true,
"result": [
{
province_id: 120000,
province_name: "天津市"
},
{
province_id: 320000,
province_name: "江苏省"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/provinces/{province_id}/cities
接口说明
根据省份 ID 获取城市列表
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
province_id | Integer | URI | 省份 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
province_id | Integer | 省份 ID |
city_id | Integer | 城市 ID |
city_name | String | 城市名称 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/provinces/330000/cities
成功示例
{
"success": true,
"result": [{
"province_id": 330000,
"city_id": 330700,
"city_name": "金华市"
},
{
"province_id": 330000,
"city_id": 330800,
"city_name": "温州市"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/provinces/{province_id}/cities/{city_id}/areas
接口说明
根据省份 ID 和城市 ID 获取区域列表
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
province_id | Integer | URI | 省份 ID | 是 |
city_id | Integer | URI | 城市 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
province_id | Integer | 省份 ID |
city_id | Integer | 城市 ID |
area_id | Integer | 区域 ID |
area_name | String | 区域名称 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/provinces/330000/cities/30500/areas
成功示例
{
"success": true,
"result": [{
"province_id": 330000,
"city_id": 30500,
"area_id": 330523,
"area_name": "安吉县"
},
{
"province_id": 330000,
"city_id": 30500,
"area_id": 330522,
"area_name": "长兴县"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/areas/{area_id}/iptvs
接口说明
针对于机顶盒类型设备,可获取指定区域支持的 IPTV s列表
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
area_id | String | URI | 区域 ID ,精确到区;标准地区码 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
operator_id | String | 运营商 ID |
operator_name | String | 运营商名称 |
country_code | String | 国家代码 |
iptv_type | Integer | IPTV 标志(1:IPTV; 0:非IPTV) |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/areas/510114/iptvs
成功示例
{
"success": true,
"result": [
{
"operator_id": "1062",
"operator_name": "成都电信IPTV",
"country_code": "CN",
"iptv_type":1
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/operators/{operator_id}/brands?country_code=
接口说明
针对机顶盒设备,根据运营商支持的品牌列表
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
operator_id | String | URI | 运营商 ID | 是 |
country_code | String | URI | 国家码(中国:CN) | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
brand_id | String | 类型 ID |
brand_name | String | 品牌名称 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/operators/3040/brands?country_code=CN
成功示例
{
"success": true,
"result": [
{
"brand_id": "907",
"brand_name": "天龙"
},
{
"brand_id": "3080",
"brand_name": "易美逊"
},
{
"brand_id": "472",
"brand_name": "飞鹿"
},
{
"brand_id": "352",
"brand_name": "奥图码"
},
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/operators/{operator_id}/brands/{brand_id}/iptvs
接口说明
根据类型 ID 获取支持IPTV运营商的遥控器索引
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
operator_id | String | URI | 运营商 ID | 是 |
brand_id | String | URI | 类型 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
remote_index | String | 遥控器索引 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/operators/3040/brands/2/iptvs
成功示例
{
"success": true,
"result": [
{
"remote_index": "1092"
},
{
"remote_index": "1102"
},
{
"remote_index": "1107"
},
{
"remote_index": "1112"
},
{
"remote_index": "1117"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/operators/{operator_id}/areas/{area_id}
接口说明
根据区域 ID 获取运营商非iptv的遥控器索引
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
operator_id | String | URI | 运营商 ID | 是 |
area_id | String | URI | 区域 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
remote_index | String | 遥控器索引 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/operators/1062/areas/510116
成功示例
{
"success": true,
"result": [
{
"remote_index": "5129"
},
{
"remote_index": "5262"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
POST /v1.0/infrareds/{infrared_id}/box/add-remote
接口说明
添加机顶盒遥控器
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | BODY | 设备类型 ID | 是 |
brand_id | String | BODY | 类型 ID | 是 |
brand_name | String | BODY | 品牌名称 | 否 |
remote_index | String | BODY | 遥控器索引 | 是 |
remote_name | String | BODY | 遥控器的名字 | 否 |
iptv_type | Integer | BODY | 是否是 IPTV (1:是;0:否) | 否 |
operator_id | String | BODY | 运营商 ID | 是 |
operator_name | String | BODY | 运营商名称 | 否 |
area_id | String | BODY | 区域 ID | 否 |
area_name | String | BODY | 区域名称 | 否 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
remote_id | String | 遥控器的设备 ID |
请求示例
POST /v1.0/infrareds/6scdsexxxxxxxx/box/add-remote
{
"category_id": "1",
"category_name": "机顶盒",
"brand_id": "97",
"brand_name": "机顶盒",
"remote_index": "592",
"remote_name" : "浙江电信 IPTV ",
"operator_id": "0",
"operator_name": "浙江电信 IPTV ",
"area_id": "110107",
"area_name": "北京"
}
成功示例
{
"success": true,
"result": {
"remote_id": "6cb9e4eaf1e462b3d4ihh7"
}
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/{remote_id}/channel
接口说明
根据遥控器 ID 查询频道列表
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器设备 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
channel_name | String | 频道名 |
channel_alias | String | 别名 |
channel_num | String | 频道号 |
hd | Integer | 是否高清(0:标清 1:高清) |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/6cbedcyyyyyyy/channel
成功示例
{
"success": true,
"t": 1543927305251,
"result":[
{
"channel_name":"湖南卫视",
"channel_alias":"芒果台",
"channel_num":"15",
"hd":1
},
{
"channel_name":"CCTV-1",
"channel_alias":"中央一台",
"channel_num":"1",
"hd":1
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
POST /v1.0/infrareds/{infrared_id}/channel/switch
接口说明
切换电视频道
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | BODY | 遥控器设备 ID | 是 |
channel_num | String | BODY | 频道号 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 返回结果 |
请求示例
POST /v1.0/infrareds/6scdsexxxxxxxx/channel/switch
{
"remote_id": "6cbe9acyyyyyyyy",
"channel_num": "1"
}
成功示例
{
"success": true,
"t": 1545135036437,
"result": true
}
失败示例
{
"success": true,
"t": 1545135036437,
"result": false
}
此场景只是推荐的红外流程,可以根据各自不同的需要,基于已开放的接口开发并丰富各自的业务流程场景。
获取支持的红外空调设备的品牌;API(1):API文档——获取指定类型品牌列表
选择指定的品牌获取遥控器红外码库索引;API(2):API文档——获取品牌支持遥控器索引列表
一个品牌可能会有多个不同的遥控器红外码库索引,这时需要试用是否合适需要控制的红外设备,一般建议至少测试三个按键有效后再确认添加遥控器;API(3):API文档——测试空调遥控器
确认可用的遥控器红外码库索引后,使用此索引绑定空调遥控器到万能红外遥控器设备上;API(4):API文档——添加普通遥控器
使用普通遥控器,基于标准红外指令控制设备;标准指令参考:API文档——控制遥控器:已添加遥控器(基于通用标准按键)
或者空调专有指令控制设备;API(5):API文档——控制空调遥控器
部分业务场景存在直接控制空调相关参数的情况,调用多条件的空调指令直接控制空调的相关参数,但请注意并不是所有的组合条件都可以支持直接下发红外码;API(6):API文档——多条件控制空调
空调类遥控器只支持API文档中描述的标准指令,不支持非标准指令。
万能红外开放能力api文档多条件控制空调目前不支持的品牌为:Hisense, Daikin, Jumbo, Godrej, 不支持的遥控器ID为:7421,1553000083,1001779
请求方式 | API | 描述 |
---|---|---|
POST | /v1.0/infrareds/{infrared_id}/air-conditioners/testing/command | 测试空调遥控器 |
POST | /v1.0/infrareds/{infrared_id}/air-conditioners/{remote_id}/command | 控制空调遥控器 |
POST | /v1.0/infrareds/{infrared_id}/air-conditioners/{remote_id}/scenes/command | 多条件控制空调 |
GET | /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/ac/status | 查询空调状态 |
功能描述
用于在测试空调遥控器是否匹配空调设备时,根据遥控器索引下发单个的空调遥控器按键指令。
接口地址
POST /v1.0/infrareds/{infrared_id}/air-conditioners/testing/command
接口说明
以下为空调类型的专有红外指令集。
参数名 | 类型 | 说明 | 是否必填 |
---|---|---|---|
power | Integer | 电源。1:打开;0:关闭 | |
mode | Integer | 模式。0:制冷;1:制热;2:自动;3:送风;4:除湿 | 部分空调不支持所有模式 |
temp | Integer | 温度,需要设置的温度值,支持:16~30 | |
wind | Integer | 风速。0:自动;1:低速;2:中速;3:高速 | 部分空调不支持所有风速档位 |
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_index | String | BODY | 遥控器索引 | 是 |
category_id | Integer | BODY | 设备类型 ID | 是 |
code | String | BODY | 指令代码(详情见接口说明) | 是 |
value | Integer | BODY | 下发指令值(详情见接口说明) | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
POST /v1.0/infrareds/xxxxxx/air-conditioners/testing/command
{
"remote_index":"7273",
"category_id": 5,
"code": "temp",
"value": 26
}
响应示例
{
"result": true,
"success": true,
"t": 1586501573398
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
2050 | 按键码库不存在 |
功能描述
下发单个的空调遥控器按键指令。
接口地址
POST /v1.0/infrareds/{infrared_id}/air-conditioners/{remote_id}/command
接口说明
参数名 | 类型 | 说明 | 是否必填 |
---|---|---|---|
power | Integer | 电源。1:打开;0:关闭 | |
mode | Integer | 模式。0:制冷;1:制热;2:自动;3:送风;4:除湿 | 部分空调不支持所有模式 |
temp | Integer | 温度,需要设置的温度值,支持:16~30 | |
wind | Integer | 风速。0:自动;1:低速;2:中速;3:高速 | 部分空调不支持所有风速档位 |
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器 ID | 是 |
code | String | BODY | 指令代码(详情见接口说明) | 是 |
value | Integer | BODY | 下发指令值(详情见接口说明) | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
POST /v1.0/infrareds/xxxxxx/air-conditioners/6c014f07yyyyyy/command
{
"code": "temp",
"value": 26
}
成功示例
{
"result": true,
"success": true,
"t": 1586501573398
}
失败示例
{
"code": 2050,
"msg": "按键码库不存在",
"success": false,
"t": 1586763590514
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
2050 | 按键码库不存在 |
功能描述
多条件的空调指令下发,用于在部分联动场景下对空调的控制。
注意:部分条件组合没有对应的码库将会提示码库不存在。
接口地址
POST /v1.0/infrareds/{infrared_id}/air-conditioners/{remote_id}/scenes/command
接口说明
参数名 | 类型 | 说明 | 是否必填 |
---|---|---|---|
power | Integer | 电源。1:打开;0:关闭 | |
mode | Integer | 模式。0:制冷;1:制热;2:自动;3:送风;4:除湿 | 部分空调不支持所有模式 |
temp | Integer | 温度,需要设置的温度值,支持:16~30 | |
wind | Integer | 风速。0:自动;1:低速;2:中速;3:高速 | 部分空调不支持所有风速档位 |
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器 ID | 是 |
power | Integer | BODY | 开关(1:开 0:关) | 是 |
mode | Integer | BODY | 模式(0:制冷,1:制热,2:自动,3:送风,4:除湿) | 否 |
temp | Integer | BODY | 温度(16-30) | 否 |
wind | Integer | BODY | 风速(0:自动,1:低,2:中,3:高) | 否 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
POST /v1.0/infrareds/123456789/air-conditioner/6c014f07yyyyyy/scenes/command
{
"power": 1,
"mode": 2,
"temp": 20,
"wind": 1
}
成功示例
{
"success": true,
"result": true
}
失败示例
{
"code": 2050,
"msg": "按键码库不存在",
"success": false,
"t": 1586763590514
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
2050 | 按键码库不存在 |
接口地址
GET /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/ac/status
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | Stirng | URI | 遥控器 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
mode | String | 模式 |
temp | String | 温度 |
wind | String | 风速 |
power | String | 开关 |
remote_id | String | 空调遥控器 ID |
请求示例
GET /v1.0/infrareds/123456789/remotes/6cb2fbyyyyyyy/ac/status
成功示例
{
"success": true,
"t": 1543927305251,
"result": {
"mode": "0",
"temp": "20",
"remote_id": "6cb2fbyyyyyyy",
"wind": "3"
}
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
2050 | 按键码库不存在 |
请求方式 | API | 描述 |
---|---|---|
GET | /v1.0/infrareds/{infrared_id}/remotes | 获取红外设备下面绑定的遥控器列表 |
POST | /v1.0/infrareds/{infrared_id}/add-remote | 添加遥控器 |
DELETE | /v1.0/infrareds/{infrared_id}/remotes/{remote_id} | 删除遥控器 |
GET | /v1.0/infrareds/{infrared_id} | 设置遥控器别名 |
GET | /v1.0/infrareds/{infrared_id}/categories/{category_id}/brands/{brand_id}/remotes/{remote_index}/rules | 获取遥控器配对规则 |
POST | /v1.0/infrareds/{infrared_id}/testing/command | 控制遥控器:测试场景按键(基于通用标准按键) |
POST | /v1.0/infrareds/{infrared_id}/testing/raw/command | 控制遥控器:测试场景按键(基于配对规则) |
POST | /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/command | 控制遥控器:已添加遥控器(基于通用标准按键) |
POST | /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/raw/command | 控制遥控器:已添加遥控器(基于配对规则) |
GET | /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/keys | 获取遥控器支持的按键列表 |
GET | /v1.0/infrareds/{infrared_id}/air-conditioners/{remote_id}/keys | 获取空调遥控器支持的按键规则列表 |
接口地址
GET /v1.0/infrareds/{infrared_id}/remotes
接口说明
根据红外设备 ID 来获取红外设备下面绑定的遥控器列表。
请求参数
参数名 | 类型 | 说明 | 是否必填 |
---|---|---|---|
infrared_id | String | 红外设备 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
category_id | String | 设备类型 ID |
brand_id | String | 类型 ID |
brand_name | String | 品牌名称 |
remote_id | String | 遥控器的设备 ID |
remote_name | String | 遥控器的名字 |
remote_index | String | 遥控器索引 |
operator_id | String | 运营商 ID (当设备类型为机顶盒的时候有值) |
operator_name | String | 运营商名称(当设备类型为机顶盒的时候有值) |
area_id | String | 区域 ID (当设备类型为机顶盒的时候有值) |
area_name | String | 区域名称(当设备类型为机顶盒的时候有值) |
iptv_type | Integer | IPTV 类型(1:是;0:否 当设备类型为机顶盒的时候有值) |
t | Long | 添加时间(十三位标准时间戳) |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/remotes
成功示例
{
"success": true,
"result": [
{
"category_id": "5",
"brand_id": "97",
"remote_id": "6cf1fd8b5fb7e090c97mqf",
"remote_name": "格力空调",
"remote_index": "10727" ,
"t": 1539776581583
},
{
"category_id": "1",
"brand_id": "1017",
"brand_name": "中兴",
"remote_id": "6c9a93cdaf677cfd151q3t",
"operator_id": "42",
"operator_name": "浙江电信 IPTV ",
"area_id": "330106",
"area_name": "浙江省杭州市西湖区",
"remote_name": "机顶盒 11",
"remote_index": "5129",
"iptv_type": 1,
"t": 1539776581583
}
],
"t": 1539776581583
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
POST /v1.0/infrareds/{infrared_id}/add-remote
接口说明
此接口可以兼容机顶盒、电视、空调等类型设备的遥控器添加
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | BODY | 设备类型 ID | 是 |
brand_id | String | BODY | 类型 ID | 是 |
brand_name | String | BODY | 品牌名称 | 是 |
remote_index | String | BODY | 遥控器索引 | 是 |
remote_name | String | BODY | 遥控器的名字 | 否 |
operator_id | String | BODY | 运营商 ID | 是 |
operator_name | String | BODY | 运营商名称 | 否 |
area_id | String | BODY | 区域 ID | 是 |
area_name | String | BODY | 区域名称 | 否 |
iptv_type | String | BODY | 是否是 IPTV (1:是;0:否) | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
remote_id | String | 遥控器的设备 ID |
请求示例
POST /v1.0/infrareds/6scdsexxxxxxxx/add-remote
{
"category_id":"5",
"brand_id":"37",
"brand_name":"海尔",
"remote_index":"657",
"remote_name":"海尔空调遥控器",
"operator_id":"",
"operator_name":"",
"area_id":"",
"area_name":"",
"iptv_type":""
}
成功示例
{
"result": {
"remote_id": "6ca8ff6dcaf9bf7f40x45x"
},
"success": true,
"t": 1580962693233
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
DELETE /v1.0/infrareds/{infrared_id}/remotes/{remote_id}
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器设备 ID | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
DELETE /v1.0/infrareds/6scdsexxxxxxxx/remotes/6cbedcyyyyyyy
成功示例
{
"success": true,
"result": true
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
PUT /v1.0/infrareds/{infrared_id}
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | BODY | 遥控器设备 ID | 是 |
remote_name | String | BODY | 遥控器别名 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
PUT /v1.0/infrareds/6scdsexxxxxxxx
{
"remote_id":"6cbedcyyyyyyy",
"remote_name": "空调1"
}
成功示例
{
"success": true,
"result": true
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/categories/{category_id}/brands/{brand_id}/remotes/{remote_index}/rules
接口说明
根据遥控器 ID 获取配对规则,获取到key用于红外码下发。
该场景主要用于标准红外指令无法涵盖到到功能时使用。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | URI | 设备类型 ID | 是 |
brand_id | String | URI | 类型 ID ,没有类型 ID 则传0 | 是 |
remote_index | String | URI | 遥控器索引 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
key_name | String | 按键名称 |
key | String | 配对Id |
desc | String | 按键描述 |
code | String | 红外码 |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/categories/2/brands/27/remotes/3054/rules
成功示例(普通遥控器)
{
"success": true,
"result": [
{
"key": "1",
"desc": "电源",
"key_name": "power",
"code":"5jCCYZ55TmdmWoKreGWbE2HGP9BFG9QuaLUVy6jVNsU="
},
{
"key": "42",
"desc": "确认",
"key_name": "ok",
"code":"54CYZ55TmdmWoKreGWbE2HGP9BFG9QuaLUVy6jVNsU="
},
{
"key": "43",
"desc": "频道+",
"key_name": "channel_up",
"code":"09CCYZ55TmdmWoKreGWbE2HGP9BFG9QuaLUVy6jVNsU="
}
]
}
成功示例(空调遥控器)
{
"success": true,
"result": [
{
"key": "0",
"desc": null,
"key_name": "M0_T16_S0",
"code":"5jCCYZ55TmdmWoKreGWbE2HGP9BFG9QuaLUVy6jVNsU="
},
{
"key": "0",
"desc": null,
"key_name": "M0_T16_S1",
"code":"11CCYZ55TmdmWoKreGWbE2HGP9BFG9QuaLUVy6jVNsU="
},
{
"key": "0",
"desc": null,
"key_name": "M0_T16_S2",
"code":"90sCCYZ55TmdmWoKreGWbE2HGP9BFG9QuaLUVy6jVNsU="
},
{
"key": "0",
"desc": null,
"key_name": "M0_T16_S3",
"code":"7dCCYZ55TmdmWoKreGWbE2HGP9BFG9QuaLUVy6jVNsU="
},
{
"key": "0",
"desc": null,
"key_name": "M0_T17_S0",
"code":"6vbCCYZ55TmdmWoKreGWbE2HGP9BFG9QuaLUVy6jVNsU="
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
POST /v1.0/infrareds/{infrared_id}/testing/command
接口说明
在测试遥控器是否匹配设备时使用。使用通用标准key控制,标准key见附录。支持空调的标准指令下发。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_index | Integer | BODY | 遥控器码库索引 | 是 |
category_id | Integer | BODY | 设备类型 ID | 是 |
key | String | BODY | 标准key | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
POST /v1.0/infrareds/xxxxxxxx/testing/command
{
"remote_index": "5129",
"category_id": 1,
"key" : "power"
}
成功示例
{
"success": true,
"result": true
}
失败示例
{
"code": 2050,
"msg": "按键码库不存在",
"success": false,
"t": 1586763590514
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
2050 | 按键码库不存在 |
接口地址
POST /v1.0/infrareds/{infrared_id}/testing/raw/command
接口说明
在测试遥控器是否匹配设备时使用。根据key来下发红外码,请求参数中的key是从获取配对规则中获得key。非标准指令不支持空调,空调使用专有的指令下发。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_index | Integer | BODY | 遥控器码库索引 | 是 |
category_id | Integer | BODY | 设备类型 ID | 是 |
raw_key | Integer | BODY | 红外码的key,这个key是从获取配对规则中获得key | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
POST /v1.0/infrareds/xxxxxxxx/testing/special/command
{
"remote_index": "5129",
"category_id": 1,
"raw_key" : 1
}
成功示例
{
"success": true,
"result": true
}
失败示例
{
"code": 2050,
"msg": "按键码库不存在",
"success": false,
"t": 1586763590514
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
2050 | 按键码库不存在 |
接口地址
POST /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/command
接口说明
基于已添加的遥控器,使用标准的key下发,key可参考附录。支持空调的标准指令下发。支持电视、机顶盒的频道控制。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器id | 是 |
key | String | BODY | 通用标准按键key | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
POST /v1.0/infrareds/xxxxxxx/remotes/6c014f07yyyyyy/command
{
"key" : "power"
}
成功示例
{
"success": true,
"result": true
}
失败示例
{
"code": 2008,
"msg": "command or value not support",
"success": false,
"t": 1586764643762
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
2050 | 按键码库不存在 |
接口地址
POST /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/raw/command
接口说明
控制已绑定的遥控器下发指令,根据raw_key来下发红外码,请求参数中的raw_key是从获取配对规则中获得key,目前这个接口只支持电视和机顶盒,空调使用专有的指令下发。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器id | 是 |
raw_key | Integer | BODY | 红外码的key,这个key是从获取配对规则中获得key | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
POST /v1.0/infrareds/xxxxxxxx/remotes/6c014f07yyyyyy/raw/command
{
"raw_key" : 43
}
成功示例
{
"success": true,
"result": true
}
失败示例
{
"code": 2050,
"msg": "按键码库不存在",
"success": false,
"t": 1586763590514
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
2050 | 按键码库不存在 |
功能描述
可查询指定遥控器支持的按键列表,同时返回可支持的标准key和非标准key。
接口地址
GET /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/keys
请求参数
参数名 | 类型 | 参数类型 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器id | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result说明
参数名 | 类型 | 说明 |
---|---|---|
brand_id | Integer | 类型 ID |
category_id | Integer | 设备类型 ID |
remote_index | Integer | 遥控器码库索引 |
single_air | Boolean | 是否单体空调 |
duplicate_power | Boolean | 是否相同开关键 |
key_list | List | 支持的标准key和非标准key列表 |
key_list说明
参数名 | 类型 | 说明 |
---|---|---|
key | String | 指令标识 |
key_id | Integer | 指令id |
key_name | String | 指令名称 |
standard_key | Boolean | 是否标准指令 |
请求示例
GET /v1.0/infrareds/xxxxxx/remotes/yyyyyyyy/keys
响应示例
{
"result": {
"brand_id": 182,
"category_id": 8,
"duplicate_power": true,
"key_list": [
{
"key": "power",
"key_id": 1,
"key_name": "电源",
"standard_key": false
},
{
"key": "mute",
"key_id": 106,
"key_name": "静音",
"standard_key": false
},
{
"key": "swing_mode",
"key_id": 9372,
"key_name": "SWING_MODE",
"standard_key": false
},
{
"key": "Timing",
"key_id": 23,
"key_name": "定时",
"standard_key": true
},
{
"key": "PowerOn",
"key_id": 5907,
"key_name": "电源开",
"standard_key": true
},
{
"key": "PowerOff",
"key_id": 5912,
"key_name": "电源关",
"standard_key": true
},
{
"key": "Swing",
"key_id": 9362,
"key_name": "摆风",
"standard_key": true
},
{
"key": "Speed",
"key_id": 9367,
"key_name": "风速",
"standard_key": true
}
],
"remote_index": 11342,
"single_air": false
},
"success": true,
"t": 1600248228037
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1106 | 权限非法 |
功能描述
仅查询指定空调类的遥控器支持的按键列表,同时返回可支持的标准key和非标准key,同时返回支持的按键范围。
接口地址
GET /v1.0/infrareds/{infrared_id}/air-conditioners/{remote_id}/keys
请求参数
参数名 | 类型 | 参数类型 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 空调类的遥控器id | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result说明
参数名 | 类型 | 说明 |
---|---|---|
brand_id | Integer | 类型 ID |
category_id | Integer | 设备类型 ID |
remote_index | Integer | 遥控器码库索引 |
single_air | Boolean | 是否单体空调 |
duplicate_power | Boolean | 是否相同开关键 |
key_list | List | 支持的标准key和非标准key列表 |
key_range | List | 空调指令的取值范围 |
key_list说明
参数名 | 类型 | 说明 |
---|---|---|
key | String | 指令标识 |
key_id | Integer | 指令id |
key_name | String | 指令名称 |
standard_key | Boolean | 是否标准指令 |
key_range说明
参数名 | 类型 | 说明 |
---|---|---|
m | Integer | 支持的模式范围。0:制冷;1:制热;2:自动;3:送风;4:除湿 |
t | Object | 支持的温度范围。min:支持的最小值;max:支持的最大值 |
f | Object | 支持的风速范围。min:支持的最小值;max:支持的最大值 |
请求示例
GET /v1.0/infrareds/xxxxxx/air-conditioners/yyyyyyyy/keys
响应示例
{
"result": {
"brand_id": 97,
"category_id": 5,
"duplicate_power": false,
"key_list": [
{
"key": "F",
"key_id": 0,
"key_name": "风速",
"standard_key": true
},
{
"key": "M",
"key_id": 0,
"key_name": "模式",
"standard_key": true
},
{
"key": "PowerOff",
"key_id": 0,
"key_name": "关闭",
"standard_key": true
},
{
"key": "PowerOn",
"key_id": 0,
"key_name": "开启",
"standard_key": true
},
{
"key": "T",
"key_id": 0,
"key_name": "温度",
"standard_key": true
}
],
"key_range": [
{
"f": {
"max": 3,
"min": 0
},
"m": 0,
"t": {
"max": 30,
"min": 16
}
},
{
"f": {
"max": 3,
"min": 0
},
"m": 1,
"t": {
"max": 30,
"min": 16
}
},
{
"f": {
"max": 3,
"min": 0
},
"m": 2
},
{
"f": {
"max": 3,
"min": 0
},
"m": 3,
"t": {
"max": 30,
"min": 16
}
},
{
"f": {
"max": 1,
"min": 1
},
"m": 4,
"t": {
"max": 30,
"min": 16
}
}
],
"remote_index": 10727,
"single_air": false
},
"success": true,
"t": 1600248161188
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1106 | 权限非法 |
开启学习状态后,再使用真实的遥控器对准万能红外设备按下需要学习的按键,然后再使用查询学习到的学习码的API获取学习到的学习码。
请求方式 | API | 描述 |
---|---|---|
GET | /v1.0/infrareds/{infrared_id}/learning-state?state=true | 更新学习状态 |
GET | /v1.0/infrareds/{infrared_id}/learning-codes?learning_time=xxxx | 查询学习到的红外码 |
POST | /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/learning-codes | 下发学习到的红外码 |
POST | /v1.0/infrareds/{infrared_id}/learning-codes | 保存学习到的红外码 |
PUT | /v1.0/infrareds/{infrared_id}/learning-remotes/{remote_index} | 更新学习到的红外码 |
GET | /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/learning-codes | 获取保存的学习红外码 |
DELETE | /v1.0/infrareds/{infrared_id}/learning-codes/{learn_id} | 删除学习到的红外码 |
接⼝地址
PUT /v1.0/infrareds/{infrared_id}/learning-state?state=true
接口说明
进入学习状态
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
state | String | URI | 学习模式,true:学习模式,false:⾮学习模式 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
PUT /v1.0/infrareds/6scdsexxxxxxxx/learning-state?state=true
成功示例
{
"success": true,
"t": 1545135036437,
"result": true
}
失败示例
{
"success": true,
"t": 1545135036437,
"result": false
}
接⼝地址
GET /v1.0/infrareds/{infrared_id}/learning-codes?learning_time=xxxx
接口说明
获取学习到的红外码。传入的参数建议直接使用更新学习状态时返回的时间戳t。
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
learning_time | Long | URI | 进⼊学习模式的时间 | 是 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情⻅见错误码章节) |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
success | Boolean | 是否学习到红外码 |
code | String | 学习到的红外码(当success为false的时候为空) |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/learning-codes?learning_time=1545135036437
成功示例
{
"success": true,
"t": 1545135036437,
"result": {
"success": true,
"code": "xxxxx"
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
POST /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/learning-codes
接口说明
下发学习到的红外码
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 设备 ID | 是 |
code | String | BODY | 学习到的红外码 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 执行结果 |
请求示例
POST /v1.0/infrareds/6scdsexxxxxxxx/remotes/6c014f07yyyyyy/learning-codes
{
"code": "c4226211f401260258"
}
成功示例
{
"success": true,
"t": 1545135036437,
"result": true
}
失败示例
{
"success": true,
"t": 1545135036437,
"result": false
}
接⼝地址
POST /v1.0/infrareds/{infrared_id}/learning-codes
接口说明
保存学习到的红外码,生成遥控器id
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | BODY | 遥控器id(当为复制功能时有值) | 否 |
remote_index | String | BODY | 遥控器索引(当为复制功能时有值) | 否 |
brand_id | String | BODY | 类型 ID (当为复制功能时有值) | 否 |
brand_name | String | BODY | 品牌名称(当为复制功能时有值) | 否 |
codes | List | BODY | 保存的红外信息 | 是 |
codes参数
参数名 | 类型 | 说明 |
---|---|---|
name | String | 学习到的红外码的名称 |
key_name | String | 学习到的红外码按键名称 |
code | String | 学习到的红外码 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情⻅见错误码章节) |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
remote_id | String | 遥控器id |
请求示例
POST /v1.0/infrareds/6scdsexxxxxxxx/learning-codes
{
"codes":[
{
"code":"xxxxxxxx",
"name": "wer123"
},
{
"code":"xxxxxxxx",
"name": "123"
}
]
}
成功示例
{
"success": true,
"t": 1545135036437,
"result": {
"remote_id":"xxxx"
}
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接⼝地址
PUT /v1.0/infrareds/{infrared_id}/learning-remotes/{remote_id}
接口说明
更新学习到的遥控器
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器id | 是 |
codes | Array | BODY | 保存的红外信息 | 是 |
codes说明
参数名 | 类型 | 说明 |
---|---|---|
name | String | 学习到的红外码的名称 |
key_name | String | 红外码按键名称 |
code | String | 学习到的红外码 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情⻅见错误码章节) |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
remote_id | String | 遥控器id |
请求示例
PUT /v1.0/infrareds/6scdsexxxxxxxx/learning-remotes/6c014f07yyyyyy
{
"codes":[
{
"code":"xxxxxxxx",
"name": "wer123"
},
{
"code":"xxxxxxxx",
"name": "123"
}
]
}
成功示例
{
"success": true,
"t": 1545135036437,
"result": {
"remote_id":"xxxx"
}
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接口地址
GET /v1.0/infrareds/{infrared_id}/remotes/{remote_id}/learning-codes
接口说明
获取保存的红外码
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
remote_id | String | URI | 遥控器 ID | 是 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情⻅见错误码章节) |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
code | String | 学习到的红外码 |
name | String | 红外码的名称 |
key_name | String | 学习到的红外码按键 |
id | Long | 学习到的红外码的id |
remote_id | String | 遥控器 ID |
请求示例
GET /v1.0/infrareds/6scdsexxxxxxxx/remotes/6c014f07yyyyyy/learning-codes
返回示例
{
"success": true,
"t": 1545375286851,
"result": [
{
"name": "123",
"key_name":"1",
"code": "xxxxxxxx",
"id": 253006,
"remote_id": "6c2949716ca8f52c01aquk"
}, {
"name": "456",
"key_name":"2",
"code": "xxxxxxx",
"id": 253007,
"remote_id": "6c2949716ca8f52c01aquk"
}
]
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接⼝地址
DELETE /v1.0/infrareds/{infrared_id}/learning-codes/{learn_id}
接口说明
删除学习到的红外码
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
learn_id | Long | URI | 学习到的红外码的id | 是 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情⻅见错误码章节) |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
请求示例
PUT /v1.0/infrareds/6scdsexxxxxxxx/learning-codes/1234567
返回示例
{
"success": true,
"t": 1545135036437,
"result":true
}
失败示例
{
"success": true,
"t": 1545135036437,
"result": false
}
部分品牌下的预设的遥控器红外码库索引可能比较多,有时候为了尝试出某个索引是否支持需要控制的设备,可能需要测试多次,造成匹配成功一个遥控器需要耗费大量的时间和精力。
因此提供红外码智能匹配功能,可以根据学习到的红外码来快速匹配遥控器红外码库索引。
前提是需要提供真实的遥控器进行学习匹配。
开启红外网关学习状态;API文档——更新学习状态
用户使用遥控器对准红外网关发送红外码;
获取红外网关学习到的学习码; API文档——查询学习到的红外码
使用学习到的 学习码 请求智能匹配,返回 智能匹配token; API文档——生成智能匹配令牌
使用 智能匹配token 请求匹配列表;API文档——获取智能匹配遥控器列表
用户在返回的匹配列表中依次查看遥控器索引信息; API文档——获取遥控器索引支持的品牌信息
循环尝试匹配列表的遥控器索引中的按键;
如果找到合适的,则确认遥控器,结束此次智能匹配动作;否则继续后续步骤;API文档——添加遥控器
如果未找到合适的,则继续使用 智能匹配token 请求匹配列表,进行步骤5的操作,这里就是在有多个匹配结果的时候,进行的分页处理,如果只有1页,则不需要再进行步骤5的操作;
如果接口返回无数据,则匹配列表结束;
如果需要进一步缩小匹配范围,则可以再次开启红外网关学习状态,下发新的学习码,然后获取新的 智能匹配token (步骤1、2、3、4);
然后使用新的 智能匹配token 同时带上步骤5中的旧的 智能匹配token 一起请求匹配列表,系统则会在使用步骤3学习到的红外码匹配的基础上,再使用步骤11获取的红外码进一步缩小匹配范围;
然后再重复步骤6、7、8、9、10、11,直到找到合适的遥控器索引,或者未匹配到。
请求方式 | API | 描述 |
---|---|---|
GET | /v1.0/infrareds/{infrared_id}/matching-remotes/token | 生成智能匹配令牌 |
GET | /v1.0/infrareds/{infrared_id}/matching-remotes?token=xxxxxx | 获取智能匹配遥控器列表 |
GET | /v1.0/infrareds/{infrared_id}/categories/{category_id}/remotes/{remote_index}/brands?region= | 获取遥控器索引支持的品牌信息 |
功能描述
使用红外网关学习到的红外码,生成智能匹配令牌token,用于后续分页查询智能匹配结果。
接口地址
POST /v1.0/infrareds/{infrared_id}/matching-remotes/token
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | BODY | 设备类型 ID | 是 |
pre_token | String | BODY | 需要在之前的匹配结果中过滤的智能匹配token | 否 |
code | String | BODY | 学习到的红外码 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数
参数名 | 类型 | 说明 |
---|---|---|
token | String | 智能匹配token |
expire_time | Integer | 过期时间,单位秒 |
请求示例
POST /v1.0/infrareds/xxxxxx/matching-remotes/token
{
"category_id": 5,
"code": "xxxxxxxxxxxxx"
}
响应示例
{
"result": {
"token": "xxxxxxxx",
"expire_time": 600
},
"success": true,
"t": 1586501573398
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
功能描述
使用生成的智能匹配令牌token,分页查询智能匹配结果列表。
接口地址
GET /v1.0/infrareds/{infrared_id}/matching-remotes?token=xxxxxx
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
token | String | URI | 智能匹配token | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数
参数名 | 类型 | 说明 |
---|---|---|
has_next | Boolean | 是否还有下一页 |
progress | String | 当前智能匹配结果进度,只是用来显示使用,没有其他特殊含义或者其他关联关系 |
remote_indexs | List | 当前页智能匹配的结果的遥控器索引 |
请求示例
GET /v1.0/infrareds/xxxxxx/matching-remotes?token=xxxxxx
响应示例
{
"result": {
"has_next": true,
"progress": "100%",
"remote_indexs": [
1234, 9769, 9725
]
},
"success": true,
"t": 1586501573398
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
功能描述
查询指定遥控器索引支持的品牌的信息。
接口地址
GET /v1.0/infrareds/{infrared_id}/categories/{category_id}/remotes/{remote_index}/brands?region=
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | URI | 设备类型 ID | 是 |
remote_index | String | URI | 遥控器索引 | 是 |
region | String | URI | 品牌支持的二位国家字母码(ISO 3166-1 alpha-2)或区域简称 | 是 |
lang | String | Header | 语言,中国区默认zh,其他区默认en | 否 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功:(true:成功,false:失败) |
msg | String | 请求失败的信息,成功为空 |
result | List | 返回结果 |
result参数
参数名 | 类型 | 说明 |
---|---|---|
brand_id | String | 类型 ID |
brand_name | String | 品牌名称 |
请求示例
GET /v1.0/infrareds/xxxxxx/categories/5/remotes/9735/brands?region=US
响应示例
{
"result": [
{
"brand_id": 27,
"brand_name": "TCL"
},
{
"brand_id": 17,
"brand_name": "ChangHong"
}
],
"success": true,
"t": 1586501573398
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
错误码
以下为该接口常见的业务异常,更多的异常错误,请参见全局错误码。
错误码 | 说明 |
---|---|
500 | 系统错误 |
1109 | 参数非法 |
请求方式 | API | 描述 |
---|---|---|
POST | /v1.0/infrareds/{infrared_id}/timers | 添加红外定时任务 |
GET | /v1.0/infrareds/{infrared_id}/timers/categories/{category_id}/remotes/{remote_index} | 获取红外定时任务 |
PUT | /v1.0/infrareds/{infrared_id}/timers/groups/{group_id} | 更新红外定时任务 |
DELETE | /v1.0/infrareds/{infrared_id}/timers/groups/{group_id} | 删除红外定时任务 |
DELETE | /v1.0/infrareds/{infrared_id}/timers/ | 删除所有定时任务 |
PUT | /v1.0/infrareds/{infrared_id}/timers/groups/{group_id}/status | 更新红外分组定时状态 |
接口地址
POST /v1.0/infrareds/{infrared_id}/timers
接口说明
添加一个红外定时任务,不支持空调品类
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | BODY | 设备类型 | 是 |
remote_index | String | BODY | 遥控器索引 | 是 |
loops | String | BODY | 由0和1组成的七位数字,0代表关闭,1代表开启,例如:0000010代表周日,周一,周二,周三,周四,周五定时任务关闭,周六定时任务开启 | 是 |
time_zone | String | BODY | 时区,中国区传+08:00 | 是 |
timezone_id | String | BODY | 时区id,比如 Asia/Shanghai | 是 |
instruct | Array | BODY | 定时任务具体的时间和设备指令,⽀持同时设置多个定时任务 | 是 |
instruct参数说明
参数名 | 类型 | 说明 | 是否必填 |
---|---|---|---|
time | String | 定时任务执⾏的时间 | 是 |
date | String | 定时任务执⾏的⽇期 | 否(传date时loops为0000000,date格式为: 20181212) |
key | String | 配对规则获取的key | 是 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码(详情见错误码章节) |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
group_id | String | 定时任务的id |
请求示例
POST /v1.0/infrareds/6scdsexxxxxxxx/timers
{
"instruct":[
{
"key": "43",
"time": "17:42",
"date":"20181218"
},
{
"key": "43",
"time": "17:43",
"date":"20181218"
}
],
"loops":"0000000",
"category_id": "1",
"remote_index": "5129",
"timezone_id": "Asiz/Shanghai",
"time_zone": "+8:00"
}
返回示例
{
"success": true,
"result": {
"group_id": "0000002ftg"
}
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接⼝地址
GET /v1.0/infrareds/{infrared_id}/timers/categories/{category_id}/remotes/{remote_index}
接口说明
查询红外定时任务,不支持空调品类
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
category_id | String | URI | 设备类型 | 是 |
remote_index | String | URI | 遥控器索引 | 是 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码,报错详情请参考错误码章节 |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
result参数说明
参数名 | 类型 | 说明 |
---|---|---|
groups | Array | 定时任务信息 |
category | Object | 定时任务分类 |
groups参数说明
参数名 | 类型 | 说明 |
---|---|---|
timers | Array | 定时任务信息 |
id | String | 定时任务编号 |
category参数说明
参数名 | 类型 | 说明 |
---|---|---|
category | String | 定时任务的分类 |
status | Integer | 定时任务的分类的状态 |
timers参数说明
参数名 | 类型 | 说明 |
---|---|---|
date | String | 设置定时的⽇期 |
timezone_id | String | 时区id |
loops | String | 循环定时信息 |
time | String | 设置的时间 |
status | Integer | 定时任务的状态(0:关闭;1:开启;2:删除) |
key | String | 定时的指令 |
请求示例
POST /v1.0/infrareds/6scdsexxxxxxxx/timers/categories/2/remotes/1103
返回示例
{
"success": true,
"t": 1545135036437,
"result": {
"category": {
"category": "1",
"status": "1"
},
"groups": [{
"id": "1",
"timers": [{
"date": "20181218",
"timezone_id": "Asiz/Shanghai",
"loops": "0000000",
"time": "17:42",
"status": 1,
"key": "43"
}]
}]
}
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
接⼝地址
PUT /v1.0/infrareds/{infrared_id}/timers/groups/{group_id}
接口说明
更新红外定时任务,不支持空调品类
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
group_id | String | URI | 定时任务id | 是 |
category_id | String | BODY | 设备类型 | 是 |
remote_index | String | BODY | 遥控器索引 | |
loops | String | BODY | 由0和1组成的七位数字,0代表关闭,1代表开启,例如:0000010代表周日,周一,周二,周三,周四,周五定时任务关闭,周六定时任务开启 | 是 |
time_zone | String | BODY | 时区,中国区传+08:00 | 是 |
timezone_id | String | BODY | 时区id,⽐如 Asia/Shanghai | 是 |
instruct | Array | BODY | 定时任务具体的时间和设备指令,⽀持同时设置多个定时任务 | 是 |
instruct参数说明
参数名 | 类型 | 说明 | 是否必填 |
---|---|---|---|
time | String | 定时任务执⾏的时间 | 是 |
date | String | 定时任务执⾏的日期 | 否(传date时loops为0000000,date格式为: 20181212) |
key | String | 配对规则获取的key | 是 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码,报错详情请参考错误码章节 |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 返回结果 |
请求示例
PUT /v1.0/infrareds/6scdsexxxxxxxx/timers/groups/x0000001
{
"instruct": [
{
"key": "43",
"time": "17:42",
"date":"20181218"
}, {
"key": "43",
"time": "17:43",
"date":"20181218"
} ],
"loops":"0000000",
"category_id": "1",
"remote_index": "5129",
"timezone_id": "Asiz/Shanghai",
"time_zone": "+8:00"
}
返回示例
{
"success": true,
"t": 1545135036437,
"result":true
}
失败示例
{
"success": true,
"t": 1545135036437,
"result": false
}
接口地址
DELETE /v1.0/infrareds/{infrared_id}/timers/groups/{group_id}
接口说明
删除红外定时任务,不支持空调品类
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
group_id | String | URI | 定时任务组Id | 是 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码,报错详情请参考错误码章节 |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 返回结果 |
请求示例
DELETE /v1.0/infrareds/6scdsexxxxxxxx/timers/groups/x0000001
返回示例
{
"success": true,
"t": 1545135036437,
"result":true
}
失败示例
{
"success": true,
"t": 1545135036437,
"result": false
}
接口地址
DELETE /v1.0/infrareds/{infrared_id}/timers
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
返回参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码,报错详情请参考错误码章节 |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Boolean | 返回结果 |
请求示例
DELETE /v1.0/infrareds/6scdsexxxxxxxx/timers
返回示例
{
"success": true,
"t": 1545135036437,
"result":true
}
失败示例
{
"success": true,
"t": 1545135036437,
"result": false
}
功能描述
更新红外分组定时状态
接口地址
PUT /v1.0/infrareds/{infrared_id}/timers/groups/{group_id}/status
请求参数
参数名 | 类型 | 参数位置 | 说明 | 是否必填 |
---|---|---|---|---|
infrared_id | String | URI | 红外设备 ID | 是 |
group_id | String | URI | 定时任务组Id | 是 |
value | String | BODY | 0:失效;1:有效 | 是 |
响应参数
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 响应码,报错详情请参考错误码章节 |
success | Boolean | 是否成功,true 表示成功,false 表示失败 |
msg | String | 请求失败的信息,成功为空 |
result | Object | 返回结果 |
请求示例
PUT /v1.0/infrareds/6scdsexxxxxxxx/timers/groups/x0000001/status
{
"value": "1"
}
响应示例
{
"success": true,
"t": 1545135036437,
"result":true
}
失败示例
{
"success": false,
"code": 500,
"msg": "system error,please contact the admin"
}
key值 | 描述 |
---|---|
Power | 电源 |
OK | 确认 |
Channel+ | 频道+ |
Channel- | 频道- |
Menu | 菜单 |
Up | 上 |
Down | 下 |
Left | 左 |
Right | 右 |
Volume+ | 音量+ |
Volume- | 音量- |
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
-/– | -/– |
key值 | 描述 |
---|---|
Power | 电源 |
OK | 确认 |
Channel+ | 频道+ |
Channel- | 频道- |
Menu | 菜单 |
Up | 上 |
Down | 下 |
Left | 左 |
Right | 右 |
Volume+ | 音量+ |
Volume- | 音量- |
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
* | * |
# | # |
key | 描述 |
---|---|
PowerOn | 电源开 |
PowerOff | 电源关 |
M0 - M4 | 模式1 - 模式5(制冷、制热、自动、送⻛、除湿) |
T16 - T30 | 温度16 - 30 |
F0 - F3 | 风速1 - ⻛速4(⾃动、低速、中速、⾼速) |
key | 描述 |
---|---|
PowerOn | 电源开 |
PowerOff | 电源关 |
Swing | 摇头 |
Speed | ⻛速 |
Timing | 定时 |
NegativeIon | 负离子 |
key | 描述 |
---|---|
PowerOn | 电源开 |
PowerOff | 电源关 |
OK | 确认 |
Menu | 菜单 |
Up | 上 |
Down | 下 |
Left | 左 |
Right | 右 |
Volume+ | 音量+ |
Volume- | 音量- |
Mute | 静音 |
Back | 返回 |
Home | 主页 |
key | 描述 |
---|---|
Power | 电源 |
OK | 确认 |
Menu | 菜单 |
Up | 上 |
Down | 下 |
Left | 左 |
Right | 右 |
Volume+ | 音量+ |
Volume- | 音量- |
Home | 主页 |
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
* | * |
# | # |
key | 描述 |
---|---|
PowerOn | 电源开 |
PowerOff | 电源关 |
ColdLight | 冷色调 |
WarmLight | 暖色调 |
Brightness+ | 亮度+ |
Brightness- | 亮度- |
RedLight | 红色灯 |
GreenLight | 绿色灯 |
BlueLight | 蓝色灯 |
key | 描述 |
---|---|
PowerOn | 电源开 |
PowerOff | 电源关 |
Volume+ | 音量+ |
Volume- | 音量- |
Play | 播放 |
Pause | 暂停 |
Previous | 上一曲 |
Next | 下一曲 |
key | 描述 |
---|---|
PowerOn | 电源开 |
PowerOff | 电源关 |
OK | 确认 |
Menu | 菜单 |
Up | 上 |
Down | 下 |
Left | 左 |
Right | 右 |
Volume+ | 音量+ |
Volume- | 音量- |
Mute | 静音 |
Back | 返回 |
Display | 显示 |
Home | 主页 |
Rewind | 回放 |
Play | 播放 |
Forward | 快进 |
Stop | 停止 |
Pause | 暂停 |
Open/Close | 出碟/放碟 |
Previous | 上一曲 |
Next | 下一曲 |
Info | 信息 |
key | 描述 |
---|---|
OK | 确认 |
Up | 上 |
Down | 下 |
Left | 左 |
Right | 右 |
Delay | 延时 |
Shutter | 快门 |
key | 描述 |
---|---|
Power | 电源 |
Mode | 模式 |
Sleep | 睡眠 |
Timing | 定时 |
ChildLock | 儿童锁 |
Auto | 自动 |
Speed | 风速 |
key | 描述 |
---|---|
Power | 电源 |
Mode | 模式 |
Temperature+ | 温度+ |
Temperature- | 温度- |
Sleep | 睡眠 |
Timing | 定时 |
Reservation | 预约 |
Q:设备如何通过云云对接配网?
Q:如何拿到我平常需要使用的设备 ID?
在获取的结果中,id
即为您后续经常需要使用的设备 ID。
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈