NEWS
[Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten
-
@ticaki said in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@monza258
Sende mal eine Mitteilung in den Gruppenchat, dann müsste eigentlich unter Telegramm im Objektbaum die Mitteilung und die Chatid angezeigt werden.Im Log sehe die Mitteilung und auch die ChatID. Die Meldung wird aber nicht in die Gruppe versendet wenn ich die ChatID im Script einfüge.
/* Konfiguration Telegram */ var telegramUser = ['']; // Einzelnutzer ['Hans']; Multinutzer ['Hans', 'Gretel']; Nutzer vom Adapter übernehmen []; var telegramChatId = ['-100XXXXXXXX'];
Das kommt noch im Log:
Received command "send": {"ChatId":["-100XXXXXXXXX"],"text":"🌨 Amtliche WARNUNG vor LEICHTEM SCHNEEFALL des DWD für Kreis Gießen\ngültig vom 26.01.21 03:00 Uhr bis 26.01.21 15:00 Uhr\nEs tr...
-
@monza258
Ich habe es eigentlich genau gemacht:/* Konfiguration Telegram */ var telegramUser = ['']; // Einzelnutzer ['Hans']; Multinutzer ['Hans', 'Gretel']; Nutzer vom Adapter übernehmen []; var telegramChatId = ['xxxxxxxx071']; 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)
Die Meldungen kommen bei meiner Frau und mir gleichzeitig an. Es funktioniert einfach.
Wie hast du den die Gruppe aufgebaut? Bei uns sind die Apps bei mit der gleichen Chat-ID angemeldet.
Vielleicht liegt hier der Unterschied. -
Die frage die ich mir gerade stelle, hast du den BOT in einer Gruppe oder schickst du die Meldungen an eine Telegram User ID. Mein Ziel ist es das die Meldungen in eine Gruppe geschickt werden.
Wenn ich also nun den Bot in Zb. die Familien Gruppe einfüge (ChatID: -100XXXXXX)
https://api.telegram.org/botHIERDERBOTTOKEN/sendMessage?chat_id=GRUPPENCHATID&text=Test
Sollen die Meldungen dann auch in der Gruppe erscheinen. Und nicht nur im Bot selbst.
-
@monza258
Fehler gefunden und behoben. Ab 123456 kopieren und hoffe es geht dann. -
Ok, text kopiert aber es kommt keine Meldung in die Gruppe. Habe zunächst bei ChatId nichts eingetragen und dann mal die Entsprechende ChatID der Gruppe.
-
@monza258
Dann zeit für einen kleinen Hack, hab jetzt keine Zeit mich nochmals durch alles durchzukauen um raus zu bekommen wieso es jetzt doch nicht geht, wie es mal gegangen ist.Zeile 1288 (oder in der Nähe)
Da findest du folgenden Abschnitt:
if (telegramChatId.length > 0) { nMsg.chatId = 'xxx'; // telegramChatId; _sendSplitMessage(TELEGRAM, msg.slice(), nMsg, function(msg, opt) { opt.text = msg; _sendTo(TELEGRAM, telegramInstanz, opt); }); }
trage in der Config und dort (xxx) deine ChatId ein. Der Eintrag in der Config muß da sein, damit dieser Teil vom Code aufgerufen wird.
EDIT: hab bei mir ausprobiert, dann geht es in die Gruppe. Anscheinend gehen Arrays dort nicht mehr.
-
@ticaki said in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
'
Tut mir ja wirklich leid wenn ich umstände bereite.
Ich bekomme im Script Fehler wenn ich die Zeile 1288 anpasse
if (telegramChatId.length > 0) { nMsg.chatId = '-10XXXXXX'; // telegramChatId; _sendSplitMessage(TELEGRAM, msg.slice(), nMsg, function(msg, opt) { opt.text = msg; _sendTo(TELEGRAM, telegramInstanz, opt); }); }
javascript.0 (2196) script.js.common.Unwetterwarnungen_DWD: Konfiguration enthält Fehler. Ändere name = [-10XXXXXX];//(number) in name = ['-10XXXXXX'];//(string)
-
Danke für das Script, installiert und läuft. Eine Frage: Gibt es einen Datenpunkt a la "Warnung vorhanden true/false"?
MfG
eMd -
Irgendwo habe ich einen Fehler?
javascript.0 2021-01-26 21:23:29.201 info (880) script.js.Sigi.UWZ_DWD_NINA3: registered 10 subscriptions and 1 schedule javascript.0 2021-01-26 21:23:29.198 warn (880) at script.js.Sigi.UWZ_DWD_NINA3:2368:3 javascript.0 2021-01-26 21:23:29.198 warn (880) at script.js.Sigi.UWZ_DWD_NINA3:701:17 javascript.0 2021-01-26 21:23:29.198 warn (880) at setConfigKonstanten (script.js.Sigi.UWZ_DWD_NINA3:811:5) javascript.0 2021-01-26 21:23:29.198 warn (880) at setState (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1417:20) javascript.0 2021-01-26 21:23:29.198 warn (880) You are assigning a object to the state "javascript.0.wetterwarnung.config.manuell.nina.state_html" which expects a boolean. Please fix your code to use a boolean or change the state type to ob
-
['chatid']
das muß in der Config so aussehen EDIT: sind keine Umstände um das aber richtig zu reparieren muß ich die api doku nochmal lesen und das dauert etwas zuviele Minuten.
Das guck ich mir demnächst an, brennt ja noch nicht.
@emd
Ich glaube nicht, ist jetzt auf der Wunschliste -
@monza258
Sorry für die späte Antwort. Ich schicke die Nachrichten an eine Telegram UserId. Vielleicht ist da der Unterschied. -
@ticaki
Danke, damit kann ich dann meine Kachel aktiv schalten in iqontrol...Ach ja, Beginn und Ende der aktuellen Warnung existiert nur komplett im Text und nicht als einzelne Datenpunkte, oder?
MfG
eMd -
@ticaki said in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
['chatid']
das muß in der Config so aussehen EDIT: sind keine Umstände um das aber richtig zu reparieren muß ich die api doku nochmal lesen und das dauert etwas zuviele Minuten.@ticaki
So jetzt Passt es. Kommt nun in die Gruppe und im BOT selbst.Beutetet das du danach nochmal schaust? Sollte ja eigentlich so sei das der Bot die Meldungen in jede Gruppe schickt in die er hinzugefügt wird. Bzw. wenn in ChatiD die entsprechende ID der Gruppe eingetragen wird.
-
@monza258
Werde wohl einfach pro chatid eintrag eine nachricht verschicken -
@ticaki said in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@monza258
Werde wohl einfach pro chatid eintrag eine nachricht verschickenOk, warte dann mal auf ein Update. Danke für die Mühe dafür. Freut mich das du da so schnell im Ansatz geholfen hast.
-
@emd
Wenn du nicht NINA benutzt schau mal unter Alerts wenn du etwas scripten kannst sollte es kein Problem sein da die Daten herzubekommen die du brauchst. -
@ticaki
Ich nochmal. Ich möchte die Telegram Mitteilungen gerne etwas anpassen. Zb Überschrift Fett und nach der Dauer einen Zeilenabstand mehr einbauen. Kannst du mir sagen in welche Zeile ich das anpassen müsste?Quasi so:
Amtliche Warnung vor Glätte
gültig von 09:00 bis 11:00 UhrEs muss mit Glätte gerechnet werden.
-
@ticaki
Hallo,also aktuell hätte ich zum Testen mir eine Region in AT rausgesucht wo gerade eine Wetterwarnung herrscht.
PLZ von Egg: 6863
Dann gehe ich in beide Skripte rein:
1:
- Skript:
In den Objekten finde ich nun folgende Werte:
Danach habe ich in den Objekte unter "wetterwarnung_egg" folgendes auf "true" gesetzt.
Laut uwz.at gibt es dort eine Warnung für Schneefall.
Wert welchen ich erhalte:
Manuelles auslösen einer Pushinfo: Funktioniert.
-
@cuth
Verstehe nicht ganz was deine Frage oder Info ist.Auf jeden Fall das UWZ Skript aktualisiert die Werte alle 5 Minuten. Was bedeutet das die erste Aktualisierung nach 5 Minuten stattfindet. Falls das dein Problem löst.
-
@monza258 sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@ticaki
Ich nochmal. Ich möchte die Telegram Mitteilungen gerne etwas anpassen. Zb Überschrift Fett und nach der Dauer einen Zeilenabstand mehr einbauen. Kannst du mir sagen in welche Zeile ich das anpassen müsste?Quasi so:
Amtliche Warnung vor Glätte
gültig von 09:00 bis 11:00 UhrEs muss mit Glätte gerechnet werden.
Die Leerzeile habe ich eingefügt, aber das mit der Formatierung ist mir zu aufwendig.
Dazu muß du einerseits die Formatierungen ins Skript einfügen und andererseits aus den Warnungen alle verbotenen Zeichen ausfiltern und ersetzen. Das kann man nicht mal eben mit ein paar kleinen Anpassungen erledigen.