模板吸尘器
template 平台创建结合集成的吸尘器,并提供运行脚本或调用动作的能力,以处理吸尘器的每个开始、暂停、停止、返回基站、清洁点、定位和设置风扇速度命令。
要在安装中启用模板吸尘器,请将以下内容添加到您的 configuration.yaml 文件中:
# 示例 configuration.yaml 条目
vacuum:
- platform: template
vacuums:
living_room_vacuum:
start:
action: script.vacuum_start
Configuration Variables
您的吸尘器列表。
定义获取吸尘器状态的模板。有效值: docked/cleaning/idle/paused/returning/error
定义获取吸尘器电池电量的模板。合法值是介于 0 和 100 之间的数字。
定义获取吸尘器风扇速度的模板。
定义获取实体的 available 状态的模板。如果模板呈现失败或返回 True、"1"、"true"、"yes"、"on"、"enable" 或非零数字,则实体将是 available。 如果模板返回任何其他值,实体将是 unavailable。如果未配置,实体将始终是 available。注意,字符串比较不区分大小写;"TrUe" 和 "yEs" 是被允许的。
定义吸尘器启动时运行的动作。
定义吸尘器暂停时运行的动作。
定义吸尘器停止时运行的动作。
定义吸尘器被给出返回基站命令时运行的动作。
定义吸尘器被给出清洁点命令时运行的动作。
定义吸尘器被给出定位命令时运行的动作。
定义吸尘器被给出设置风扇速度命令时运行的动作。
模板和动作变量
基于状态的模板实体在其模板和动作中有特殊的模板变量 this 可用。this 变量有助于在模板和动作中对 entity实体表示 Home Assistant 中的传感器、执行器或功能。实体用于监控物理属性或控制其他实体。实体通常是设备或服务的一部分。 [Learn more] 的状态和属性进行自我引用。
示例
使用 Harmony Hub 控制吸尘器
此示例展示了如何使用模板吸尘器通过 Harmony Hub Remote 集成 控制 IR 吸尘器。
vacuum:
- platform: template
vacuums:
living_room_vacuum:
start:
- action: remote.send_command
target:
entity_id: remote.harmony_hub
data:
command: Clean
device: 52840686
return_to_base:
- action: remote.send_command
target:
entity_id: remote.harmony_hub
data:
command: Home
device: 52840686
clean_spot:
- action: remote.send_command
target:
entity_id: remote.harmony_hub
data:
command: SpotCleaning
device: 52840686
吸尘器状态
此示例展示了如何使用模板指定吸尘器的状态。
vacuum:
- platform: template
vacuums:
living_room_vacuum:
value_template: "{{ states('sensor.vacuum_state') }}"
battery_level_template: "{{ states('sensor.vacuum_battery_level')|int }}"
fan_speed_template: "{{ states('sensor.vacuum_fan_speed') }}"
start:
action: script.vacuum_start
pause:
action: script.vacuum_pause
stop:
action: script.vacuum_stop
return_to_base:
action: script.vacuum_return_to_base
clean_spot:
action: script.vacuum_clean_spot
locate:
action: script.vacuum_locate_vacuum
set_fan_speed:
action: script.vacuum_set_fan_speed
data:
speed: "{{ fan_speed }}"
fan_speeds:
- Low
- Medium
- High
添加自定义属性
此示例展示了如何添加自定义属性。
vacuum:
- platform: template
vacuums:
living_room_vacuum:
value_template: "{{ states('sensor.vacuum_state') }}"
battery_level_template: "{{ states('sensor.vacuum_battery_level')|int }}"
fan_speed_template: "{{ states('sensor.vacuum_fan_speed') }}"
attribute_templates:
status: >-
{% if (states('sensor.robot_vacuum_robot_cleaner_movement') == "after" and states('sensor.robot_vacuum_robot_cleaner_cleaning_mode') == "stop") %}
正在充电以便恢复
{% elif states('sensor.robot_vacuum_robot_cleaner_cleaning_mode') == "auto" %}
清洁中
{% else %}
正在充电
{% endif %}