NEWS
Script erstellen und via Telegram versenden - wie?
-
Stimmt es so?
function alarmMsg(txt) { sendTo("telegram.0", "send", { text: txt }); txt = 'Instanz ' + txt; log(txt); // sendTo(); } var ids = []; var timers = []; var timer = null; // Kurzzeit-Timer on(/^system\.adapter\..+\.alive$/, function(dp) { var idx = ids.indexOf(dp.id); if(idx == -1) { idx = ids.push(dp.id) - 1; timers[idx] = null; } var id = dp.id.split('.'); var common = getObject('system.adapter.' + id[2] + '.' + id[3]).common; if(common.mode == 'daemon' && common.enabled) { // Instanzen mit cronjob und gesperrte Instanzen ausblenden if(dp.state.val && dp.oldState.val === false) { if(timer) { clearTimeout(timer); timer = null; } else { if(timers[idx]) clearTimeout(timers[idx]); timers[idx] = setTimeout(function() { timers[idx] = null; alarmMsg(dp.common.name + ' läuft wieder'); }, 150000); // 2,5 Minuten } } else if(dp.state.val === false && dp.oldState.val && !timers[idx]) { timer = setTimeout(function() { alarmMsg(dp.common.name + ' meldet Probleme'); timer = null; }, 5000); } } });
-
@Vazi
Das Script schickt den Zustand eines Adapter auf Dein Handy?
Das hast doch in unter 5 Minuten mit Blockly selber zusammen geklickt und Du weißt dann wenigstens gleich was läuft. -
Ja, das ist meine Absicht.
Es soll eine Meldung via Telegram erfolgen, sollte eine Instanz nicht laufen....
Blockly kenn ich nun "etwas".... wie sollte das dann aussehen? Du musst mir das nicht alles nun programmieren, eventuell hast Du aber gerade etwas zur Hand
-
@Vazi
Läuft der Telegram Adapter schon und kann Telegramme verschicken?
Und welche Instanz(en) sollen überwacht werden? -
ich muss gestehen, dass ich schon seit längerem Telegram nicht mehr im Gebrauch hatte...... Deshalb stelle ich auch noch blöd die Frage.... wie kann ich es Testen...? Sorry
-
@Vazi
Wenn der Bot mal lief, dann wird er das wohl auch noch tun.
Der Rest ist mit Blockly Kindergeburtstag. Erstmal die Ansicht der Instanzen auf Expert umstellen, so bekommst für jeden Adspter ein DP alive und den nimmst als Triger. Dann ein Fslls Block rein der da noch ne Auswertung macht und dann den Send to Telegramm Block, fertig. -
Telegram funktioniert. Konnte es mit einem Test-Blockly testen.
Wo finde ich von den Adapter ein DP alive? Expertenmodus habe ich umgestellt
-
@Vazi
Welche Adapter möchtest Du überwachen? -
@Vazi sagte in Script erstellen und via Telegram versenden - wie?:
Wo finde ich von den Adapter ein DP alive?
Bei den Objekten.
system.adapter......0.alive -
-
Du hast geschrieben, dass du den Expertenmodus an hast!!!
Wenn ja, dann siehst du den Punkt auch.
-
@bahnuhr
oh man(n).... vor lauter Bäume... hatte leiglich bei Instanzen auf Expertenmodus umgestellt... nicht jedoch bei Objekten. Jetzt kann ich es auch sehen! Vielen herzlichen Dank. -
@Vazi sagte in Script erstellen und via Telegram versenden - wie?:
@bahnuhr
oh man(n).... vor lauter Bäume... hatte leiglich bei Instanzen auf Expertenmodus umgestellt... nicht jedoch bei Objekten. Jetzt kann ich es auch sehen! Vielen herzlichen Dank.Wenn geholfen, dann mal Daumen hoch.
-
@Vazi
so könnte dann das Blockly für 9 Adapter aussehen:
Das erste FALLS ist ein Beispiel und kann so für die anderen weitergeführt werden. Oben die alive DPs rein und das selbe bei den FALLS, dann noch blabla durch Adapter Name ersetzten und fertig.Geht bestimmt auch eleganter, aber so versteht man das Prinzip am einfachsten.
-
-
@bahnuhr sagte in Script erstellen und via Telegram versenden - wie?:
Wenn geholfen, dann mal Daumen hoch.
Tja, wäre schön gewesen.
-
@bahnuhr .. sorry.. war keine Absicht