NEWS
Rolladensteuerung über Telegram
-
@Jan1 sagte in Rolladensteuerung über Telegram:
also einfacher gehts fast nicht.
mit Telegram:
Eingabe: /?
und dann klickAlso insgesamt 3 Klicks.
-
Nur so nebenbei..
Kennt ihr die Funktion im Telegram-Adapter? Ist noch nicht ganz 100% fertig implementiert glaube ich.. Aber funktioniert schon so.. -
Der Trigger scheint bei mir nicht zu funktionieren.
Fehlt eventuell am Ende des Scriptes noch etwas bzw. welche Version Javascript nutzt du?
Wenn ich das Script einfüge meckert er auch einen Compile fehler an:
code_text
Habe dann am am Ende das angefügt:
}
Weiß aber nicht ob das so richtig ist und denke da fehlt irgendetwas da bei mir nicht getriggert wird.
-
@wendy2702
füge doch mal dein komplettes Script ein.Was steht denn in Zeile 1.
-
Ist eigentlich genau das was du gepostet hast nur um die eine geschweifte Klammer am Ende ergänzt:
// Telegram: Antworten auf Handy Eingaben function weiter() { //Variablen var vEingabe = getState("telegram.0.communicate.request").val; // Eingabe per telegram auf dem Handy var vText = ""; var vUser = vEingabe.substring(1, vEingabe.indexOf("]")); vEingabe = vEingabe.substring(vEingabe.indexOf("]") + 1, vEingabe.length); log (vUser); log (vEingabe); if (vEingabe == "/?") { vText = "Auswahlliste:" + "\n--------------------------------------------------------" + "\n"; vText = vText + "/Aussenbereich\n" + "/Blitzer\n" + "/Dachfenster\n" + "/Dieter_Standort\n" + "/DWD\n" + "/Garage\n" + "/Heizung\n" + "/Licht\n"; vText = vText + "/Systemvariablen\n" + "/Tanks\n" + "/Video\n" + "/Zusammenfassung"; sendTo('telegram', { user: vUser, text: vText, parse_mode: 'HTML' }); } if (vEingabe == "/Aussenbereich") { vText = "Außenbereich:" + "\n--------------------------------------------------------" + "\n"; vText = vText + "Temp Sensor Garage: " + getState("hm-rpc.0.KEQ0766778.1.TEMPERATURE").val + "°C\n"; vText = vText + "Temp Kombisensor: " + getState("hm-rpc.0.LEQ1221393.1.TEMPERATURE").val + "°C\n"; vText = vText + "Windgeschwindigkeit: " + parseInt(getState("hm-rpc.0.LEQ1221393.1.WIND_SPEED").val*10)/10 + " km/h\n"; vText = vText + "Photovoltaik:\n"; vText = vText + " - Strang 1: " + parseInt(getState("javascript.0.Status.Photovoltaik.Leistung_Strang1").val) + " W\n"; vText = vText + " - Strang 2: " + parseInt(getState("javascript.0.Status.Photovoltaik.Leistung_Strang2").val) + " W\n"; vText = vText + " - Gesamt: " + getState("javascript.0.Status.Photovoltaik.Tagesleistung").val + " kW\n"; vText = vText + "Terrasse Lampe: " + getState("hm-rpc.0.KEQ0926502.2.STATE").val + "\n"; vText = vText.replace(/false/g, 'aus'); vText = vText.replace(/true/g, 'an'); vText = vText + "Terrasse Bewegung: " + getState("hm-rpc.0.LEQ0492702.1.MOTION").val + "\n"; vText = vText.replace(/false/g, 'nein'); vText = vText.replace(/true/g, 'ja'); vText = vText + "Brunnen: " + getState("javascript.0.Status.Sonstige.Brunnen").val + "\n"; vText = vText + "Wassertränke: " + getState("javascript.0.Status.Sonstige.Wassertraenke").val + "\n"; vText = vText + "Lichtsensor-Ost: " + parseInt(getState("hm-rpc.0.OEQ2281298.1.LUX").val) + " Lux\n"; vText = vText + "Lichtsensor-Süd: " + parseInt(getState("hm-rpc.0.NEQ0322032.1.LUX").val) + " Lux\n"; vText = vText + "Barometer Tränke: " + getState("hm-rega.0.36100").val.toFixed(1) + " hPa" + "\n"; vText = vText + "Barometer Wiffi2: " + getState("hm-rega.0.40977").val.toFixed(1) + " hPa" + "\n"; //vText = vText + "Barometer Zisterne: " + getState("hm-rega.0.33892").val.toFixed(1) + " hPa" + "\n"; vText = vText.replace(/false/g, 'aus'); vText = vText.replace(/true/g, 'an'); sendTo('telegram', { user: vUser, text: vText, parse_mode: 'HTML' }); } if (vEingabe == "/Blitzer") { //.. } if (vEingabe == "/Dieter_Standort") { var ort = getState('javascript.0.Status.Maps.Text_von_Tasker').val; var v_Breitengrad = getState('javascript.0.Status.Maps.Breitengrad1').val; var v_Laengengrad = getState('javascript.0.Status.Maps.Längengrad1').val; sendTo('telegram', {longitude: v_Laengengrad, latitude: v_Breitengrad}); sendTo('telegram', "Dieter Standort: " + ort ); } on({id: "telegram.0.communicate.request"}, function() { // Nachricht von telegram log("Auslöser Telegram"); weiter(); }); }
Muss denn hier im Telegramm Adapter noch etwas umgestellt werden?
-
@wendy2702 sagte in Rolladensteuerung über Telegram:
CODE...
Deine eingefügte } Klammer ist zu tief.. Die gehört in Zeile 62!
Also Zeile 70 nach 62 verschieben.
-
Das war es!
Verstehe nur nicht wieso die im Original von bahnuhr fehlt.
Danke!
-
@BuZZy die Funktion ist mir aufgefallen. Sehr cool. Ich hatte nur noch keine Zeit es auszuprobieren.
Wenn du Menü schreibst kommt die Funktion? Wie rufst du dann verschiedene Geräte auf? Kommt dann automatisch 0, 25, 50%....? Ohne Script? -
@wendy2702 sagte in Rolladensteuerung über Telegram:
Das war es!
Verstehe nur nicht wieso die im Original von bahnuhr fehlt.
Danke!
Ich hab nur ein Teil vom Script gepostet.
Dies wäre sonst ellen lang geworden. -
Ja,
habe ich auch gerade gesehen.
War nur für mich als Javascript NOOB nicht auf Anhieb zu erkennen wo dann die Klammer fehlt.
-
Hats denn jetzt geklappt ?
-
Ja.
Das Menü kommt. Danke.
Muss mal schauen wie ich das jetzt weiter verarbeite.
@BuZZy : kann man mit der Option aus deinem Beispiel auch "Untermenüs" realisieren?
Sonnst scrollt das erste je nach Anzahl z.B. der Rollläden aus dem Bildschirm denke ich.
-
Ich weiß nicht genau um ehrlich zu sein benutze ich die Funktion nicht.. Wollte nur zeigen dass es diese Funktion gibt..
Die Funktion habe ich auch nicht eingebaut und wie gesagt, ich glaube die ist auch noch nicht zu 100% fertig implementiert.
-
@wendy2702 sagte in Rolladensteuerung über Telegram:
Beispiel auch "Untermenüs"
mach das per Script.
Ich habe o.g. Hauptmenü und verzweige dann teilweise in Untermenüs
z.B.
Hauptmenü: ... /Video
dann Untermenüif (vEingabe == "/Video") { vText = "Video:" + "\n--------------------------------------------------------" + "\n"; vText = vText + "/Bild_Auto\n" + "/Bild_Eingang\n" + "/Bild_Garage\n" + "/Bild_Garten\n" + "/Bild_Haus_unten\n" + "/Bild_Hobbyraum\n"; vText = vText + "/Bild_Terrasse_1\n" + "/Bild_Terrasse_2\n" + "/Bild_Treppe\n" + "/Bild_Werkstatt\n" + "/Bild_Wohnzimmer"; sendTo('telegram', { user: vUser, text: vText, parse_mode: 'HTML' }); }
Und dann kommt der eigentliche Befehl mit snapshot der jeweiligen cams.
-
@bahnuhr sagte in Rolladensteuerung über Telegram:
CODE
Nur ein kleiner Hinweis:
Um einen weiteren String an eine "String-Variable" zu hängen kannst du einfachvar += 'String'
nehmen..
Also so:if (vEingabe == "/Video") { vText = "Video:" + "\n--------------------------------------------------------" + "\n"; vText += "/Bild_Auto\n" + "/Bild_Eingang\n" + "/Bild_Garage\n" + "/Bild_Garten\n" + "/Bild_Haus_unten\n" + "/Bild_Hobbyraum\n"; vText += "/Bild_Terrasse_1\n" + "/Bild_Terrasse_2\n" + "/Bild_Treppe\n" + "/Bild_Werkstatt\n" + "/Bild_Wohnzimmer"; sendTo('telegram', { user: vUser, text: vText, parse_mode: 'HTML' }); }
Natürlich funktioniert es auch so wie du es machst. Wollte bloß mal den "kurzen Weg" zeigen.
Gruß
-
Dann werde ich mich am Script versuchen.
Und euch, wenn es nicht klappt, mit fragen nerven
-
@BuZZy sagte in Rolladensteuerung über Telegram:
Wollte bloß mal den "kurzen Weg" zeigen
Danke.
Für solche Tipps bin ich immer dankbar.Manchmal bin ich zu umständlich. Liegt aber am Erfahrungsschatz.
Aber ich tüftele so lange bis es klappt.mfg
Dieter -
Die Sache mit dem Telegramm hat einen entscheidenden Nachteil. Ich habe das mal für eine Rolllade eingestellt. Jetzt bekomme ich jedes mal wenn die Rolllade einen der Level erreicht eine Telegramm Nachricht.
-
das versteh ich nicht.
Warum bekommst du wenn du per telegram etwas schaltest danach eine Nachricht an telegram.
?? -
Ich meinte das mit dem „Menü“ Eintrag Beispiel in Telegramm von Buzzy.
Wenn du diese Variante nutzt ist das zumindest bei mir so das ich eine Nachricht bekomme wenn die Rollladen per Taster, Schalter, Alexa bedient werden und einen der Level erreichen.