Hallo betateilchen,
ich habe durch das GDS-Modul (per define als Wetterdienst angelegt) mir alerts per notify über
define notify_Wettermeldung notify Wetterdienst:a_areaDesc.* { bla blub }
zustellen lassen. Das hat auch prima funktioniert.
Weil ich noch etwas anderes ausprobieren wollte, habe ich den notify auf das Reading a_description geändert:
define notify_Wettermeldung notify Wetterdienst:a_description.* { bla blub }
Leider passiert hier gar nichts mehr. Es sieht sieht so aus, als wenn hier nichts getriggert wird.
Kann das sein? Oder bin ich hier betriebsblind? :-\
Viele Grüße
Christoph
Hast du eventuell das Attribut "event-on-(change|update)-reading" gesetzt?
Zitat von: marvin78 am 21 Oktober 2014, 14:23:14
Hast du eventuell das Attribut "event-on-(change|update)-reading" gesetzt?
Nein ;)
War aber mal gesetzt. Ist jetzt aber definitiv gelöscht.
Poste trotzdem mal das Ergebnis eines list auf das Device.
list Wetterdienst
Internals:
DEF LOGIN PASS
LOCAL 1
NAME Wetterdienst
NR 1160
STATE active
TYPE GDS
Readings:
2014-10-21 14:30:15 _dataSource Quelle: Deutscher Wetterdienst
2014-10-21 14:31:21 _tzOffset 7200
2014-10-21 14:25:06 a_areaDesc Kreis Kusel
2014-10-21 14:25:06 a_category Met
2014-10-21 14:25:06 a_description Es treten Windböen mit
Geschwindigkeiten bis ca. 60 km/h (17 m/s, 33 kn, Bft 7) auf.
Am Nachmittag ist bei Durchgang einer Kaltfront mit Verschärfung der
Warnstufen zu rechnen!
2014-10-21 14:25:06 a_event WINDBÖEN
2014-10-21 14:25:06 a_eventCode_AREA_COLOR 255 255 0
2014-10-21 14:25:13 a_eventCode_AREA_COLOR_hex ffff0
2014-10-21 14:25:06 a_eventCode_GROUP WIND
2014-10-21 14:25:06 a_eventCode_II 51
2014-10-21 14:25:06 a_eventCode_LICENSE Geobasisdaten: Copyright
Bundesamt für Kartographie und Geodäsie, Frankfurt am Main, 2013
2014-10-21 14:25:06 a_eventCode_PROFILE_VERSION 2.1
2014-10-21 14:25:06 a_expires 2014-10-21T14:00:00+00:00
2014-10-21 14:25:06 a_expires_local 21.10.2014 16:00:00
2014-10-21 14:25:06 a_geoCode_STATE RP
2014-10-21 14:25:06 a_geoCode_WARNCELLID 107336000
2014-10-21 14:25:06 a_headline Amtliche WARNUNG vor WINDBÖEN
2014-10-21 14:25:06 a_msgType Alert
2014-10-21 14:25:06 a_onset 2014-10-21T09:22:00+00:00
2014-10-21 14:25:06 a_onset_local 21.10.2014 11:22:00
2014-10-21 14:25:06 a_responseType None
2014-10-21 14:25:06 a_sent 2014-10-21T12:08:00+00:00
2014-10-21 14:25:06 a_sent_local 21.10.2014 14:08:00
2014-10-21 14:25:06 a_status Actual
2014-10-21 14:25:06 a_valid 1
2014-10-21 14:19:37 c_altitude 320
2014-10-21 14:19:37 c_nextUpdate Tue Oct 21 14:39:37 2014
2014-10-21 14:19:37 c_pressure-nn 1009.4
2014-10-21 08:26:34 c_rain12h
2014-10-21 14:19:37 c_rain1h 0.0
2014-10-21 09:06:35 c_rain24h
2014-10-21 08:26:34 c_snow
2014-10-21 09:06:35 c_solar
2014-10-21 14:19:37 c_stationName Saarbrücken-Flh.
2014-10-21 09:06:35 c_sunshine
2014-10-21 09:06:35 c_tAvgAir24
2014-10-21 08:26:34 c_tMaxAir12
2014-10-21 09:06:35 c_tMaxAir24
2014-10-21 08:26:34 c_tMinAir12
2014-10-21 09:06:35 c_tMinAir24
2014-10-21 09:06:35 c_tMinGrnd24
2014-10-21 14:19:37 c_temperature 13.1
2014-10-21 14:19:37 c_weather Regen
2014-10-21 14:19:37 c_windDir SW
2014-10-21 14:19:37 c_windGust Windböen
2014-10-21 14:19:37 c_windPeak 58
2014-10-21 14:19:37 c_windSpeed 25
2014-10-18 22:15:40 g_altitude 320
2014-10-18 22:15:40 g_pressure-nn 1021.5
2014-10-18 22:15:40 g_rain1h 0.0
2014-10-18 22:15:40 g_stationName Saarbrücken-Flh.
2014-10-18 22:15:40 g_temperature 13.4
2014-10-18 22:15:40 g_weather wolkenlos
2014-10-18 22:15:40 g_windDir O
2014-10-18 22:15:40 g_windGust ---
2014-10-18 22:15:40 g_windPeak ---
2014-10-18 22:15:40 g_windSpeed 7
2014-10-21 09:39:24 state active
Helper:
INTERVAL 1200
PASS PASS
URL ftp-outgoing2.dwd.de
USER USER
Attributes:
gdsLong 1
gdsSetCond Saarbrücken-Flh.
room Garten,Maschinenraum
Ich habe einen Verdacht:
Kann es daran liegen, dass in dem Reading Umlaute stehen? Ein notify auf a_event ("WINDBÖEN") funktioniert nämlich auch nicht.
Durchaus möglich. Aber da kann der Modulautor sicher mehr sagen.
Spontan habe ich keine Ahnung, war das bei Dir nicht funktioniert. Das einzige a_.* reading, für das vom GDS Modul kein event erzeugt wird, ist a_eventCode_AREA_COLOR_hex (und dieser Wert wird bei Dir auch noch falsch angezeigt *g* ...)
Wenn ich heute abend Zeit habe, schaue ich mir das mal genauer an.
Also mit Umlauten musst Du (wegen Zeichensatzunterschiede) zwar aufpassen, aber das Triggern auf das Reading a_description funktioniert grundsätzlich einwandfrei. Der zugehörige event taucht sowohl im event-Monitor auf:
(http://up.picr.de/19884106yl.jpg)
als auch in einem extra für diesen event angelegten Logfile (ein Logfile wird grundsätzlich genau wie ein notify getriggert)
(http://up.picr.de/19884127xm.jpg)
Also besteht an dieser Stelle für mich kein Handlungsbedarf :)
Und den Fehler bei der Umrechnung der RGB-Werte habe ich schon beseitigt, das sollte morgen per update kommen.
Okay, im Event-Monitor sehe ich es auch.
Aber irgend etwas stimmt (bei mir?) mit den Umlauten bzw. der Zeichencodierung nicht. >:(
Mit:
Zitat
{ my $abc=ReadingsVal("Wetterdienst","a_event","");
DebianMail('ich@@mail.de','B29-Test',$abc); }
bekomme ich in der E-Mail die Umlaute nicht korrekt dargestellt.
Verwende ich aber:
Zitat
{ my $abc='STURMBÖEN';
DebianMail('ich@@mail.de','B29-Test',$abc);
}
ist die E-Mail korrekt mit Umlaut im Text.
Hast Du die Readings in irgendeiner speziellen Zeichencodierung?
Kann natürlich auch sein, dass bei mir etwas schief läuft. Bin noch am forschen ...
@betateilchen: In Deinen oberen Screenshot sehe ich, dass dort im Frontend die Umlaute nicht korrekt dargestellt werden. Bei mir ist das aber der Fall. Irgendwo muss hier ein Unterschied sein.
Zitat von: CQuadrat am 21 Oktober 2014, 23:20:28
Hast Du die Readings in irgendeiner speziellen Zeichencodierung?
Die readings sind alle in UTF8.
Zitat von: CQuadrat am 21 Oktober 2014, 23:20:28
@betateilchen: In Deinen oberen Screenshot sehe ich, dass dort im Frontend die Umlaute nicht korrekt dargestellt werden. Bei mir ist das aber der Fall. Irgendwo muss hier ein Unterschied sein.
Was im Frontend innerhalb des Event-Monitor dargestellt wird, ist für mich nicht kriegsentscheidend. Wichtig ist, dass die readings vernünftig aussehen.
So, ich habe noch mal etwas mehr getestet und es wird immer merkwürdiger :o
Bei manche Stationen erhalte ich ein notify bei anderen hingegen nicht.
Führe ich z.B.
Zitat
get Wetterdienst alerts Ammersee
aus werden die a_-Readings geschrieben und mein notify auf Wetterdienst:a_description wird korrekt ausgelöst.
Mache ich aber hingegen ein
Zitat
get Wetterdienst alerts Kreis_Freising
werden die a_Readings auch neu geschrieben (auch a_description) aber der notify bleibt aus. :-\
Wieder ein
Zitat
get Wetterdienst alerts Ammersee
und alles funktioniert wieder.
Eine Systematik, bei welchen Stationen es nicht funktioniert, kann ich leider nicht erkennen.
Das macht mich ziemlich ratlos :-[
Nachtrag: Anbei auszugsweise noch die jeweiligen Readings:
a_areaDesc Ammersee 2014-10-23 09:38:28
a_category Met 2014-10-23 09:38:28
a_description Es treten zeitweise Böen bis 60 km/h (Bft. 7) aus Nordwest auf. 2014-10-23 09:38:28
a_areaDesc Kreis Freising 2014-10-23 09:39:14
a_category Met 2014-10-23 09:39:14
a_description Aktualisierung/Verlängerung: Zeitweise treten noch Böen bis 60 km/h
(Bft. 7) aus Nordwest auf. 2014-10-23 09:39:14
da ist ein newline im description reading von Kreis_Freising.
ich könnte mir vorstellen das das an noch mehr stellen als nur hier: http://forum.fhem.de/index.php/topic,27863.msg209732.html#msg209732 (http://forum.fhem.de/index.php/topic,27863.msg209732.html#msg209732) probleme macht.
gruss
andre
Zitat von: justme1968 am 23 Oktober 2014, 09:58:02
ich könnte mir vorstellen das das an noch mehr stellen ... probleme macht.
Genau. Und deshalb kann man das Erzeugen solcher problembehafteter Readings im GDS Modul schon von Anfang an per Attribut abschalten.
Ein Triggern auf die Text-Readings macht für mich ohnehin nicht sonderlich viel Sinn, weil es dazu korrespondierend auch immer ein "Schlüssel"-Reading gibt.
Aha. Das erklärt's natürlich.
Zitat von: betateilchen am 23 Oktober 2014, 10:18:02
... weil es dazu korrespondierend auch immer ein "Schlüssel"-Reading gibt.
Und wie lautet dieses eindeutige Reading? Ich kann da leider kein entsprechend korrespondierendes Reading erkennen. Ich würde auch lieber auf einen Schlüssel als auf Textstrings triggern.
Du kannst beispielsweise auf a_event triggern und dann die a_description auslesen und verwenden.
Dafür, dass Dein email-Programm den richtigen Zeichensatz verwendet, bist Du aber selbst verantwortlich ;)
Zitat von: betateilchen am 23 Oktober 2014, 14:26:02
Dafür, dass Dein email-Programm den richtigen Zeichensatz verwendet, bist Du aber selbst verantwortlich ;)
Jo, das klappt schon 8)
Hallo betateilchen,
wie geht denn das Modul bei der Anlage der Readings vor? Kann es sein, dass intern die Readings erst gelöscht werden, bevor neue Werte geschrieben werden.
Ich wollte nämlich zusätzlich noch event-on-change-reading verwenden. Aber leider klappt das nicht.
1000 Dank und Gruß
Christoph
Zitat von: CQuadrat am 24 Oktober 2014, 12:52:01
Kann es sein, dass intern die Readings erst gelöscht werden, bevor neue Werte geschrieben werden.
exakt.
Zitat von: CQuadrat am 24 Oktober 2014, 12:52:01
Ich wollte nämlich zusätzlich noch event-on-change-reading verwenden. Aber leider klappt das nicht.
Stimmt auch.
Warum das so umgesetzt ist, habe ich auch irgendwann schon hier im Forum erklärt.
Das hängt (kurz gesagt) mit der Natur dieser readings selbst zusammen.