NEWS
[Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten
-
@rababersaft
Das müssten um die 12 Stellen sein. Das sind keine "Fehler". Was der Skripteditor nicht kennt, darf einfach nicht sein und wird deshalb markiert.Gruß Tim
-
@ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@rababersaft
Das müssten um die 12 Stellen sein. Das sind keine "Fehler". Was der Skripteditor nicht kennt, darf einfach nicht sein und wird deshalb markiert.Gruß Tim
Sind bei mir im neuen Skript etwa 14 Stellen. Danke Dir für die Info
Und echt gute Arbeit an alle Entwickler hier, mehr als nur ein Daumen hoch
-
Hi,
Ich habe bis Dato für DWD den externen Adapter verwendet und würde gerne auf die Interne Abfrage wechseln.
Ich habe im Script die WarnCellID eingetragen aber irgendwie erschließt sich mir nicht was ich noch wo einstellen muss damit auch wirklich die Interne Abfrage läuft.
Kann mir dazu kurz einer auf die Sprünge helfen.
-
Habe die Tage die 1.0.11 installiert. eMails usw. funktionieren weiterhin, nur leider immer noch nicht
die Ansage von Alexa. Der Ring geht kurz an und es macht Plop, aber das war es dann, keine Ansage.
Habe es jetzt mit allen Dot's, Echo und Show 5 und 8 probiert aber leider funktioniert es bei keinem.
Unter Commands.announcement ist der Meldetext vorhanden. -
@nashra
schreib mal was eigenes in Commands.announcement (einfach reinschreiben). Wenn das nur piept kontrolliere mal die Lautstärke. -
@ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@nashra
schreib mal was eigenes in Commands.announcement (einfach reinschreiben). Wenn das nur piept kontrolliere mal die Lautstärke.Da hat sich gar nichts getan. Mal eben ein Blockly erstellt und den DP jede Minute beschreiben lassen
sowie den DP für die Lautstärke
Ausgabe
09:15:14.900 info javascript.0 (2816452) Start javascript script.js.Testbereich.Alexatest 09:15:14.915 info javascript.0 (2816452) script.js.Testbereich.Alexatest: registered 0 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions 09:16:00.115 info javascript.0 (2816452) script.js.Testbereich.Alexatest: test 09:16:00.117 warn javascript.0 (2816452) at Object.<anonymous> (script.js.Testbereich.Alexatest:3:3) 09:16:02.395 info javascript.0 (2816452) Stop script script.js.Testbereich.Alexatest
Der Farbring am Echo wird kurz weiß und eben diesen, ich sag mal Plop und das war es.
Irgendwie verstehe ich das nicht, hat immer funktioniert mit deinem Skript.
Oder liegt es an den Änderungen von Amazon in der letzten Zeit. -
@nashra
Hallo, hab das jetzt gerade bei mir getestet. Bevor ich das jedoch konnte musste ich in den Proxyeinstellungen des Alexa Adapters eine valide IP auswählen. Danach ging es. Ding Ding - Text.Der Fehler hat nichts mit dem Skript zu tun sondern mit dem Alexa Adapter, da kann ich dir nur begrenzt helfen.
-
@nashra um die Lautstärke zu setzen keinen Textbaustein sondern den "Zahlbaustein" verwenden.
-
@ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@nashra
Hallo, hab das jetzt gerade bei mir getestet. Bevor ich das jedoch konnte musste ich in den Proxyeinstellungen des Alexa Adapters eine valide IP auswählen. Danach ging es. Ding Ding - Text.Der Fehler hat nichts mit dem Skript zu tun sondern mit dem Alexa Adapter, da kann ich dir nur begrenzt helfen.
Habe ich mir schon gedacht das es am Adapter liegt. In den Proxyeinstellungen ist aber eine IP schon
immer gewesen, seltsam. Werde mal weitersuchen und testen.
Trotzdem danke. -
Hallo,
ich habe meinen Raspberry mit iobroker neu aufsetzen müssen und bekomme beim Script Fehlermeldungen. Ich finde leide nicht das Problem. Ich hoffe, ihr könnt mir helfen.
15:56:40.764 error javascript.0 (2670) script.js.Unwetterwarnungen_NEU: TypeError: Cannot read property 'includes' of null 15:56:40.765 error javascript.0 (2670) at addWarncell (script.js.Unwetterwarnungen_NEU:3241:57) 15:56:40.765 error javascript.0 (2670) at Object.init (script.js.Unwetterwarnungen_NEU:985:17)
Lg Dennis
-
@monza258
Den Fehler hat noch niemand gepostet und die Funktion ist recht umfangreich so das es nicht einfach ist den Fehler zu lokalisieren.Schau mal nach ob im Objektbereich den das Skript anlegt unter den Warnzellen alles i.O. aussieht.
-
Habe folgenden Fehler:
14:04:02.442 error javascript.0 (767) script.js.DWD-UWZ-NINA_Unwetter: TypeError: Cannot read properties of undefined (reading 'replace') 14:04:02.443 error javascript.0 (767) at addWarncell (script.js.DWD-UWZ-NINA_Unwetter:3104:29) 14:04:02.444 error javascript.0 (767) at Object.init (script.js.DWD-UWZ-NINA_Unwetter:982:23)
hab folgendes eingestellt
uPushdienst+= TELEGRAM;
uPushdienst+= ALEXA;var zamgCoordinates = [15.4333,47.0667]; (für Graz)
var idAlexaSerial = ['G2A0XL0794740321','G090XG0894252123'];
var alexaVolumen = [10];ich hab das mit dem aktivieren nicht ganz verstanden bzw. dachte ich wenn ich zamg befülle und den Rest nicht das dies automatisch dann funktioniert.
ZAMG denke ich das einzige was ich verwenden kann da ich aus Österreich komme.
-
Was hast du da eingestellt?
-
@grazer75 sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
var zamgCoordinates = [15.4333,47.0667]; (für Graz)
Gib das mal so ein:
var zamgCoordinates = [{breiten:47.0667, laengen:15.4333}];
-
Das Problem waren die falschen Koordinaten, jetzt hab ich auch die Objekte zu einstellen alle, davor war auto und die Objekte unter config dwd/mode/nina/uwz/zamg nicht vorhanden.
Muss ich noch was einstellen weil bei mir "message" leer ist?
-
Das Skript funktionierte, allerdings scheint es das aktuell nicht zu tun.
Es werden trotz starken Regen weder im UWZ noch ZAMG was angezeigtMeine Konfig:
/* Konfiguration ab hier */ /* ************************************************************************* */ /* ************************************************************************* */ /* ************************************************************************* */ /* Konfiguration der zu nutzenden Ausgabe um //uPushdienst+= PUSHOVER; zu aktivieren, bitte die // enfernen, also uPushdienst+= PUSHOVER; */ uPushdienst+= TELEGRAM; // Auskommentieren zum aktivieren //uPushdienst+= PUSHOVER; // Auskommentieren zum aktivieren //uPushdienst+= EMAIL; // Auskommentieren zum aktivieren. Einstellungen nicht vergessen //uPushdienst+= SAYIT; // Auskommentieren zum aktivieren. Einstellungen nicht vergessen //uPushdienst+= HOMETWO; // Auskommentieren zum aktivieren. Einstellungen nicht vergessen uPushdienst+= ALEXA; // Auskommentieren zum aktivieren. Einstellungen nicht vergessen //uPushdienst+= STATE; // Auskommentieren zum aktivieren. State befindet sich unter mainStatePath.message //uPushdienst+= IOGO; // Auskommentieren zum aktivieren. Einstellungen nicht vergessen //uPushdienst+= STATE_HTML; // Auskommentieren zum aktivieren. State_html befindet sich unter mainStatePath.messageHtml als Tabelle /* ************************************************************************* */ /* Beispiele zur weiteren Konfiguration */ /* ************************************************************************* */ /* /* kein oder einen Eintrag möglich: /* var senderEmailID = ["max@mustermann.de"]; /* /* kein oder mehrfach nach gleichem Muster [1, 2, 3] bzw. ['1', '2', '3'] Einträge /* '' ist das selbe wie "", jedoch nicht mischen. /* /* var empfaengerEmailID = ["max@musterman.de","max2@musterman.de"]; /* var telegramUser = []; // leer /* var telegramUser = ['']; // leer /* var telegramUser = ['Hans']; // User mit Namen Hans /* var telegramUser = ['Hans', 'Gretel']; // User mit Namen Hans und User mit Namen Gretel /* var idSayIt = ["sayit.0.tts.text"]; /* var sayItVolumen = [60]; // Zahl ohne '' /* var idSayIt = ["sayit.0.tts.text","sayit.1.tts.text"]; /* var sayItVolumen = [60, 30]; // mehrfach Zahl ohne '' /* var ioGoUser = ['max@musterman.de']; */ /* var idAlexaSerial =['3e4822845d50443ab35c001ca1be44b0', 'G090RZ3345643XR']; /* var alexaVolumen = [40, 30]; // Lautstärke die gleiche Anzahl an Einträgen wie bei idAlexaSerial /* /* ************************************************************************* */ /* weitere Konfiguration */ /* ************************************************************************* */ /* ************************************************************************* */ /* Datenabruf intern */ /* ************************************************************************* */ /* für UWZ Regionnamen eingeben "Warnung der Unwetterzentrale für XXXX" */ /* Durch das auffüllen wird der Datenabruf der UWZ aktiviert*/ /* Textbeispiel anstatt Entenhausen: 'Stadt / Dorfname' 'Berlin' oder 'den Regionsbezeichnung' 'den Schwarzwald' ''*/ /* UWZ - Für Deutschland: UWZDE + PLZ (UWZDE12345) */ /* var regionName = ['UWZDE13245', 'Entenhausen'] */ /* zum Deaktivieren [[]] oder [['','']]*/ var regionName = [['UWZAT8010','Graz']]; // Standalone Datenquelle // entnehme ZAHL aus CSV /* nur Gemeinde/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 '' einzel: '2334535354' mehrere: ['23423424','23423423'] // Koordinaten [{laengen:13.05501,breiten:47.80949},{breiten:46.6247200, laengen:14.3052800},{breiten:48.332741,laengen:14.62274}];. var zamgCoordinates = [{laengen:15.4333,breiten:47.0667}]; // [] ist deaktiviert var uZAMGMitMeteoinformationen = true; // gibt die Wetterinformationen mit der Beschreibung aus: z.B Eine Kaltfront und ein Italientief sorgen im Warnzeitraum... // für Nina gebt die Koordinaten für euren Ort ein. ninaCoordinates = [] // ninaCoordinates = [{breiten:51.2277, laengen:6.7735, text:'dadrüben'}, {breiten:53.0511000, laengen:8.6309100, text:'Delmenhorst'}]; /* ************************************************************************* */ /* Datenabruf über Adapter oder externes Skript */ /* ************************************************************************* */ // für Nina wird die Gemeinde und der Landkreis benötigt. Am besten von hier kopieren: https://warnung.bund.de/assets/json/suche_channel.json // ohne die kryptischen Zeichen. Das ersetzt nicht den NINA-Adapter var uGemeinde = ''; // hier steht zum Beispiel, Hamburg, Unterdorf var uLandkreis = ''; // hier Kreis Bitburg, Landkreis Fürth /* ************************************************************************* */ /* Sonstige */ /* ************************************************************************* */ /* Einstellungen zur Emailbenachrichtigung*/ var senderEmailID = [""]; // mit Sender Emailadresse füllen. email Adapter muß installiert sein. 1 Eintrag erlaubt [] oder ["email1"] var empfaengerEmailID = [""]; // mit Empfänger Emailadresse füllen. Mehrere Empfänger möglich. [] oder ["email1"] oder ["email1","email2"] /* Konfiguration Sprachausgabe über Home24 - Mediaplayer */ //var idMediaplayer = ["192.168.178.x:Port"]; var idMediaplayer = [""]; // Eingabe IP-Adresse incl. Port für Home24-Mediaplayer mehrere Möglich - ungetestet /* Konfiguration Telegram */ var telegramUser = ['']; // Einzelnutzer ['Hans']; Multinutzer ['Hans, Gretel']; Nutzer vom Adapter übernehmen []; var telegramChatId = ['']; // Mehrfach Einträge möglich ['Gruppe1','Gruppe2'] var uTelegramReplyMarkup = null; // Falls ihr ein Telegrammmenü verwendet, könnt ihr hier einen Weg zurück definieren z.B.: {keyboard: [['Zurück']], resize_keyboard: true}; var uTelegramAllowNotification = true; // Erlaube Telegramnotification (Benachrichtigungston/Hinweise auf dem Empfangsgerät) var uTelegramUseStdUser = false; // Verwende immer auch die im Adapter gespeicherten Benutzer. uTelegramReplyMarkupInline = true // Bei Nachrichten die nicht mit volle Länge angefragt wurde, gibt es eine Schalfläche in der man die Langversion anfordern kann. /* Konfiguration Pushover */ var uPushoverDeviceName = ''; // ein bestimmtes Gerät z.B: ['droid4']; var uPushoverSound = ''; // Sounds siehe: https://pushover.net/api#sounds //Konfiguration von ioGo var ioGoUser = ['']; // // Einzelnutzer ['Hans']; Multinutzer ['Hans', 'Gretel']; Nutzer vom Adapter übernehmen []; var ioGoExpiry = 0; // Nachricht wird nach Sekunden entfernt. 0: aus /* Konfiguration Sprachausgabe über SayIt */ var idSayIt = ["sayit.0.tts.text"]; // mehrfach Einträge möglich var sayItVolumen = [30]; // gleiche Anzahl wie idSayIt /* Konfiguration Sprachausgabe über Alexa /* mehrere Einträge möglich, bei mir ging nur der Echo, 2 dots 2.Gen reagieren nicht auf announcement. */ var idAlexaSerial = ['G2A0XL0794740HSX','G090XG0894252FSP']; // die reine Seriennummer des Echos z.B.: var idAlexaSerial =['G090RV32984110Y', 'G090RV32984110Y'] var alexaVolumen = [10]; // Lautstärke die gleiche Anzahl an Einträgen wie bei idAlexaSerial alexaMultiroomParentsOff = false; // pausiere alle mit den IDs verknüpfte Multiroomgruppen // Filtereinstellungen über Objekte einstellen var minlevel = 1 // Warnungen unterhalb dieses Levels nicht senden; (DWD und Nina level 1-4 / UWZ 0-5) var attentionWarningLevel = 3 // Warnung gleich oder oberhalb dieses Levels mit zusätzlichen Hinweisen versehen var minhoehe = 0 // Warnung für eine Höhe unterhalb dieses Wertes nicht senden var maxhoehe = 5000 // Warnung für eine Höhe oberhalb dieses Wertes nicht senden // Sprachausgabe Zeiten // Für durchgehende Sprachausgabe die Einstellung der Zeiten auf '' setzen. z.B. var startTimeSpeak = ''; var startTimeSpeak = '6:45';// Zeiten mo - fr ab der Sprachausgaben ok sind. Nicht unter 6 Uhr gehen oder den Schedule ändern var startTimeSpeakWeekend = '9:00';// sa + so Bemerkung siehe oben var endTimeSpeak = '22:30'; // ab diesem Zeitpunkt gibt es keine Sprachausgabe // Ein manuellen Auslösen von Sprachnachrichten, löscht alle noch nicht ausgegebenen Sprachnachrichten aus der Liste. var uManuellClickClearSpeakMessageList = true; //Auslösen der Pushnachricht über States ignoriert Sprachausgabezeiten var forcedSpeak = true; // keine Ansage über m/s Knoten und Windstärke. Die Angabe mit Kilometer pro Stunde wird angesagt var windForceDetailsSpeak = false; // Über Objekte einzustellen uLogLevel = 1 // 0:OFF, 1:INFO, 2:ADVANCE, 4:DEBUG /* ************************************************************************* */ /* Nur Anpassen wenn nötig */ /* ************************************************************************* */ //Formatierungsstring für Datum / Zeit Alternative "TT.MM.YYYY SS:mm" KEINE Anpassung nötig const formatierungString = "TT.MM.YY SS:mm"; var scriptOverrides = false; // Die Einstellung im Skript überschreiben bei jedem Start die Einstellungen in den Objekten (punkte unter Basiskonfiguration außer warnzelle. // Die Geschwindigkeit gibt an wie lange das Skript wartet bevor es eine neue Nachricht an die Sprachausgabe sendet. konstanten[3].delay /*SayIt*/ = 86; // Vorlese Geschwindigkeit pro Zeichen in ms konstanten[4].delay /*Home24*/ = 90; // Vorlese Geschwindigkeit pro Zeichen in ms konstanten[5].delay /*Alexa*/ = 88; // Vorlese Geschwindigkeit pro Zeichen in ms // Mit diesen Optionen verringert man die Nachrichtenlänge in dem Beschreibung oder Handlungsanweisungen // nicht der Nachricht hinzugefügt werden. // über Objekte einzustellen var uHtmlMitBeschreibung = true; // gilt für Email var uHtmlMitAnweisungen = true; // uHtmlMitBeschreibung muß evenfalls true sein um Anweisungen zu erhalten var uTextMitBeschreibung = true; // gilt nicht für Email, aber für alle anderen Textnachrichten var uTextMitAnweisungen = true; // uTextMitBeschreibung muß evenfalls true sein um Anweisungen zu erhalten var uSpracheMitBeschreibung = true; // gilt für alle Sprachnachrichten var uSpracheMitAnweisungen = true; // uSpracheMitBeschreibung muß evenfalls true sein um Anweisungen zu erhalten var uSpracheMitOhneAlles = true; // super kurz überschreibt die anderen Einstellungen uTextHtmlMitOhneAlles = false // super kurz für Text und Html // Obergrenze an Zeichen die über Sprachausgabe ausgegeben werden, bei überschreitung wird nur die Schlagzeile ausgegebenen var uMaxCharToSpeak = 0; // 0 = aus - Zahl größer als 0 = maximal Zeichenanzahl (1000 sind rund 86 Sekunden bla bla) // Automodus Filter um Warnungen unterhalb attentionWarningLevel von DWD, UWZ oder NINA zu unterdrücken // Sprachausgabe bei auto und manuell unterdrückt. // Diese Warnungen sind vorhanden, sie werden nur in den benannten Fällen ausgeblendet. // Ist eine feste Vorgabe überschreibt alles andere var uFilterList = 0; // generelles Filter für den AutoModus ( = DWD + UWZ; oder = NINA; oder = 0;), außer Warnungslevel ist gleich/über attentionWarningLevel var uAutoNinaFilterList = ['CAP@hochwasserzentralen.de']; //Nina only. Filter diesen Sender raus s.o. - mehrere ['abc','cde']; var uwzPath= 'javascript.0.UWZ'; var dwdPath= 'dwd.0'; var ninaPath= 'nina.0' var intervalMinutes = 5; // die Daten bei DWD werden alle 10 Minuten aktualisiert. // Instanzen im ioBroker var telegramInstanz= 'telegram.0'; var pushoverInstanz= 'pushover.0'; var ioGoInstanz= 'iogo.0'; var alexaInstanz= 'alexa2.0'; var emailInstanz= 'email.0'; /* ************************************************************************* */ /* ************************************************************************* */ /* ************************************************************************* */ /* Konfiguration Ende */
Die Alerts sind wie gesagt nicht befüllt
Beim ersten Mal ausführen wurden die Daten noch abgeholt, jetzt hilft auch kein Reboot oder neuer Start vom Skript.
Wie kann ich manuell prüfen ob vom UWZ oder ZAMG überhaupt Daten geschickt wurden?
Ist irgendwo ein Fehler den ich nicht sehe? -
Bei UWZ an die URL: AT und deine Postleitzahl anhängen.
http://feed.alertspro.meteogroup.com/AlertsPro/AlertsProPollService.php?method=getWarning&language=de&areaID=
In ZAMG könnte ein Fehler sein.Für ZAMG placeHolder & placeHolder1 durch die entsprechenden Koordinaten ersetzen
https://warnungen.zamg.at/wsapp/api/getWarningsForCoords?lon=placeHolder&lat=placeHolder1&lang=de
Weiterhin kannst du folgenden Punkt in Objekte aktivieren
0_userdata.0.wetterwarnung1.config.basiskonfiguration.log.erweitert
natürlich dein Pfad. Ich nutze selber kein ZAMG daher weiß ich nicht ob es funktioniert.
Gruß Tim
-
@stephan-schleich sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@stephan-schleich sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@ticaki ich dachte es soll das gleiche wie die messageHTML sein, hmm, hätte nämlich gern einen der den Text unformatiert ausgibt
@ticaki Du denkst aber noch an diesen Wunsch oder
Ist der Wunsch noch aktuelle?
Wenn ja, welchen Zeilentrenner bevorzugs du. In meiner Testversion ist es '/n'. Brauche nur ein Unwetter ums erstmal für mich zu testen.
-
@ticaki unbedingt :). was meinst du mit zeilentrenner? mir reichts messagehtml nur als text oder versteh ich dich falsch?
-
falsches Wort
Zeilenumbruch. Wenn du das irgendwo darstellen willst, wäre ein Zeilenumbruch sinnvoll. im Moment ist es /n
Weils bei Telegram (glaube ich) so ist, hab das im Code bei irgendwas gesehen. Linux macht das so:
echo "Das \n ist \n ein \n Test"
EDIT: ah ZAMG hat in den übermittelten Daten das /n.
EDIT2: war zu faul um den Backslash auf meiner Mac Tastatur zu suchen (\n) ist das übliche Zeichen dafür