Workday Binary Sensor


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.

To enable the workday sensor in your installation, add the following to your configuration.yaml file:

# Example configuation.yaml entry
binary_sensor:
  - platform: workday
    country: DE

Configuration variables:

  • country (Required): Country code according to holidays notation.
  • province (Optional): Province code according to holidays notation. Defaults to None.
  • workdays (Optional): List of workdays. Defaults to mon, tue, wed, thu, fri.
  • excludes (Optional): List of workday excludes. Defaults to sat, sun, holiday.
  • days_offset (Optional): Set days offset. Defaults to 0.

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 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.

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