NEWS
[Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten
-
@maddingamer sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
@ticaki
Mega gut! Ich danke dir!
Könntest du uMaxCharToSpeak auch für z.B. Telegramm einbinden? Auch da würde es mir reichen, wenn ich nur die Headline bekomme, statt so sehr viel Text.. Genauer nachschauen kann man das im Bedarfsfall ja immer nochmalDu könntest ja erstmal ab Zeile ca. 1042 diesen Code
das würde es dann für dich schon mal lösen.
Edit: nächstes Posting enthält die eingebaute Version
-
v0.97.6
- Funktion: Das Hinzufügen von Beschreibung und Handlungsanweisungen zu Text- und/oder Sprachnachrichten, kann abgeschaltet werden. Dieses betrifft keine Emailbenachrichtigungen.
- Konfigurationsänderungen bitte einfügen ansonsten KK
Ab ca. 238 einfügen
// Mit diesen Optionen verringert man die Nachrichtenlänge in dem Beschreibung oder Handlungsanweisungen // nicht der Nachricht hinzugefügt werden. var uTextMitBeschreibung = true; // gilt nicht für Email, aber für alle anderen Textnachrichten var uTextMitAnweisungen = true; // uTextMitAnweisungen 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
-
@ticaki Sehr genial! Danke!!
Nochmal eine Frage: Legt das Script irgendwie einen Datenpunkt mit dem Text an, den es "weglässt"?
Ich lasse mir die Warnungen z.B. per Telegramm schicken und da wäre es ggf. sinnvoll, an den Telegramm Bot ein Befehl wie "zeige Beschreibung" oder Ähnliches zu schicken, um dann genauere Infos zu bekommen. Damit man nur mehr Infos bekommt, wenn man sie haben möchte... Kannst du mir folgen was ich meine? Muss nicht unbedingt in dein Script eingebunden werden wenn du da nicht von überzeugt bist, aber eine kleine Hilfe wäre nett -
@maddingamer
Suche in deinem Script nach diesem hier:// Plain text
darunter findest du diesen Code
if ((getPushModeFlag(mode) & CANPLAIN & todoBitmask) != 0) { let pushMsg = headline + getArtikelMode(mode) + area + (bt ? NEWLINE + sTime : '') if (uTextMitBeschreibung) { pushMsg+= NEWLINE + description; if (uTextMitAnweisungen && !!instruction && typeof instruction === 'string' && instruction.length > 2) {
den ersetzt du durch diesen:
if ((getPushModeFlag(mode) & CANPLAIN & todoBitmask) != 0) { let pushMsg = headline + getArtikelMode(mode) + area + (bt ? NEWLINE + sTime : '') if (uTextMitBeschreibung || onClickCheckRun) { pushMsg+= NEWLINE + description; if ((uTextMitAnweisungen || onClickCheckRun) && !!instruction && typeof instruction === 'string' && instruction.length > 2) {
und dann tippst du in Telegram Ww? ein
Nachteil: alle Manuell ausgelösten Textnachrichten haben den vollen Text.
Ich baue mir gerade einen Telegram Handler zusammen mit dem ich meine Bude steuern, Wetterwarnungen anfordern und Treibstoffpreise an meiner Lieblingstankstelle abrufen kann. Keine Ahnung ob das Interessant ist, auf jeden Fall braucht man für den Handler etwas mehr Erfahrung. Mußte über deine Anfrage deshalb etwas lächeln, da ich da schon länger am rumbasteln bin.
-
@ticaki Ich glaube ich belasse es dann erstmal bei den "kurzen" Meldungen.. mit dem ganzen Telegram-Krams steige ich noch nicht so wirklich durch
-
@maddingamer
Jetzt hast du mich falsch verstanden.Nimm die Änderungen im Code vor und tippe Ww? in Telegram.
Das man mit Telegram die Nachrichten anfordern kann ist schon seit langem eingebaut. Nur dass du es mit beschreibungen bekommst erfodert änderungen im Code.
-
Das man mit Telegram die Nachrichten anfordern kann ist schon seit langem eingebaut.
Gibt es dazu irgenwie eine Doku?
Nimm die Änderungen im Code vor und tippe Ww? in Telegram.
Das funktioniert, aber jetzt bekomme ich auch wenn ich über javascript.0.wetterwarnung.commands.telegram die Warnung(en) manuell schicke die ganzen 2 Nachrichten, statt wie ohne die Änderung nur die Headline.. Oder habe ich dich wieder falsch verstanden?
-
@maddingamer
Nope keine Doku ist geheim g das war eigentlich zum Debuggen gedacht.Ich baue den Code gerade um das eine Anforderung über Telegram die Nachrichten in voller Länge schickt und manuell noch immer in Kurzform. Gib mir 20 Minuten.
ist btw. ne gute Idee
-
v0.97.6.1
- über Telegram erhält man mit Wwww Warnungen mit Beschreibung und Handlungsanweisungen unabhängig von den Einstellungen dazu.
- KK
An sinnvollen Kommandos gibt es aktuell nur
Ww? Wwww
Ww? aktiviert command.telegram
Wwww macht das selbe wie Ww? + Es überschreibt kurzzeitig alle Einstellungen zu Textbegrenzungen -
@ticaki Super!
Kann man für das wwww und das ww? irgendwie einen Alias anlegen? Ich bin aktuell dabei ein Button-Menü für Telegram zu bauen und da hätte ich lieber sowas wie aktuelle Warnungen und vollständige Warnungen o.Ä. stehen.. Aber soweit ich verstanden habe, stimmt der gesendete Text immer mit dem auf dem Button überein.. und ww? und wwww auf dem Button ist nicht so einleuchtend finde ichEDIT: Ich glaube am einfachsten und sinnvollsten wäre ein Datenpunkt analog zu javascript.0.wetterwarnung.commands.telegram bzw .alexa. Also z.B. commands.telegram_headline. Den kann ich dann ja triggern..
-
Ähm...
ich benutze folgende Werte die von meinen Telegram Knöpfen gesendet werden:- lange version 2. kurze Version
'DWDUZWNINA#!§$LONG' 'DWDUZWNINA#!§$TT'
Suche einfach in dem Script nach dieser Zeichenkombination und ersetzte sie durch was immer du magst.
Wwww ist aber einfach einzutippen
EDIT: Beispiel Code für die Verwendung von Telegram:
sendTo('telegram', { // user: user, text: 'Click the button', reply_markup: { inline_keyboard: [ [{ text: 'Wetterwarnung kurz', callback_data: 'DWDUZWNINA#!§$TT' }], [{ text: 'Wetterwarnung lang', callback_data: 'DWDUZWNINA#!§$LONG' }] ] } });
Beim nächsten Update wird Ww? so sein, dass es immer die kurze Version ausgibt egal was eingestellt ist.
-
@ticaki Habe jetzt wwww ersetzt und für die kurzen meldungen triggere ich einfach den datenpunkt commands.telegram.. Nicht unbedingt perfekt, aber funktioniert
Zu deinem Beispiel: Das ist natürlich sehr schick, aber ich nutze nicht inline_keyboard sondern nur keyboard.. und da gibt es meines Wissens nach die Aufteilung von text und callback_data leider nicht..
-
In der ursprünglichen Version hat Ww? auch nix anders gemacht als command.telegram auf true zu setzen.
v0.97.6.2
- telegram: Das Auslösen von Warnungen per Telegram ist im Codeteil konfigurierbar. Unterhalb von 123456 findet man die Variablen.
- Ww? = kurze Warnungen = var uTelegramMessageShort = 'Ww?';
- Wwww = lange Warnungen = var uTelegramMessageLong = 'Wwww';
-
@ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:
DWDUZWNINA#!§$TT
muss Dich hier auch noch belästigen. Wenn ich das genau so in meinem Telegram Menü eingebe sagt er mir, dass er das nicht versteht. muss ich da noch etwas bei Text2Command eingeben dass es klappt?
Zudem fällt mir auf dass wenn ich Ww? oder Wwww eintippe immer zuerst die Meldung in Telegram kommt dass "ich verstehe Ww? nicht" und dann gibt er doch die Meldung aus wie z.b. Alle Wanmeldungen wurden aufgehoben.
Muss ich da noch etwas einstellen?
-
@drapo
Ich benutze kein text2command, meine Telegramm Sachen brauchen einzig den Telegramm-Adapter.Ich schaue heute Abend mal nach was dieser Adapter mit den Texten macht. Ein einfacher Weg die "ich verstehe Ww?" Meldung zu umgehen wäre wohl ein solchen Befehl im Adapter anzulegen ohne eine weitere Anweisung.
Das Script entfernt den Namen aus der Rückantwort und vergleicht dann ob der Rest identisch mit der Vorgabe ist.
Die Rückantwort ist z.B. [drapo]Ww? -
@ticaki habe ich soeben versucht. Aber die Meldung mit ich verstehe Ww? nicht kommt immer noch
-
Muß ich mir später anschauen.
-
@ticaki Dank dir eilt ja nicht Wetter ist super momentan.
-
Ich komme in einer Stunde dazu, aber vielleicht könntest du mal sehen was passiert wenn du in deinem letzten Test einen Dummydatenpunkt angibst den du auf true setzt.
-
@ticaki hab ich gemacht sieht dann immer noch gleich aus