4175 lines
201 KiB
JSON
4175 lines
201 KiB
JSON
[
|
|
{
|
|
"id": "airco_kinderen_start_on_timer_start",
|
|
"automation": "- id: airco_kinderen_start_on_timer_start\n alias: Start de airco van de kinderen als de timer start\n description: Turn on the AC when the timer starts\n triggers:\n - trigger: event\n event_type: timer.started\n event_data:\n entity_id: timer.airco_mini_sleeptimer\n variables:\n airco: climate.airco_slaapkamer_t\n temp_sensor: sensor.xiaomi_temperature_humidity_sensor_3_temperature\n - trigger: event\n event_type: timer.started\n event_data:\n entity_id: timer.airco_puber_sleeptimer\n variables:\n airco: climate.airco_slaapkamer_m\n temp_sensor: sensor.xiaomi_temperature_humidity_sensor_4_temperature\n actions:\n - action: climate.set_hvac_mode\n target:\n entity_id: '{{airco}}'\n data:\n hvac_mode: '{{ ''heat'' if (states(temp_sensor) | float(0)) < 21 else ''cool''\n }}'",
|
|
"config": [
|
|
{
|
|
"name": "airco mini sleeptimer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.airco_mini_sleeptimer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco puber sleeptimer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.airco_puber_sleeptimer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco slaapkamer t",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "xiaomi temperature humidity sensor 3 temperature",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.xiaomi_temperature_humidity_sensor_3_temperature",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco slaapkamer m",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_m",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "xiaomi temperature humidity sensor 4 temperature",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.xiaomi_temperature_humidity_sensor_4_temperature",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "airco_sleeptimer_kinderen",
|
|
"automation": "- id: airco_sleeptimer_kinderen\n alias: Sleeptimer voor de aircos van de kinderen\n description: Turn off AC at the end of the timer\n triggers:\n - trigger: event\n event_type: timer.finished\n event_data:\n entity_id: timer.airco_mini_sleeptimer\n variables:\n entity: climate.airco_slaapkamer_t\n - trigger: event\n event_type: timer.finished\n event_data:\n entity_id: timer.airco_puber_sleeptimer\n variables:\n entity: climate.airco_slaapkamer_m\n actions:\n - action: climate.set_hvac_mode\n target:\n entity_id: '{{entity}}'\n data:\n hvac_mode: 'off'",
|
|
"config": [
|
|
{
|
|
"name": "airco mini sleeptimer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.airco_mini_sleeptimer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco puber sleeptimer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.airco_puber_sleeptimer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco slaapkamer t",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco slaapkamer m",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_m",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "airco_automatisch_uit",
|
|
"automation": "- id: airco_automatisch_uit\n alias: Zet airco automatisch uit einde avond\n description: Turn off ACs automatically so we won't forget\n triggers:\n - trigger: time\n at: '23:00:00'\n variables:\n target: airco_children\n - trigger: time\n at: input_datetime.time_turn_off_airco\n variables:\n target: climate.airco_woonkamer\n actions:\n - choose:\n - conditions: '{{ target == ''airco_children'' }}'\n sequence:\n - if:\n - '{{ states(''timer.airco_mini_sleeptimer'') != ''active'' }}'\n then:\n - action: climate.set_hvac_mode\n target:\n entity_id: climate.airco_slaapkamer_t\n data:\n hvac_mode: 'off'\n - if:\n - '{{ states(''timer.airco_puber_sleeptimer'') != ''active'' }}'\n then:\n - action: climate.set_hvac_mode\n target:\n entity_id: climate.airco_slaapkamer_m\n data:\n hvac_mode: 'off'\n - conditions: '{{ target == ''climate.airco_woonkamer'' }}'\n sequence:\n - action: climate.set_hvac_mode\n target:\n entity_id: '{{target}}'\n data:\n hvac_mode: 'off'",
|
|
"config": [
|
|
{
|
|
"name": "airco mini sleeptimer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.airco_mini_sleeptimer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco puber sleeptimer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.airco_puber_sleeptimer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco slaapkamer t",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco slaapkamer m",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_m",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input datetime time turn off airco",
|
|
"room": null,
|
|
"type": "input_datetime",
|
|
"id": {
|
|
"entity_id": "input_datetime.time_turn_off_airco",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco woonkamer",
|
|
"room": "woonkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_woonkamer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Airco children target",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": "airco_children",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "turn_off_when_away",
|
|
"automation": "- id: turn_off_when_away\n alias: Zet de airco en verwarming uit als we weg zijn\n description: 'Climate: Turn off heating when away'\n triggers:\n - trigger: state\n entity_id: zone.home\n to: '0'\n for:\n minutes: 30\n actions:\n - alias: Turn off Tado devices that are on (and leave others in current state)\n action: climate.set_hvac_mode\n data:\n hvac_mode: auto\n target:\n entity_id: '{{ integration_entities(''tado'') | select(''is_state'', ''heat'')\n | list }}'\n - alias: Turn off A/Cs\n action: climate.set_hvac_mode\n data:\n hvac_mode: 'off'\n target:\n entity_id:\n - climate.airco_master_bedroom\n - climate.airco_slaapkamer_m\n - climate.airco_slaapkamer_t\n - climate.airco_woonkamer",
|
|
"config": [
|
|
{
|
|
"name": "airco slaapkamer t",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco slaapkamer m",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_m",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco woonkamer",
|
|
"room": "woonkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_woonkamer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "zone home",
|
|
"room": "home",
|
|
"type": "zone",
|
|
"id": {
|
|
"entity_id": "zone.home",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco master bedroom",
|
|
"room": "master_bedroom",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_master_bedroom",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "airco_kinderen_limit_setpoint",
|
|
"automation": "- id: airco_kinderen_limit_setpoint\n alias: Zet airco kinderen automatisch op een normale temperatuur\n description: Set the kid's AC automatically to a more normal temperature (to prevent\n user error and save energy)\n triggers:\n - trigger: state\n entity_id:\n - climate.airco_slaapkamer_m\n - climate.airco_slaapkamer_t\n attribute: temperature\n variables:\n current_mode: '{{ states(trigger.entity_id) }}'\n set_temp: '{{ state_attr(trigger.entity_id, ''temperature'') | float(0) }}'\n condition: []\n actions:\n - choose:\n - conditions: '{{ current_mode in [''cool'', ''dry''] and set_temp < 20 }}'\n sequence:\n - action: climate.set_temperature\n target:\n entity_id: '{{ trigger.entity_id }}'\n data:\n temperature: 22\n - conditions: '{{ current_mode == ''heat'' and set_temp > 21 }}'\n sequence:\n - action: climate.set_temperature\n target:\n entity_id: '{{ trigger.entity_id }}'\n data:\n temperature: 19.5",
|
|
"config": [
|
|
{
|
|
"name": "airco slaapkamer t",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "airco slaapkamer m",
|
|
"room": "slaapkamer",
|
|
"type": "climate",
|
|
"id": {
|
|
"entity_id": "climate.airco_slaapkamer_m",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "weerhuisje_update_air_quality_sensors",
|
|
"automation": "- id: weerhuisje_update_air_quality_sensors\n alias: Stuur Air Quality sensors van het weerhuisje door\n mode: queued\n triggers:\n - trigger: time_pattern\n minutes: /1\n conditions:\n not:\n - '{{ states(''sensor.weerhuisje_particulate_matter_2_5_m_concentration'') in\n [''unknown'',''unavailable''] }}'\n - '{{ states(''sensor.weerhuisje_particulate_matter_10_0_m_concentration'') in\n [''unknown'',''unavailable''] }}'\n - '{{ states(''sensor.weerhuisje_temperature'') in [''unknown'',''unavailable'']\n }}'\n - '{{ states(''sensor.weerhuisje_humidity'') in [''unknown'',''unavailable'']\n }}'\n - '{{ states(''sensor.weerhuisje_pressure'') in [''unknown'',''unavailable'']\n }}'\n actions:\n - alias: Send TPH to Luftdaten / Sensor.Community API\n action: rest_command.send_luftdaten_tph\n continue_on_error: true\n - alias: Send data to OpenSenseMap\n action: rest_command.post_opensensebox\n continue_on_error: true\n - alias: Send updates to Madavi.de for statistics.\n action: rest_command.send_madavi\n continue_on_error: true\n - alias: Send PM to Luftdaten / Sensor.Community API\n action: rest_command.send_luftdaten_pm\n continue_on_error: true",
|
|
"config": [
|
|
{
|
|
"name": "weerhuisje particulate matter 2 5 m concentration",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.weerhuisje_particulate_matter_2_5_m_concentration",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "weerhuisje particulate matter 10 0 m concentration",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.weerhuisje_particulate_matter_10_0_m_concentration",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "weerhuisje temperature",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.weerhuisje_temperature",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "weerhuisje humidity",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.weerhuisje_humidity",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "weerhuisje pressure",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.weerhuisje_pressure",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "awtrix_turn_on_or_off",
|
|
"automation": "- id: awtrix_turn_on_or_off\n alias: Zet Awtrix aan of uit 🌛\n description: Turn off the Awtrix screen at 20:30 and turn it back on at 08:00\n triggers:\n - alias: Ga sowieso uit om 20u30\n trigger: time\n at: '20:30:00'\n id: turn_off\n - alias: Ga weer aan om 8u\n trigger: time\n at: 08:00:00\n id: turn_on\n condition: []\n actions:\n - action: homeassistant.{{trigger.id}}\n data:\n entity_id:\n - light.awtrix_6caff8_matrix",
|
|
"config": [
|
|
{
|
|
"name": "awtrix 6caff8 matrix",
|
|
"room": null,
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.awtrix_6caff8_matrix",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "awtrix_switch_between_clock_and_apps",
|
|
"automation": "- id: awtrix_switch_between_clock_and_apps\n alias: Schakel Awtrix tussen de klok en de apps\n description: Set Awtrix to clock only by pressing the middle button or when I turn\n off my monitor\n mode: queued\n triggers:\n - trigger: state\n entity_id: binary_sensor.awtrix_6caff8_button_select\n to: 'on'\n id: toggle\n - trigger: numeric_state\n entity_id: sensor.bureau_kantoor_power\n above: 25\n id: turn_on\n - trigger: numeric_state\n entity_id: sensor.bureau_kantoor_power\n below: 25\n for: 00:05:00\n id: turn_off\n condition: []\n actions:\n choose:\n - alias: Do we need to turn on Awtrix?\n conditions:\n - '{{ trigger.id == ''turn_on'' }}'\n sequence:\n - alias: Start transition and set time color to white again\n action: mqtt.publish\n data:\n topic: awtrix_6caff8/settings\n payload: '{ \"WD\": true, \"TMODE\":\"1\", \"TIME_COL\": [255,255,255], \"ABRI\":\n true, \"ATRANS\": true }'\n - alias: Do we need to turn off Awtrix?\n conditions:\n - '{{ trigger.id == ''turn_off'' }}'\n sequence:\n - alias: Swith to time\n action: mqtt.publish\n data:\n topic: awtrix_6caff8/switch\n payload: '{\"name\":\"Time\"}'\n - alias: Set low brightness and red color and fix to time app\n action: mqtt.publish\n data:\n topic: awtrix_6caff8/settings\n payload: '{ \"WD\": false, \"TMODE\":\"0\", \"TIME_COL\": [255,0,0], \"BRI\": 1, \"ABRI\":\n false, \"ATRANS\": false }'\n - alias: Do we need to toggle Awtrix?\n conditions:\n - '{{ trigger.id == ''toggle'' }}'\n sequence:\n - if:\n - alias: 'Transition is on, so we are in day mode: toggle to night mode'\n condition: state\n entity_id: switch.awtrix_6caff8_transition\n state: 'on'\n then:\n - alias: Swith to time\n action: mqtt.publish\n data:\n topic: awtrix_6caff8/switch\n payload: '{\"name\":\"Time\"}'\n - alias: Set low brightness and red color and fix to time app\n action: mqtt.publish\n data:\n topic: awtrix_6caff8/settings\n payload: '{ \"WD\": false, \"TMODE\":\"0\", \"TIME_COL\": [255,0,0], \"BRI\": 1,\n \"ABRI\": false, \"ATRANS\": false }'\n else:\n - alias: Start transition and set time color to white again\n action: mqtt.publish\n data:\n topic: awtrix_6caff8/settings\n payload: '{ \"WD\": true, \"TMODE\":\"1\", \"TIME_COL\": [255,255,255], \"ABRI\":\n true, \"ATRANS\": true }'",
|
|
"config": [
|
|
{
|
|
"name": "awtrix 6caff8 button select",
|
|
"room": null,
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.awtrix_6caff8_button_select",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "bureau kantoor power",
|
|
"room": "kantoor",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.bureau_kantoor_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "awtrix 6caff8 transition",
|
|
"room": null,
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.awtrix_6caff8_transition",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "awtrix_start_custom_apps_on_reboot",
|
|
"automation": "- id: awtrix_start_custom_apps_on_reboot\n alias: Start alle Awtrix apps na een reboot\n description: Start custom apps on Awtrix reboot\n mode: single\n triggers:\n - trigger: state\n entity_id: switch.awtrix_6caff8_transition\n from: 'off'\n to: 'on'\n condition: []\n actions:\n - action: automation.trigger\n target:\n entity_id:\n - automation.awtrix_send_outside_temperature_to_awtrix\n - delay: 5\n - action: automation.trigger\n target:\n entity_id:\n - automation.awtrix_solar_energy_monitor\n - delay: 5\n - action: automation.trigger\n target:\n entity_id:\n - automation.awtrix_send_today_s_energy_production_to_awtrix\n - delay: 5\n - action: automation.trigger\n target:\n entity_id:\n - automation.awtrix_send_ev_battery_level",
|
|
"config": [
|
|
{
|
|
"name": "awtrix 6caff8 transition",
|
|
"room": null,
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.awtrix_6caff8_transition",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "awtrix send outside temperature to awtrix",
|
|
"room": null,
|
|
"type": "automation",
|
|
"id": {
|
|
"entity_id": "automation.awtrix_send_outside_temperature_to_awtrix",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "awtrix solar energy monitor",
|
|
"room": null,
|
|
"type": "automation",
|
|
"id": {
|
|
"entity_id": "automation.awtrix_solar_energy_monitor",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "awtrix send today s energy production to awtrix",
|
|
"room": null,
|
|
"type": "automation",
|
|
"id": {
|
|
"entity_id": "automation.awtrix_send_today_s_energy_production_to_awtrix",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "awtrix send ev battery level",
|
|
"room": null,
|
|
"type": "automation",
|
|
"id": {
|
|
"entity_id": "automation.awtrix_send_ev_battery_level",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "awtrix_temperature",
|
|
"automation": "- id: awtrix_temperature\n alias: Stuur de buitentemperatuur naar Awtrix\n description: Send outside temperature to Awtrix\n mode: queued\n triggers:\n - trigger: state\n entity_id: sensor.knmi_temperatuur\n condition: []\n actions:\n - action: mqtt.publish\n data:\n topic: awtrix_6caff8/custom/outside_temp\n payload: ' { \"text\": \"{{ states(''sensor.knmi_temperatuur'') }}°C\", \"icon\":\n \"56840\", \"color\": \"#f21f1f\", \"duration\": 7 } '",
|
|
"config": [
|
|
{
|
|
"name": "knmi temperatuur",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.knmi_temperatuur",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "awtrix_production",
|
|
"automation": "- id: awtrix_production\n alias: Stuur vandaags productie van de zonnepanelen naar Awtrix\n description: 'Awtrix: Send today''s energy production to Awtrix'\n mode: queued\n triggers:\n - trigger: state\n entity_id: sensor.today_s_pv_generation\n condition: []\n actions:\n - action: mqtt.publish\n data:\n topic: awtrix_6caff8/custom/production_today\n payload: ' { \"text\": \"{{ states(''sensor.todays_total_production_preserved'')\n }} kWh\", \"icon\": \"52456\", \"color\": \"#7bf21f\", \"duration\": 7} '",
|
|
"config": [
|
|
{
|
|
"name": "today s pv generation",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.today_s_pv_generation",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "todays total production preserved",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.todays_total_production_preserved",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "awtrix_current_production",
|
|
"automation": "- id: awtrix_current_production\n alias: Stuur de huidige opbrengst van de zonnepanelen naar Awtrix\n description: This will show the current solar energy received.\n mode: queued\n variables:\n device_topic: awtrix_6caff8/custom/current_production\n power_sensor: sensor.pv_power\n power_level: '{{ states[power_sensor].state | int(0) | abs }}'\n threshold_low: 1500\n threshold_high: 2500\n power_level_icon: '{%- if power_level > threshold_high %}{{54156}}{%- endif %}\n {%- if (power_level <= threshold_high) and (power_level > threshold_low) %}{{50557}}{%-\n endif %} {%- if power_level <= threshold_low %}{{50546}}{%- endif %}'\n power_level_color: '{%- if power_level > threshold_high %}{{\"#04FE04\"}}{%- endif\n %} {%- if (power_level <= threshold_high) and (power_level > threshold_low)\n %}{{\"#FCFEFC\"}}{%- endif %} {%- if power_level <= threshold_low %}{{\"#FF4E1A\"}}{%-\n endif %}'\n power_level_text: '{%- if power_level > 1000 %}{{ ((power_level | float(default=0))\n / 1000) | round(1)}} kW{%- else %}{{power_level | round(0)}} W{%- endif %}'\n skip_if_zero_watts: true\n skip_during_night_hours: true\n payload: '{\"icon\":\"{{ power_level_icon }}\", \"text\": \"{{ power_level_text }}\", \"color\":\n \"{{ power_level_color }}\"}'\n night_start: '{{ as_timestamp(state_attr(''sun.sun'',''next_setting''))| timestamp_custom(\"%H:%M:%S\")}}'\n night_end: '{{ as_timestamp(state_attr(''sun.sun'',''next_rising''))| timestamp_custom(\"%H:%M:%S\")}}'\n triggers:\n - trigger: time_pattern\n minutes: /5\n condition: []\n actions:\n - choose:\n - alias: Skipping if it is night time\n conditions:\n - condition: template\n value_template: '{% set now_time = now().strftime(\"%H:%M\") %} {% set night_start\n = night_start %} {% set night_end = night_end %} {{ (skip_during_night_hours\n and ((now_time < night_end) or (now_time > night_start))) or (skip_if_zero_watts\n and (power_level == 0)) }}\n\n '\n sequence:\n - action: mqtt.publish\n data:\n topic: '{{ device_topic }}'\n payload: '{}'\n - alias: Not skipping when it is day time\n conditions:\n - condition: template\n value_template: '{% set now_time = now().strftime(\"%H:%M\") %} {% set night_start\n = night_start %} {% set night_end = night_end %} {{ not((skip_during_night_hours\n and ((now_time < night_end) or (now_time > night_start))) or (skip_if_zero_watts\n and (power_level == 0))) }}\n\n '\n sequence:\n - action: mqtt.publish\n data:\n topic: '{{ device_topic }}'\n payload: '{{ payload }}\n\n '",
|
|
"config": [
|
|
{
|
|
"name": "pv power",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.pv_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Sun",
|
|
"room": null,
|
|
"type": "sun",
|
|
"id": {
|
|
"entity_id": "sun.sun",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "awtrix_ev_battery",
|
|
"automation": "- id: awtrix_ev_battery\n alias: Stuur het batterijniveau van de auto naar Awtrix\n description: 'Awtrix: Send the battery level of my EV to Awtrix'\n mode: queued\n variables:\n threshold_low: 30\n threshold_high: 60\n power_level: '{{ states(''sensor.tucson_ev_battery_level'') | int(default=0) }}'\n power_level_color: '{%- if power_level > threshold_high %}{{\"#04FE04\"}}{%- endif\n %} {%- if (power_level <= threshold_high) and (power_level > threshold_low)\n %}{{\"#FCFEFC\"}}{%- endif %} {%- if power_level <= threshold_low %}{{\"#FF4E1A\"}}{%-\n endif %}'\n triggers:\n - trigger: state\n entity_id: sensor.tucson_ev_battery_level\n condition: []\n actions:\n - action: mqtt.publish\n data:\n topic: awtrix_6caff8/custom/ev_battery\n payload: ' { \"text\": \"{{ states(''sensor.tucson_ev_battery_level'') }} %\", \"icon\":\n \"2817\", \"color\": \"{{ power_level_color }}\", \"duration\": 7} '",
|
|
"config": [
|
|
{
|
|
"name": "tucson ev battery level",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.tucson_ev_battery_level",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "battery_low_check",
|
|
"automation": "- id: battery_low_check\n alias: Wekelijkse check voor lege batterijen\n description: Check whether a battery is low\n mode: single\n triggers:\n - trigger: time\n at: '12:00:00'\n weekday:\n - sat\n action:\n - service: battery_notes.check_battery_low",
|
|
"config": []
|
|
},
|
|
{
|
|
"id": "battery_low_notification",
|
|
"automation": "- id: battery_low_notification\n alias: Bericht over lege batterijen\n description: Battery Low Notification with auto dismiss\n mode: queued\n variables:\n title: '{{ trigger.event.data.device_name }}'\n message: \"\\U0001FAAB {{ trigger.event.data.device_name }} {%- if trigger.event.data.battery_level\\\n \\ is defined -%}\\n heeft een batterijniveau van {{trigger.event.data.battery_level}}%.\\n\\\n {%- else -%}\\n is leeg.\\n{%- endif %} Je hebt {{trigger.event.data.battery_quantity\\\n \\ }}x {{trigger.event.data.battery_type }} nodig om de batterij te vervangen.\"\n id: '{{ trigger.event.data.device_id }}'\n navigate: /config/devices/device/{{id}}\n triggers:\n - trigger: event\n event_type: battery_notes_battery_threshold\n event_data:\n battery_low: true\n id: low\n alias: Battery went low\n - trigger: event\n event_type: battery_notes_battery_threshold\n event_data:\n battery_low: false\n id: high\n alias: Battery went high\n actions:\n - choose:\n - conditions:\n - condition: trigger\n id: low\n sequence:\n - action: notify.mobile_app_sm_a556b\n data:\n title: '{{title}}'\n message: '{{message}}'\n data:\n notification_icon: mdi:battery-alert-variant\n clickAction: '{{navigate}}'\n tag: '{{id}}'\n - action: persistent_notification.create\n data:\n title: '{{title}}'\n notification_id: '{{id}}'\n message: '{{message}} {{ ''\n\n\n '' -}} [Link naar apparaat pagina]({{navigate}})'\n - conditions:\n - condition: trigger\n id: high\n sequence:\n - action: notify.mobile_app_sm_a556b\n data:\n message: clear_notification\n data:\n tag: '{{id}}'\n - action: persistent_notification.dismiss\n data:\n notification_id: '{{id}}'",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "battery_replaced",
|
|
"automation": "- id: battery_replaced\n alias: Batterijen vervangen\n mode: queued\n triggers:\n - trigger: event\n event_type: battery_notes_battery_increased\n actions:\n - action: battery_notes.set_battery_replaced\n data:\n device_id: '{{ trigger.event.data.device_id }}'\n source_entity_id: '{{ trigger.event.data.source_entity_id }}'\n - action: persistent_notification.create\n data:\n title: '{{ trigger.event.data.device_name }} Battery Increased\n\n '\n message: 'The device has increased its battery level, I''ve marked it as replaced\n\n '",
|
|
"config": []
|
|
},
|
|
{
|
|
"id": "clear_bikeshed_door_alert",
|
|
"automation": "- alias: Verwijder fietsenhok alert\n id: clear_bikeshed_door_alert\n trigger:\n - platform: state\n entity_id: alert.bikeshed_door\n from: 'on'\n to:\n - idle\n - 'off'\n action:\n - service: notify.mobile_devices_adults\n data:\n message: clear_notification\n data:\n tag: bikeshed_door_alert",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "alert bikeshed door",
|
|
"room": "bikeshed",
|
|
"type": "alert",
|
|
"id": {
|
|
"entity_id": "alert.bikeshed_door",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "mute_door_alerts",
|
|
"automation": "- alias: Verwerk actie om alert uit te zetten\n id: mute_door_alerts\n trigger:\n - platform: event\n event_type: mobile_app_notification_action\n event_data:\n action: mute_alert_bikeshed\n action:\n - service: alert.turn_off\n target:\n entity_id: alert.bikeshed_door",
|
|
"config": [
|
|
{
|
|
"name": "alert bikeshed door",
|
|
"room": "bikeshed",
|
|
"type": "alert",
|
|
"id": {
|
|
"entity_id": "alert.bikeshed_door",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "schuur_fietslader",
|
|
"automation": "- id: schuur_fietslader\n alias: Fietsaccu lader in de schuur uitschakelen na laden\n description: Fietsaccu lader in de schuur uitschakelen na laden\n mode: single\n triggers:\n - trigger: numeric_state\n entity_id: sensor.fietslader_links_power\n for:\n minutes: 5\n below: 5\n variables:\n switch: switch.fietslader_links\n - trigger: numeric_state\n entity_id: sensor.fietslader_rechts_power\n for:\n minutes: 5\n below: 5\n variables:\n switch: switch.fietslader_rechts\n conditions:\n - alias: Please, not on restarts\n condition: template\n value_template: '{{ trigger.from_state.state | is_number }}'\n actions:\n - alias: Lader uitschakelen\n action: switch.turn_off\n target:\n entity_id: '{{ switch }}'\n - alias: Sending push notification\n action: notify.mobile_app_sm_a556b\n data:\n title: Fietslader uitgeschakeld\n message: De {{ state_attr(switch, 'friendly_name') }} is automatisch uitgeschakeld\n ({{ now().strftime('%H:%M') }})\n data:\n notification_icon: mdi:bicycle-electric\n ttl: 0\n priority: high\n clickAction: /lovelace/other",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "fietslader links power",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.fietslader_links_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "fietslader rechts power",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.fietslader_rechts_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "fietslader links",
|
|
"room": null,
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.fietslader_links",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "fietslader rechts",
|
|
"room": null,
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.fietslader_rechts",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "deurbel_met_ai_beschrijving",
|
|
"automation": "- id: deurbel_met_ai_beschrijving\n alias: Deurbel met AI beschrijving\n description: Stuur een notificatie met beschrijving als iemand aanbelt\n variables:\n group: deurbel_camera\n tag: '{{ group + int(as_timestamp(now()))|string }}'\n title: De deurbel gaat\n triggers:\n - trigger: state\n entity_id: binary_sensor.voordeur_bezoeker\n from: 'off'\n to: 'on'\n conditions:\n - condition: state\n entity_id: input_boolean.enable_deurbel\n state: 'on'\n actions:\n - alias: Analyze event\n action: llmvision.image_analyzer\n response_variable: response\n data:\n image_entity:\n - camera.voordeur_vloeiend\n provider: 01JDVWVP7N8E70XMH6HMYWBCAN\n model: gemini-2.0-flash\n message: 'Dit is een foto van mijn voordeur camera. Help me door te beschrijven\n of dit een bezorger of bezoeker is. Beschrijf de scène niet! Als de persoon\n een pakje of doos vast heeft is het vrijwel zeker een bezorger. Als je denkt\n dat het een bezorger is probeer dan in te schatten van welk bedrijf de bezorger\n is. Als de persoon kleding met oranje accenten aan heeft is het een PostNL\n bezorger. Heeft de persoon gele bovenkleding dan is het een DHL bezorger.\n Heeft de persoon rode kleding aan en in plaats van een pakje of doos plastic\n tassen in zijn/haar hand, dan is het een bezorger van Picnic. Misschien zie\n je een bestelauto in de foto: PostNL bezorgers rijden vaak in een witte bestelbus,\n terwijl DHL bezorgers vaak een gele bestelwagen rijden. Wij rijden zelf een\n kleine gele personenauto, verwar die niet met een bestelbus. Weet je niet\n zeker van welk bedrijf het is? Zeg dat dan. Antwoord met een korte zin in\n het Nederlands.'\n remember: false\n include_filename: false\n max_tokens: 25\n temperature: 0.1\n expose_images: true\n - repeat:\n for_each: \"{{\\n (expand(state_attr('zone.home', 'persons'))\\n | map(attribute='attributes.source')\\n\\\n \\ | map('replace', 'device_tracker.', 'notify.mobile_app_')\\n | list + ['notify.mobile_app_sm_a556b'])\\n\\\n \\ | unique | list\\n}}\\n\"\n sequence:\n - alias: Update notification to notify devices\n action: '{{ repeat.item }}'\n data:\n title: '{{ title }}'\n message: '{{ response.response_text }}'\n data:\n image: '{{response.key_frame.replace(''/config/www/'',''/local/'') }}'\n clickAction: /lovelace/camera\n tag: '{{ tag }}'\n group: '{{ group }}'\n notification_icon: mdi:doorbell-video\n priority: high\n timeout: 60\n ttl: 0\n visibility: public",
|
|
"config": [
|
|
{
|
|
"name": "zone home",
|
|
"room": "home",
|
|
"type": "zone",
|
|
"id": {
|
|
"entity_id": "zone.home",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "voordeur bezoeker",
|
|
"room": "voordeur",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.voordeur_bezoeker",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean enable deurbel",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.enable_deurbel",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "voordeur vloeiend",
|
|
"room": "voordeur",
|
|
"type": "camera",
|
|
"id": {
|
|
"entity_id": "camera.voordeur_vloeiend",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "deurbel_stream_to_kiosk",
|
|
"automation": "- id: deurbel_stream_to_kiosk\n alias: Stream de deurbel naar de kiosks\n triggers:\n - trigger: state\n entity_id: binary_sensor.voordeur_bezoeker\n from: 'off'\n to: 'on'\n conditions:\n - condition: state\n entity_id: input_boolean.enable_deurbel\n state: 'on'\n actions:\n - action: browser_mod.popup\n data:\n dismissable: true\n autoclose: false\n browser_id:\n - kiosk1\n - kiosk2\n timeout: 60000\n size: fullscreen\n content:\n type: custom:advanced-camera-card\n cameras:\n - camera_entity: camera.voordeur_vloeiend\n - action: number.set_value\n data:\n value: '255'\n target:\n entity_id:\n - number.kiosk1_schermhelderheid\n - number.kiosk2_schermhelderheid",
|
|
"config": [
|
|
{
|
|
"name": "voordeur bezoeker",
|
|
"room": "voordeur",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.voordeur_bezoeker",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean enable deurbel",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.enable_deurbel",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "voordeur vloeiend",
|
|
"room": "voordeur",
|
|
"type": "camera",
|
|
"id": {
|
|
"entity_id": "camera.voordeur_vloeiend",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk2"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid 2",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid 2",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "deurbel_turn_off_chime",
|
|
"automation": "- id: deurbel_turn_off_chime\n alias: Zet de deurbel boven uit na bepaalde tijd\n description: Zet de deurbel boven uit na bepaalde tijd\n mode: single\n triggers:\n - trigger: time\n at: '21:00:00'\n id: 'off'\n - trigger: time\n at: 09:00:00\n id: hophop\n conditions: []\n actions:\n - action: select.select_option\n data:\n option: '{{ trigger.id }}'\n target:\n entity_id: select.reolink_chime_boven_beltoon_bij_bezoeker",
|
|
"config": [
|
|
{
|
|
"name": "select reolink chime boven beltoon bij bezoeker",
|
|
"room": "boven",
|
|
"type": "select",
|
|
"id": {
|
|
"entity_id": "select.reolink_chime_boven_beltoon_bij_bezoeker",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ev_handle_automatic_cheapest_charge",
|
|
"automation": "- id: ev_handle_automatic_cheapest_charge\n alias: Laad de auto tijdens de goedkoopste uren\n description: Automatically charge my car in the cheapest hours\n mode: single\n triggers:\n - trigger: state\n entity_id: sensor.ev_smart_charging_charging\n to: 'on'\n id: ev_cheapest_charge_start\n - trigger: state\n entity_id: sensor.ev_smart_charging_charging\n to: 'off'\n id: ev_cheapest_charge_stop\n actions:\n - alias: Choose to start or stop charging\n choose:\n - conditions:\n - condition: trigger\n id: ev_cheapest_charge_start\n - not:\n - condition: state\n entity_id: select.smartevse_6360_mode\n state: Smart\n sequence:\n - alias: Select SMART charging option\n action: select.select_option\n target:\n entity_id: select.smartevse_6360_mode\n data:\n option: Smart\n - alias: Sending push notification\n action: notify.mobile_app_sm_a556b\n data:\n title: Automatic cheapest EV charging started\n message: Automatisch laden van de auto is gestart. ({{ now().strftime('%H:%M')\n }}).\n data:\n notification_icon: mdi:ev-station\n ttl: 0\n priority: high\n clickAction: /lovelace/car\n - conditions:\n - condition: trigger\n id: ev_cheapest_charge_stop\n - not:\n - condition: state\n entity_id: select.smartevse_6360_mode\n state: 'Off'\n sequence:\n - alias: Select charging option OFF\n action: select.select_option\n target:\n entity_id: select.smartevse_6360_mode\n data:\n option: 'Off'\n - alias: Sending push notification\n action: notify.mobile_app_sm_a556b\n data:\n title: Automatic cheapest EV charging stopped\n message: Automatisch laden van de auto is gestopt ({{ now().strftime('%H:%M')\n }})\n data:\n notification_icon: mdi:ev-station\n ttl: 0\n priority: high\n clickAction: /lovelace/car",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "ev smart charging charging",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.ev_smart_charging_charging",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "select smartevse 6360 mode",
|
|
"room": null,
|
|
"type": "select",
|
|
"id": {
|
|
"entity_id": "select.smartevse_6360_mode",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ev_set_smart_charging_connected_sensor",
|
|
"automation": "- alias: Stel in of de auto verbonden is\n id: ev_set_smart_charging_connected_sensor\n description: Set Smart Charging EV connected sensor\n mode: single\n triggers:\n - trigger: state\n entity_id: sensor.smartevse_6360_evplugstate\n actions:\n - if:\n - condition: state\n entity_id: sensor.smartevse_6360_evplugstate\n state: Connected\n then:\n - action: switch.turn_on\n target:\n entity_id: switch.ev_smart_charging_ev_connected\n else:\n - if:\n - condition: state\n entity_id: sensor.smartevse_6360_evplugstate\n state: Disconnected\n then:\n - action: switch.turn_off\n target:\n entity_id: switch.ev_smart_charging_ev_connected",
|
|
"config": [
|
|
{
|
|
"name": "smartevse 6360 evplugstate",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.smartevse_6360_evplugstate",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch ev smart charging ev connected",
|
|
"room": null,
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.ev_smart_charging_ev_connected",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ev_create_monthly_total_notification",
|
|
"automation": "- id: ev_create_monthly_total_notification\n alias: Stuur een maandelijks overzicht van de laadkosten van de auto\n description: Create a monthly overview of the amount of energy charged for billing\n purposes\n mode: single\n variables:\n title: EV charging monthly total\n message: 'This month you have charged your EV with a total of {{ states(''sensor.smartevse_monthly_total'')\n | round(1) }} kWh. The total meter reading at {{now().strftime(\"%d-%m-%Y %H:%M\")}}\n was {{ states(''sensor.smartevse_6360_evtotalenergycharged'') | round(1) }}\n kWh.\n\n '\n triggers:\n - trigger: time\n at: '23:59:45'\n conditions:\n - alias: Only on last day of the month\n condition: template\n value_template: '{{ (now() + timedelta(days=1)).strftime(''%-d'') == ''1'' }}'\n actions:\n - alias: Create a persistant notification with the monthly charged totals\n action: persistent_notification.create\n data:\n notification_id: ev_monthly_total\n title: '{{ title }}'\n message: '{{ message }}'\n - alias: Send an email with the monthly charged totals\n action: notify.email\n data:\n title: '{{ title }}'\n message: '{{ message }}'",
|
|
"config": [
|
|
{
|
|
"name": "smartevse monthly total",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.smartevse_monthly_total",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "smartevse 6360 evtotalenergycharged",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.smartevse_6360_evtotalenergycharged",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ev_force_update_while_charging",
|
|
"automation": "- id: ev_force_update_while_charging\n alias: Forceer nieuwe Hyundai informatie tijdens het laden\n description: Force update the values of the Hyundai component while charging\n mode: single\n triggers:\n - trigger: time_pattern\n minutes: /15\n conditions:\n - alias: Only when we are actually charging\n condition: state\n entity_id: sensor.smartevse_6360_state\n state: Charging\n actions:\n - action: kia_uvo.force_update\n data:\n device_id: 5a94e1b7fbce614053e4f5b8dfd6209b",
|
|
"config": [
|
|
{
|
|
"name": "smartevse 6360 state",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.smartevse_6360_state",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device ID (kia_uvo)",
|
|
"room": null,
|
|
"type": "device",
|
|
"id": {
|
|
"entity_id": "5a94e1b7fbce614053e4f5b8dfd6209b",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "garden_turn_on",
|
|
"automation": "- id: garden_turn_on\n alias: Zet de tuinverlichting aan of uit\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: sensor.garden_lights\n - trigger: homeassistant\n event: start\n - trigger: event\n event_type: automation_reloaded\n conditions:\n - alias: Do we have a valid state\n condition: template\n value_template: '{{ states(''sensor.garden_lights'') not in [''unknown'',''unavailable'',''none'']\n }}'\n - alias: Only continue if not overridden\n condition: state\n entity_id: input_boolean.garden_lights_override\n state: 'off'\n actions:\n - action: homeassistant.turn_{{ states('sensor.garden_lights') }}\n target:\n entity_id:\n - light.verlichting_tuin",
|
|
"config": [
|
|
{
|
|
"name": "garden lights",
|
|
"room": "garden",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.garden_lights",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "verlichting tuin",
|
|
"room": "tuin",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.verlichting_tuin",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean garden lights override",
|
|
"room": "garden",
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.garden_lights_override",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "garden_turn_on_tree_lights",
|
|
"automation": "- id: garden_turn_on_tree_lights\n alias: Zet de boomverlichting aan of uit\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: sensor.tree_lights\n - trigger: homeassistant\n event: start\n - trigger: event\n event_type: automation_reloaded\n conditions:\n - alias: Do we have a valid state\n condition: template\n value_template: '{{ states(''sensor.tree_lights'') not in [''unknown'',''unavailable'',''none'']\n }}'\n - alias: Only continue if not overridden\n condition: state\n entity_id: input_boolean.garden_lights_override\n state: 'off'\n actions:\n - action: homeassistant.turn_{{ states('sensor.tree_lights') }}\n target:\n entity_id:\n - light.tuin_spot_boom",
|
|
"config": [
|
|
{
|
|
"name": "tree lights",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.tree_lights",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean garden lights override",
|
|
"room": "garden",
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.garden_lights_override",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "tuin spot boom",
|
|
"room": "tuin",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.tuin_spot_boom",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "garden_turn_on_coming_home",
|
|
"automation": "- id: garden_turn_on_coming_home\n alias: Zet de tuinverlichting aan als ik thuis kom\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.poort_contact\n from: 'off'\n to: 'on'\n conditions:\n - alias: Are the lights off?\n condition: state\n entity_id: light.verlichting_tuin\n state: 'off'\n - alias: Is the sun down?\n condition: state\n entity_id: sun.sun\n state: below_horizon\n actions:\n - action: input_boolean.turn_on\n target:\n entity_id: input_boolean.garden_lights_override\n - action: homeassistant.turn_on\n target:\n entity_id: light.verlichting_tuin\n - delay: 00:03:00\n - action: input_boolean.turn_off\n target:\n entity_id: input_boolean.garden_lights_override\n - action: automation.trigger\n target:\n entity_id: automation.lights_garden_turn_on",
|
|
"config": [
|
|
{
|
|
"name": "verlichting tuin",
|
|
"room": "tuin",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.verlichting_tuin",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean garden lights override",
|
|
"room": "garden",
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.garden_lights_override",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "poort contact",
|
|
"room": "poort",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.poort_contact",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "lights garden turn on",
|
|
"room": "garden",
|
|
"type": "automation",
|
|
"id": {
|
|
"entity_id": "automation.lights_garden_turn_on",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Sun",
|
|
"room": null,
|
|
"type": "sun",
|
|
"id": {
|
|
"entity_id": "sun.sun",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "backgate_alert",
|
|
"automation": "- id: backgate_alert\n alias: Waarschuw als iemand door de poort komt of het fietsenhok opent\n description: Alert when someone enters the backgate of our garden or opens the bike\n shed\n mode: single\n max_exceeded: silent\n trace:\n stored_traces: 20\n triggers:\n - trigger: state\n entity_id:\n - binary_sensor.poort_contact\n - binary_sensor.fietsenhok_contact\n from: 'off'\n to: 'on'\n actions:\n - alias: Turn on speaker\n action: switch.turn_on\n target:\n entity_id: switch.alarmspeaker_alarm\n - alias: Do nothing for 1 minute to prevent bouncing triggers\n delay: 00:01:00",
|
|
"config": [
|
|
{
|
|
"name": "poort contact",
|
|
"room": "poort",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.poort_contact",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "fietsenhok contact",
|
|
"room": "fietsenhok",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.fietsenhok_contact",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "alarmspeaker alarm",
|
|
"room": null,
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.alarmspeaker_alarm",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "achtertuin_stream_to_kiosk",
|
|
"automation": "- id: achtertuin_stream_to_kiosk\n alias: Stream de achtertuin naar de kiosks\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.achtertuin_persoon\n from: 'off'\n to: 'on'\n actions:\n - action: browser_mod.popup\n data:\n dismissable: true\n autoclose: true\n browser_id:\n - kiosk1\n - kiosk2\n timeout: 90000\n size: fullscreen\n content:\n type: custom:advanced-camera-card\n cameras:\n - camera_entity: camera.achtertuin_vloeiend\n - action: number.set_value\n data:\n value: '255'\n target:\n entity_id:\n - number.kiosk1_schermhelderheid\n - number.kiosk2_schermhelderheid\n - alias: Do nothing for 92 seconds to prevent bouncing triggers\n delay: 00:01:32",
|
|
"config": [
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk2"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "achtertuin persoon",
|
|
"room": "achtertuin",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.achtertuin_persoon",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "achtertuin vloeiend",
|
|
"room": "achtertuin",
|
|
"type": "camera",
|
|
"id": {
|
|
"entity_id": "camera.achtertuin_vloeiend",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid 2",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid 2",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "notification_benzine_price_changed",
|
|
"automation": "- id: notification_benzine_price_changed\n alias: Verstuur melding dat de benzineprijzen gewijzigd zijn\n triggers:\n - trigger: state\n entity_id:\n - sensor.benzine\n - input_number.benzineprijs_esso\n not_from:\n - unknown\n - unavailable\n - none\n not_to:\n - unknown\n - unavailable\n - none\n variables:\n station: '{{ ''Tinq'' if trigger.entity_id == ''sensor.benzine'' else ''Esso''\n }}'\n conditions:\n - alias: Check if price really changed\n condition: template\n value_template: '{{ trigger.to_state.state = trigger.from_state.state }}'\n - condition: state\n entity_id: input_boolean.vacation_mode_away\n state: 'off'\n actions:\n - action: notify.mobile_app_sm_a556b\n data:\n title: '{{ iif(trigger.to_state.state < trigger.from_state.state, \"Benzine wordt\n goedkoper\", \"Benzine wordt duurder\") }}'\n message: '⛽ De {{ station }} benzineprijs is {{ iif(trigger.to_state.state <\n trigger.from_state.state, \"gezakt.\", \"gestegen.\") }} Nieuwe prijs: {{ trigger.to_state.state\n }}. Oude prijs: {{ trigger.from_state.state }}.'\n data:\n tag: benzine\n channel: benzine\n notification_icon: mdi:gas-station",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "benzine",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.benzine",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input number benzineprijs esso",
|
|
"room": null,
|
|
"type": "input_number",
|
|
"id": {
|
|
"entity_id": "input_number.benzineprijs_esso",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean vacation mode away",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacation_mode_away",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "update_benzineprijs",
|
|
"automation": "- id: update_benzineprijs\n alias: Werk de Esso benzine prijs bij\n triggers:\n trigger: time\n at:\n - 06:45:00\n - '18:45:00'\n conditions: []\n actions:\n - delay: '{{ range(30*60) | random }}'\n alias: Random delay between now and 30mins\n - action: downloader.download_file\n data:\n overwrite: true\n url: secret scrape_url_esso\n filename: esso.png\n - action: llmvision.data_analyzer\n data:\n provider: 01JDVWVP7N8E70XMH6HMYWBCAN\n message: Wat kost Euro95 bij dit tankstation? Geef me alleen de prijs, zonder\n het euroteken en verdere tekst - echt alleen de prijs. Gebruik een . als decimaalteken.\n image_file: /config/downloads/esso.png\n sensor_entity: input_number.benzineprijs_esso\n include_filename: true\n max_tokens: 1000\n response_variable: response",
|
|
"config": [
|
|
{
|
|
"name": "input number benzineprijs esso",
|
|
"room": null,
|
|
"type": "input_number",
|
|
"id": {
|
|
"entity_id": "input_number.benzineprijs_esso",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "set_google_home_volume",
|
|
"automation": "- id: set_google_home_volume\n alias: Stel de Google Home volumes in\n description: 'Volume: Set Google Home Volume'\n triggers:\n - trigger: time\n id: time\n at:\n - 07:00:00\n - 09:00:00\n - '19:30:00'\n - '20:30:00'\n - trigger: homeassistant\n event: start\n id: ha_start\n actions:\n - alias: Check if this is triggered by HA restart\n if:\n condition: trigger\n id: ha_start\n then:\n - delay:\n minutes: 1\n - alias: Checking what time it is...\n choose:\n - alias: It's between 7hrs and 09:00\n conditions:\n - condition: time\n after: 06:59:59\n before: 09:00:00\n sequence:\n - action: media_player.volume_set\n data:\n entity_id:\n - media_player.kiosk1_fkb\n - media_player.nest_hub_woonkamer\n volume_level: 0.7\n - alias: It's between 09:00 and 19hrs\n conditions:\n - condition: time\n after: 08:59:59\n before: '19:00:00'\n sequence:\n - action: media_player.volume_set\n data:\n entity_id:\n - media_player.slaapkamer_t\n - media_player.zolder\n volume_level: 0.6\n - action: media_player.volume_set\n data:\n entity_id: media_player.kantoor\n volume_level: 0.2\n - alias: It's between 19hrs and 20:30\n conditions:\n - condition: time\n after: '18:59:59'\n before: '20:30:00'\n sequence:\n - action: media_player.volume_set\n data:\n entity_id:\n - media_player.kiosk1_fkb\n - media_player.nest_hub_woonkamer\n volume_level: 0.6\n - action: media_player.volume_set\n data:\n entity_id:\n - media_player.slaapkamer_t\n - media_player.zolder\n volume_level: 0.2\n - alias: It's between 20:30 and 7hrs\n conditions:\n - condition: time\n after: '20:29:59'\n before: 07:00:00\n sequence:\n - action: media_player.volume_set\n data:\n entity_id:\n - media_player.kiosk1_fkb\n - media_player.nest_hub_woonkamer\n volume_level: 0.4\n - action: media_player.volume_set\n data:\n entity_id: media_player.kantoor\n volume_level: 0.1",
|
|
"config": [
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "media player kiosk1 fkb",
|
|
"room": "kiosk1",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.kiosk1_fkb",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "media player nest hub woonkamer",
|
|
"room": "woonkamer",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.nest_hub_woonkamer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "media player slaapkamer t",
|
|
"room": "slaapkamer",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.slaapkamer_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "media player zolder",
|
|
"room": "zolder",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.zolder",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "media player kantoor",
|
|
"room": "kantoor",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.kantoor",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "notification_kid_left_location",
|
|
"automation": "- id: notification_kid_left_location\n alias: Verstuur een melding dat een kind van een locatie vertrekt\n mode: parallel\n triggers:\n - trigger: zone\n entity_id: device_tracker.sm_a236b\n event: leave\n zone: zone.school\n variables:\n name: '{{states(''input_text.naam_mini'')}}'\n location: school\n - trigger: zone\n entity_id: device_tracker.sm_a236b\n event: leave\n zone: zone.mc\n variables:\n name: '{{states(''input_text.naam_mini'')}}'\n location: MC\n - trigger: zone\n entity_id: device_tracker.sm_a236b\n event: leave\n zone: zone.scouting\n variables:\n name: '{{states(''input_text.naam_mini'')}}'\n location: scouting\n - trigger: zone\n entity_id: device_tracker.schaduwspeler\n event: leave\n zone: zone.school\n variables:\n name: '{{states(''input_text.naam_puber'')}}'\n location: school\n - trigger: zone\n entity_id: device_tracker.schaduwspeler\n event: leave\n zone: zone.scouting\n variables:\n name: '{{states(''input_text.naam_puber'')}}'\n location: scouting\n actions:\n - choose:\n - conditions:\n - or:\n - and:\n - '{{ location == \"school\" }}'\n - not:\n - condition: time\n after: '12:00:00'\n before: '17:30:00'\n weekday:\n - mon\n - tue\n - wed\n - thu\n - fri\n - and:\n - '{{ location == \"scouting\" }}'\n - not:\n - or:\n - condition: time\n after: '12:00:00'\n before: '14:00:00'\n weekday:\n - sat\n - condition: time\n after: '21:00:00'\n before: '22:00:00'\n weekday:\n - mon\n sequence:\n - stop: Likely false positive, stopping sequence\n default:\n - action: notify.mobile_devices_adults\n data:\n title: ♥ {{ name }} is op weg naar huis!\n message: '{{ name }} is rond {{now().strftime(\"%H:%M\")}} van {{ location }}\n vertrokken.\n\n '\n data:\n clickAction: /lovelace-map/map\n ttl: 0\n priority: high\n notification_icon: mdi:map-marker-radius",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "device tracker sm a236b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a236b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "zone school",
|
|
"room": "school",
|
|
"type": "zone",
|
|
"id": {
|
|
"entity_id": "zone.school",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input text naam mini",
|
|
"room": null,
|
|
"type": "input_text",
|
|
"id": {
|
|
"entity_id": "input_text.naam_mini",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "zone mc",
|
|
"room": "mc",
|
|
"type": "zone",
|
|
"id": {
|
|
"entity_id": "zone.mc",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "zone scouting",
|
|
"room": "scouting",
|
|
"type": "zone",
|
|
"id": {
|
|
"entity_id": "zone.scouting",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "device tracker schaduwspeler",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.schaduwspeler",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input text naam puber",
|
|
"room": null,
|
|
"type": "input_text",
|
|
"id": {
|
|
"entity_id": "input_text.naam_puber",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "notification_kids_battery_low_parents",
|
|
"automation": "- id: notification_kids_battery_low_parents\n alias: Verstuur een melding dat batterij van kind bijna leeg is\n mode: parallel\n triggers:\n - trigger: numeric_state\n entity_id: sensor.sm_a236b_battery_level\n below: 15\n variables:\n name: '{{states(''input_text.naam_mini'')}}'\n - trigger: numeric_state\n entity_id: sensor.schaduwspeler_batterijniveau\n below: 15\n variables:\n name: '{{states(''input_text.naam_puber'')}}'\n variables:\n target: '{% if trigger.entity_id == \"sensor.schaduwspeler_batterijniveau\" %}notify.mobile_app_schaduwspeler\n {% elif trigger.entity_id == \"sensor.sm_a236b_battery_level\" %}notify.mobile_app_sm_a236b\n {% else %}notify.bogus {% endif %}\n\n '\n conditions:\n or:\n - and:\n - '{{ trigger.entity_id == ''sensor.schaduwspeler_batterijniveau'' }}'\n - '{{ not is_state(''device_tracker.schaduwspeler'', ''home'') }}'\n - and:\n - '{{ trigger.entity_id == ''sensor.sm_a236b_battery_level'' }}'\n - '{{ not is_state(''device_tracker.sm_a236b'', ''home'') }}'\n actions:\n - action: notify.mobile_devices_adults\n data:\n title: 🔋 Batterijwaarschuwing\n message: 'De telefoon van {{ name }} is bijna leeg. Updates van zijn locatie\n zullen snel stoppen.\n\n '\n data:\n ttl: 0\n priority: high\n notification_icon: mdi:battery-alert-variant\n - action: '{{ target }}'\n data:\n message: command_high_accuracy_mode\n data:\n command: turn_off\n priority: high\n ttl: 0\n - action: '{{ target }}'\n data:\n title: 🔋 Batterijwaarschuwing\n message: 'Je moet je telefoon even opladen....\n\n '\n data:\n ttl: 0\n priority: high\n notification_icon: mdi:battery-alert-variant",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "device tracker sm a236b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a236b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input text naam mini",
|
|
"room": null,
|
|
"type": "input_text",
|
|
"id": {
|
|
"entity_id": "input_text.naam_mini",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "device tracker schaduwspeler",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.schaduwspeler",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input text naam puber",
|
|
"room": null,
|
|
"type": "input_text",
|
|
"id": {
|
|
"entity_id": "input_text.naam_puber",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "sensor sm a236b battery level",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.sm_a236b_battery_level",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "schaduwspeler batterijniveau",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.schaduwspeler_batterijniveau",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile app schaduwspeler",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_schaduwspeler",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile app sm a236b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a236b",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "kids_turn_gps_on_or_off",
|
|
"automation": "- alias: Schakel high accuracy mode in of uit\n id: kids_turn_gps_on_or_off\n mode: queued\n triggers:\n - trigger: state\n entity_id:\n - device_tracker.schaduwspeler\n - device_tracker.sm_a236b\n to:\n - not_home\n id: leave\n - trigger: state\n entity_id:\n - device_tracker.schaduwspeler\n - device_tracker.sm_a236b\n not_to:\n - not_home\n - unavailable\n id: enter\n variables:\n target: '{% if trigger.entity_id == \"device_tracker.schaduwspeler\" %}notify.mobile_app_schaduwspeler\n {% elif trigger.entity_id == \"device_tracker.sm_a236b\" %}notify.mobile_app_sm_a236b\n {% else %}notify.bogus {% endif %}\n\n '\n actions:\n - action: '{{ target }}'\n data:\n message: command_high_accuracy_mode\n data:\n command: '{{ ''turn_on'' if trigger.id == ''leave'' else ''turn_off'' }}'\n priority: high\n ttl: 0",
|
|
"config": [
|
|
{
|
|
"name": "device tracker sm a236b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a236b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "device tracker schaduwspeler",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.schaduwspeler",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile app schaduwspeler",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_schaduwspeler",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile app sm a236b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a236b",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "kiosk_screensaver",
|
|
"automation": "- id: kiosk_screensaver\n alias: Schakel de screensaver van de kiosks in of uit\n mode: parallel\n triggers:\n - trigger: state\n entity_id: switch.kiosk1_screensaver\n variables:\n device: kiosk1\n brightness: number.kiosk1_schermhelderheid\n path: /tsv-dashboards/tsv1\n - trigger: state\n entity_id: switch.kiosk2_screensaver\n variables:\n device: kiosk2\n brightness: number.kiosk2_schermhelderheid\n path: /tsv-dashboards/tsv2\n actions:\n - choose:\n - conditions: '{{ trigger.to_state.state == ''on'' }}'\n sequence:\n - alias: Schakel de screensaver in\n action: browser_mod.navigate\n data:\n path: /tsv-dashboards/screensaver\n browser_id:\n - '{{ device }}'\n - action: number.set_value\n data:\n value: 10\n target:\n entity_id: '{{ brightness }}'\n - conditions: '{{ trigger.to_state.state == ''off'' }}'\n sequence:\n - alias: Schakel de screensaver uit\n action: browser_mod.navigate\n data:\n path: '{{ path }}'\n browser_id:\n - '{{ device }}'\n - action: number.set_value\n data:\n value: '{{255 if is_state(''sun.sun'', ''above_horizon'') else 125}}'\n target:\n entity_id: '{{ brightness }}'",
|
|
"config": [
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk2"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 screensaver",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_screensaver",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 screensaver",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_screensaver",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid 2",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid 2",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Sun",
|
|
"room": null,
|
|
"type": "sun",
|
|
"id": {
|
|
"entity_id": "sun.sun",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "kiosk1_screen",
|
|
"automation": "- id: kiosk1_screen\n alias: Schakel het scherm van kiosk 1 in of uit\n trigger:\n - alias: Schakel uit als we de lampen uitzetten\n trigger: state\n entity_id: light.verlichting_woonkamer\n to: 'off'\n id: turn_off\n - alias: Ga sowieso uit om 23:00\n trigger: time\n at: '23:00:00'\n id: turn_off\n - alias: Ga weer aan om 06:30\n trigger: time\n at: 06:30:00\n id: turn_on\n actions:\n - alias: Checking what to do\n choose:\n - alias: Do we need to turn off the screen for the night?\n conditions:\n - '{{ trigger.id == ''turn_off'' }}'\n - condition: time\n after: '21:00:00'\n sequence:\n - delay: 00:00:10\n - action: homeassistant.turn_off\n data:\n entity_id:\n - switch.kiosk1_bewegingsdetectie\n - switch.kiosk1_scherm\n - alias: Do we need to turn on the screen?\n conditions:\n - '{{ trigger.id == ''turn_on'' }}'\n sequence:\n - action: homeassistant.turn_on\n data:\n entity_id:\n - switch.kiosk1_bewegingsdetectie\n - switch.kiosk1_scherm\n - action: homeassistant.turn_off\n data:\n entity_id:\n - switch.kiosk1_screensaver",
|
|
"config": [
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 screensaver",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_screensaver",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "light verlichting woonkamer",
|
|
"room": "woonkamer",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.verlichting_woonkamer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 bewegingsdetectie",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_bewegingsdetectie",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 scherm",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_scherm",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "kiosk2_screen",
|
|
"automation": "- id: kiosk2_screen\n alias: Schakel het scherm van kiosk 2 in of uit\n trigger:\n - trigger: numeric_state\n entity_id: sensor.bureau_kantoor_power\n above: 25\n id: turn_on\n - trigger: numeric_state\n entity_id: sensor.bureau_kantoor_power\n below: 25\n for: 00:05:00\n id: turn_off\n actions:\n - alias: Checking what to do\n choose:\n - alias: Do we need to turn on the screen?\n conditions:\n - '{{ trigger.id == ''turn_on'' }}'\n sequence:\n - action: homeassistant.turn_on\n data:\n entity_id:\n - switch.kiosk2_bewegingsdetectie\n - switch.kiosk2_scherm\n - alias: Do we need to turn off the screen?\n conditions:\n - '{{ trigger.id == ''turn_off'' }}'\n sequence:\n - action: homeassistant.turn_off\n data:\n entity_id:\n - switch.kiosk2_bewegingsdetectie\n - switch.kiosk2_scherm\n - action: homeassistant.turn_off\n data:\n entity_id:\n - switch.kiosk2_screensaver",
|
|
"config": [
|
|
{
|
|
"name": "bureau kantoor power",
|
|
"room": "kantoor",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.bureau_kantoor_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk2"
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 screensaver",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_screensaver",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 bewegingsdetectie",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_bewegingsdetectie",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 scherm",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_scherm",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "kiosk_restart_at_9",
|
|
"automation": "- id: kiosk_restart_at_9\n alias: Kiosk herstart browser om 09:00 of bij HA herstart\n triggers:\n - trigger: time\n at: 08:59:30\n - trigger: homeassistant\n event: start\n actions:\n - delay: 00:00:30\n - action: script.kiosk_restart_browser",
|
|
"config": []
|
|
},
|
|
{
|
|
"id": "lights_t_remote_control",
|
|
"automation": "- id: lights_t_remote_control\n alias: Mini's afstandsbediening\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: event.drukknop_t_action\n not_from:\n - unavailable\n - unknown\n variables:\n event: '{{ trigger.to_state.attributes.event_type | default(''unknown'', true)\n }}'\n actions:\n - choose:\n - conditions: '{{ event == ''on'' }}'\n sequence:\n - action: scene.turn_on\n target:\n entity_id: scene.plafondlamp_t_kleurige_verlichting\n - delay:\n seconds: 2\n - action: light.turn_on\n target:\n entity_id: light.ledstrip_bureau_mini\n data:\n rgb_color:\n - 89\n - 255\n - 0\n - action: light.turn_on\n target:\n entity_id:\n - light.plafondlamp_t_1\n - light.plafondlamp_t_2\n - light.plafondlamp_t_3\n data:\n effect: colorloop\n - conditions: '{{ event == ''off'' }}'\n sequence:\n - action: light.turn_off\n target:\n entity_id:\n - light.plafondlamp_t\n - light.ledstrip_bureau_mini",
|
|
"config": [
|
|
{
|
|
"name": "event drukknop t action",
|
|
"room": null,
|
|
"type": "event",
|
|
"id": {
|
|
"entity_id": "event.drukknop_t_action",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t kleurige verlichting",
|
|
"room": "t",
|
|
"type": "scene",
|
|
"id": {
|
|
"entity_id": "scene.plafondlamp_t_kleurige_verlichting",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "ledstrip bureau mini",
|
|
"room": "bureau",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.ledstrip_bureau_mini",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t 1",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t_1",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t 2",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t_2",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t 3",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t_3",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "lights_t_lightswitch",
|
|
"automation": "- id: lights_t_lightswitch\n alias: Lichtschakelaar mini\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: event.lichtschakelaar_t_action\n not_from:\n - unavailable\n - unknown\n variables:\n event: '{{ trigger.to_state.attributes.event_type | default(''unknown'', true)\n }}'\n actions:\n - choose:\n - conditions: '{{ event == ''single_left'' }}'\n sequence:\n - choose:\n - conditions: '{{ is_state(''light.ledstrip_bed_mini'', ''on'') }}'\n sequence:\n - action: light.turn_off\n target:\n entity_id: light.ledstrip_bed_mini\n - conditions: '{{ is_state(''light.ledstrip_bed_mini'', ''off'') }}'\n sequence:\n - action: light.turn_on\n data:\n color_temp_kelvin: 2500\n target:\n entity_id: light.ledstrip_bed_mini\n - conditions: '{{ event == ''single_right'' }}'\n sequence:\n - choose:\n - conditions: '{{ is_state(''light.plafondlamp_t'', ''on'') }}'\n sequence:\n - action: light.turn_off\n target:\n entity_id: light.plafondlamp_t\n - conditions: '{{ is_state(''light.plafondlamp_t'', ''off'') }}'\n sequence:\n - action: scene.turn_on\n target:\n entity_id: scene.plafondlamp_t_wit\n - conditions: '{{ event == ''single_both'' }}'\n sequence: []\n - conditions: '{{ event == ''double_left'' }}'\n sequence:\n - action: light.turn_on\n data:\n rgb_color:\n - 0\n - 255\n - 30\n brightness_pct: 100\n target:\n entity_id: light.ledstrip_bed_mini\n - conditions: '{{ event == ''double_right'' }}'\n sequence:\n - action: scene.turn_on\n target:\n entity_id: scene.plafondlamp_t_kleurige_verlichting\n - delay:\n seconds: 2\n - action: light.turn_on\n target:\n entity_id:\n - light.plafondlamp_t_1\n - light.plafondlamp_t_2\n - light.plafondlamp_t_3\n data:\n effect: colorloop\n - conditions: '{{ event == ''double_both'' }}'\n sequence: []",
|
|
"config": [
|
|
{
|
|
"name": "plafondlamp t kleurige verlichting",
|
|
"room": "t",
|
|
"type": "scene",
|
|
"id": {
|
|
"entity_id": "scene.plafondlamp_t_kleurige_verlichting",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t 1",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t_1",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t 2",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t_2",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t 3",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t_3",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "event lichtschakelaar t action",
|
|
"room": null,
|
|
"type": "event",
|
|
"id": {
|
|
"entity_id": "event.lichtschakelaar_t_action",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "ledstrip bed mini",
|
|
"room": "bed",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.ledstrip_bed_mini",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t wit",
|
|
"room": "t",
|
|
"type": "scene",
|
|
"id": {
|
|
"entity_id": "scene.plafondlamp_t_wit",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "lights_gang",
|
|
"automation": "- id: lights_gang\n alias: Zet de gangverlichting aan of uit\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.pir_gang\n from: 'off'\n to: 'on'\n conditions:\n - condition: state\n entity_id: input_boolean.enable_pir_gang_automations\n state: 'on'\n - condition: numeric_state\n entity_id: sun.sun\n attribute: elevation\n below: 5\n actions:\n - alias: Gang lamp aan...\n action: switch.turn_on\n target:\n entity_id: switch.gang\n - alias: Wacht tot er geen motion meer is...\n wait_for_trigger:\n - trigger: state\n entity_id: binary_sensor.pir_gang\n from: 'on'\n to: 'off'\n - alias: Lamp uit..\n action: switch.turn_off\n target:\n entity_id: switch.gang",
|
|
"config": [
|
|
{
|
|
"name": "binary sensor pir gang",
|
|
"room": "gang",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_gang",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean enable pir gang automations",
|
|
"room": "gang",
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.enable_pir_gang_automations",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch gang",
|
|
"room": "gang",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.gang",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Sun",
|
|
"room": null,
|
|
"type": "sun",
|
|
"id": {
|
|
"entity_id": "sun.sun",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "set_lights_before_sunset",
|
|
"automation": "- id: set_lights_before_sunset\n alias: Zet de verlichting aan bij zonsondergang\n triggers:\n trigger: sun\n event: sunset\n offset: -00:45:00\n conditions:\n and:\n - condition: state\n entity_id: input_boolean.enable_woonkamer_sunset_automations\n state: 'on'\n - condition: state\n entity_id: group.all_adults\n state: home\n actions:\n - action: light.turn_on\n data:\n brightness_pct: 20\n target:\n entity_id: light.spots_vaas",
|
|
"config": [
|
|
{
|
|
"name": "spots vaas",
|
|
"room": null,
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.spots_vaas",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean enable woonkamer sunset automations",
|
|
"room": "woonkamer",
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.enable_woonkamer_sunset_automations",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "group all adults",
|
|
"room": null,
|
|
"type": "group",
|
|
"id": {
|
|
"entity_id": "group.all_adults",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "salon_remote_control",
|
|
"automation": "- id: salon_remote_control\n alias: Schakelaar salon\n description: 'Control some lights with an Aqara H1 double wireless remote switch\n (WRS-R02 / WXKG15LM)\n\n '\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: event.schakelaar_salon_action\n not_from:\n - unavailable\n - unknown\n variables:\n event: '{{ trigger.to_state.attributes.event_type | default(''unknown'', true)\n }}'\n actions:\n - choose:\n - conditions: '{{ event == ''single_left'' }}'\n sequence:\n - action: light.toggle\n target:\n entity_id: light.sfeerverlichting_salon\n - conditions: '{{ event == ''single_right'' }}'\n sequence:\n - action: light.toggle\n target:\n entity_id:\n - light.tv_kastje\n - conditions: '{{ event == ''single_both'' }}'\n sequence: []\n - conditions: '{{ event == ''double_left'' }}'\n sequence:\n - action: light.turn_on\n target:\n entity_id: light.salon\n data:\n brightness_pct: 100\n - conditions: '{{ event == ''double_right'' }}'\n sequence:\n - action: light.turn_on\n target:\n entity_id: light.salon\n data:\n brightness_pct: 25\n - conditions: '{{ event == ''double_both'' }}'\n sequence: []\n - conditions: '{{ event == ''triple_left'' }}'\n sequence: []\n - conditions: '{{ event == ''triple_right'' }}'\n sequence: []\n - conditions: '{{ event == ''triple_both'' }}'\n sequence: []\n - conditions: '{{ event == ''hold_left'' }}'\n sequence: []\n - conditions: '{{ event == ''hold_right'' }}'\n sequence: []\n - conditions: '{{ event == ''hold_both'' }}'\n sequence: []",
|
|
"config": [
|
|
{
|
|
"name": "event schakelaar salon action",
|
|
"room": "salon",
|
|
"type": "event",
|
|
"id": {
|
|
"entity_id": "event.schakelaar_salon_action",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "sfeerverlichting salon",
|
|
"room": "salon",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.sfeerverlichting_salon",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "tv kastje",
|
|
"room": null,
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.tv_kastje",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "light salon",
|
|
"room": "salon",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.salon",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "lights_frontdoor",
|
|
"automation": "- id: lights_frontdoor\n alias: Zet de voordeurlamp aan of uit\n triggers:\n - trigger: sun\n event: sunset\n offset: -00:10:00\n variables:\n action: turn_on\n - trigger: sun\n event: sunrise\n variables:\n action: turn_off\n actions:\n - action: switch.{{ action }}\n target:\n entity_id: switch.voordeur",
|
|
"config": [
|
|
{
|
|
"name": "switch voordeur",
|
|
"room": "voordeur",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.voordeur",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "lights_mbr_inloopkast",
|
|
"automation": "- id: lights_mbr_inloopkast\n alias: Zet de verlichting van de inloopkast op de MBR aan of uit\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.pir_inloopkast_occupancy\n to: 'on'\n from: 'off'\n variables:\n action: turn_on\n - trigger: state\n entity_id: binary_sensor.pir_inloopkast_occupancy\n to: 'off'\n from: 'on'\n variables:\n action: turn_off\n conditions:\n - condition: state\n entity_id: input_boolean.enable_pir_inloopkast_automations\n state: 'on'\n actions:\n - alias: Inloopkast lamp bedienen...\n action: switch.{{ action }}\n target:\n entity_id: switch.inloopkast",
|
|
"config": [
|
|
{
|
|
"name": "binary sensor pir inloopkast occupancy",
|
|
"room": "inloopkast",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_inloopkast_occupancy",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean enable pir inloopkast automations",
|
|
"room": "inloopkast",
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.enable_pir_inloopkast_automations",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch inloopkast",
|
|
"room": "inloopkast",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.inloopkast",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "warn_power_usage_after_bedtime_minicave",
|
|
"automation": "- id: warn_power_usage_after_bedtime_minicave\n alias: Waarschuwing dat de minicave nog stroom verbruikt\n mode: queued\n triggers:\n - trigger: numeric_state\n entity_id: sensor.mini_cave_power\n above: 80\n id: PC\n - trigger: state\n entity_id: binary_sensor.minicave_tv\n to: 'on'\n id: TV\n conditions:\n - condition: state\n entity_id: input_boolean.notify_power_use_minicave\n state: 'on'\n - condition: time\n after: input_datetime.time_poweruse_minicave\n actions:\n - action: notify.mobile_devices_adults\n data:\n title: Minicave {{ trigger.id }}\n message: \"{% if trigger.id == \\\"PC\\\" %}\\n De computer van de mini staat nog\\\n \\ aan... ({{ now().strftime('%H:%M') }}).\\n{% else %}\\n De TV van de mini\\\n \\ staat nog aan... ({{ now().strftime('%H:%M') }}).\\n{% endif %}\"\n data:\n tag: minicave\n notification_icon: mdi:home-lightning-bolt\n ttl: 0\n priority: high",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mini cave power",
|
|
"room": "mini_cave",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.mini_cave_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "binary sensor minicave tv",
|
|
"room": "minicave",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.minicave_tv",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean notify power use minicave",
|
|
"room": "minicave",
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.notify_power_use_minicave",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input datetime time poweruse minicave",
|
|
"room": "minicave",
|
|
"type": "input_datetime",
|
|
"id": {
|
|
"entity_id": "input_datetime.time_poweruse_minicave",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "warn_pc_time_over_minicave",
|
|
"automation": "- id: warn_pc_time_over_minicave\n alias: Waarschuwing dat de mini te lang op de PC zit\n mode: queued\n triggers:\n - trigger: numeric_state\n entity_id: sensor.minicave_pc_on_today\n above: input_number.mini_pc_time_weekday\n id: weekday\n - trigger: numeric_state\n entity_id: sensor.minicave_pc_on_today\n above: input_number.mini_pc_time_weekend\n id: weekend\n - trigger: time\n at: input_datetime.time_maxi_gametime_over\n id: all_days\n conditions:\n - or:\n - and:\n - '{{ trigger.id == \"weekday\" }}'\n - condition: time\n weekday:\n - mon\n - tue\n - wed\n - thu\n - fri\n - and:\n - '{{ trigger.id == \"weekend\" }}'\n - condition: time\n weekday:\n - sat\n - sun\n - and:\n - '{{ trigger.id == \"all_days\" }}'\n - condition: state\n entity_id: binary_sensor.minicave_pc\n state: 'on'\n actions:\n - parallel:\n - sequence:\n - action: light.turn_on\n target:\n entity_id:\n - light.ledstrip_bureau_mini\n - light.plafondlamp_t\n data:\n color_name: red\n - delay:\n seconds: 2\n - repeat:\n count: 10\n sequence:\n - action: light.toggle\n data: {}\n target:\n entity_id:\n - light.ledstrip_bureau_mini\n - light.plafondlamp_t\n - delay:\n seconds: 1\n milliseconds: 500\n - action: tts.microsoft_say\n data:\n entity_id: media_player.slaapkamer_t\n message: Je tijd is op. Sluit je af?\n - action: notify.mobile_app_sm_a236b\n data:\n title: Tijd is om\n message: Je tijd is op. Sluit je af?\n data:\n tag: mini_pc\n notification_icon: mdi:desktop-classic\n priority: high\n ttl: 0\n - action: notify.mobile_devices_adults\n data:\n title: Mini's gametijd\n message: De Mini heeft nu lang genoeg achter de PC gezeten ({{ now().strftime('%H:%M')\n }}).\n data:\n tag: mini_pc\n notification_icon: mdi:desktop-classic\n priority: high\n ttl: 0",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "media player slaapkamer t",
|
|
"room": "slaapkamer",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.slaapkamer_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile app sm a236b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a236b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "ledstrip bureau mini",
|
|
"room": "bureau",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.ledstrip_bureau_mini",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "plafondlamp t",
|
|
"room": "t",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.plafondlamp_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "minicave pc on today",
|
|
"room": "minicave",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.minicave_pc_on_today",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input number mini pc time weekday",
|
|
"room": null,
|
|
"type": "input_number",
|
|
"id": {
|
|
"entity_id": "input_number.mini_pc_time_weekday",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input number mini pc time weekend",
|
|
"room": null,
|
|
"type": "input_number",
|
|
"id": {
|
|
"entity_id": "input_number.mini_pc_time_weekend",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input datetime time maxi gametime over",
|
|
"room": null,
|
|
"type": "input_datetime",
|
|
"id": {
|
|
"entity_id": "input_datetime.time_maxi_gametime_over",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "binary sensor minicave pc",
|
|
"room": "minicave",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.minicave_pc",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "morning_briefing",
|
|
"automation": "- id: morning_briefing\n alias: Verstuur ochtendbriefing\n description: 'Notifications: Morning briefing'\n triggers:\n trigger: time\n at: input_datetime.time_morning_briefing\n conditions:\n - condition: state\n entity_id: input_boolean.vacation_mode_away\n state: 'off'\n actions:\n - action: notify.mobile_devices_papa_and_mini\n data:\n title: Good morning sunshine!\n message: Vandaag komt de zon op om {{ as_timestamp(state_attr('sun.sun', 'next_rising')) |\n timestamp_custom(\"%H:%M\") }} en wordt het {{ states('sensor.knmi_max_temperatuur_vandaag',\n with_unit=True)}}. Momenteel is het {{ states('sensor.knmi_temperatuur', with_unit=True)\n }} en {{ states('sensor.knmi_omschrijving') | lower}}. {{ states('sensor.knmi_weersverwachting')\n }}.\n data:\n tag: morning-brief\n notification_icon: mdi:weather-sunset-up",
|
|
"config": [
|
|
{
|
|
"name": "knmi temperatuur",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.knmi_temperatuur",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean vacation mode away",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacation_mode_away",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "KNMI max temperatuur vandaag",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.knmi_max_temperatuur_vandaag",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "KNMI omschrijving",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.knmi_omschrijving",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "KNMI weersverwachting",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.knmi_weersverwachting",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Sun",
|
|
"room": null,
|
|
"type": "sun",
|
|
"id": {
|
|
"entity_id": "sun.sun",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vaatwasser_melding",
|
|
"automation": "- alias: Melding met de goedkoopste uren om de vaatwasser te gebruiken\n id: vaatwasser_melding\n triggers:\n - trigger: time\n at: input_datetime.time_dishwasher_notification\n conditions:\n - alias: Do we want notifications?\n condition: state\n entity_id: input_boolean.notify_dishwasher\n state: 'on'\n - alias: Don't send when we're not at home\n condition: state\n entity_id: input_boolean.vacation_mode_away\n state: 'off'\n actions:\n - alias: Sending push notification\n action: notify.mobile_app_sm_a556b\n data:\n title: Vaatwasser\n message: Het beste start je de vaatwasser om {{states('sensor.vaatwasser_goedkoopste_tijd')}}\n data:\n channel: notification-dishwasher\n tag: notification-dishwasher\n notification_icon: mdi:dishwasher\n ttl: 0\n importance: low\n clickAction: /lovelace/energy",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean vacation mode away",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacation_mode_away",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Notify dishwasher",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.notify_dishwasher",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Vaatwasser goedkoopste tijd",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.vaatwasser_goedkoopste_tijd",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "picnic_order_window_closing",
|
|
"automation": "- id: picnic_order_window_closing\n alias: 'Picnic: Order window closing'\n mode: single\n max_exceeded: silent\n description: Send a notification when there are 2 hours left to submit the current\n order\n trigger:\n - platform: template\n value_template: \"{% if states('sensor.picnic_maximale_besteltijd_voor_het_geselecteerde_tijdslot')\\\n \\ not in ['unknown','unavailable','none'] %}\\n {{ 14400 > (as_timestamp(states('sensor.picnic_maximale_besteltijd_voor_het_geselecteerde_tijdslot'))\\\n \\ - as_timestamp(now(), 0)) > 0}}\\n{% endif %}\"\n variables:\n message: De Picnic bestelling is nog niet verzonden! Na {{ as_timestamp(states(\"sensor.picnic_maximale_besteltijd_voor_het_geselecteerde_tijdslot\"))\n | timestamp_custom(\"%H:%M\") }} kan het niet meer.\n - platform: template\n value_template: \"{% if states('sensor.picnic_max_order_time_of_last_order') not\\\n \\ in ['unknown','unavailable','none'] %}\\n {{ 14400 > (as_timestamp(states('sensor.picnic_max_order_time_of_last_order'))\\\n \\ - as_timestamp(now(), 0)) > 0}}\\n{% endif %}\"\n variables:\n message: Wil je nog iets toevoegen aan je volgende Picnic bestelling? Na {{\n as_timestamp(states(\"sensor.picnic_max_order_time_of_last_order\")) | timestamp_custom(\"%H:%M\")\n }} kan het niet meer.\n action:\n - alias: Schakel bewegingsdetectie & eventuele screensaver uit\n action: homeassistant.turn_off\n data:\n entity_id:\n - switch.kiosk1_bewegingsdetectie\n - switch.kiosk2_bewegingsdetectie\n - switch.kiosk1_screensaver\n - switch.kiosk2_screensaver\n - alias: Schakel screensaver timeout uit\n action: number.set_value\n data:\n value: 0\n target:\n entity_id:\n - number.kiosk1_screensaver_timer\n - number.kiosk2_screensaver_timer\n - alias: Zet schermhelderheid op goed leesbaar niveau\n action: number.set_value\n data:\n value: '{{255 if is_state(''sun.sun'', ''above_horizon'') else 125}}'\n target:\n entity_id:\n - number.kiosk1_schermhelderheid\n - number.kiosk2_schermhelderheid\n - alias: Laat dashboard zien op kiosk\n action: browser_mod.navigate\n data:\n path: /tsv-dashboards/picnic-order-closing\n browser_id:\n - kiosk1\n - kiosk2\n - action: timer.start\n target:\n entity_id: timer.picnic\n data:\n duration: 00:30:00",
|
|
"config": [
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk2"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 screensaver",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_screensaver",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 screensaver",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_screensaver",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid 2",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid 2",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 bewegingsdetectie",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_bewegingsdetectie",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 bewegingsdetectie",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_bewegingsdetectie",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Kiosk1 screensaver timer",
|
|
"room": null,
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_screensaver_timer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Kiosk2 screensaver timer",
|
|
"room": null,
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_screensaver_timer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic max order time of last order",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_max_order_time_of_last_order",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic maximale besteltijd voor het geselecteerde tijdslot",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_maximale_besteltijd_voor_het_geselecteerde_tijdslot",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Sun",
|
|
"room": null,
|
|
"type": "sun",
|
|
"id": {
|
|
"entity_id": "sun.sun",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic timer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.picnic",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "picnic_delivery_known",
|
|
"automation": "- id: picnic_delivery_known\n alias: 'Picnic: Delivery soon'\n mode: single\n max_exceeded: silent\n description: Send a notification when the short window of the picnic delivery is\n near\n trigger:\n - platform: template\n value_template: \"{% if states('sensor.picnic_verwacht_begin_van_de_volgende_bestelling')\\\n \\ not in ['unknown','unavailable','none'] %}\\n {{ 901 > (as_timestamp(states('sensor.picnic_verwacht_begin_van_de_volgende_bestelling'),\\\n \\ 0) - as_timestamp(now(), 0)) > 840}}\\n{% endif %}\"\n action:\n - if:\n - alias: Check if push message should be sent\n condition: state\n entity_id: input_boolean.notify_picnic_push\n state: 'on'\n then:\n - service: notify.mobile_devices_adults\n data:\n title: Picnic komt eraan!\n message: 'Picnic bezorgt tussen {{ states(''sensor.picnic_next_delivery_eta_start_time'')\n }} en {{ states(''sensor.picnic_next_delivery_eta_end_time'') }}!\n\n '\n data:\n clickAction: app://com.picnic.android\n icon_url: https://d2jxuf8ovdiw8x.cloudfront.net/uploads/sites/18/2020/11/logo.svg\n notification_icon: mdi:cart\n tag: picnic_alert\n timeout: 1800\n color: '#eb4034'\n ttl: 0\n priority: high\n - alias: Schakel bewegingsdetectie uit\n action: homeassistant.turn_off\n data:\n entity_id:\n - switch.kiosk1_bewegingsdetectie\n - switch.kiosk2_bewegingsdetectie\n - switch.kiosk1_screensaver\n - switch.kiosk2_screensaver\n - alias: Schakel screensaver timeout uit\n action: number.set_value\n data:\n value: 0\n target:\n entity_id:\n - number.kiosk1_screensaver_timer\n - number.kiosk2_screensaver_timer\n - alias: Zet schermhelderheid op goed leesbaar niveau\n action: number.set_value\n data:\n value: '{{255 if is_state(''sun.sun'', ''above_horizon'') else 125}}'\n target:\n entity_id:\n - number.kiosk1_schermhelderheid\n - number.kiosk2_schermhelderheid\n - alias: Laat dashboard zien op kiosk\n action: browser_mod.navigate\n data:\n path: /tsv-dashboards/picnic-eta\n browser_id:\n - kiosk1\n - kiosk2\n - action: timer.start\n target:\n entity_id: timer.picnic\n data:\n duration: 00:30:00",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk2"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 screensaver",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_screensaver",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 screensaver",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_screensaver",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1 schermhelderheid 2",
|
|
"room": "kiosk1",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2 schermhelderheid 2",
|
|
"room": "kiosk2",
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_schermhelderheid",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 bewegingsdetectie",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_bewegingsdetectie",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 bewegingsdetectie",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_bewegingsdetectie",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Notify picnic push",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.notify_picnic_push",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Kiosk1 screensaver timer",
|
|
"room": null,
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_screensaver_timer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Kiosk2 screensaver timer",
|
|
"room": null,
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_screensaver_timer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic next delivery ETA end time",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_next_delivery_eta_end_time",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic next delivery ETA start time",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_next_delivery_eta_start_time",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic verwacht begin van de volgende bestelling",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_verwacht_begin_van_de_volgende_bestelling",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Sun",
|
|
"room": null,
|
|
"type": "sun",
|
|
"id": {
|
|
"entity_id": "sun.sun",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic timer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.picnic",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "picnic_delivery_complete",
|
|
"automation": "- id: picnic_delivery_complete\n alias: 'Picnic: Delivery completed'\n triggers:\n - trigger: state\n entity_id: sensor.picnic_status_van_de_laatste_bestelling\n to: COMPLETED\n from: CURRENT\n actions:\n - action: timer.finish\n target:\n entity_id: timer.picnic",
|
|
"config": [
|
|
{
|
|
"name": "Picnic status van de laatste bestelling",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_status_van_de_laatste_bestelling",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic timer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.picnic",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "picnic_reset_view",
|
|
"automation": "- id: picnic_reset_view\n alias: 'Kiosk: terug vanaf Picnic naar startscherm'\n mode: queued\n triggers:\n - trigger: event\n event_type: timer.finished\n event_data:\n entity_id: timer.picnic\n actions:\n - alias: Ga weer terug naar startscherm\n action: browser_mod.navigate\n data:\n path: /tsv-dashboards/tsv1\n browser_id:\n - kiosk1\n - kiosk2\n - alias: Schakel bewegingsdetectie in\n action: homeassistant.turn_on\n data:\n entity_id:\n - switch.kiosk1_bewegingsdetectie\n - switch.kiosk2_bewegingsdetectie\n - alias: Schakel screensaver timeout in\n action: number.set_value\n data:\n value: 120\n target:\n entity_id:\n - number.kiosk1_screensaver_timer\n - number.kiosk2_screensaver_timer",
|
|
"config": [
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk2"
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk1 bewegingsdetectie",
|
|
"room": "kiosk1",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk1_bewegingsdetectie",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch kiosk2 bewegingsdetectie",
|
|
"room": "kiosk2",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.kiosk2_bewegingsdetectie",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Kiosk1 screensaver timer",
|
|
"room": null,
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk1_screensaver_timer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Kiosk2 screensaver timer",
|
|
"room": null,
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.kiosk2_screensaver_timer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic timer",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.picnic",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "picnic_update_eta",
|
|
"automation": "- id: picnic_update_eta\n alias: 'Picnic: update ETA'\n mode: single\n max_exceeded: silent\n description: Update Picnic sensors more frequently if delivery is near\n trigger:\n - platform: time_pattern\n minutes: /2\n condition:\n - '{{ 2100 > (as_timestamp(states(''sensor.picnic_verwacht_einde_van_de_volgende_bestelling''),\n 0) - as_timestamp(now(), 0)) > 0}}'\n action:\n - service: homeassistant.update_entity\n entity_id:\n - sensor.picnic_verwacht_begin_van_de_volgende_bestelling\n - sensor.picnic_status_van_de_laatste_bestelling",
|
|
"config": [
|
|
{
|
|
"name": "Picnic status van de laatste bestelling",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_status_van_de_laatste_bestelling",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic verwacht begin van de volgende bestelling",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_verwacht_begin_van_de_volgende_bestelling",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Picnic verwacht einde van de volgende bestelling",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.picnic_verwacht_einde_van_de_volgende_bestelling",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "warn_pc_time_duration_pubercave",
|
|
"automation": "- id: warn_pc_time_duration_pubercave\n alias: Waarschuwing dat de puber te lang op de PC zit\n mode: queued\n triggers:\n - trigger: numeric_state\n entity_id: sensor.pubercave_pc_on_today\n above: input_number.maxi_pc_time_weekday\n id: weekday\n - trigger: numeric_state\n entity_id: sensor.pubercave_pc_on_today\n above: input_number.maxi_pc_time_weekend\n id: weekend\n conditions:\n - or:\n - and:\n - '{{ trigger.id == \"weekday\" }}'\n - condition: time\n weekday:\n - mon\n - tue\n - wed\n - thu\n - fri\n - and:\n - '{{ trigger.id == \"weekend\" }}'\n - condition: time\n weekday:\n - sat\n - sun\n actions:\n - action: tts.microsoft_say\n data:\n entity_id: media_player.zolder\n message: Je tijd is op. Sluit je af?\n - action: notify.mobile_devices_adults\n data:\n title: Puber PC\n message: De puber heeft vandaag lang genoeg achter de PC gezeten ({{ now().strftime('%H:%M')\n }}).\n data:\n tag: puber_pc\n notification_icon: mdi:desktop-classic\n priority: high\n ttl: 0\n - action: notify.mobile_app_schaduwspeler\n data:\n title: Gametijd\n message: Je zit vandaag al lang genoeg achter de PC ({{ now().strftime('%H:%M')\n }}).\n data:\n tag: puber_pc\n notification_icon: mdi:desktop-classic\n priority: high\n ttl: 0\n - action: automation.trigger\n target:\n entity_id: automation.knipper_de_lampen_als_de_puber_pc_tijd_over_is",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "media player zolder",
|
|
"room": "zolder",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.zolder",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile app schaduwspeler",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_schaduwspeler",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "pubercave pc on today",
|
|
"room": "pubercave",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.pubercave_pc_on_today",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input number maxi pc time weekday",
|
|
"room": null,
|
|
"type": "input_number",
|
|
"id": {
|
|
"entity_id": "input_number.maxi_pc_time_weekday",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input number maxi pc time weekend",
|
|
"room": null,
|
|
"type": "input_number",
|
|
"id": {
|
|
"entity_id": "input_number.maxi_pc_time_weekend",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Knipper de lampen als de puber PC tijd over is",
|
|
"room": null,
|
|
"type": "automation",
|
|
"id": {
|
|
"entity_id": "automation.knipper_de_lampen_als_de_puber_pc_tijd_over_is",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "flash_lights_pc_time_over_pubercave",
|
|
"automation": "- id: flash_lights_pc_time_over_pubercave\n alias: Knipper de lampen als de puber PC tijd over is\n mode: queued\n triggers:\n - trigger: time\n at: input_datetime.time_maxi_gametime_over\n conditions:\n - condition: state\n alias: Check if PC is on\n entity_id: binary_sensor.pubercave_pc\n state: 'on'\n actions:\n - action: scene.create\n data:\n scene_id: snapshot_pubercave\n snapshot_entities:\n - light.sonoff_l1\n - light.battletron_ball_light_m\n - delay:\n seconds: 5\n - action: light.turn_on\n target:\n entity_id:\n - light.sonoff_l1\n data:\n color_name: red\n effect: DIY Pulse\n brightness_pct: 100\n - action: light.turn_on\n target:\n entity_id:\n - light.battletron_ball_light_m\n data:\n color_name: red\n - delay:\n seconds: 1\n milliseconds: 200\n - repeat:\n count: 5\n sequence:\n - action: light.toggle\n data: {}\n target:\n entity_id:\n - light.battletron_ball_light_m\n - delay:\n seconds: 1\n milliseconds: 200\n - action: light.toggle\n data: {}\n target:\n entity_id:\n - light.battletron_ball_light_m\n - delay:\n seconds: 1\n milliseconds: 200\n - delay:\n seconds: 5\n - action: scene.turn_on\n data:\n entity_id: scene.snapshot_pubercave",
|
|
"config": [
|
|
{
|
|
"name": "input datetime time maxi gametime over",
|
|
"room": null,
|
|
"type": "input_datetime",
|
|
"id": {
|
|
"entity_id": "input_datetime.time_maxi_gametime_over",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "binary sensor pubercave pc",
|
|
"room": "pubercave",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pubercave_pc",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "sonoff l1",
|
|
"room": null,
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.sonoff_l1",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "battletron ball light m",
|
|
"room": null,
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.battletron_ball_light_m",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Snapshot pubercave",
|
|
"room": "Pubercave",
|
|
"type": "scene",
|
|
"id": {
|
|
"entity_id": "scene.snapshot_pubercave",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "warn_power_usage_after_bedtime_attic",
|
|
"automation": "- id: warn_power_usage_after_bedtime_attic\n alias: Waarschuwing dat de pubercave nog stroom verbruikt\n description: 'Reading light: the kid shouldn''t be reading after bedtime, so we\n track the power usage of his bedside light with an always on switch Pubercave:\n mancave for the adolescent kid. It has a TV that obviously shouldn''t be on after\n bedtime... So let''s trigger a notification if it is :)'\n mode: queued\n triggers:\n - trigger: numeric_state\n entity_id: sensor.leeslampje_zolder_power\n above: 3\n for:\n minutes: 2\n id: Leeslampje\n - trigger: numeric_state\n entity_id: sensor.pubercave_tv_power\n above: 25\n id: TV\n - trigger: state\n entity_id: binary_sensor.schoollaptop_m\n to: 'on'\n for:\n minutes: 2\n id: Schoollaptop\n conditions:\n - condition: state\n entity_id: input_boolean.notify_power_use_attic\n state: 'on'\n - condition: time\n after: input_datetime.time_leeslampje_attic\n actions:\n - action: notify.mobile_devices_adults\n data:\n title: Pubercave {{ trigger.id }}\n message: \"{% if trigger.id == \\\"Leeslampje\\\" %}\\n Het lampje op zolder staat\\\n \\ nog aan... ({{ now().strftime('%H:%M') }}).\\n{% elif trigger.id == \\\"Schoollaptop\\\"\\\n \\ %}\\n De schoollaptop op zolder staat nog aan... ({{ now().strftime('%H:%M')\\\n \\ }}).\\n{% else %}\\n De TV op zolder staat nog aan... ({{ now().strftime('%H:%M')\\\n \\ }}).\\n{% endif %}\"\n data:\n tag: pubercave\n notification_icon: mdi:home-lightning-bolt\n ttl: 0\n priority: high",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "leeslampje zolder power",
|
|
"room": "zolder",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.leeslampje_zolder_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "pubercave tv power",
|
|
"room": "pubercave",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.pubercave_tv_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "binary sensor schoollaptop m",
|
|
"room": null,
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.schoollaptop_m",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean notify power use attic",
|
|
"room": "attic",
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.notify_power_use_attic",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input datetime time leeslampje attic",
|
|
"room": "attic",
|
|
"type": "input_datetime",
|
|
"id": {
|
|
"entity_id": "input_datetime.time_leeslampje_attic",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "power_logging_attic",
|
|
"automation": "- id: power_logging_attic\n alias: Log stroomverbruik in de pubercave\n description: Because the switch is always on and only used for power tracking, we\n need another way to track this switch in the logbook. We use 25 watts as crossover\n point, because the PS4 sometimes charges the controllers and thus consumes a bit\n of power.\n mode: queued\n triggers:\n - trigger: numeric_state\n entity_id: sensor.pubercave_tv_power\n above: 25\n id: pubercave\n - trigger: numeric_state\n entity_id: sensor.pubercave_tv_power\n below: 25\n id: pubercave\n - trigger: numeric_state\n entity_id: sensor.leeslampje_zolder_power\n above: 3\n id: leeslampje\n - trigger: numeric_state\n entity_id: sensor.leeslampje_zolder_power\n below: 3\n id: leeslampje\n actions:\n - choose:\n - conditions:\n condition: trigger\n id: pubercave\n sequence:\n - action: logbook.log\n data:\n name: Pubercave zolder\n entity_id: sensor.pubercave_tv_power\n message: '{{ iif(states(''sensor.pubercave_tv_power'') | float(0) > 25,\n \"is aan\", \"is uit\" )}}'\n - conditions:\n condition: trigger\n id: leeslampje\n sequence:\n - action: logbook.log\n data:\n name: Leeslampje zolder\n entity_id: sensor.leeslampje_zolder_power\n message: '{{ iif(states(''sensor.leeslampje_zolder_power'') | float(0) >\n 3, \"is aan\", \"is uit\" )}}'",
|
|
"config": [
|
|
{
|
|
"name": "leeslampje zolder power",
|
|
"room": "zolder",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.leeslampje_zolder_power",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "pubercave tv power",
|
|
"room": "pubercave",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.pubercave_tv_power",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "lights_schuur",
|
|
"automation": "- id: lights_schuur\n alias: Zet de verlichting van de schuur aan of uit\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.pir_schuur_occupancy\n to: 'on'\n from: 'off'\n variables:\n action: turn_on\n - trigger: state\n entity_id: binary_sensor.pir_schuur_occupancy\n to: 'off'\n from: 'on'\n variables:\n action: turn_off\n conditions: []\n actions:\n - alias: Lamp schuur bedienen...\n action: switch.{{ action }}\n target:\n entity_id: switch.schuur",
|
|
"config": [
|
|
{
|
|
"name": "binary sensor pir schuur occupancy",
|
|
"room": "schuur",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_schuur_occupancy",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch schuur",
|
|
"room": "schuur",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.schuur",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "wakeup_light_mini",
|
|
"automation": "- id: wakeup_light_mini\n alias: Wakeup light mini\n mode: single\n triggers:\n - trigger: time\n at: sensor.home_mini_slaapkamer_t_alarms\n conditions: []\n actions:\n - delay: 00:00:01\n - action: light.turn_on\n data:\n brightness_pct: 5\n target:\n entity_id:\n - light.ledstrip_bed_mini\n - delay: 00:00:02\n - repeat:\n sequence:\n - service: light.turn_on\n data:\n entity_id: light.ledstrip_bed_mini\n brightness: '{{ state_attr(''light.ledstrip_bed_mini'', ''brightness'')\n | int + 15 }}'\n - delay: 2\n until:\n condition: or\n conditions:\n - condition: template\n value_template: '{{ state_attr(''light.ledstrip_bed_mini'', ''brightness'')\n | int >= 191 }}'\n - condition: state\n entity_id: light.ledstrip_bed_mini\n state: 'off'\n - delay: 00:10:00\n - action: light.turn_off\n target:\n entity_id: light.ledstrip_bed_mini",
|
|
"config": [
|
|
{
|
|
"name": "ledstrip bed mini",
|
|
"room": "bed",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.ledstrip_bed_mini",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "sensor home mini slaapkamer t alarms",
|
|
"room": "slaapkamer",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.home_mini_slaapkamer_t_alarms",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "turn_off_lights_t_when_starting_google_home_sleeping_sounds",
|
|
"automation": "- id: turn_off_lights_t_when_starting_google_home_sleeping_sounds\n alias: Lampen slaapkamer T uit als 'zomerse nachtgeluiden' beginnen\n mode: queued\n triggers:\n - trigger: state\n entity_id: media_player.slaapkamer_t\n attribute: app_id\n to: 9731D581\n for: 00:00:02\n conditions: null\n actions:\n - action: media_player.volume_set\n data:\n entity_id: media_player.slaapkamer_t\n volume_level: 0.4\n - if:\n - condition: state\n entity_id: light.ledstrip_bed_mini\n state: 'on'\n then:\n - action: light.turn_off\n target:\n entity_id: light.ledstrip_bed_mini\n data:\n transition: 5\n - delay: 00:40:00\n - action: media_player.volume_set\n data:\n entity_id: media_player.slaapkamer_t\n volume_level: 0.3\n - delay: 00:05:00\n - action: media_player.volume_set\n data:\n entity_id: media_player.slaapkamer_t\n volume_level: 0.1\n - action: media_player.turn_off\n data:\n entity_id: media_player.slaapkamer_t",
|
|
"config": [
|
|
{
|
|
"name": "media player slaapkamer t",
|
|
"room": "slaapkamer",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.slaapkamer_t",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "ledstrip bed mini",
|
|
"room": "bed",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.ledstrip_bed_mini",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "solar_upload_to_pvoutput",
|
|
"automation": "- id: solar_upload_to_pvoutput\n alias: Stuur solar informatie naar PVOutput\n description: Upload values to PVOutput\n triggers:\n - trigger: time_pattern\n minutes: /5\n seconds: '0'\n conditions:\n - condition: state\n entity_id: sensor.work_mode\n state: Normal\n actions:\n - action: rest_command.update_pvoutput\n data: {}\n mode: single",
|
|
"config": [
|
|
{
|
|
"name": "Work mode",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.work_mode",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "solar_handle_pv_off",
|
|
"automation": "- id: solar_handle_pv_off\n alias: Zet de zonnepanelen uit\n description: Automation to automatically turn off my solar system when electricity\n prices are below 0. This can be done automatically or by time schedule based on\n input_datetime. It works by setting the \"grid_export_limit\" in the GoodWe integration\n to 0%, effectively instructing the inverter that it isn't allowed to export (produce)\n any power. Setting it back to 100% restarts the production again to the maximum\n capacity of the inverter.\n triggers:\n - trigger: state\n entity_id:\n - binary_sensor.negatieve_stroomprijs\n attribute: position\n to: below\n from: above\n id: automatic_start\n variables:\n message: Je zonnepanelen zijn automatisch uitgeschakeld omdat de stroomprijs\n negatief is.\n - trigger: state\n entity_id:\n - binary_sensor.negatieve_stroomprijs\n attribute: position\n to: above\n from: below\n id: automatic_stop\n variables:\n message: Je zonnepanelen zijn weer ingeschakeld omdat de stroomprijs positief\n is.\n - trigger: time\n at: input_datetime.solar_pv_off_start\n id: scheduled_start\n variables:\n message: Je zonnepanelen zijn uitgeschakeld op basis van je schedule.\n - trigger: time\n at: input_datetime.solar_pv_off_end\n id: scheduled_stop\n variables:\n message: Je zonnepanelen zijn weer ingeschakeld op basis van je schedule.\n conditions:\n - alias: Check if inverter is actually working\n condition: state\n entity_id: sensor.work_mode\n state: Normal\n actions:\n - alias: Choose what to execute\n choose:\n - conditions:\n - condition: trigger\n id: automatic_start\n sequence:\n - if:\n - alias: Check if we enabled automatic turning on/off\n condition: state\n entity_id: input_boolean.solar_pv_off_automatic\n state: 'on'\n then:\n - alias: Set grid export limit to 0% to turn off PV production\n action: number.set_value\n target:\n entity_id: number.grid_export_limit\n data:\n value: '0'\n else:\n - stop: Stopping because automatic turning on/off is not enabled\n - conditions:\n - condition: trigger\n id: automatic_stop\n sequence:\n - if:\n - alias: Check if we enabled automatic turning on/off\n condition: state\n entity_id: input_boolean.solar_pv_off_automatic\n state: 'on'\n then:\n - alias: Set grid export limit to 100% to turn on PV production\n action: number.set_value\n target:\n entity_id: number.grid_export_limit\n data:\n value: '100'\n else:\n - stop: Stopping because automatic turning on/off is not enabled\n - conditions:\n - condition: trigger\n id: scheduled_start\n sequence:\n - if:\n - alias: Check if we enabled scheduled turning on/off\n condition: state\n entity_id: input_boolean.solar_pv_off_schedule\n state: 'on'\n then:\n - alias: Set grid export limit to 0% to turn off PV production\n action: number.set_value\n target:\n entity_id: number.grid_export_limit\n data:\n value: '0'\n else:\n - stop: Stopping because scheduled turning on/off is not enabled\n - conditions:\n - condition: trigger\n id: scheduled_stop\n sequence:\n - if:\n - alias: Check if we enabled scheduled turning on/off\n condition: state\n entity_id: input_boolean.solar_pv_off_schedule\n state: 'on'\n then:\n - alias: Set grid export limit to 100% to turn on PV production\n action: number.set_value\n target:\n entity_id: number.grid_export_limit\n data:\n value: '100'\n - alias: Disable PV off schedule\n action: input_boolean.turn_off\n target:\n entity_id: input_boolean.solar_pv_off_schedule\n else:\n - stop: Stopping because scheduled turning on/off is not enabled\n - alias: Sending push notification\n action: notify.mobile_app_sm_a556b\n data:\n title: Zonnepanelen update\n message: '{{ message }}'\n data:\n tag: notification-solar\n notification_icon: mdi:solar-power-variant\n ttl: 0\n priority: high\n clickAction: /lovelace-admin/solar",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Negatieve stroomprijs",
|
|
"room": null,
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.negatieve_stroomprijs",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Solar PV off automatic",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.solar_pv_off_automatic",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Solar PV off schedule",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.solar_pv_off_schedule",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Solar PV off start",
|
|
"room": null,
|
|
"type": "input_datetime",
|
|
"id": {
|
|
"entity_id": "input_datetime.solar_pv_off_start",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Grid export limit",
|
|
"room": null,
|
|
"type": "number",
|
|
"id": {
|
|
"entity_id": "number.grid_export_limit",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Work mode",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.work_mode",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "set_theme",
|
|
"automation": "- id: set_theme\n alias: Stel thema in\n triggers:\n - trigger: homeassistant\n event: start\n - trigger: state\n entity_id: sun.sun\n actions:\n - if: '{{ is_state(''sun.sun'', ''above_horizon'')}}'\n then:\n - action: frontend.set_theme\n data:\n name: Hmmbob light theme\n mode: dark\n else:\n - action: frontend.set_theme\n data:\n name: Hmmbob dark theme\n mode: dark",
|
|
"config": [
|
|
{
|
|
"name": "Sun",
|
|
"room": null,
|
|
"type": "sun",
|
|
"id": {
|
|
"entity_id": "sun.sun",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ui_set_end_date",
|
|
"automation": "- id: ui_set_end_date\n alias: Stel de datum van het eindveld op dezelfde dag in als de begindatum\n description: 'System: Fix the UI - set date of end field to date of start field'\n triggers:\n - trigger: state\n entity_id: input_datetime.solar_pv_off_start\n variables:\n end_entity_id: input_datetime.solar_pv_off_end\n actions:\n - alias: Set date of desired end field\n action: input_datetime.set_datetime\n target:\n entity_id: '{{ end_entity_id }}'\n data:\n date: '{{states(trigger.entity_id) | truncate(10, ''False'', '''') }}'",
|
|
"config": [
|
|
{
|
|
"name": "Solar PV off start",
|
|
"room": null,
|
|
"type": "input_datetime",
|
|
"id": {
|
|
"entity_id": "input_datetime.solar_pv_off_start",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "system_update_available_notification",
|
|
"automation": "- alias: Stuur een melding dat er een nieuwe Home Assistant versie is\n id: system_update_available_notification\n description: Send notification on Home Assistant update available\n triggers:\n - trigger: state\n entity_id: sensor.latest_version\n not_to:\n - unknown\n - unavailable\n - none\n conditions:\n - condition: template\n value_template: '{{ states(''sensor.latest_version'') != states(''sensor.current_version'')\n }}\n\n '\n actions:\n - action: notify.mobile_app_sm_a556b\n data:\n title: Upgrade time!\n message: 'There is an upgrade for Home Assistant container pending! Version\n {{ states(''sensor.latest_version'') }} just got released!\n\n '\n data:\n tag: System\n channel: System\n notification_icon: mdi:cellphone-arrow-down\n actions:\n - action: URI\n title: Open Changelog\n uri: https://github.com/home-assistant/core/releases/tag/{{states('sensor.latest_version')}}",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Current version",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.current_version",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Latest version",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.latest_version",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "afval_meldingen",
|
|
"automation": "- alias: Verstuur melding welk afval opgehaald wordt\n id: afval_meldingen\n triggers:\n - trigger: time\n at: input_datetime.time_trash_warning_today\n id: vandaag\n - trigger: time\n at: input_datetime.time_trash_warning_tomorrow\n id: morgen\n variables:\n sensor: sensor.afvalinfo_home_{{ trigger.id }}\n trash_descr:\n PBD: plastic\n GFT: GFT\n Restafval: restafval\n Papier: oud papier\n PBD, Papier: plastic en oud papier\n Papier, PBD: plastic en oud papier\n afval: '{{ trash_descr.get(states(sensor), \"onbekend\") }}\n\n '\n conditions:\n - alias: Do we want notifications?\n condition: state\n entity_id: input_boolean.notify_trash\n state: 'on'\n - alias: Do we have a valid state\n condition: template\n value_template: '{{ states(sensor) not in [''unknown'',''unavailable'',''none'',''geen'']\n }}'\n - condition: state\n entity_id: input_boolean.vacation_mode_away\n state: 'off'\n actions:\n - if:\n - '{{trigger.id == \"morgen\" }}'\n then:\n - alias: New round of notifications, so resetting helper for next round\n action: input_boolean.turn_off\n target:\n entity_id: input_boolean.trash_outside\n - if:\n - '{{trigger.id == \"vandaag\" }}'\n - alias: Check if trash is outside already\n condition: state\n entity_id: input_boolean.trash_outside\n state: 'on'\n then:\n - stop: Stopping notification sequence as trash is already outside\n else:\n - alias: Sending push notification\n action: notify.mobile_app_sm_a556b\n data:\n title: Afvalinzameling\n message: '{{ trigger.id | capitalize }} wordt het {{ afval }} opgehaald.'\n data:\n tag: notification-trash\n notification_icon: mdi:delete\n actions:\n - action: trash_outside\n title: Jep, staat buiten\n ttl: 0\n priority: high\n - alias: Check if TTS should be played\n condition: state\n entity_id: input_boolean.notify_trash_voice\n state: 'on'\n - action: media_player.volume_set\n data:\n entity_id: media_player.kiosk1_fkb\n volume_level: 0.9\n - alias: Play TTS\n action: tts.microsoft_say\n entity_id: media_player.kiosk1_fkb\n data:\n message: '{{ trigger.id }} wordt het {{ afval }} opgehaald.'\n - action: browser_mod.popup\n data:\n dismissable: true\n autoclose: false\n browser_id:\n - kiosk1\n - kiosk2\n timeout: 60000\n size: fullscreen\n content:\n type: picture\n image: '{{ states(''input_text.trash_url_'' ~ states(sensor).replace(''\n '', '''')) }}'\n card_mod:\n style:\n ha-dialog$: \"div.mdc-dialog .mdc-dialog__container .mdc-dialog__surface\\\n \\ {\\n background: black important;\\n border: none important;\\n border-style:\\\n \\ solid important;\\n border-color: black important;\\n}\\n\"",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk1",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk1"
|
|
}
|
|
},
|
|
{
|
|
"name": "kiosk2",
|
|
"room": null,
|
|
"type": null,
|
|
"id": {
|
|
"entity_id": null,
|
|
"device_id": "kiosk2"
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean vacation mode away",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacation_mode_away",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "media player kiosk1 fkb",
|
|
"room": "kiosk1",
|
|
"type": "media_player",
|
|
"id": {
|
|
"entity_id": "media_player.kiosk1_fkb",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Notify trash",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.notify_trash",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Notify trash voice",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.notify_trash_voice",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Trash outside",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.trash_outside",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Trash URL",
|
|
"room": null,
|
|
"type": "input_text",
|
|
"id": {
|
|
"entity_id": "input_text.trash_url_",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "afval_process_reminder_status",
|
|
"automation": "- alias: Verwerk dat het afval buitengezet is\n id: afval_process_reminder_status\n triggers:\n - trigger: event\n event_type: mobile_app_notification_action\n event_data:\n action: trash_outside\n actions:\n - action: input_boolean.turn_on\n target:\n entity_id: input_boolean.trash_outside",
|
|
"config": [
|
|
{
|
|
"name": "Trash outside",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.trash_outside",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "update_waze_to_home",
|
|
"automation": "- id: update_waze_to_home\n alias: Werk Waze reistijd bij\n description: 'Update: Waze travel time to home'\n triggers:\n - trigger: time_pattern\n minutes: /5\n seconds: 0\n actions:\n - action: homeassistant.update_entity\n entity_id: sensor.reistijd_bob_naar_huis",
|
|
"config": [
|
|
{
|
|
"name": "Reistijd Bob naar huis",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.reistijd_bob_naar_huis",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "location_ask_to_send_notification_hmmbob_left",
|
|
"automation": "- id: location_ask_to_send_notification_hmmbob_left\n alias: Vraag of we een melding moeten versturen dat Bob vertrekt\n triggers:\n - trigger: state\n entity_id: binary_sensor.sm_a556b_android_auto\n from: 'off'\n to: 'on'\n conditions:\n - not:\n - or:\n - condition: zone\n entity_id: device_tracker.sm_a556b\n zone: zone.home\n - condition: zone\n entity_id: device_tracker.sm_a556b\n zone: zone.breda\n - condition: zone\n entity_id: device_tracker.sm_a556b\n zone: zone.vkl\n - condition: zone\n entity_id: device_tracker.sm_a556b\n zone: zone.adr\n - condition: zone\n entity_id: device_tracker.sm_a556b\n zone: zone.amc\n - alias: Don't run if we already sent a message\n condition: state\n entity_id: input_boolean.location_bob_travelling_home\n state: 'on'\n actions:\n - alias: Sending push notification\n action: notify.mobile_app_sm_a556b\n data:\n title: Reistijd\n message: Wil je een melding versturen?\n data:\n car_ui: true\n notification_icon: mdi:car-side\n actions:\n - action: send_traveltime\n title: Ja\n tag: ask-waze\n ttl: 0\n priority: high",
|
|
"config": [
|
|
{
|
|
"name": "zone home",
|
|
"room": "home",
|
|
"type": "zone",
|
|
"id": {
|
|
"entity_id": "zone.home",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "SM A556b android auto",
|
|
"room": null,
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.sm_a556b_android_auto",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device tracker SM A556b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Location Bob travelling home",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.location_bob_travelling_home",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "location_notification_hmmbob_left_work",
|
|
"automation": "- id: location_notification_hmmbob_left_work\n alias: Verstuur melding dat Bob van het werk vertrekt\n triggers:\n - trigger: event\n event_type: mobile_app_notification_action\n event_data:\n action: send_traveltime\n - trigger: zone\n entity_id: device_tracker.sm_a556b\n event: leave\n zone: zone.breda\n - trigger: zone\n entity_id: device_tracker.sm_a556b\n event: leave\n zone: zone.vkl\n - trigger: zone\n entity_id: device_tracker.sm_a556b\n event: leave\n zone: zone.adr\n - trigger: zone\n entity_id: device_tracker.sm_a556b\n event: leave\n zone: zone.amc\n conditions:\n - condition: time\n after: '14:00:00'\n before: '19:00:00'\n weekday:\n - mon\n - tue\n - wed\n - thu\n - fri\n actions:\n - alias: Register that Bob is travelling home\n action: input_boolean.turn_on\n target:\n entity_id: input_boolean.location_bob_travelling_home\n - alias: Update Waze sensor (it doesn't update automatically)\n action: homeassistant.update_entity\n entity_id: sensor.reistijd_bob_naar_huis\n - alias: Wait for the update to finish\n delay:\n seconds: 10\n - alias: Ok, let's tell the people!\n action: notify.mobile_devices_adults\n data:\n title: ♥ Bob is op weg naar huis!\n message: 'Waze denkt dat hij om {{ (now() + timedelta(minutes=(3 + states(\"sensor.reistijd_bob_naar_huis\")\n | int))).strftime(\"%H:%M\") }} thuis is.\n\n '\n data:\n alert_once: true\n car_ui: true\n clickAction: /lovelace/locations\n notification_icon: mdi:car-side\n persistent: true\n priority: high\n sticky: true\n tag: waze\n ttl: 0\n - action: notify.mobile_app_sm_a556b\n data:\n message: clear_notification\n data:\n tag: ask-waze\n ttl: 0\n priority: high\n - action: automation.turn_on\n target:\n entity_id: automation.update_waze_travel_time_to_home",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Update waze travel time to home",
|
|
"room": null,
|
|
"type": "automation",
|
|
"id": {
|
|
"entity_id": "automation.update_waze_travel_time_to_home",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device tracker SM A556b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Location Bob travelling home",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.location_bob_travelling_home",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Reistijd Bob naar huis",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.reistijd_bob_naar_huis",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "location_update_traveltime_notification_hmmbob",
|
|
"automation": "- id: location_update_traveltime_notification_hmmbob\n alias: Werk reistijd notificatie bij met nieuwe gegevens\n triggers:\n - trigger: state\n entity_id: sensor.reistijd_bob_naar_huis\n conditions:\n - alias: Check if we still think he's travelling home\n condition: state\n entity_id: input_boolean.location_bob_travelling_home\n state: 'on'\n actions:\n - alias: Estimated time of arrival is updated, let's inform the people\n action: notify.mobile_devices_adults\n data:\n title: ♥ Bob is op weg naar huis!\n message: 'Waze denkt dat hij om {{ (now() + timedelta(minutes=(3 + states(\"sensor.reistijd_bob_naar_huis\")\n | int))).strftime(\"%H:%M\") }} thuis is.\n\n '\n data:\n alert_once: true\n car_ui: true\n clickAction: /lovelace/locations\n notification_icon: mdi:car-side\n persistent: true\n priority: high\n sticky: true\n tag: waze\n ttl: 0",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Location Bob travelling home",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.location_bob_travelling_home",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Reistijd Bob naar huis",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.reistijd_bob_naar_huis",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "location_clear_traveltime_notification",
|
|
"automation": "- id: location_clear_traveltime_notification\n alias: Verwijder reistijd notificatie als ik weer thuis ben\n triggers:\n - trigger: zone\n entity_id: device_tracker.sm_a556b\n event: enter\n zone: zone.home\n conditions:\n - alias: Check if we still think he's travelling home\n condition: state\n entity_id: input_boolean.location_bob_travelling_home\n state: 'on'\n actions:\n - action: input_boolean.turn_off\n target:\n entity_id: input_boolean.location_bob_travelling_home\n - action: notify.mobile_devices_adults\n data:\n message: clear_notification\n data:\n tag: waze\n ttl: 0\n priority: high\n - action: automation.turn_off\n target:\n entity_id: automation.update_waze_travel_time_to_home",
|
|
"config": [
|
|
{
|
|
"name": "zone home",
|
|
"room": "home",
|
|
"type": "zone",
|
|
"id": {
|
|
"entity_id": "zone.home",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Update waze travel time to home",
|
|
"room": null,
|
|
"type": "automation",
|
|
"id": {
|
|
"entity_id": "automation.update_waze_travel_time_to_home",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device tracker SM A556b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Location Bob travelling home",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.location_bob_travelling_home",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "location_send_ev_charger_status",
|
|
"automation": "- id: location_send_ev_charger_status\n alias: Verstuur een melding om te laten weten of de laadpaal vrij is\n triggers:\n - trigger: zone\n entity_id: device_tracker.sm_a556b\n event: enter\n zone: zone.laadpaal_waarschuwing\n actions:\n - variables:\n laadpalen_werk:\n - sensor.laadpaal_werk_1\n - sensor.laadpaal_werk_2\n laadpalen_extra:\n - sensor.laadpaal_werk_3\n - sensor.laadpaal_werk_4\n message: \"{{'Er is een laadpaal vrij bij het station!' if (laadpalen_werk |\\\n \\ select('is_state', 'Available') | list | count > 0) \\n else 'Er is een\\\n \\ laadpaal vrij in de wijk!' if (laadpalen_extra | select('is_state', 'Available')\\\n \\ | list | count > 0) \\n else 'Helaas, geen laadpaal vrij.'}}\"\n - alias: Sending push notification\n action: notify.mobile_app_sm_a556b\n data:\n title: Laadpaal\n message: '{{ message }}'\n data:\n car_ui: true\n notification_icon: mdi:ev-station\n tag: charger_available\n ttl: 0\n priority: high",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device tracker SM A556b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a556b",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ups_notification",
|
|
"automation": "- id: ups_notification\n alias: Verstuur een melding als we op de UPS draaien\n mode: single\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id:\n - sensor.ups_battery_charge\n - sensor.ups_status_data\n variables:\n runtime_left: '{% set runtime = states(\"sensor.ups_battery_runtime\") | int %}\n {% set hours = runtime // 3600 %} {% set minutes = (runtime % 3600) // 60 %}\n {{ ''%du'' % hours if hours else '''' }}{{ ''%dm'' % minutes if minutes else\n '''' }}\n\n '\n conditions:\n - alias: Previous state of triggers is not unavailable or unkown\n condition: template\n value_template: '{{ trigger.from_state.state not in [''unavailable'', ''unknown'']\n }}'\n actions:\n - alias: Choose our status\n choose:\n - conditions:\n - alias: If we are On Battery DISCHaRGing\n condition: state\n entity_id: sensor.ups_status_data\n state: OB DISCHRG\n sequence:\n - alias: We're running on battery!\n action: notify.mobile_app_sm_a556b\n data:\n title: 🪫 UPS ingeschakeld!\n message: 'De servers draaien op UPS. Er is nog {{ runtime_left }} runtime\n over.\n\n '\n data:\n tag: UPS\n alert_once: true\n sticky: true\n persistent: true\n ttl: 0\n priority: high\n notification_icon: mdi:home-battery-outline\n car_ui: true\n - conditions:\n - alias: If we are On Line CHaRGing\n condition: state\n entity_id: sensor.ups_status_data\n state: OL CHRG\n sequence:\n - alias: We're back online, charging the UPS battery!\n action: notify.mobile_app_sm_a556b\n data:\n title: 🔋 UPS weer online & aan het opladen!\n message: 'Er is weer stroom. De UPS laadt weer op en is {{ states(\"sensor.ups_battery_charge\")\n }}% vol.\n\n '\n data:\n tag: UPS\n alert_once: true\n sticky: true\n persistent: true\n ttl: 0\n priority: high\n notification_icon: mdi:power-plug-battery-outline\n car_ui: true\n - conditions:\n - alias: If we are back OnLine\n condition: state\n entity_id: sensor.ups_status_data\n state: OL\n sequence:\n - action: notify.mobile_app_sm_a556b\n data:\n message: clear_notification\n data:\n tag: UPS",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "UPS battery charge",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.ups_battery_charge",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "UPS battery runtime",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.ups_battery_runtime",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "UPS status data",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.ups_status_data",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "warn_for_power_fail",
|
|
"automation": "- id: warn_for_power_fail\n alias: Stuur notificatie als een van de fases wegvalt\n mode: parallel\n triggers:\n - trigger: state\n entity_id:\n - binary_sensor.slimmelezer_power_failure_l1\n - binary_sensor.slimmelezer_power_failure_l2\n - binary_sensor.slimmelezer_power_failure_l3\n to: 'on'\n from: 'off'\n conditions: []\n actions:\n - alias: Power failure\n action: notify.mobile_app_sm_a556b\n data:\n title: Power failure\n message: '{{ state_attr(trigger.entity_id, ''friendly_name'') }}\n\n '\n data:\n tag: power_failure\n ttl: 0\n priority: high\n notification_icon: mdi:transmission-tower-off\n car_ui: true",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Slimmelezer power failure L1",
|
|
"room": null,
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.slimmelezer_power_failure_l1",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Slimmelezer power failure L2",
|
|
"room": null,
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.slimmelezer_power_failure_l2",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Slimmelezer power failure L3",
|
|
"room": null,
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.slimmelezer_power_failure_l3",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "lights_bijkeuken",
|
|
"automation": "- id: lights_bijkeuken\n alias: Zet de verlichting in de bijkeuken aan of uit\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.pir_bijkeuken_occupancy\n to: 'on'\n from: 'off'\n variables:\n action: turn_on\n - trigger: state\n entity_id: binary_sensor.pir_bijkeuken_occupancy\n to: 'off'\n from: 'on'\n variables:\n action: turn_off\n conditions:\n - condition: state\n entity_id: input_boolean.enable_pir_bijkeuken_automations\n state: 'on'\n actions:\n - alias: Bijkeuken lamp bedienen...\n action: switch.{{ action }}\n target:\n entity_id: switch.bijkeuken",
|
|
"config": [
|
|
{
|
|
"name": "PIR bijkeuken occupancy",
|
|
"room": "Bijkeuken",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_bijkeuken_occupancy",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Enable PIR bijkeuken automations",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.enable_pir_bijkeuken_automations",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Bijkeuken",
|
|
"room": "Bijkeuken",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.bijkeuken",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacation_turn_on_time",
|
|
"automation": "- id: vacation_turn_on_time\n alias: Zet de verlichting aan tijdens vakantie\n initial_state: true\n triggers:\n trigger: time\n at: input_datetime.time_vacation_lights_start\n conditions:\n - condition: state\n entity_id: input_boolean.vacation_mode_away\n state: 'on'\n actions:\n - delay: '{{ range(30*60) | random }}'\n alias: Random delay between now and 30mins\n - action: homeassistant.turn_on\n entity_id:\n - light.spots_woonkamer\n - light.spots_eetkamer\n - action: logbook.log\n data:\n name: Vacation\n message: Lights turned on at {{ now().strftime('%H:%M') }}.\n domain: light\n - action: notify.mobile_app_sm_a556b\n data:\n message: I turned your vacation lights on at {{ now().strftime('%H:%M') }}.\n title: Vacation lights\n data:\n ttl: 0\n priority: high",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean vacation mode away",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacation_mode_away",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Spots eetkamer",
|
|
"room": "Eetkamer",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.spots_eetkamer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Spots woonkamer",
|
|
"room": "Woonkamer",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.spots_woonkamer",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacation_turn_off_time",
|
|
"automation": "- id: vacation_turn_off_time\n alias: Zet de verlichting uit tijdens vakantie\n triggers:\n trigger: time\n at: input_datetime.time_vacation_lights_end\n conditions:\n - condition: state\n entity_id: input_boolean.vacation_mode_away\n state: 'on'\n actions:\n - delay: '{{ range(15*60) | random }}'\n alias: Random delay between now and 30mins\n - action: homeassistant.turn_off\n entity_id:\n - light.spots_woonkamer\n - light.spots_eetkamer\n - action: logbook.log\n data:\n name: Vacation\n message: Lights turned off at {{ now().strftime('%H:%M') }}.\n domain: light\n - action: notify.mobile_app_sm_a556b\n data:\n message: I turned your lights off at {{ now().strftime('%H:%M') }}.\n title: Vacation lights\n data:\n ttl: 0\n priority: high",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean vacation mode away",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacation_mode_away",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Spots eetkamer",
|
|
"room": "Eetkamer",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.spots_eetkamer",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Spots woonkamer",
|
|
"room": "Woonkamer",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.spots_woonkamer",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacation_movement_inside",
|
|
"automation": "- id: vacation_movement_inside\n alias: Beweging gedetecteerd tijdens vakantie\n trigger:\n - platform: state\n entity_id:\n - binary_sensor.fietsenhok_contact\n - binary_sensor.pir_bijkeuken_occupancy\n - binary_sensor.pir_gang_kapstok_motion_detection\n - binary_sensor.pir_gang_meterkast_motion_detection\n - binary_sensor.pir_inloopkast_occupancy\n - binary_sensor.poort_contact\n from: 'off'\n to: 'on'\n condition:\n - condition: state\n entity_id: input_boolean.vacation_mode_away\n state: 'on'\n action:\n - service: notify.mobile_app_sm_a556b\n data:\n message: Er is beweging gedetecteerd door {{ trigger.from_state.attributes.friendly_name\n }} ({{ now().strftime('%H:%M') }})\n title: Movement in the house\n data:\n ttl: 0\n priority: high\n notification_icon: mdi:shield-home\n - service: logbook.log\n data:\n name: Vacation\n message: Er is beweging gedetecteerd door {{ trigger.from_state.attributes.friendly_name\n }}.\n domain: binary_sensor",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "poort contact",
|
|
"room": "poort",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.poort_contact",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "fietsenhok contact",
|
|
"room": "fietsenhok",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.fietsenhok_contact",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean vacation mode away",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacation_mode_away",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "binary sensor pir gang",
|
|
"room": "gang",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_gang",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "binary sensor pir inloopkast occupancy",
|
|
"room": "inloopkast",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_inloopkast_occupancy",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "PIR bijkeuken occupancy",
|
|
"room": "Bijkeuken",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_bijkeuken_occupancy",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "PIR gang kapstok motion detection",
|
|
"room": "Gang",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_gang_kapstok_motion_detection",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "PIR gang meterkast motion detection",
|
|
"room": "Gang",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_gang_meterkast_motion_detection",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacuum_ask_to_run",
|
|
"automation": "- alias: Vraag of Rocky moet stofzuigen\n id: vacuum_ask_to_run\n variables:\n notification_service: '{% if is_state(\"device_tracker.sm_a566b\", \"home\") and is_state(\"device_tracker.sm_a556b\",\n \"home\") %}notify.mobile_devices_adults {% elif is_state(\"device_tracker.sm_a566b\",\n \"home\") %}notify.mobile_app_sm_a566b {% elif is_state(\"device_tracker.sm_a556b\",\n \"home\") %}notify.mobile_app_sm_a556b {% else %}notify.bogus {% endif %}\n\n '\n triggers:\n - trigger: time\n at: input_datetime.vacuum_ask_for_cleaning_time\n conditions:\n - condition: state\n entity_id: input_boolean.vacuum_enable_ask_for_cleaning\n state: 'on'\n - '{{ as_timestamp(now()) - as_timestamp(states(''sensor.rocky_last_clean_start''))\n > 86100 }}'\n - condition: state\n entity_id: input_boolean.vacation_mode_away\n state: 'off'\n actions:\n - alias: Vraag of Rocky een rondje moet doen\n action: '{{ notification_service }}'\n data:\n message: Zal ik gaan stofzuigen? 🧹🧹\n title: Rocky\n data:\n tag: vacuum\n actions:\n - action: vacuum_start_yes\n title: 🧹 Ja, graag!\n - action: vacuum_start_no\n title: Nee, dank je.\n ttl: 0\n priority: high\n notification_icon: mdi:robot-vacuum\n - alias: Wacht op antwoord...\n wait_for_trigger:\n - trigger: event\n event_type: mobile_app_notification_action\n event_data:\n action: vacuum_start_yes\n timeout: 01:00:00\n continue_on_timeout: false\n - alias: Start Rocky na bevestiging\n action: vacuum.start\n target:\n entity_id: vacuum.rocky",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "input boolean vacation mode away",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacation_mode_away",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device tracker SM A556b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device tracker SM A566b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a566b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Vacuum enable ask for cleaning",
|
|
"room": null,
|
|
"type": "input_boolean",
|
|
"id": {
|
|
"entity_id": "input_boolean.vacuum_enable_ask_for_cleaning",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky last clean start",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.rocky_last_clean_start",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky",
|
|
"room": null,
|
|
"type": "vacuum",
|
|
"id": {
|
|
"entity_id": "vacuum.rocky",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacuum_drive_to_trash",
|
|
"automation": "- alias: Stuur Rocky naar de vuilnisbak\n id: vacuum_drive_to_trash\n initial_state: 'on'\n triggers:\n - trigger: state\n entity_id: vacuum.rocky\n from: cleaning\n to: returning\n actions:\n - alias: Stop Rocky before sending goto command\n action: vacuum.stop\n entity_id: vacuum.rocky\n - delay: 00:00:02\n - alias: Send Rocky to the trash can\n action: vacuum.send_command\n data:\n command: app_goto_target\n params:\n - 30301\n - 29421\n target:\n entity_id: vacuum.rocky\n - alias: Wait for Rocky to arrive at trash can\n wait_for_trigger:\n - trigger: state\n entity_id: vacuum.rocky\n to: idle\n timeout: 00:05:00\n continue_on_timeout: false\n - action: notify.mobile_devices_adults\n data:\n message: 🧹 Hi! Ik moet geleegd worden en sta al bij de prullenbak. Druk na het\n legen op mijn 🏠 toets en ik ga terug naar mijn dock.\n title: Rocky\n data:\n tag: vacuum\n actions:\n - action: vacuum_return_to_dock\n title: Keer terug naar je dock\n ttl: 0\n priority: high\n notification_icon: mdi:robot-vacuum",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky",
|
|
"room": null,
|
|
"type": "vacuum",
|
|
"id": {
|
|
"entity_id": "vacuum.rocky",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacuum_return_to_dock",
|
|
"automation": "- alias: Stuur Rocky terug naar het dock\n id: vacuum_return_to_dock\n initial_state: 'on'\n triggers:\n - trigger: event\n event_type: mobile_app_notification_action\n event_data:\n action: vacuum_return_to_dock\n actions:\n - action: vacuum.return_to_base\n alias: Returning to dock\n target:\n entity_id: vacuum.rocky",
|
|
"config": [
|
|
{
|
|
"name": "Rocky",
|
|
"room": null,
|
|
"type": "vacuum",
|
|
"id": {
|
|
"entity_id": "vacuum.rocky",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacuum_notification_cleaning_started",
|
|
"automation": "- alias: Melding dat Rocky aan het stofzuigen is\n id: vacuum_notification_cleaning_started\n initial_state: 'on'\n triggers:\n - trigger: state\n entity_id: vacuum.rocky\n from: docked\n to: cleaning\n actions:\n - action: notify.mobile_app_sm_a556b\n data:\n title: Rocky\n message: Rocky doet zijn rondje! 🧹🧹\n data:\n tag: vacuum\n notification_icon: mdi:robot-vacuum",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky",
|
|
"room": null,
|
|
"type": "vacuum",
|
|
"id": {
|
|
"entity_id": "vacuum.rocky",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacuum_clear_messages",
|
|
"automation": "- alias: Verwijder notificaties van Rocky\n id: vacuum_clear_messages\n initial_state: 'on'\n triggers:\n - trigger: state\n entity_id: sensor.rocky_vacuum_error\n to: none\n - trigger: state\n entity_id: vacuum.rocky\n from: returning\n to: docked\n actions:\n - action: notify.mobile_devices_adults\n data:\n message: clear_notification\n data:\n tag: vacuum\n ttl: 0\n priority: high",
|
|
"config": [
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky vacuum error",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.rocky_vacuum_error",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky",
|
|
"room": null,
|
|
"type": "vacuum",
|
|
"id": {
|
|
"entity_id": "vacuum.rocky",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacuum_notification_error",
|
|
"automation": "- alias: Melding dat Rocky in foutmodus staat\n id: vacuum_notification_error\n initial_state: 'on'\n variables:\n notification_service: '{% if is_state(\"device_tracker.sm_a566b\", \"home\") and is_state(\"device_tracker.sm_a556b\",\n \"home\") %}notify.mobile_devices_adults {% elif is_state(\"device_tracker.sm_a566b\",\n \"home\") %}notify.mobile_app_sm_a566b {% elif is_state(\"device_tracker.sm_a556b\",\n \"home\") %}notify.mobile_app_sm_a556b {% else %}notify.bogus {% endif %}\n\n '\n triggers:\n - trigger: state\n entity_id: sensor.rocky_vacuum_error\n conditions:\n - condition: not\n conditions:\n - condition: state\n entity_id: sensor.rocky_vacuum_error\n state: none\n - condition: state\n entity_id: sensor.rocky_vacuum_error\n state: unavailable\n actions:\n - action: '{{ notification_service }}'\n data:\n title: Rocky heeft een probleem\n message: 'Foutmelding: {{state_translated(''sensor.rocky_vacuum_error'')}}'\n data:\n tag: vacuum\n ttl: 0\n priority: high\n notification_icon: mdi:robot-vacuum",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "mobile devices adults",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_devices_adults",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device tracker SM A556b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Device tracker SM A566b",
|
|
"room": null,
|
|
"type": "device_tracker",
|
|
"id": {
|
|
"entity_id": "device_tracker.sm_a566b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky vacuum error",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.rocky_vacuum_error",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "vacuum_consumable_warning",
|
|
"automation": "- alias: Waarschuw als Rocky onderhoud nodig heeft\n id: vacuum_consumable_warning\n initial_state: 'on'\n mode: queued\n variables:\n consumables:\n - sensor: sensor.rocky_filter_time_left\n button: button.rocky_reset_air_filter_consumable\n name: filter\n - sensor: sensor.rocky_main_brush_time_left\n button: button.rocky_reset_main_brush_consumable\n name: hoofd borstel\n - sensor: sensor.rocky_sensor_time_left\n button: button.rocky_reset_sensor_consumable\n name: sensor\n - sensor: sensor.rocky_side_brush_time_left\n button: button.rocky_reset_side_brush_consumable\n name: zijborstel\n trigger:\n - platform: numeric_state\n entity_id:\n - sensor.rocky_filter_time_left\n - sensor.rocky_main_brush_time_left\n - sensor.rocky_sensor_time_left\n - sensor.rocky_side_brush_time_left\n below: 0\n action:\n - variables:\n triggered_sensor: '{{ trigger.entity_id }}'\n consumable: '{{ consumables | selectattr(''sensor'', ''eq'', triggered_sensor)\n | list | first }}'\n - service: notify.mobile_app_sm_a556b\n data:\n title: Rocky onderhoud nodig\n message: De {{ consumable.name }} van Rocky moet worden vervangen of schoongemaakt.\n Wil je de teller resetten?\n data:\n tag: rocky_maintenance\n notification_icon: mdi:robot-vacuum\n actions:\n - action: reset_consumable\n title: Reset teller\n - action: ignore\n title: Later\n ttl: 0\n priority: high\n - wait_for_trigger:\n - platform: event\n event_type: mobile_app_notification_action\n event_data:\n action: reset_consumable\n timeout: 01:00:00\n continue_on_timeout: false\n - choose:\n - conditions: '{{ wait.trigger is not none }}'\n sequence:\n - service: button.press\n target:\n entity_id: '{{ consumable.button }}'\n - conditions: '{{ wait.trigger is none }}'\n sequence:\n - service: persistent_notification.create\n data:\n title: Rocky onderhoud niet gereset\n message: De {{ consumable.name }} teller is niet gereset. Vergeet het niet\n als je onderhoud hebt gedaan!\n notification_id: rocky_maintenance_{{ consumable.name }}",
|
|
"config": [
|
|
{
|
|
"name": "mobile app sm a556b",
|
|
"room": null,
|
|
"type": "notify",
|
|
"id": {
|
|
"entity_id": "notify.mobile_app_sm_a556b",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky filter time left",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.rocky_filter_time_left",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky main brush time left",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.rocky_main_brush_time_left",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky sensor time left",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.rocky_sensor_time_left",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Rocky side brush time left",
|
|
"room": null,
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.rocky_side_brush_time_left",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ventilation_handle_button",
|
|
"automation": "- id: ventilation_handle_button\n alias: Start de ventilatie timer als we op een knop drukken\n triggers:\n - trigger: state\n entity_id:\n - event.drukknop_badkamer_action\n - event.drukknop_badkamer_zolder_action\n - event.drukknop_bijkeuken_action\n to: null\n variables:\n event: '{{ trigger.to_state.attributes.event_type | default(''unknown'', true)\n }}'\n conditions:\n - '{{ event not in [''unknown'',''unavailable''] }}'\n actions:\n - action: timer.start\n target:\n entity_id: timer.fan_runtime\n data:\n duration: '{{''01:00:00'' if event in [''brightness_move_up'',''1_long_press'']\n else ''00:30:00''}}'",
|
|
"config": [
|
|
{
|
|
"name": "timer fan runtime",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.fan_runtime",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Drukknop badkamer action",
|
|
"room": "Badkamer",
|
|
"type": "event",
|
|
"id": {
|
|
"entity_id": "event.drukknop_badkamer_action",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Drukknop badkamer zolder action",
|
|
"room": "Badkamer zolder",
|
|
"type": "event",
|
|
"id": {
|
|
"entity_id": "event.drukknop_badkamer_zolder_action",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Drukknop bijkeuken action",
|
|
"room": "Bijkeuken",
|
|
"type": "event",
|
|
"id": {
|
|
"entity_id": "event.drukknop_bijkeuken_action",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ventilation_boost_speed",
|
|
"automation": "- id: ventilation_boost_speed\n alias: Stel een hogere ventilatiesnelheid in als de timer start\n triggers:\n - trigger: event\n event_type: timer.started\n event_data:\n entity_id: timer.fan_runtime\n actions:\n - alias: Boost ventilation on request\n action: fan.set_percentage\n target:\n entity_id: fan.open_air_mini\n data:\n percentage: 80",
|
|
"config": [
|
|
{
|
|
"name": "timer fan runtime",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.fan_runtime",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Open air mini",
|
|
"room": null,
|
|
"type": "fan",
|
|
"id": {
|
|
"entity_id": "fan.open_air_mini",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ventilation_set_speed",
|
|
"automation": "- id: ventilation_set_speed\n alias: Stel de ventilatiesnelheid in\n mode: queued\n triggers:\n - trigger: time\n id: time\n at:\n - 07:00:00\n - 09:00:00\n - '21:15:00'\n - trigger: homeassistant\n event: start\n id: ha_start\n - trigger: event\n event_type: automation_reloaded\n id: automation_reload\n - trigger: event\n event_type: timer.finished\n event_data:\n entity_id: timer.fan_runtime\n actions:\n - alias: Check if this is triggered by HA restart\n if:\n condition: trigger\n id: ha_start\n then:\n - delay:\n minutes: 1\n - alias: Cancel any running timers\n action: timer.cancel\n target:\n entity_id: timer.fan_runtime\n - alias: Checking what time it is...\n choose:\n - alias: It's between 7hrs and 09:00 and on a working day\n conditions:\n - condition: time\n after: 06:59:59\n before: 09:00:00\n - condition: state\n entity_id: binary_sensor.werkdag\n state: 'on'\n sequence:\n - alias: Boost during morning hours because of showering\n action: fan.set_percentage\n target:\n entity_id: fan.open_air_mini\n data:\n percentage: 70\n - alias: It's between 09hrs and 21hrs\n conditions:\n - condition: time\n after: 08:59:59\n before: '21:00:00'\n sequence:\n - alias: Run at half speed during the day\n action: fan.set_percentage\n target:\n entity_id: fan.open_air_mini\n data:\n percentage: 50\n - alias: It's between 21hrs and 7hrs\n conditions:\n - condition: time\n after: '20:59:59'\n before: 07:00:00\n sequence:\n - alias: Sleep tight\n action: fan.set_percentage\n target:\n entity_id: fan.open_air_mini\n data:\n percentage: 20",
|
|
"config": [
|
|
{
|
|
"name": "timer fan runtime",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.fan_runtime",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Werkdag",
|
|
"room": null,
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.werkdag",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "Open air mini",
|
|
"room": null,
|
|
"type": "fan",
|
|
"id": {
|
|
"entity_id": "fan.open_air_mini",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "wakeup_light_maxi",
|
|
"automation": "- id: wakeup_light_maxi\n alias: Wakeup light maxi\n mode: single\n triggers:\n - trigger: time\n at: sensor.zolder_alarms\n conditions: []\n actions:\n - action: light.turn_on\n data:\n brightness_pct: 100\n color_temp_kelvin: 3500\n target:\n entity_id: light.sonoff_l1\n - action: light.turn_on\n target:\n entity_id: light.battletron_ball_light_m\n - delay: 00:05:00\n - service: light.turn_off\n entity_id:\n - light.battletron_ball_light_m\n - light.sonoff_l1",
|
|
"config": [
|
|
{
|
|
"name": "sonoff l1",
|
|
"room": null,
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.sonoff_l1",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "battletron ball light m",
|
|
"room": null,
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.battletron_ball_light_m",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "zolder alarms",
|
|
"room": "zolder",
|
|
"type": "sensor",
|
|
"id": {
|
|
"entity_id": "sensor.zolder_alarms",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "lights_wc_beneden",
|
|
"automation": "- id: lights_wc_beneden\n alias: Zet de verlichting van de WC beneden aan of uit\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.pir_wc_beneden_occupancy\n to: 'on'\n from: 'off'\n variables:\n action: turn_on\n - trigger: state\n entity_id: binary_sensor.pir_wc_beneden_occupancy\n to: 'off'\n from: 'on'\n for: 00:01:00\n variables:\n action: turn_off\n conditions: []\n actions:\n - alias: Lamp WC beneden bedienen...\n action: switch.{{ action }}\n target:\n entity_id: switch.wc_beneden",
|
|
"config": [
|
|
{
|
|
"name": "binary sensor pir wc beneden occupancy",
|
|
"room": "wc_beneden",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_wc_beneden_occupancy",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "switch wc beneden",
|
|
"room": "wc_beneden",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.wc_beneden",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ventilation_wc_beneden",
|
|
"automation": "- id: ventilation_wc_beneden\n alias: Ventilatie aan als iemand lang op de WC beneden zit\n triggers:\n - trigger: state\n entity_id: switch.wc_beneden\n to: 'on'\n for: 00:03:00\n conditions:\n - alias: Als de ventilatie timer nog niet loopt\n condition: state\n entity_id: timer.fan_runtime\n state: idle\n actions:\n - alias: Afzuiging aanzetten\n action: timer.start\n target:\n entity_id: timer.fan_runtime\n data:\n duration: 00:10:00",
|
|
"config": [
|
|
{
|
|
"name": "switch wc beneden",
|
|
"room": "wc_beneden",
|
|
"type": "switch",
|
|
"id": {
|
|
"entity_id": "switch.wc_beneden",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "timer fan runtime",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.fan_runtime",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "lights_wc_boven",
|
|
"automation": "- id: lights_wc_boven\n alias: Zet de verlichting van de WC boven aan of uit\n mode: restart\n max_exceeded: silent\n triggers:\n - trigger: state\n entity_id: binary_sensor.pir_wc_boven_occupancy\n to: 'on'\n from: 'off'\n id: turn_on\n - trigger: state\n entity_id: binary_sensor.pir_wc_boven_occupancy\n to: 'off'\n from: 'on'\n id: turn_off\n conditions: []\n actions:\n - alias: Checking what to do\n choose:\n - alias: Do we need to turn on the lights?\n conditions:\n - '{{ trigger.id == ''turn_on'' }}'\n sequence:\n - if:\n - alias: Is het tijdens de donkere uren?\n condition: time\n after: '22:30:00'\n before: 06:45:00\n then:\n - alias: Lamp WC boven gedimd aan...\n action: light.turn_on\n target:\n entity_id: light.wc_boven\n data:\n brightness: 80\n else:\n - alias: Lamp WC boven voluit aan...\n action: light.turn_on\n target:\n entity_id: light.wc_boven\n data:\n brightness: 255\n - alias: Do we need to turn off the lights?\n conditions:\n - '{{ trigger.id == ''turn_off'' }}'\n sequence:\n - alias: Lamp WC boven uitzetten...\n action: light.turn_off\n target:\n entity_id: light.wc_boven",
|
|
"config": [
|
|
{
|
|
"name": "binary sensor pir wc boven occupancy",
|
|
"room": "wc_boven",
|
|
"type": "binary_sensor",
|
|
"id": {
|
|
"entity_id": "binary_sensor.pir_wc_boven_occupancy",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "light wc boven",
|
|
"room": "wc_boven",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.wc_boven",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "ventilation_wc_boven",
|
|
"automation": "- id: ventilation_wc_boven\n alias: Ventilatie aan als iemand lang op de WC zit\n triggers:\n - trigger: state\n entity_id: light.wc_boven\n to: 'on'\n for: 00:03:00\n conditions:\n - alias: Als de ventilatie timer nog niet loopt\n condition: state\n entity_id: timer.fan_runtime\n state: idle\n actions:\n - alias: Afzuiging aanzetten\n action: timer.start\n target:\n entity_id: timer.fan_runtime\n data:\n duration: 00:10:00",
|
|
"config": [
|
|
{
|
|
"name": "timer fan runtime",
|
|
"room": null,
|
|
"type": "timer",
|
|
"id": {
|
|
"entity_id": "timer.fan_runtime",
|
|
"device_id": null
|
|
}
|
|
},
|
|
{
|
|
"name": "light wc boven",
|
|
"room": "wc_boven",
|
|
"type": "light",
|
|
"id": {
|
|
"entity_id": "light.wc_boven",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "rotate_turns",
|
|
"automation": "- id: rotate_turns\n alias: Wissel de beurt voor het tafeldekken\n triggers:\n - trigger: time\n at:\n - 00:01:00\n weekday:\n - mon\n actions:\n - action: input_select.select_next\n target:\n entity_id: input_select.tafeldekken_beurt",
|
|
"config": [
|
|
{
|
|
"name": "input select tafeldekken beurt",
|
|
"room": null,
|
|
"type": "input_select",
|
|
"id": {
|
|
"entity_id": "input_select.tafeldekken_beurt",
|
|
"device_id": null
|
|
}
|
|
}
|
|
]
|
|
}
|
|
] |