mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-05-28 05:46:48 +00:00
111 lines
3.3 KiB
Markdown
111 lines
3.3 KiB
Markdown
---
|
|
layout: page
|
|
title: "Template Fan"
|
|
description: "Instructions how to setup the Template fans within Home Assistant."
|
|
date: 2018-05-03 09:00
|
|
sidebar: true
|
|
comments: false
|
|
sharing: true
|
|
footer: true
|
|
ha_category: Fan
|
|
ha_release: 0.69
|
|
ha_iot_class: "Local Push"
|
|
logo: home-assistant.png
|
|
ha_qa_scale: internal
|
|
---
|
|
|
|
The `template` platform creates fans that combine components and provides the
|
|
ability to run scripts or invoke services for each of the turn_on, turn_off, set_speed,
|
|
set_oscillating, and set_direction commands of a fan.
|
|
|
|
To enable Template Fans in your installation, add the following to your
|
|
`configuration.yaml` file:
|
|
|
|
{% raw %}
|
|
```yaml
|
|
# Example configuration.yaml entry
|
|
fan:
|
|
- platform: template
|
|
fans:
|
|
bedroom_fan:
|
|
friendly_name: "Bedroom fan"
|
|
value_template: "{{ states('input_boolean.state') }}"
|
|
speed_template: "{{ states('input_select.speed') }}"
|
|
oscillating_template: "{{ states('input_select.osc') }}"
|
|
direction_template: "{{ states('input_select.direction') }}"
|
|
turn_on:
|
|
service: script.fan_on
|
|
turn_off:
|
|
service: script.fan_off
|
|
set_speed:
|
|
service: script.fan_speed
|
|
data_template:
|
|
speed: "{{ speed }}"
|
|
set_oscillating:
|
|
service: script.fan_oscillating
|
|
data_template:
|
|
oscillating: "{{ oscillating }}"
|
|
set_direction:
|
|
service: script.fan_direction
|
|
data_template:
|
|
direction: "{{ direction }}"
|
|
speeds:
|
|
- '1'
|
|
- '2'
|
|
- '3'
|
|
```
|
|
{% endraw %}
|
|
|
|
{% configuration %}
|
|
fans:
|
|
description: List of your fans.
|
|
required: true
|
|
type: map
|
|
keys:
|
|
friendly_name:
|
|
description: Name to use in the frontend.
|
|
required: false
|
|
type: string
|
|
value_template:
|
|
description: "Defines a template to get the state of the fan. Valid value: 'on'/'off'"
|
|
required: true
|
|
type: template
|
|
speed_template:
|
|
description: Defines a template to get the speed of the fan.
|
|
required: false
|
|
type: template
|
|
oscillating_template:
|
|
description: "Defines a template to get the osc state of the fan. Valid value: True/False"
|
|
required: false
|
|
type: template
|
|
direction_template:
|
|
description: "Defines a template to get the direction of the fan. Valid value: 'forward'/'reverse'"
|
|
required: false
|
|
type: template
|
|
turn_on:
|
|
description: Defines an action to run when the fan is turned on.
|
|
required: true
|
|
type: action
|
|
turn_off:
|
|
description: Defines an action to run when the fan is turned off.
|
|
required: true
|
|
type: action
|
|
set_speed:
|
|
description: Defines an action to run when the fan is given a speed command.
|
|
required: false
|
|
type: action
|
|
set_oscillating:
|
|
description: Defines an action to run when the fan is given an osc state command.
|
|
required: false
|
|
type: action
|
|
set_direction:
|
|
description: Defines an action to run when the fan is given a direction command.
|
|
required: false
|
|
type: action
|
|
speeds:
|
|
description: List of speeds the fan is capable of running at.
|
|
required: false
|
|
type: string list
|
|
default: ['low', 'medium', 'high']
|
|
{% endconfiguration %}
|