From: Giorgio Ravera Date: Mon, 20 Apr 2020 20:07:31 +0000 (+0200) Subject: Reviewd Alarm package X-Git-Url: http://git.giorgioravera.it/?a=commitdiff_plain;h=d56a4bc82d8cdf5aa02b425f2536f251a19d15bc;p=homeassistant.git Reviewd Alarm package --- diff --git a/packages/alarm/alarm_engine.yaml b/packages/alarm/alarm_engine.yaml new file mode 100644 index 00000000..1e51cfa4 --- /dev/null +++ b/packages/alarm/alarm_engine.yaml @@ -0,0 +1,61 @@ +###################################################################### +# Alarm Package - Input Booleans +###################################################################### + +input_boolean: + + # Generic Alarms + alarms: + name: Allarme + icon: mdi:alarm-light-outline + +# # Alarms: Door +# door_alarm: +# name: Allarme Porta +# icon: mdi:door-open + +###################################################################### +# Alarm Package - Binary Sensors +###################################################################### + +binary_sensor: + + # Generic Alarms + - platform: template + sensors: + alarms: + friendly_name: Allarmi + entity_id: input_boolean.alarms + value_template: >- + {{ is_state('input_boolean.alarms', 'on') }} + icon_template: >- + {% if is_state('input_boolean.alarms', 'on') %} + mdi:alarm-light + {% else %} + mdi:alarm-light-outline + {% endif %} + +###################################################################### +# Alarm Package - Automation +###################################################################### + +automation: + + ###################################################################### + # Alarm Automation: Aknowledge Alarms + # + # Actions: + # - persistent_notification.dismiss + # - script.stop_alarm + ###################################################################### + + - alias: "Alarms: Riconoscimento Allarmi" + initial_state: 'on' + + trigger: + platform: state + entity_id: input_boolean.alarms + to: 'off' + + action: + - service: script.stop_alarm diff --git a/packages/alarm/notifications.yaml b/packages/alarm/notifications.yaml new file mode 100644 index 00000000..8c4461e2 --- /dev/null +++ b/packages/alarm/notifications.yaml @@ -0,0 +1,169 @@ +###################################################################### +# Alarm Package: Notifications +###################################################################### + +script: + + ###################################################################### + # Alarm: Start Alarm Sound + # + # Operations: + # - media_player.volume_set + # - media_player.play_media + ###################################################################### + + start_alarm_sound: + alias: "Allarmi: Avvia Suono" + sequence: + - service: media_player.volume_set + data_template: + entity_id: 'media_player.google_home' + volume_level: 0.4 + + - service: media_player.play_media + data_template: + entity_id: 'media_player.google_home' + media_content_type: 'audio/mp4' + media_content_id: 'https://home.giorgioravera.it/local/audio/alarm.mp3' + + ###################################################################### + # Alarm: Stop Alarm Sound + # + # Operations: + # - media_player.media_stop + # - script.volume_manager + ###################################################################### + + stop_alarm_sound: + alias: "Allarmi: Interrompi Suono" + sequence: + - service: media_player.media_stop + data_template: + entity_id: 'media_player.google_home' + + - service: script.volume_manager + data_template: + media_player: 'media_player.google_home' + + ###################################################################### + # Alarm: Start Alarm Level 1 + # Inputs: + # - title + # - message + # + # Operations: + # - script.notify_text + ###################################################################### + + start_alarm_level_1: + alias: "Allarmi: Attiva Allarme 1" + sequence: + + - condition: template + value_template: >- + {# Check Null Input #} + {% if level | length == 0 %} + {% set level = 1 %} + {% endif %} + {% if level | int >= 1 %} + true + {% else %} + false + {% endif %} + + - service: script.notify_all + data_template: + volume_level: 0.4 + language: 'it' + title: >- + {# Check Null Input #} + {% if title | length == 0 %} + {% set title = 'Allarme Generico' %} + {% endif %} + Home Assistant - {{ title }} + message: >- + {# Check Null Input #} + {% if message | length == 0 %} + {% set message = 'Allarme Generico' %} + {% endif %} + {{ message }} + enable_persistent: 1 + notification_id: "alarm" + + ###################################################################### + # Alarm: Start Alarm Level 2 + # Inputs: + # - level + # + # Operations: + # - start_alarm_sound + ###################################################################### + + start_alarm_level_2: + alias: "Allarmi: Attiva Allarme 2" + sequence: + + - condition: template + value_template: >- + {# Check Null Input #} + {% if level | length == 0 %} + {% set level = 1 %} + {% endif %} + {% if level | int >= 2 %} + true + {% else %} + false + {% endif %} + + - service: script.start_alarm_sound + + ###################################################################### + # Alarm: Start Alarm + # Inputs: + # - title + # - message + # - level + # + # Operations: + # - input_boolean.turn_on + # - script.start_alarm_level_1 + # - script.start_alarm_level_2 + ###################################################################### + + start_alarm: + alias: "Allarmi: Attiva Allarme" + sequence: + - service: input_boolean.turn_on + entity_id: input_boolean.alarms + + - service: script.start_alarm_level_1 + data_template: + title: "{{ title }}" + message: "{{ message }}" + level: "{{ level }}" + + - service: script.start_alarm_level_2 + data_template: + title: "{{ title }}" + message: "{{ message }}" + level: "{{ level }}" + + ###################################################################### + # Alarm: Stop Alarm + # + # Operations: + # - stop_alarm_sound + # - persistent_notification.dismiss + ###################################################################### + + stop_alarm: + alias: "Allarmi: Disattiva Allarme" + sequence: + - service: input_boolean.turn_off + entity_id: input_boolean.alarms + + - service: script.stop_alarm_sound + + - service: persistent_notification.dismiss + data_template: + notification_id: "alarm" diff --git a/packages/alarm/triggers.yaml b/packages/alarm/triggers.yaml new file mode 100644 index 00000000..4241b5a1 --- /dev/null +++ b/packages/alarm/triggers.yaml @@ -0,0 +1,32 @@ +###################################################################### +# Alarms Package - Automation based on Events +###################################################################### + +automation: + + ###################################################################### + # Alarm Door + # + # Actions: + # - script.notify_all + ###################################################################### + + - alias: "Allarme Porta Casa" + initial_state: 'on' + + trigger: + - platform: state + entity_id: binary_sensor.porta_casa + to: 'on' + + condition: + - condition: state + entity_id: binary_sensor.guard_mode + state: 'on' + + action: + - service: script.start_alarm + data_template: + title: "Presenza non autorizzata" + message: "È stata rilevata una presenza non autorizzata." + level: 1 diff --git a/packages/alarm_events/doors.yaml b/packages/alarm_events/doors.yaml deleted file mode 100644 index 4241b5a1..00000000 --- a/packages/alarm_events/doors.yaml +++ /dev/null @@ -1,32 +0,0 @@ -###################################################################### -# Alarms Package - Automation based on Events -###################################################################### - -automation: - - ###################################################################### - # Alarm Door - # - # Actions: - # - script.notify_all - ###################################################################### - - - alias: "Allarme Porta Casa" - initial_state: 'on' - - trigger: - - platform: state - entity_id: binary_sensor.porta_casa - to: 'on' - - condition: - - condition: state - entity_id: binary_sensor.guard_mode - state: 'on' - - action: - - service: script.start_alarm - data_template: - title: "Presenza non autorizzata" - message: "È stata rilevata una presenza non autorizzata." - level: 1 diff --git a/packages/alarm_system/alarms.yaml b/packages/alarm_system/alarms.yaml deleted file mode 100644 index 58769c8b..00000000 --- a/packages/alarm_system/alarms.yaml +++ /dev/null @@ -1,61 +0,0 @@ -###################################################################### -# Alarm Package - Input Booleans -###################################################################### - -input_boolean: - - # Generic Alarms - alarms: - name: Allarme - icon: mdi:alarm-light-outline - -# # Alarms: Door -# door_alarm: -# name: Allarme Porta -# icon: mdi:door-open - -###################################################################### -# Alarm Package - Binary Sensors -###################################################################### - -binary_sensor: - - # Generic Alarms - - platform: template - sensors: - alarms: - friendly_name: Allarmi - entity_id: input_boolean.alarms - value_template: >- - {{ is_state('input_boolean.alarms', 'on') }} - icon_template: >- - {% if is_state('input_boolean.alarms', 'on') %} - mdi:alarm-light - {% else %} - mdi:alarm-light-outline - {% endif %} - -###################################################################### -# Alarm Package - Automation -###################################################################### - -automation: - - ###################################################################### - # Alarm Automation: Aknowledge Alarms - # - # Actions: - # - persistent_notification.dismiss - # - script.stop_alarm - ###################################################################### - - - alias: "Alarms: Riconoscimento Allarmi" - initial_state: 'on' - - trigger: - platform: state - entity_id: input_boolean.alarms - to: 'off' - - action: - - service: script.stop_alarm \ No newline at end of file diff --git a/packages/alarm_system/alarms_scripts.yaml b/packages/alarm_system/alarms_scripts.yaml deleted file mode 100644 index c8cd0ff4..00000000 --- a/packages/alarm_system/alarms_scripts.yaml +++ /dev/null @@ -1,169 +0,0 @@ -###################################################################### -# Alarm Script Package -###################################################################### - -script: - - ###################################################################### - # Alarm: Start Alarm Sound - # - # Operations: - # - media_player.volume_set - # - media_player.play_media - ###################################################################### - - start_alarm_sound: - alias: "Allarmi: Avvia Suono" - sequence: - - service: media_player.volume_set - data_template: - entity_id: 'media_player.google_home' - volume_level: 0.4 - - - service: media_player.play_media - data_template: - entity_id: 'media_player.google_home' - media_content_type: 'audio/mp4' - media_content_id: 'https://home.giorgioravera.it/local/audio/alarm.mp3' - - ###################################################################### - # Alarm: Stop Alarm Sound - # - # Operations: - # - media_player.media_stop - # - script.volume_manager - ###################################################################### - - stop_alarm_sound: - alias: "Allarmi: Interrompi Suono" - sequence: - - service: media_player.media_stop - data_template: - entity_id: 'media_player.google_home' - - - service: script.volume_manager - data_template: - media_player: 'media_player.google_home' - - ###################################################################### - # Alarm: Start Alarm Level 1 - # Inputs: - # - title - # - message - # - # Operations: - # - script.notify_text - ###################################################################### - - start_alarm_level_1: - alias: "Allarmi: Attiva Allarme 1" - sequence: - - - condition: template - value_template: >- - {# Check Null Input #} - {% if level | length == 0 %} - {% set level = 1 %} - {% endif %} - {% if level | int >= 1 %} - true - {% else %} - false - {% endif %} - - - service: script.notify_all - data_template: - volume_level: 0.4 - language: 'it' - title: >- - {# Check Null Input #} - {% if title | length == 0 %} - {% set title = 'Allarme Generico' %} - {% endif %} - Home Assistant - {{ title }} - message: >- - {# Check Null Input #} - {% if message | length == 0 %} - {% set message = 'Allarme Generico' %} - {% endif %} - {{ message }} - enable_persistent: 1 - notification_id: "alarm" - - ###################################################################### - # Alarm: Start Alarm Level 2 - # Inputs: - # - level - # - # Operations: - # - start_alarm_sound - ###################################################################### - - start_alarm_level_2: - alias: "Allarmi: Attiva Allarme 2" - sequence: - - - condition: template - value_template: >- - {# Check Null Input #} - {% if level | length == 0 %} - {% set level = 1 %} - {% endif %} - {% if level | int >= 2 %} - true - {% else %} - false - {% endif %} - - - service: script.start_alarm_sound - - ###################################################################### - # Alarm: Start Alarm - # Inputs: - # - title - # - message - # - level - # - # Operations: - # - input_boolean.turn_on - # - script.start_alarm_level_1 - # - script.start_alarm_level_2 - ###################################################################### - - start_alarm: - alias: "Allarmi: Attiva Allarme" - sequence: - - service: input_boolean.turn_on - entity_id: input_boolean.alarms - - - service: script.start_alarm_level_1 - data_template: - title: "{{ title }}" - message: "{{ message }}" - level: "{{ level }}" - - - service: script.start_alarm_level_2 - data_template: - title: "{{ title }}" - message: "{{ message }}" - level: "{{ level }}" - - ###################################################################### - # Alarm: Stop Alarm - # - # Operations: - # - stop_alarm_sound - # - persistent_notification.dismiss - ###################################################################### - - stop_alarm: - alias: "Allarmi: Disattiva Allarme" - sequence: - - service: input_boolean.turn_off - entity_id: input_boolean.alarms - - - service: script.stop_alarm_sound - - - service: persistent_notification.dismiss - data_template: - notification_id: "alarm"