accuweather als HTTPMOD

Begonnen von crusader, 09 April 2023, 18:38:54

Vorheriges Thema - Nächstes Thema

crusader

Anbei ein HTTPMOD für die einfache 5-Tage-Vorschau von accuweather:
Dazu apikey und locationkey von accuweather-homepage holen und im define eintragen.

Beim kostenlosen api gehen nur 50 forecasts/Tag. Also Vorsicht mit dem interval-Parameter !

Mehr Daten kann man mit '?details=true' bekommen.
Zur Übersicht dann ExtractAllJSON auf 1 setzen.

define myWetter HTTPMOD http://dataservice.accuweather.com/forecasts/v1/daily/5day/<locationkey>?apikey=<apikey>&metric=true 3600
attr myWetter userattr reading0-1Name reading0-2Name reading0-3Name reading0-4Name reading0-5Name reading0JSON reading0OExpr reading1-1Name reading1-2Name reading1-3Name reading1-4Name reading1-5Name reading1JSON reading1OExpr reading2-1Name reading2-2Name reading2-3Name reading2-4Name reading2-5Name reading2JSON reading2OExpr reading3-1Name reading3-2Name reading3-3Name reading3-4Name reading3-5Name reading3JSON reading3OExpr requestHeader1
attr myWetter enableControlSet 1
attr myWetter event-on-update-reading .*
attr myWetter extractAllJSON 0
attr myWetter httpVersion 1.1
attr myWetter reading0-1Name fc1_day_of_week
attr myWetter reading0-2Name fc2_day_of_week
attr myWetter reading0-3Name fc3_day_of_week
attr myWetter reading0-4Name fc4_day_of_week
attr myWetter reading0-5Name fc5_day_of_week
attr myWetter reading0JSON DailyForecasts_\d\d_EpochDate
attr myWetter reading0OExpr (split / /,localtime $val)[0]

attr myWetter reading1-1Name fc1_icon
attr myWetter reading1-2Name fc2_icon
attr myWetter reading1-3Name fc3_icon
attr myWetter reading1-4Name fc4_icon
attr myWetter reading1-5Name fc5_icon
attr myWetter reading1JSON DailyForecasts_\d\d_Day_IconPhrase
attr myWetter reading1OExpr lc $val =~ tr/\///dr
attr myWetter reading2-1Name fc1_low_c
attr myWetter reading2-2Name fc2_low_c
attr myWetter reading2-3Name fc3_low_c
attr myWetter reading2-4Name fc4_low_c
attr myWetter reading2-5Name fc5_low_c
attr myWetter reading2JSON DailyForecasts_\d\d_Temperature_Minimum_Value
attr myWetter reading2OExpr int($val + 0.5)
attr myWetter reading3-1Name fc1_high_c
attr myWetter reading3-2Name fc2_high_c
attr myWetter reading3-3Name fc3_high_c
attr myWetter reading3-4Name fc4_high_c
attr myWetter reading3-5Name fc5_high_c
attr myWetter reading3JSON DailyForecasts_\d\d_Temperature_Maximum_Value
attr myWetter reading3OExpr int($val + 0.5)
attr myWetter requestHeader1 Content-Type: application/json
attr myWetter room Wetter