NEWS
[Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten
-
@leviathan09 sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
Ist es evtl Möglich einen Parameter mit aufzunehmen wo man die Stimme für den Echo auswählen kann?
Bei '' Standard und dann eben Werte 'Hans','Marlene','Vicki'Aktuell ist mir das zuviel Arbeit, hab auch nicht wirklich Zeit dafür. Vielleicht später mal.
-
@cuth
Zu Edit 2Dort wo du Test hingeschrieben hast, schreibe das hin, was du als Region angezeigt bekommen willst. Ich glaube das war nur ein Textname damit man nicht UWZ132123 lesen muß.
Wenn du das Skript testen möchtest, suche dir eine Region aus in der ein Unwetter besteht und trage die ein.
Wäre das einfachste.
EDIT:
Das Skript benutzt ausschließlich das JSON im object Datenpunkt in dem sind alle Infos enthalten. Die anderen sind für Nutzer gedacht.
Kann heute Abend mal nachsehen ob ich noch ein JSON rumliegen habe g
-
@ticaki
Hallo,hab eben im Skript die Region statt _test erfasst.
In beide Skripte hab ich mir aus UWZ eben eine Region gesucht wo eine Warnung besteht.
Für AT zb. UWZAT6863In Config ist UWZ auf True. Leider keine Push
-
@cuth
Hast du in beiden Skripten die Region geändert? Wenn Ja, schau mal ob der object datenpunkt mit daten gefüllt ist. Wenn ja, kopiere die in die Zwischenablage, lösche sie dann aus dem Datenpunkt warte 15 Sekunden und füge sie wieder ein.Funktioniert der manuelle Push?
Weiß nicht ob sich die Frage geklärt hat, jedoch sicherheitshalber:
Das UWZ Skript besorgt die Daten, das DWD/UWZ/NINA Skript sortiert sie und pusht sie.
Noch eine wichtige Kleinigkeit. Wenn du am testen bist, muss du zuerst mein Skript konfigurieren und neustarten und dann erst UWZ oder eines der anderen. Mein Skript versendet keine Warnungen beim Neustart, da mein Raspi morgens um 5 neugestartet wird und ich echt keine Übersicht zu dem Zeitpunkt brauche ;D
-
Hallo zusammen,
ich war lange auf der Suche nach sowas wie diese Script. Leider bin ich in ioBroker Neuling. Installation soweit eingerichtet und Script läuft, denke ich. Kurze Frage. Ich bekomme per Telegram auch Mitteilungen. Ist es den möglich das auch Mitteilungen in eine Gruppe geschickt werden? Falls ja, hat jemanden einen Lösungsansatz für mich?
-
@monza258 sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
Hallo zusammen,
ich war lange auf der Suche nach sowas wie diese Script. Leider bin ich in ioBroker Neuling. Installation soweit eingerichtet und Script läuft, denke ich. Kurze Frage. Ich bekomme per Telegram auch Mitteilungen. Ist es den möglich das auch Mitteilungen in eine Gruppe geschickt werden? Falls ja, hat jemanden einen Lösungsansatz für mich?
Anleitung des Adapters von github:
https://github.com/iobroker-community-adapters/ioBroker.telegram
In order to send messages to groups, you have to invite the bot to the group you want the bot to post in. By providing the chat_id to the JSON message payload you can actually send messages to those groups.
In order to find out the chat_id you have to set the adapter's log level to debug. You can then just ping your bot in the groups you want the bot to send messages to. Make sure you put a / in front of the message in order for the bot to see the message (if the bot privacy is turned on). The iobroker log will then show you the chat id in the logs.
Aus der Anleitung:
KONFIGURATIONSPARAMETER FÜR PUSHMÖGLICHKEITEN
optionale Punkte brauchen nicht angepasst zu werden, wenn die Möglichkeit oben aktiviert wurde.
nicht optionale Punkte müssen angepasst/überprüft werden, wenn die Möglichkeit oben aktiviert wurde.Einstellungen zu Telegram: (optional)
Stelle hier Optional bestimmte Nutzer oder ChatID ein. Einzelnutzer ['Hans']; Multinutzer ['Hans', 'Gretel']; Nutzer vom Adapter übernehmen [];
Die Instanz nur anpassen, wenn deine davon abweicht. Das gilt für jede Instanzeinstellungvar telegramUser = ['']; var telegramChatId = [''];
-
@ticaki Stehe grade auf dem Schlauch. Will ich also das Nachrichten in jede Gruppe in der der Bot hinzugefügt wurde, Nachrichten schickt, passe ich in den Einstellungen (ChatId) nichts an. Botfather die privacy settings auf Disable und es sollte funktionieren. Richtig?
-
-
-
Darf ich noch fragen bzgl. Nina. Ich bekomme im LOG folgende Fehlermeldung angezeigt.
(6947) Cannot reach https://warnung.bund.de/bbk.status/status_065310050000.json Server. Statuscode: 404
-
@monza258
Ich hatte im Telegram Adapter keinen User eingetragen. Daher kamen die Nachrichten nicht an. Erfolgreich konnte ich an die Chat-ID verschicken. Ich hatte später den Telegram neu installiert und einen User angelegt. Nun kann ich AUCH an die User-ID verschicken. Ich nutze aber weiterhin die Chat-ID. Hier noch einmal meinen Dank na @ticaki !Ich sehe hier beide Einträge als Alternative. Entweder füllst du den User oder die Chat-ID.
-
@monza258 sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
Darf ich noch fragen bzgl. Nina. Ich bekomme im LOG folgende Fehlermeldung angezeigt.
(6947) Cannot reach https://warnung.bund.de/bbk.status/status_065310050000.json Server. Statuscode: 404
Dazu bitte hier nachfragen: https://forum.iobroker.net/topic/23866/aufruf-nina-gefahrenmeldung-adapter
Das hat mit dem Adapter zu tun, nicht mit dem Skript.
-
@martybr
Die Meldungen kommen beim BOT schon an. User sind auch im Telegram Adapter drin. Nur wie werden die Meldungen die ja an den Bot gehen auch in eine GRUPPE gesendet wenn der Bot in einer Gruppe hinzugefügt wurde. -
@monza258
Sende mal eine Mitteilung in den Gruppenchat, dann müsste eigentlich unter Telegramm im Objektbaum die Mitteilung und die Chatid angezeigt werden. -
@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.