Duwi 迪惟智能家居技能
基于 Duwi 开放平台 API,支持设备控制、场景执行、状态查询等功能。
功能特性
房屋管理
状态查询
- - 设备在线状态
- 设备实时数值(温度、湿度、光照度、电压、电流等)
- 传感器历史统计数据
- 用电量统计数据
设备控制
- - 电源断路器控制:开关控制等
- 灯光控制:开关、亮度调节 (0-100%)、色温调节 (2700-6200K)、颜色调整(HSV 格式)等
- 窗帘控制:开/关/停、百分比 (0-100%)、角度调节等
- 空调控制:开关、温度设置 (5-35℃)、模式设置、风速设置、风向设置等
- 地暖控制:开关、温度设置 (10-30℃) 等
- 新风控制:开关、湿度设置(0-100%)、风速设置、工作模式设置等
- 热泵控制:开关、温度设置、模式设置等
- 二联供控制:开关、模式设置、温度设置(5-35℃)、湿度设置(0-100%)、风速控制等
场景控制
快速开始
1. 配置应用凭证
配置前确认:
- - ✅ 你已从迪惟开放平台获取了 APPKEY 和 SECRET
方式 1:非交互模式(适合大模型)
CODEBLOCK0
方式 2:交互模式
python init_config.py
按提示输入 APPKEY 和 SECRET(输入时 SECRET 会隐藏显示)。
2. 登录账户
方式 1:提供密码
CODEBLOCK2
方式 2:不输入密码(会提示输入,隐藏显示)
CODEBLOCK3
3. 选择房屋
方式 1:交互选择
python duwi_cli.py choose-house
按提示选择房屋。
方式 2:直接指定房屋编号(推荐,无需交互)
CODEBLOCK5
4. 开始控制
python duwi_cli.py device-operate switch on --room 客厅 --device_name 顶灯
功能参考
账户管理
python duwi_cli.py logout |
💡 提示:登录成功后 token 会自动保存,下次使用无需重新登录。Token 过期时会自动刷新。
房屋管理
| 功能 | CLI 指令 |
|---|
| 房屋列表 | INLINECODE2 |
| 选择房屋 |
python duwi_cli.py choose-house --house_no <编号> |
| 楼层列表 |
python duwi_cli.py floors |
| 房间列表 |
python duwi_cli.py rooms [--floor <楼层名>] |
大模型提示: 通过楼层名称查找房间列表,未找到相应的楼层时,先查找楼层列表,匹配相似的楼层名称,再通过精准楼层名称查找房间列表。
设备查询
| 功能 | CLI 指令 |
|---|
| 设备列表 | INLINECODE6 |
| 设备详情 |
python duwi_cli.py device-info <设备编号> |
| 设备状态 |
python duwi_cli.py device-value <设备编号> |
大模型提示: 设备列表的查询支持 --floor(楼层)、--room(房间)、--online(是否在线)、--type(设备类型编号)参数来精确定位设备,参数可选,可同时传入多个参数。
设备控制
命令格式: INLINECODE13
定位参数优先级: --device_no > --floor + --room + --device_name > --room + --device_name > --device_name
| 设备类型(类型前缀) | 动作 | 动作说明 | 值说明 | 示例 |
|---|
| 电源 (1-) | INLINECODE18 | 开关 | INLINECODE19 / INLINECODE20 | INLINECODE21 |
| 灯光 (3-) |
switch | 开关 |
on/
off |
switch off --room 卧室 --device_name 顶灯 |
| |
light | 调光 | 亮度 (0-100) |
light 80 --room 客厅 --device_name 灯带 |
| |
color_temp | 调色温 | 色温 (2700-6200K) |
color_temp 4000 --room 书房 --device_name 台灯 |
| |
color | 调色 | HSV 格式 (H:S:V) |
color 180:100:100 --room 卧室 --device_name 灯 |
|
窗帘 (4-*) |
control | 开关停 |
open/
close/
stop |
control open --room 客厅 --device_name 窗帘 |
| |
control_percent | 设开合度 | 百分比 (0-100) |
control_percent 50 --room 主卧 --device_name 窗帘 |
|
空调 (5-001) |
ac_switch | 开关 |
on/
off |
ac_switch on --room 客厅 --device_name 空调 |
| |
ac_set_temp | 设温度 | 温度 (5-35℃) |
ac_set_temp 26 --room 客厅 --device_name 空调 |
| |
ac_mode | 设模式 |
auto/
cold/
hot/
fan/
wet |
ac_mode cold --room 卧室 --device_name 空调 |
| |
ac_wind_speed | 设风速 |
auto/
high/
mid/
low |
ac_wind_speed mid --room 客厅 --device_name 空调 |
| |
ac_wind_direction | 设风向 |
auto/
stop/
swing/
up_down/
left_right |
ac_wind_direction auto --room 客厅 --device_name 空调 |
| |
ac_lock_mode | 设锁定模式 |
lock/
half_lock/
unlock |
ac_lock_mode lock --room 客厅 --device_name 空调 |
|
地暖 (5-002) |
fh_switch | 开关 |
on/
off |
fh_switch on --device_name 地暖 |
| |
fh_set_temp | 设温度 | 温度 (10-30℃) |
fh_set_temp 25 --device_name 地暖 |
| |
fh_lock_mode | 设锁定模式 |
lock/
half_lock/
unlock |
fh_lock_mode lock --device_name 地暖 |
|
新风 (5-003) |
fa_switch | 开关 |
on/
off |
fa_switch on --device_name 新风机 |
| |
fa_work_mode | 设模式 |
fresh/
auto/
manual/
sleep |
fa_work_mode fresh --device_name 新风机 |
| |
fa_wind_speed | 设风速 |
auto/
high/
mid/
low |
fa_wind_speed mid --device_name 新风机 |
| |
fa_set_humidity | 设湿度 | 湿度 (0-100%) |
fa_set_humidity 60 --device_name 新风机 |
| |
fa_clean_switch | 开关UV 杀菌 |
on/
off |
fa_clean_switch on --device_name 新风机 |
| |
fa_fan_speed | 设排风风速 |
auto/
high/
mid/
low |
fa_fan_speed mid --device_name 新风机 |
|
热泵 (5-004) |
hp_switch | 开关 |
on/
off |
hp_switch on --device_name 热泵 |
| |
hp_set_temp | 设温度 | 温度 (5-55℃) |
hp_set_temp 45 --device_name 热泵 |
| |
hp_mode | 设模式 |
cold/
hot |
hp_mode hot --device_name 热泵 |
|
温控 (5-005) |
tc_switch | 开关 |
on/
off |
tc_switch on --device_name 温控器 |
| |
tc_set_temp | 设温度 | 温度 (5-35℃) |
tc_set_temp 26 --device_name 温控器 |
| |
tc_set_humidity | 设湿度 | 湿度 (0-100%) |
tc_set_humidity 26 --device_name 温控器 |
| |
tc_mode | 设模式 |
auto/
cold/
hot |
tc_mode cold --device_name 温控器 |
| |
tc_wind_speed | 设风速 |
auto/
high/
mid/
low |
tc_wind_speed auto --device_name 温控器 |
| |
tc_lock_mode | 设锁定模式 |
mix/
lock/
mode_wind/
floorheat |
tc_lock_mode lock --device_name 温控器 |
颜色 HSV 参考: 红色=0:100:100 | 绿色=120:100:100 | 蓝色=240:100:100 | 白色=0:0:100 | 黄色=60:100:100
空调模式说明: auto (自动)、cold (制冷)、hot (制热)、fan (送风)、wet (除湿)、air (换气)
空调风速说明: auto (自动)、super_strong (超强)、super_high (超高)、high (高)、mid (中)、low (低)、super_low (超低)、super_quiet (超静)
空调风向说明: auto (自动)、stop (停止)、swing (摇摆)、up_down (上下)、left_right (左右)
空调锁定模式说明: lock (全锁)、half_lock (半锁)、unlock (解锁)
地暖锁定模式说明: lock (全锁)、half_lock (半锁)、unlock (解锁)
新风风速和新风排风风速说明: auto (自动)、extreme_strong (极强)、super_high (超高)、high (高)、mid (中)、low (低)、super_low (超低)、super_quiet (超静)
新风工作模式说明: fresh (新风)、wet (除湿)、auto (自动)、manual (手动)、indoor_loop (内循环)、sleep (睡眠)、pass (旁通)、common (普通)、smart (智能)、ventilate (通风)、outdoor_loop (外循环)、smart_auto (智慧自动)、eco_fresh (节能新风)、normal_air (普通换气)、cold_wet (制冷除湿)、hot_humidify (制热加湿)、cold_hot_auto (冷暖自动)、smart_humidify (智慧调湿)、timing (定时)、air (换气)、clean (净化)、program (编程)、exhaust (排风)、heat_exchange (热交换)、powerful (强力)、cold_room (冷房)、hot_room (暖房)、energy_recycle (能量回收)、night (夜间)、holiday (假日)
热泵模式说明: cold (制冷)、hot (制热)
温控模式说明: auto (自动)、cold (制冷)、hot (制热)、ventilate (通风)、floorheat (地暖)、mix (一体)、smart_floorheat (智能地暖)、cold_floorcold (制冷制热)
温控风速说明: auto (自动)、super_strong (超强)、strong (强劲)、super_high (超高)、high (高)、mid (中)、low (低)、super_low (超低)、super_quiet (超静)
温控锁定模式说明: mode (锁定模式)、mode_wind (锁定模式&风速)、mode_wind_temp (锁定模式&风速&温度)、unlock (解锁)、floorheat (地暖)、mix (一体)、lock (锁定)
场景控制
| 功能 | CLI 指令 |
|---|
| 场景列表 | INLINECODE238 |
| 执行场景 |
python duwi_cli.py execute-scene --scene_no <编号> 或
--scene_name <名称> |
统计数据
| 功能 | CLI 指令 |
|---|
| 传感器统计 | INLINECODE241 |
| 电量统计 |
python duwi_cli.py elec-stats [--device_no <编号>] --days <天数> |
传感器类型: 1=温度,2=湿度,3=光照度,4=甲醛,5=PM2.5,6=CO2,7=AQI,8=人体感应
缓存管理
| 功能 | CLI 指令 |
|---|
| 缓存统计 | INLINECODE243 |
| 清理缓存 |
python duwi_cli.py cache clean |
| 清空缓存 |
python duwi_cli.py cache clear |
大模型集成指南
意图识别 → CLI 命令映射
| 用户说法 | 识别要素 | 生成的 CLI 命令 |
|---|
| "打开客厅的灯" | 房间=客厅,设备=灯,动作=开 | INLINECODE246 |
| "关闭一楼卧室的空调" |
楼层=一楼,房间=卧室,设备=空调 |
python duwi_cli.py device-operate ac_switch off --floor 一楼 --room 卧室 --device_name 空调 |
| "把主卧窗帘开到 50%" | 房间=主卧,设备=窗帘,值=50 |
python duwi_cli.py device-operate control_percent 50 --room 主卧 --device_name 窗帘 |
| "客厅空调 26 度制冷" | 房间=客厅,温度=26,模式=制冷 |
python duwi_cli.py device-operate ac_set_temp 26 --room 客厅 --device_name 空调 |
| "把灯调成红色" | 设备=灯,颜色=红色 |
python duwi_cli.py device-operate color 0:100:100 --device_name 灯 |
房屋结构
CODEBLOCK7
CODEBLOCK8
房屋的楼层 | 一楼、二楼 |
| 房间 | 楼层下的房间 | 客厅、卧室 |
| 设备 | 智能设备 | 灯、窗帘、空调 |
| 场景 | 预设场景 | 会客模式、睡眠模式 |
注意事项
- 1. Token 管理: 登录后自动缓存,过期自动刷新
- 房屋选择: 首次使用需选择房屋,配置保存到 INLINECODE251
- 设备在线: 控制前请确认设备在线
- 参数范围: 亮度 0-100%,色温 2700-6200K,空调温度 5-35℃,地暖温度 10-30℃
- 缓存刷新: 设备控制后自动刷新缓存,如需手动刷新执行 INLINECODE252
- 安全: 配置文件仅本地保存,不要分享或提交到 Git
- 控制反馈:如果控制失败,请反馈给用户相关控制失败原因
- 设备缓存:设备列表会自动缓存 5 分钟,如需刷新请等待或调用 INLINECODE253
- 用户反馈处理:如果提出设备状态和实际设备状态不一致,请及时调用 INLINECODE254
错误码
请求参数不正确 |
| 10002 | accessToken 异常或过期 |
| 10003 | 暂无访问权限 |
| 11000 | 账户名或者密码错误 |
| 99001 | appKey 异常 |
| 99002 | 签名错误 |
| 99003 | 时间戳请求超时 |
| 19999 | 系统错误 |
依赖
CODEBLOCK9
Duwi 迪惟智能家居技能
基于 Duwi 开放平台 API,支持设备控制、场景执行、状态查询等功能。
功能特性
房屋管理
状态查询
- - 设备在线状态
- 设备实时数值(温度、湿度、光照度、电压、电流等)
- 传感器历史统计数据
- 用电量统计数据
设备控制
- - 电源断路器控制:开关控制等
- 灯光控制:开关、亮度调节 (0-100%)、色温调节 (2700-6200K)、颜色调整(HSV 格式)等
- 窗帘控制:开/关/停、百分比 (0-100%)、角度调节等
- 空调控制:开关、温度设置 (5-35℃)、模式设置、风速设置、风向设置等
- 地暖控制:开关、温度设置 (10-30℃) 等
- 新风控制:开关、湿度设置(0-100%)、风速设置、工作模式设置等
- 热泵控制:开关、温度设置、模式设置等
- 二联供控制:开关、模式设置、温度设置(5-35℃)、湿度设置(0-100%)、风速控制等
场景控制
快速开始
1. 配置应用凭证
配置前确认:
- - ✅ 你已从迪惟开放平台获取了 APPKEY 和 SECRET
方式 1:非交互模式(适合大模型)
bash
python init_config.py --appkey --secret
方式 2:交互模式
bash
python init_config.py
按提示输入 APPKEY 和 SECRET(输入时 SECRET 会隐藏显示)。
2. 登录账户
方式 1:提供密码
bash
python duwi_cli.py login <手机号> <密码>
方式 2:不输入密码(会提示输入,隐藏显示)
bash
python duwi_cli.py login <手机号>
3. 选择房屋
方式 1:交互选择
bash
python duwi_cli.py choose-house
按提示选择房屋。
方式 2:直接指定房屋编号(推荐,无需交互)
bash
python duwicli.py choose-house --houseno <房屋编号>
4. 开始控制
bash
python duwi
cli.py device-operate switch on --room 客厅 --devicename 顶灯
功能参考
账户管理
| 功能 | CLI 指令 |
|---|
| 登录 | python duwicli.py login <手机号> [密码] |
| 退出 |
python duwicli.py logout |
💡 提示:登录成功后 token 会自动保存,下次使用无需重新登录。Token 过期时会自动刷新。
房屋管理
| 功能 | CLI 指令 |
|---|
| 房屋列表 | python duwicli.py houses |
| 选择房屋 |
python duwicli.py choose-house --house_no <编号> |
| 楼层列表 | python duwi_cli.py floors |
| 房间列表 | python duwi_cli.py rooms [--floor <楼层名>] |
大模型提示: 通过楼层名称查找房间列表,未找到相应的楼层时,先查找楼层列表,匹配相似的楼层名称,再通过精准楼层名称查找房间列表。
设备查询
| 功能 | CLI 指令 |
|---|
| 设备列表 | python duwicli.py devices [--room <房间>] [--floor <楼层>] [--online] |
| 设备详情 |
python duwicli.py device-info <设备编号> |
| 设备状态 | python duwi_cli.py device-value <设备编号> |
大模型提示: 设备列表的查询支持 --floor(楼层)、--room(房间)、--online(是否在线)、--type(设备类型编号)参数来精确定位设备,参数可选,可同时传入多个参数。
设备控制
命令格式: python duwi_cli.py device-operate <动作> <值> [定位参数]
定位参数优先级: --deviceno > --floor + --room + --devicename > --room + --devicename > --devicename
| 设备类型(类型前缀) | 动作 | 动作说明 | 值说明 | 示例 |
|---|
| 电源 (1-) | switch | 开关 | on/off | switch on --room 客厅 --devicename 断路器 |
| 灯光 (3-) |
switch | 开关 | on/off | switch off --room 卧室 --devicename 顶灯 |
| | light | 调光 | 亮度 (0-100) | light 80 --room 客厅 --device_name 灯带 |
| | color
temp | 调色温 | 色温 (2700-6200K) | colortemp 4000 --room 书房 --device_name 台灯 |
| | color | 调色 | HSV 格式 (H:S:V) | color 180:100:100 --room 卧室 --device_name 灯 |
|
窗帘 (4-*) | control | 开关停 | open/close/stop | control open --room 客厅 --device_name 窗帘 |
| | control
percent | 设开合度 | 百分比 (0-100) | controlpercent 50 --room 主卧 --device_name 窗帘 |
|
空调 (5-001) | ac
switch | 开关 | on/off | acswitch on --room 客厅 --device_name 空调 |
| | ac
settemp | 设温度 | 温度 (5-35℃) | ac
settemp 26 --room 客厅 --device_name 空调 |
| | ac
mode | 设模式 | auto/cold/hot/fan/wet | acmode cold --room 卧室 --device_name 空调 |
| | ac
windspeed | 设风速 | auto/high/mid/low | ac
windspeed mid --room 客厅 --device_name 空调 |
| | ac
winddirection | 设风向 | auto/stop/swing/up
down/leftright | ac
winddirection auto --room 客厅 --device_name 空调 |
| | ac
lockmode | 设锁定模式 | lock/half
lock/unlock | aclock
mode lock --room 客厅 --devicename 空调 |
|
地暖 (5-002) | fh
switch | 开关 | on/off | fhswitch on --device_name 地暖 |
| | fh
settemp | 设温度 | 温度 (10-30℃) | fh
settemp 25 --device_name 地暖 |
| | fh
lockmode | 设锁定模式 | lock/half
lock/unlock | fhlock
mode lock --devicename 地暖 |
|
新风 (5-003) | fa
switch | 开关 | on/off | faswitch on --device_name 新风机 |
| | fa
workmode | 设模式 | fresh/auto/manual/sleep | fa
workmode fresh --device_name 新风机 |
| | fa
windspeed | 设风速 | auto/high/mid/low | fa
windspeed mid --device_name 新风机 |
| | fa
sethumidity | 设湿度 | 湿度 (0-100%) | fa
sethumidity 60 --device_name 新风机 |
| | fa
cleanswitch | 开关UV 杀菌 | on/off | fa
cleanswitch on --device_name 新风机 |
| | fa
fanspeed | 设排风风速 | auto/high/mid/low | fa
fanspeed mid --device_name 新风机 |
|
热泵 (5-004) | hp
switch | 开关 | on/off | hp