NEWS
[Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten
-
@nashra
Ich benötige das log von 2 Wiederholungen mit DEBUG true -
Mein DWD Adapter steht auf 10 Minuten und ich habe keine Wiederholungen. Aktuell fällt mir halt nur ein das du tatsächlich 2 mal die exakt gleiche Warnung drin stehen hast. Ich denke dann kommt das Skript durcheinander. Ich hab meinen DWD Datenbaum mal komplett gelöscht (wird beim nächsten Lauf wiedererstellt)und danach hatte ich einige Probleme weniger. Mußt aber natürlich das Skript neustarten wenn der Baum erstellt ist.
-
@ticaki
Ich bin vom dwd Adapter weg, da mich der Restart im log gestört hat und mir das zu unübersichtlich wurde.
Daher habe ich mir ein Script geschrieben, das das selbe aber die Datenstruktur vom dwd Adapter nachahmt macht.
Auch das uwz script habe ich heute mal neu geschrieben.
Wenn dich das interessiert, kann ich die zwei scripte gerne zur Verfügung stellen. -
@megawaldi
Poste sie und wenn du Github benutzt gib mir den Link und ich setzte sie ins erste Posting. Hoffe du benutzt Interval und nicht schedule -
@ticaki
Ich hab mich eigendlich für schedule entschieden. Gibt es aus deiner sicht nen Grund warum interval bessser ist?
-
@megawaldi
Wenn alle Leute die bei DWD Daten abrufen schedule verwenden, freut sich der Server sicherlich zu jeder vollen Stunde ganz doll über das hohe Interesse.Intervall richtet sich nach dem Startzeitpunkt des Skriptes und damit werden die Zugriffe mehr verteilt und es gibt nicht diese Peaks wie mit schedule.
-
-
@megawaldi
Das DWD Script schaue ich mir an, aber das UWZ ist im Grunde das selbe wie meines. -
@ticaki
Ja klar, deins war ja die Vorlage.
Ich hab das umwandeln in ein Object vor dem schreiben rausgenommen. Denke das wird etwas RAM sparen und performanter sein.
Dann schreibe ich nur in die Datenpunkte, bei einer tatsächlichen Änderung. Das müsste IO einsparen, was bei speicherkarten nicht dumm ist. -
@megawaldi
Gute Idee, werde es mir nächstes Wochenende ansehen. Hab dieses keine Zeit.EDIT: Hab ich die Erlaubnis das in mein großes Skript einzubauen?
-
@ticaki
Klar. Gib dann mal ne Rückmeldung -
@megawaldi
Edit gelesen? -
@ticaki
Klar mach nur, ein großes Script das alles macht hab ich mir auch schon überlegt. Würde auch das mit den doppelten Datenpunkten in den einzelnen Scripten und dann nochmal in deinem Script lösen.
War mir nur zu stressig das selber umzusetzen -
Hab an dem DWD Standalone Skript etwas gewerkelt, könnt ihr ja mal testen. Die Warnungen beim Erstellen der States werde ich wohl auch noch verstehen und demnächst beheben können.
EDIT war noch ein Fehler drin, hab ihn ohne Anmerkung behoben
-
Hallo,
ich hab die Serveranfragen an DWD und UWZ ins Skript integriert. Der DWD schein soweit gut zu laufen, UWZ hab ich leider keine Warnungen zu. So das ich nicht weiß, ob da nicht noch ein paar Fehler drin sind. Falls es jemand testen will, findet man es hier.
Neue Konfigurationsmöglichkeiten:
// Standalone Datenquelle /* nur Landkreis/Großstädte werden verwendet: https://www.dwd.de/DE/leistungen/opendata/help/warnungen/cap_warncellids_csv.csv?__blob=publicationFile&v=3 */ var dwdWarncellId = ''; // Deaktivieren mit '' var dwdBundesland = ''; // 3 Buchstaben // UWZ - Landeskennung - Postleitzahl UWZDE12345 var uwzWarncellId = ''; // Deaktivieren mit ''
Wenn WarncellID nicht '' ist wird die entsprechende interne Abfrage aktivert und z.B. dwd.0 nicht mehr beobachtet.
- Kein Netzwerk geht schon mal... dämlicher router
EDIT:
Version Alpha 2
- Standalone hatte keinen automatischen Nachrichtenversand
- UWZ: die Aktivierung des standalone Parts hat die andere Methode nicht deaktiviert.
- Log ergänzt
EDIT2:
hab gerade async await kapiert, muß das Skript noch darauf überprüfen. - Kein Netzwerk geht schon mal... dämlicher router
-
Hallo,
Alpha 3 ist online neue Funktionen:
- Eine zusätzliche Datenquelle für DWD so das Warnungen für die Gemeinde und nicht mehr für den ganzen Landkreis abgefragt werden können.
- Der Modus ist automatisch. man muß die Warncell nachschlagen und das Skript sucht in beiden Datenquellen nach der ID. Bei Fund schaltet es die andere Datenquelle ab.
- bei Gemeinden funktionieren die Alert States noch nicht und Höhenangaben habe natürlich keine Auswirkungen mehr. Gibt nicht viele Gemeinden die ihre Höhe ändern
Warncell-ID kann hier nachgeschlagen werden: https://www.dwd.de/DE/leistungen/opendata/help/warnungen/cap_warncellids_csv.csv?__blob=publicationFile&v=3
-
@ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
Alpha 3 ist online neue Funktionen:
23:14:50.964 info javascript.0 (7748) Stop script script.js.Sigi.UWZ_DWD_NINA9 23:14:51.089 info javascript.0 (7748) Start javascript script.js.Sigi.UWZ_DWD_NINA9 23:14:51.096 info javascript.0 (7748) script.js.Sigi.UWZ_DWD_NINA9: registered 0 subscriptions and 0 schedules 23:14:51.097 error javascript.0 (7748) script.js.Sigi.UWZ_DWD_NINA9: ReferenceError: DWD2 is not defined 23:14:51.097 error javascript.0 (7748) at script.js.Sigi.UWZ_DWD_NINA9:418:24 23:14:51.097 error javascript.0 (7748) at script.js.Sigi.UWZ_DWD_NINA9:2845:3
-
Recht hast du:
in zeile 116 muß
const DWD2 = 8; // only for request
eingefügt werden, das sieht dann so aus:
const DWD = 1; const UWZ = 2; const NINA = 4; const DWD2 = 8; // only for request
hatte ich vergessen.
-
Sieht schon besser aus.
javascript.0 2021-11-05 23:35:59.418 info script.js.Sigi.UWZ_DWD_NINA9: registered 7 subscriptions and 1 schedule javascript.0 2021-11-05 23:35:59.136 info script.js.Sigi.UWZ_DWD_NINA9: Add UWZ/DWD warning to database. id: dwd.0.warning.object headline: Amtliche WARNUNG vor FROST javascript.0 2021-11-05 23:35:59.073 info script.js.Sigi.UWZ_DWD_NINA9: Skripts gestartet: ID:8153.694522928418 javascript.0 2021-11-05 23:35:59.069 info Start javascript script.js.Sigi.UWZ_DWD_NINA9 javascript.0 2021-11-05 23:35:58.513 info script.js.Sigi.UWZ_DWD_NINA9: Skripts gestoppt: ID:7213.070693352865 javascript.0 2021-11-05 23:35:58.513 info Stop script script.js.Sigi.UWZ_DWD_NINA9 javascript.0 2021-11-05 23:35:58.423 info script.js.Sigi.UWZ_DWD_NINA9: Neustart durch Skripts wird ausgeführt! javascript.0 2021-11-05 23:35:58.134 info script.js.Sigi.UWZ_DWD_NINA9: registered 7 subscriptions and 1 schedule javascript.0 2021-11-05 23:35:57.840 info script.js.Sigi.UWZ_DWD_NINA9: Add UWZ/DWD warning to database. id: dwd.0.warning.object headline: Amtliche WARNUNG vor FROST javascript.0 2021-11-05 23:35:57.677 info script.js.Sigi.UWZ_DWD_NINA9: Skripts gestartet: ID:7213.070693352865 javascript.0 2021-11-05 23:35:57.669 info Start javascript script.js.Sigi.UWZ_DWD_NINA9 javascript.0 2021-11-05 23:35:55.671 info script.js.Sigi.UWZ_DWD_NINA9: Skripts gestoppt: ID:4056.6884127745693 javascript.0 2021-11-05 23:35:55.670 info Stop script script.js.Sigi.UWZ_DWD_NINA9 javascript.0 2021-11-05 23:35:55.313 warn at processImmediate (internal/timers.js:463:21) javascript.0 2021-11-05 23:35:55.313 warn at Immediate._onImmediate (C:\Program Files\iobroker\Home\node_modules\iobroker.javascript\lib\sandbox.js:1967:33) javascript.0 2021-11-05 23:35:55.312 warn State "javascript.0.wetterwarnung.data.uwz.warning4.object" not found javascript.0 2021-11-05 23:35:55.310 warn at processImmediate (internal/timers.js:463:21) javascript.0 2021-11-05 23:35:55.310 warn at Immediate._onImmediate (C:\Program Files\iobroker\Home\node_modules\iobroker.javascript\lib\sandbox.js:1967:33) javascript.0 2021-11-05 23:35:55.298 warn State "javascript.0.wetterwarnung.data.dwd.warning4.object" not found javascript.0 2021-11-05 23:35:55.005 info script.js.Sigi.UWZ_DWD_NINA9: Neustart durch Skripts wird ausgeführt! javascript.0 2021-11-05 23:35:54.783 info script.js.Sigi.UWZ_DWD_NINA9: registered 7 subscriptions and 1 schedule javascript.0 2021-11-05 23:35:54.412 info script.js.Sigi.UWZ_DWD_NINA9: Add UWZ/DWD warning to database. id: dwd.0.warning.object headline: Amtliche WARNUNG vor FROST javascript.0 2021-11-05 23:35:53.687 info script.js.Sigi.UWZ_DWD_NINA9: Skripts gestartet: ID:4056.6884127745693 javascript.0 2021-11-05 23:35:53.646 info Start javascript script.js.Sigi.UWZ_DWD_NINA9 javascript.0 2021-11-05 23:35:53.593 info Stop script script.js.Sigi.UWZ_DWD_NINA9
- Skriptstart:
23:38:28.014 info javascript.0 (7748) Stop script script.js.Sigi.UWZ_DWD_NINA9 23:38:28.015 info javascript.0 (7748) script.js.Sigi.UWZ_DWD_NINA9: Skripts gestoppt: ID:8153.694522928418 23:38:28.126 info javascript.0 (7748) Start javascript script.js.Sigi.UWZ_DWD_NINA9 23:38:28.138 info javascript.0 (7748) script.js.Sigi.UWZ_DWD_NINA9: Skripts gestartet: ID:5654.143748022449 23:38:28.481 info javascript.0 (7748) script.js.Sigi.UWZ_DWD_NINA9: Add UWZ/DWD warning to database. id: dwd.0.warning.object headline: Amtliche WARNUNG vor FROST 23:38:29.420 info javascript.0 (7748) script.js.Sigi.UWZ_DWD_NINA9: registered 7 subscriptions and 1 schedule
-
Ich werde das demnächst auf async umstellen, aktuell dauert das beenden des Skript so lange das es noch zeit hat Fehler wegen States auszulösen.