3.4 KiB
layout, title, description, date, sidebar, comments, sharing, footer, logo, ha_category, ha_iot_class, ha_release, ha_qa_scale
layout | title | description | date | sidebar | comments | sharing | footer | logo | ha_category | ha_iot_class | ha_release | ha_qa_scale |
---|---|---|---|---|---|---|---|---|---|---|---|---|
page | Workday Binary Sensor | Steps to configure the binary workday sensor. | 2017-03-13 21:30 | true | false | true | true | home-assistant.png | Utility | Local Polling | 0.41 | internal |
The workday
binary sensor indicates, whether the current day is a workday or not. It allows specifying, which days of the week counts as workdays and also
uses the python module holidays to incorporate information about region-specific public holidays.
{% linkable_title Setup %}
Check the country list for available province.
{% linkable_title Configuration %}
To enable the workday
sensor in your installation, add the following to your configuration.yaml
file:
# Example configuration.yaml entry
binary_sensor:
- platform: workday
country: DE
{% configuration %}
name:
description: A name for this sensor.
required: false
type: string
default: Workday Sensor
country:
description: >
Country code according to holidays notation.
required: true
type: string
province:
description: Province code according to holidays notation.
required: false
type: string
workdays:
description: List of workdays.
required: false
type: list
default: "[mon, tue, wed, thu, fri]"
excludes:
description: List of workday excludes.
required: false
type: list
default: "[sat, sun, holiday]"
days_offset:
description: Set days offset (e.g., -1 for yesterday, 1 for tomorrow).
required: false
type: integer
default: 0
add_holidays:
description: "Add custom holidays (such as company, personal holidays or vacations). Needs to formatted as YYYY-MM-DD
."
required: false
type: list
{% endconfiguration %}
Days are specified as follows: mon
, tue
, wed
, thu
, fri
, sat
, sun
.
The keyword holiday
is used for public holidays identified by the holidays module.
If you use the sensor for Norway (`NO`) you need to wrap `NO` in quotes or write the name in full. Otherwise the value is evaluated as `false`. If you use the sensor for Canada (`CA`) with Ontario (`ON`) as `province:` then you need to wrap `ON` in quotes. Otherwise the value is evaluated as `true` (check the YAML documentation for further details) and the sensor will not work.
{% linkable_title Full example %}
This examples excludes Saturdays, Sundays and holiday. Two custom holidays are added.
# Example configuration.yaml entry
binary_sensor:
- platform: workday
country: DE
workdays: [mon, wed, fri]
excludes: [sat, sun, holiday]
add_holidays:
- '2018-12-26'
- '2018-12-31'
{% linkable_title Automation example %}
Example usage for automation:
automation:
alias: Turn on heater on workdays
trigger:
platform: time
at: '08:00:00'
condition:
condition: state
entity_id: 'binary_sensor.workday_sensor'
state: 'on'
action:
service: switch.turn_on
entity_id: switch.heater
Please remember that [as explained here](/docs/configuration/devices/) you can only have a single `automation:` entry. Add the automation to your existing automations.