mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-05-05 02:28:56 +00:00
109 lines
2.9 KiB
Markdown
109 lines
2.9 KiB
Markdown
---
|
|
layout: page
|
|
title: "Workday Binary Sensor"
|
|
description: "Steps to configure the binary workday sensor."
|
|
date: 2017-03-13 21:30
|
|
sidebar: true
|
|
comments: false
|
|
sharing: true
|
|
footer: true
|
|
logo: home-assistant.png
|
|
ha_category: Utility
|
|
ha_iot_class: "Local Polling"
|
|
ha_release: 0.41
|
|
ha_qa_scale: 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](https://pypi.python.org/pypi/holidays)
|
|
to incorporate information about region-specific public holidays.
|
|
|
|
## {% linkable_title Configuration %}
|
|
|
|
Check the
|
|
[country list](https://github.com/dr-prodigy/python-holidays#available-countries)
|
|
for available province.
|
|
|
|
To enable the `workday` sensor in your installation,
|
|
add the following to your `configuration.yaml` file:
|
|
|
|
```yaml
|
|
# Example configuration.yaml entry
|
|
binary_sensor:
|
|
- platform: workday
|
|
country: DE
|
|
workdays: [mon, wed, fri]
|
|
```
|
|
|
|
{% configuration %}
|
|
name:
|
|
description: A name for this sensor.
|
|
required: false
|
|
type: string
|
|
default: Workday Sensor
|
|
country:
|
|
description: >
|
|
Country code according to
|
|
[holidays](https://pypi.org/project/holidays/) notation.
|
|
required: true
|
|
type: string
|
|
province:
|
|
description: >
|
|
Province code according to
|
|
[holidays](https://pypi.org/project/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.
|
|
required: false
|
|
type: integer
|
|
default: 0
|
|
{% 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.
|
|
|
|
<p class='note warning'>
|
|
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.
|
|
</p>
|
|
|
|
## {% linkable_title Automation example %}
|
|
|
|
Example usage for automation:
|
|
|
|
```yaml
|
|
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
|
|
```
|
|
|
|
<p class='note'>
|
|
Please remember that [as explained here][devices] you can only have a single `automation:` entry. Add the automation to your existing automations.
|
|
</p>
|
|
|
|
[devices]: https://www.home-assistant.io/docs/configuration/devices/
|