Added new weather alert sensors to use in lovelace based on nws_alerts
This commit is contained in:
parent
fbd34a38a2
commit
96a0a938b5
|
@ -28,6 +28,9 @@ input_boolean:
|
||||||
weather_alert_texts:
|
weather_alert_texts:
|
||||||
name: Weather Alert Texts
|
name: Weather Alert Texts
|
||||||
icon: mdi:telegram
|
icon: mdi:telegram
|
||||||
|
lightning_warning:
|
||||||
|
name: Lightning Warning
|
||||||
|
icon: mdi:flash-alert
|
||||||
|
|
||||||
### You first need to find either your NWS Zone ID or County ID. I’m not sure which is better but I used my Zone ID here.
|
### You first need to find either your NWS Zone ID or County ID. I’m not sure which is better but I used my Zone ID here.
|
||||||
### You can find your Zone ID by going to https://alerts.weather.gov/ 7, scroll down to your state and click on the “zone list” then look for the entry for your county.
|
### You can find your Zone ID by going to https://alerts.weather.gov/ 7, scroll down to your state and click on the “zone list” then look for the entry for your county.
|
||||||
|
@ -40,6 +43,93 @@ sensor:
|
||||||
- platform: nws_alerts
|
- platform: nws_alerts
|
||||||
zone_id: 'GAZ034,GAC135'
|
zone_id: 'GAZ034,GAC135'
|
||||||
|
|
||||||
|
- platform: template
|
||||||
|
sensors:
|
||||||
|
flood_watch:
|
||||||
|
friendly_name: 'Flood Watch'
|
||||||
|
value_template: >-
|
||||||
|
{% if 'Flood Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[0] or
|
||||||
|
'Flood Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[1] or
|
||||||
|
'Flood Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[2] or
|
||||||
|
'Flood Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[3] or
|
||||||
|
'Flood Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[4] or
|
||||||
|
'Flood Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[5]
|
||||||
|
%}
|
||||||
|
{{ states.sensor.nws_alerts.attributes.spoken_desc }}
|
||||||
|
{% else %}
|
||||||
|
inactive
|
||||||
|
{% endif %}
|
||||||
|
flood_warning:
|
||||||
|
friendly_name: 'Flood Warning'
|
||||||
|
value_template: >-
|
||||||
|
{% if 'Flood Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[0] or
|
||||||
|
'Flood Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[1] or
|
||||||
|
'Flood Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[2] or
|
||||||
|
'Flood Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[3] or
|
||||||
|
'Flood Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[4] or
|
||||||
|
'Flood Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[5]
|
||||||
|
%}
|
||||||
|
{{ states.sensor.nws_alerts.attributes.spoken_desc }}
|
||||||
|
{% else %}
|
||||||
|
inactive
|
||||||
|
{% endif %}
|
||||||
|
tstorm_warning:
|
||||||
|
friendly_name: 'Thunderstorm Warning'
|
||||||
|
value_template: >-
|
||||||
|
{% if 'Thunderstorm Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[0] or
|
||||||
|
'Thunderstorm Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[1] or
|
||||||
|
'Thunderstorm Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[2] or
|
||||||
|
'Thunderstorm Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[3] or
|
||||||
|
'Thunderstorm Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[4] or
|
||||||
|
'Thunderstorm Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[5]
|
||||||
|
%}
|
||||||
|
{{ states.sensor.nws_alerts.attributes.spoken_desc }}
|
||||||
|
{% else %}
|
||||||
|
inactive
|
||||||
|
{% endif %}
|
||||||
|
tstorm_watch:
|
||||||
|
friendly_name: 'Thunderstorm Watch'
|
||||||
|
value_template: >-
|
||||||
|
{% if 'Thunderstorm Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[0] or
|
||||||
|
'Thunderstorm Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[1] or
|
||||||
|
'Thunderstorm Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[2] or
|
||||||
|
'Thunderstorm Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[3] or
|
||||||
|
'Thunderstorm Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[4] or
|
||||||
|
'Thunderstorm Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[5]
|
||||||
|
%}
|
||||||
|
{{ states.sensor.nws_alerts.attributes.spoken_desc }}
|
||||||
|
{% else %}
|
||||||
|
inactive
|
||||||
|
{% endif %}
|
||||||
|
tornado_watch:
|
||||||
|
friendly_name: 'Tornado Watch'
|
||||||
|
value_template: >-
|
||||||
|
{% if 'Tornado Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[0] or
|
||||||
|
'Tornado Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[1] or
|
||||||
|
'Tornado Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[2] or
|
||||||
|
'Tornado Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[3] or
|
||||||
|
'Tornado Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[4] or
|
||||||
|
'Tornado Watch' in states.sensor.nws_alerts.attributes.title.split(' - ')[5]
|
||||||
|
%}
|
||||||
|
{{ states.sensor.nws_alerts.attributes.spoken_desc }}
|
||||||
|
{% else %}
|
||||||
|
inactive
|
||||||
|
{% endif %}
|
||||||
|
tornado_warning:
|
||||||
|
friendly_name: 'Tornado Warning'
|
||||||
|
value_template: >-
|
||||||
|
{% if 'Tornado Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[0] or
|
||||||
|
'Tornado Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[1] or
|
||||||
|
'Tornado Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[2] or
|
||||||
|
'Tornado Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[3] or
|
||||||
|
'Tornado Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[4] or
|
||||||
|
'Tornado Warning' in states.sensor.nws_alerts.attributes.title.split(' - ')[5]
|
||||||
|
%}
|
||||||
|
{{ states.sensor.nws_alerts.attributes.spoken_desc }}
|
||||||
|
{% else %}
|
||||||
|
inactive
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
automation:
|
automation:
|
||||||
- alias: 'NWS Weather Alert Pop Up Control'
|
- alias: 'NWS Weather Alert Pop Up Control'
|
||||||
initial_state: 'on'
|
initial_state: 'on'
|
||||||
|
@ -83,6 +173,14 @@ automation:
|
||||||
"{{ states.sensor.nws_alerts.attributes.display_desc.split('\n\n-\n\n')[0] }}"
|
"{{ states.sensor.nws_alerts.attributes.display_desc.split('\n\n-\n\n')[0] }}"
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
- alias: 'NWS Weather Sensor Refresh'
|
||||||
|
initial_state: 'on'
|
||||||
|
trigger:
|
||||||
|
platform: state
|
||||||
|
entity_id: sensor.nws_alerts
|
||||||
|
action:
|
||||||
|
- service: script.refresh_weather_alert_sensors
|
||||||
|
|
||||||
- alias: NWS Notification Weather Alert
|
- alias: NWS Notification Weather Alert
|
||||||
initial_state: 'on'
|
initial_state: 'on'
|
||||||
trigger:
|
trigger:
|
||||||
|
@ -207,6 +305,40 @@ automation:
|
||||||
title: "Tornado Warning!"
|
title: "Tornado Warning!"
|
||||||
message: "The National Weather Service Has issued a Tornado Warning for our area."
|
message: "The National Weather Service Has issued a Tornado Warning for our area."
|
||||||
|
|
||||||
|
- alias: Lightning Detected
|
||||||
|
initial_state: 'on'
|
||||||
|
trigger:
|
||||||
|
- platform: geo_location
|
||||||
|
source: wwlln
|
||||||
|
zone: zone.lightning_warning
|
||||||
|
event: enter
|
||||||
|
action:
|
||||||
|
# - service: input_boolean.turn_on
|
||||||
|
# entity_id: input_boolean.lightning_warning
|
||||||
|
- service: script.text_notify
|
||||||
|
data_template:
|
||||||
|
who: "jeff"
|
||||||
|
title: "Lightning Detected!"
|
||||||
|
message: "Lightning has been detected within 50 miles of Anchorage House"
|
||||||
|
# - service: script.lightning_warning_audible
|
||||||
|
|
||||||
|
# - alias: Lightning Warning Off
|
||||||
|
# initial_state: 'on'
|
||||||
|
# trigger:
|
||||||
|
# - platform: numeric_state
|
||||||
|
# entity_id: sensor.lightning_strike_count
|
||||||
|
# below: 1
|
||||||
|
# action:
|
||||||
|
# - service: input_boolean.turn_off
|
||||||
|
# entity_id: input_boolean.lightning_warning
|
||||||
|
# - service: script.text_notify
|
||||||
|
# data_template:
|
||||||
|
# who: "jeff"
|
||||||
|
# title: "Lightning Threat Over."
|
||||||
|
# message: "No more Lightning Strikes detected."
|
||||||
|
# - service: script.lightning_clear_audible
|
||||||
|
|
||||||
|
|
||||||
- alias: NWS Freeze Warning
|
- alias: NWS Freeze Warning
|
||||||
initial_state: 'on'
|
initial_state: 'on'
|
||||||
trigger:
|
trigger:
|
||||||
|
@ -318,3 +450,47 @@ script:
|
||||||
data:
|
data:
|
||||||
media_content_id: http://192.168.7.40/audio/tornado_alarm.mp3
|
media_content_id: http://192.168.7.40/audio/tornado_alarm.mp3
|
||||||
media_content_type: "music"
|
media_content_type: "music"
|
||||||
|
|
||||||
|
lighning_warning_audible:
|
||||||
|
sequence:
|
||||||
|
- condition: state
|
||||||
|
entity_id: binary_sensor.day
|
||||||
|
state: 'on'
|
||||||
|
- service: script.twitter_notify_image
|
||||||
|
data_template:
|
||||||
|
tweet: '{{ [ "Did you see that flash? I did. Letting everyone know there is lightning nearby.",
|
||||||
|
"When Lightning is near I notify the residents of Anchorage House to keep them safe.",
|
||||||
|
"If the residents of Anchorage House didnt hear the thunder I just gave them a heads up.",
|
||||||
|
"Everyone inside! If you are near Anchorage House that is. Lightning is near." ] | random }}'
|
||||||
|
image: >-
|
||||||
|
{{ [ "/config/www/tweet_images/lightning.jpg",
|
||||||
|
"/config/www/tweet_images/lightning-bolt.jpg"] | random }}
|
||||||
|
- service: script.ah_report
|
||||||
|
data:
|
||||||
|
call_interuption: 1
|
||||||
|
call_lightning_alert: 1
|
||||||
|
|
||||||
|
lighning_clear_audible:
|
||||||
|
sequence:
|
||||||
|
- condition: state
|
||||||
|
entity_id: binary_sensor.day
|
||||||
|
state: 'on'
|
||||||
|
- service: script.ah_report
|
||||||
|
data:
|
||||||
|
call_interuption: 1
|
||||||
|
call_lightning_clear: 1
|
||||||
|
|
||||||
|
refresh_weather_alert_sensors:
|
||||||
|
sequence:
|
||||||
|
- service: homeassistant.update_entity
|
||||||
|
entity_id: sensor.tornado_warning
|
||||||
|
- service: homeassistant.update_entity
|
||||||
|
entity_id: sensor.tornado_watch
|
||||||
|
- service: homeassistant.update_entity
|
||||||
|
entity_id: sensor.tstorm_warning
|
||||||
|
- service: homeassistant.update_entity
|
||||||
|
entity_id: sensor.tstorm_watch
|
||||||
|
- service: homeassistant.update_entity
|
||||||
|
entity_id: sensor.flood_warning
|
||||||
|
- service: homeassistant.update_entity
|
||||||
|
entity_id: sensor.flood_watch
|
|
@ -191,3 +191,8 @@
|
||||||
friendly_name: "Current Inside Humidity"
|
friendly_name: "Current Inside Humidity"
|
||||||
unit_of_measurement: '%'
|
unit_of_measurement: '%'
|
||||||
value_template: "{{ states.climate.home.attributes.current_humidity }}"
|
value_template: "{{ states.climate.home.attributes.current_humidity }}"
|
||||||
|
lightning_strike_count:
|
||||||
|
friendly_name: 'Lightning Strike Count'
|
||||||
|
entity_id: []
|
||||||
|
value_template: >-
|
||||||
|
{{ states.geo_location | list | count }}
|
Loading…
Reference in New Issue