Make weather more resilient to failures #89

This commit is contained in:
2023-07-29 14:26:19 -04:00
parent 92a2b185d8
commit 9c12f64586
6 changed files with 16 additions and 13 deletions

View File

@ -26,8 +26,8 @@
{% set ltgdist = (states('sensor.blitzortung_lightning_distance') | int) / 1.609 | round %} {% set ltgdist = (states('sensor.blitzortung_lightning_distance') | int) / 1.609 | round %}
There is lightning in the area. Nearest strike is {{ ltgdist }} miles away. There is lightning in the area. Nearest strike is {{ ltgdist }} miles away.
{% endif %} {% endif %}
{% if states('sensor.pirateweather_visibility') | int < 3 %} {% if state_attr('weather.iron_nerd_weather_station','visibility') | int < 3 %}
Caution: Current outdoor visibility is {{ states('sensor.pirateweather_visibility') }} miles. Caution: Current outdoor visibility is {{ state_attr('weather.iron_nerd_weather_station','visibility') }} miles.
{% endif %} {% endif %}
{% endif %} {% endif %}
{% elif method == 'tts' %} {% elif method == 'tts' %}
@ -56,7 +56,7 @@
] | random }} ] | random }}
"The nearest lightning strike is {{ ltgdist }} miles away. " "The nearest lightning strike is {{ ltgdist }} miles away. "
{% endif %} {% endif %}
{% if (states('sensor.pirateweather_visibility') | int ) < 3 %} {% if (state_attr('weather.iron_nerd_weather_station','visibility') | int ) < 3 %}
{{ [ {{ [
"It is foggy outside, please exercise caution when driving. ", "It is foggy outside, please exercise caution when driving. ",
"The visibility outside is quite low. If you will be driving soon, please be cautious. ", "The visibility outside is quite low. If you will be driving soon, please be cautious. ",

Submodule node-red/projects/NerdFlows updated: 06da714a3b...07da66c786

View File

@ -201,11 +201,8 @@ automation:
description: Sets the climate mode for when Emma goes down for nap description: Sets the climate mode for when Emma goes down for nap
mode: restart mode: restart
trigger: trigger:
- platform: state - platform: time_pattern
entity_id: sensor.pirateweather_temperature minutes: "/5"
not_to:
- 'unavailable'
- 'unknown'
- platform: state - platform: state
entity_id: input_number.emma_naptime_aircon_threshold entity_id: input_number.emma_naptime_aircon_threshold
- platform: state - platform: state
@ -223,7 +220,7 @@ automation:
entity_id: input_select.naptime_climate_mode_emma_aircon entity_id: input_select.naptime_climate_mode_emma_aircon
data: data:
option: > option: >
{% set temp = states('sensor.pirateweather_temperature') | int %} {% set temp = state_attr('weather.iron_nerd_weather_station','temperature') | int %}
{% set threshold = states('input_number.emma_naptime_aircon_threshold') | int %} {% set threshold = states('input_number.emma_naptime_aircon_threshold') | int %}
{% if (temp >= threshold) or is_state('input_boolean.hot_day','on') %} {% if (temp >= threshold) or is_state('input_boolean.hot_day','on') %}
AC AC

View File

@ -5,6 +5,12 @@
{% from 'time.jinja' import current_time, current_date_readout, input_datetime_read %} {% from 'time.jinja' import current_time, current_date_readout, input_datetime_read %}
{% from 'speech.jinja' import dadjoke, inspirational_quote %} {% from 'speech.jinja' import dadjoke, inspirational_quote %}
{% from 'easy_time.jinja' import count_the_days, custom_time %} {% from 'easy_time.jinja' import count_the_days, custom_time %}
{% set precipTypes = [
states.sensor.pirateweather_precip,
states.sensor.openweathermap_precipitation_kind,
states.sensor.tomorrow_io_stratton_ave_precipitation_type
] %}
{% set snowing = precipTypes | selectattr('state','eq','snow') | map(attribute='state') | list | count | int %}
<p> <p>
Good morning, Collin. Good morning, Collin.
@ -164,7 +170,7 @@
{%- endif %} {%- endif %}
{% endif %} {% endif %}
{% if is_state ('input_boolean.kallen_school_today', 'off') and is_state('sensor.pirateweather_icon', 'snow') %} {% if is_state ('input_boolean.kallen_school_today', 'off') and snowing > 0 %}
Do you wanna build a snowman? It is snowing! Do you wanna build a snowman? It is snowing!
{% endif %} {% endif %}

View File

@ -41,7 +41,7 @@
"Currently there are weather alerts active. The total number of alerts is {{ states('sensor.weather_alerts_active_corrected') }}. They are as follows. " "Currently there are weather alerts active. The total number of alerts is {{ states('sensor.weather_alerts_active_corrected') }}. They are as follows. "
{{ states('sensor.weather_alert_string') }}. {{ states('sensor.weather_alert_string') }}.
{% endif %} {% endif %}
{% if (states('sensor.pirateweather_visibility') | int ) < 3 %} {% if (state_attr('weather.iron_nerd_weather_station','visibility') | int ) < 3 %}
{{ [ {{ [
"It is foggy outside, please exercise caution when driving. ", "It is foggy outside, please exercise caution when driving. ",
"The visibility outside is quite low. If you will be driving soon, please be cautious. ", "The visibility outside is quite low. If you will be driving soon, please be cautious. ",

View File

@ -86,7 +86,7 @@
"Currently there are weather alerts active. The total number of alerts is {{ states('sensor.weather_alerts_active_corrected') }}. They are as follows. " "Currently there are weather alerts active. The total number of alerts is {{ states('sensor.weather_alerts_active_corrected') }}. They are as follows. "
{{ states('sensor.weather_alert_string') }}. {{ states('sensor.weather_alert_string') }}.
{% endif %} {% endif %}
{% if (states('sensor.pirateweather_visibility') | int ) < 3 %} {% if (state_attr('weather.iron_nerd_weather_station','visibility') | int ) < 3 %}
"In case you are planning to go back out, " "In case you are planning to go back out, "
{{ [ {{ [
"It is foggy outside, please exercise caution when driving. ", "It is foggy outside, please exercise caution when driving. ",