From 27a3a9a105f6d7af9356ed9aea1d3d7ad0825bca Mon Sep 17 00:00:00 2001 From: Tony Stork Date: Thu, 1 Jun 2023 14:24:23 -0400 Subject: [PATCH] Backup plans for when a weather forecast provider becomes unavailable --- packages/custom_weather.yaml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/packages/custom_weather.yaml b/packages/custom_weather.yaml index 522bd08..4e1a3da 100644 --- a/packages/custom_weather.yaml +++ b/packages/custom_weather.yaml @@ -5,7 +5,16 @@ weather: temperature_template: "{{ states('sensor.pirateweather_temperature') | float }}" temperature_unit: °F humidity_template: "{{ states('sensor.pirateweather_humidity') | float }}" - forecast_template: "{{ state_attr('weather.openweathermap', 'forecast') }}" + forecast_template: > + {% if state_attr('weather.iron_nerd_studios','forecast') %} + {{ state_attr('weather.iron_nerd_studios','forecast') }} + {% elif state_attr('weather.kdfi_daynight','forecast') %} + {{ state_attr('weather.kdfi_daynight','forecast') }} + {% elif state_attr('weather.openweathermap','forecast') %} + {{ state_attr('weather.openweathermap','forecast') }} + {% else %} + {{ state_attr('weather.weatherapi_stratton_ave','forecast') }} + {% endif %} pressure_template: "{{ states('sensor.kdfi_barometric_pressure') | float }}" pressure_unit: inHg wind_speed_template: "{{ states('sensor.pirateweather_wind_speed') | float }}" @@ -23,7 +32,12 @@ weather: temperature_template: "{{ states('sensor.pirateweather_temperature') | float }}" temperature_unit: °F humidity_template: "{{ states('sensor.pirateweather_humidity') | float }}" - forecast_template: "{{ state_attr('weather.kdfi_hourly', 'forecast') }}" + forecast_template: > + {% if state_attr('weather.kdfi_hourly','forecast') %} + {{ state_attr('weather.kdfi_hourly', 'forecast') }} + {% else %} + {{ state_attr('weather.iron_nerd_studios_hourly','forecast') }} + {% endif %} pressure_template: "{{ states('sensor.kdfi_barometric_pressure') | float }}" pressure_unit: inHg wind_speed_template: "{{ states('sensor.pirateweather_wind_speed') | float }}"