模板吸尘器
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 %}