Autor Thema: 59_Buienradar  (Gelesen 7601 mal)

Offline Jamo

  • Sr. Member
  • ****
  • Beiträge: 675
Antw:59_Buienradar
« Antwort #120 am: 20 August 2019, 13:05:36 »
Zitat
Gefällt mir. Wie hast du das mit dem Picker rechts (AtHome) bei Buienradar realisiert?

Hier mal die Raw definitionen.
Der 'Picker' ist ein einfach ein 'widgetOverride Location'  beim Buienradar_bar. Dann ein notify auf ein change von Location, um die Lat/Lon Koordinaten zu ändern.
Wenn der Location Picker auf 'Location-iPhone' gestellt ist, hole ich mir die aktuellen Koordinaten von owntracks auf dem iPhone, über MQTT (notify auf eine koordinatenändrung). Dann eine Push Notification (Pushover), sobald der Rainbegin von unknown auf eine Anfangszeit geht. Beim Radfahren ganz nützlich.

Zusätzlich zum Buienradar_bar, habe ich auch noch den Buienradar state über stateformat formatiert und verschiedenfarbig gemacht, abhängig von der Regenmenge.

defmod Buienradar Buienradar 48.1234 11.1234
attr Buienradar alias Regenradar
attr Buienradar disabled 0
attr Buienradar event-on-change-reading rainAmount,rainBegin,rainNow
attr Buienradar ALARME
attr Buienradar interval 300
attr Buienradar region de
attr Buienradar room Alarme,Weather
attr Buienradar stateFormat { my $Amount = ReadingsNum($name,"rainAmount",0);
  my $Max    = ReadingsNum($name,"rainMax",0);
  my $Now    = ReadingsNum($name,"rainNow",0);
  my $Ttl    = ReadingsNum($name,"rainTotal",0);
  my $Start  = ReadingsVal($name,"Begin","-");
  my $End    = ReadingsVal($name,"End","-");
  my $Durat  = ReadingsVal($name,"rainDuration","-");
  my $string  = sprintf("%s-%s (%s) &nbsp Now:%.1f &nbsp Max:%.1f &nbsp Amnt:%.1fl/m² &nbsp Tot:%.1f",$Start,$End,$Durat,$Now,$Max,$Amount,$Ttl);
  if ($Amount > 1 && $Amount < 7) {
    return '<font color="teal"><b>' . $string . '</b></font>'}
  elsif ($Amount >= 7 && $Amount < 20 ) {
    return '<font color="DeepSkyBlue"> <b>' . $string . '</b></font>'}
  elsif ($Amount >= 20 && $Amount < 25 ) {
    return '<font color="MediumVioletRed"><b>' . $string . '</b></font>'}
  elsif ($Amount >= 25 || $Max >= 2.5) {
    return '<font color="BlueViolet"><b>' . $string . '</b></font>'}
  else {return $string }
}
defmod Buienradar_bar weblink htmlCode {FHEM::Buienradar::BAR("Buienradar")}
attr Buienradar_bar group WETTER
attr Buienradar_bar room Favourites,PlotsWeather,Weather
attr Buienradar_bar sortby 191
attr Buienradar_bar webCmd Location:upd
attr Buienradar_bar widgetOverride Location:AtHome,Munich,Location-iPhone
« Letzte Änderung: 09 September 2019, 07:55:12 von inoma »
Intel NUC7i3BNK, VCCU+Homematic, Homematic-IP über Debmatic, HUEBridge, Sonos, etc
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Jamo

  • Sr. Member
  • ****
  • Beiträge: 675
Antw:59_Buienradar
« Antwort #121 am: 02 September 2019, 13:26:29 »
Hallo Christoph,
ich habe folgende Fehlermeldung vom Buienradar Modul bekommen, der Grund war, das im Modul im https aufruf, der erst Teil von "&region" als "registered" interpretiert wurde und dort das entsprechende "®" Zeichen für "&reg" eingesetzt wurde, also "®ion".
https://cdn-secure.buienalarm.nl/api/3.4/forecast.php?lat=46.881530&lon=11.435549®ion=de&unit=mm/u returns HTTP status code 404 instead of 200.
Um Abhilfe zu schaffen, habe ich einfach die Reihenfolge umgetauscht, um das &region zu umgehen, also region als erstes (mit Fragezeichen statt &), dann lat/lon, also:
https://cdn-secure.buienalarm.nl/api/3.4/forecast.php?region=de&lat=46.881530&lon=11.435549&unit=mm/u
damit funktionierts, ohne das man die Kodierung irgendwo einstellen muss.
« Letzte Änderung: 02 September 2019, 13:29:21 von inoma »
Intel NUC7i3BNK, VCCU+Homematic, Homematic-IP über Debmatic, HUEBridge, Sonos, etc

Offline jnewton957

  • Full Member
  • ***
  • Beiträge: 332
Antw:59_Buienradar
« Antwort #122 am: 09 September 2019, 07:06:47 »
Hallo,
ich habe nun mal das Buienradar installiert. Version 2.2.5



Werte sind vorhanden:
Readings
Begin 06:50 2019-09-09 06:51:47
Duration 01:50 2019-09-09 06:51:47
End 08:40 2019-09-09 06:51:47
rainAmount 2.0 2019-09-09 06:56:47
rainBegin 2019-09-09 06:55:00 2019-09-09 06:56:47
rainData
0.1:0.1:0.1:0.1:0.1:0.1:0.1:0.1:0.1:0.09:0.09:0.09:0.09:0.09:0.09:0.09:0.09:0.08:0.08:0.07:0.07:0.08:0.08:0.08:0.08
2019-09-09 06:51:47
rainDataEnd 2019-09-09 08:40:00 2019-09-09 06:51:47
rainDataStart 2019-09-09 06:35:00 2019-09-09 06:51:47
rainDuration 01:50 2019-09-09 06:51:47
rainDurationMin 110 2019-09-09 06:51:47
rainEnd 2019-09-09 08:40:00 2019-09-09 06:51:47
rainLaMetric 100,100,100,100,100,100,100,100,100,90,90,90 2019-09-09 06:51:47
rainMax 0.1 2019-09-09 06:51:47
rainNow 0.2 2019-09-09 06:56:47
rainTotal 2.2 2019-09-09 06:51:47
state 0.1 2019-09-09 06:51:47


bei state format bekomme ich : Error evaluating Buienradar stateFormat: Can't modify single ref constructor in scalar assignment at (eval 133074) line 2, at EOF
syntax error at (eval 133074) line 9, near "\
  if"

Definition identisch inoma vom 20.8.2019
{ my $Amount = ReadingsNum($name,"rainAmount",0);;\
  my $Max    = ReadingsNum($name,"rainMax",0);;\
  my $Now    = ReadingsNum($name,"rainNow",0);;\
  my $Ttl    = ReadingsNum($name,"rainTotal",0);;\
  my $Start  = ReadingsVal($name,"Begin","-");;\
  my $End    = ReadingsVal($name,"End","-");;\
  my $Durat  = ReadingsVal($name,"rainDuration","-");;\
  my $string  = sprintf("%s-%s (%s) &nbsp Now:%.1f &nbsp Max:%.1f &nbsp Amnt:%.1fl/m² &nbsp Tot:%.1f",$Start,$End,$Durat,$Now,$Max,$Amount,$Ttl);;\
  if ($Amount > 1 && $Amount < 7) {\
    return '<font color="teal"><b>' . $string . '</b></font>'}\
  elsif ($Amount >= 7 && $Amount < 20 ) {\
    return '<font color="DeepSkyBlue"> <b>' . $string . '</b></font>'}\
  elsif ($Amount >= 20 && $Amount < 25 ) {\
    return '<font color="MediumVioletRed"><b>' . $string . '</b></font>'}\
  elsif ($Amount >= 25 || $Max >= 2.5) {\
    return '<font color="BlueViolet"><b>' . $string . '</b></font>'}\
  else {return $string }\
}

Wo liegt mein Fehler?

Danke
FHEM5.8 auf Pi3
V 1.65 nanoCUL433 (IT)
nanoCUL JeeLink
V 1.66 nanoCUL868 (HM) (ESA2000WZ)
xELRO AB440, xDECT200, PCA301, xTFA30.3125, esp8266, HM, TabletUI, IR-Schreiblesekopf (Udo)

Offline Jamo

  • Sr. Member
  • ****
  • Beiträge: 675
Antw:59_Buienradar
« Antwort #123 am: 09 September 2019, 07:56:50 »
Hast du alle "\" entfernt von der Raw definition? Deine Fehlermeldung sagt "line 9, near "\  <-
Intel NUC7i3BNK, VCCU+Homematic, Homematic-IP über Debmatic, HUEBridge, Sonos, etc

 

decade-submarginal