Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Rolladensteuerung über Telegram

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Rolladensteuerung über Telegram

    This topic has been deleted. Only users with topic management privileges can see it.
    • bahnuhr
      bahnuhr Forum Testing Most Active last edited by

      Bei mir siehts so aus:
      d6806e8b-8179-406b-9d74-ee7b316ce84d-grafik.png

      Eingabe im Handy: /?
      Dann kommt Menü.
      Klick auf /Zusammenfassung
      Ergebnis wird dargestellt.

      1 Reply Last reply Reply Quote 0
      • wendy2702
        wendy2702 last edited by

        Irgendwie macht der Text2Command Adapter aus dem "/" eine "#":

        So kommt es in Telegramm an:

        1b64d3dc-b4e7-49fd-8fac-d714dfd26bd8-image.png

        Das macht Text2Command daraus:

        text2command.0	2019-03-06 14:30:35.148	info	processText: "#?"
        

        Wer oder was wandelt denn das Zeichen um ?

        1 Reply Last reply Reply Quote 0
        • bahnuhr
          bahnuhr Forum Testing Most Active last edited by

          warum
          text2command ????

          richtig ist doch -telegram.0:
          b4f89252-b777-4d70-8d90-5067c127545f-grafik.png

          1 Reply Last reply Reply Quote 0
          • J
            Jan1 @dulles last edited by

            @dulles sagte in Rolladensteuerung über Telegram:

            @Jan1
            ich möchte halt nicht erst eine VPN Verbindung aufbauen und dann entsprechend den Rolladen steuern.
            Fritzbox ist bei mir nur noch ein Router. Ansinsten habe ich ein komplettes Unifi System laufen.
            Und winer Portweiterleitung kommt schon garnicht in Frage.

            pdulles

            Jeder wie er es will. Ich schau mir das mal mit Telegram an, allerdings nicht zum Steuern, sondern zum Basteln was man da so alles mit anstellen kann.
            Mit der Fritz APP sind das genau 5 Klicks inklusive Aufruf der APP. Der sechste Klick steuert schon und die VPN Verbindung wird automatisch geöffnet, also einfacher gehts fast nicht.

            bahnuhr 1 Reply Last reply Reply Quote 0
            • bahnuhr
              bahnuhr Forum Testing Most Active last edited by

              Nachtrag:
              Bei dir steht doch:
              [Mirko]/?
              müsst doch so richtig sein.

              Und durch das Script:

                  var vUser = vEingabe.substring(1, vEingabe.indexOf("]"));
              
                  vEingabe = vEingabe.substring(vEingabe.indexOf("]") + 1, vEingabe.length);
              
              log (vUser);
              
              log (vEingabe);
              

              müsste doch im log erscheinen:
              Bei vUser => mirko
              Bei vEingabe => /?

              1 Reply Last reply Reply Quote 0
              • bahnuhr
                bahnuhr Forum Testing Most Active @Jan1 last edited by

                @Jan1 sagte in Rolladensteuerung über Telegram:

                also einfacher gehts fast nicht.

                mit Telegram:
                Eingabe: /?
                und dann klick

                Also insgesamt 3 Klicks.

                1 Reply Last reply Reply Quote 0
                • BuZZy
                  BuZZy last edited by BuZZy

                  Nur so nebenbei..
                  Kennt ihr die Funktion im Telegram-Adapter? Ist noch nicht ganz 100% fertig implementiert glaube ich.. Aber funktioniert schon so.. 😉

                  a37d0a88-240a-4880-9fb3-e638125221c5-image.png

                  9ef23bbf-5f66-4ec3-b75b-a7cdf202e26e-image.png

                  54491012-e907-4cab-b0b1-43e61481eb20-image.png

                  lobomau wendy2702 3 Replies Last reply Reply Quote 0
                  • wendy2702
                    wendy2702 last edited by wendy2702

                    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:

                    d2069477-43f9-4c5b-9d0c-20eff0573213-image.png 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.

                    bahnuhr 1 Reply Last reply Reply Quote 0
                    • bahnuhr
                      bahnuhr Forum Testing Most Active @wendy2702 last edited by

                      @wendy2702
                      füge doch mal dein komplettes Script ein.

                      Was steht denn in Zeile 1.

                      1 Reply Last reply Reply Quote 0
                      • wendy2702
                        wendy2702 last edited by wendy2702

                        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?

                        2a3d48e2-dfd2-425d-a765-a85be2579978-image.png

                        BuZZy 1 Reply Last reply Reply Quote 0
                        • BuZZy
                          BuZZy @wendy2702 last edited by

                          @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.

                          1 Reply Last reply Reply Quote 1
                          • wendy2702
                            wendy2702 last edited by

                            Das war es!

                            Verstehe nur nicht wieso die im Original von bahnuhr fehlt.

                            Danke!

                            bahnuhr 1 Reply Last reply Reply Quote 0
                            • lobomau
                              lobomau @BuZZy last edited by

                              @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?

                              1 Reply Last reply Reply Quote 0
                              • bahnuhr
                                bahnuhr Forum Testing Most Active @wendy2702 last edited by

                                @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.

                                1 Reply Last reply Reply Quote 0
                                • wendy2702
                                  wendy2702 last edited by

                                  Ja,

                                  habe ich auch gerade gesehen.

                                  War nur für mich als Javascript NOOB nicht auf Anhieb zu erkennen wo dann die Klammer fehlt.

                                  1 Reply Last reply Reply Quote 0
                                  • bahnuhr
                                    bahnuhr Forum Testing Most Active last edited by

                                    Hats denn jetzt geklappt ?

                                    1 Reply Last reply Reply Quote 0
                                    • wendy2702
                                      wendy2702 last edited by

                                      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.

                                      bahnuhr 1 Reply Last reply Reply Quote 0
                                      • BuZZy
                                        BuZZy last edited by

                                        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.

                                        1 Reply Last reply Reply Quote 0
                                        • bahnuhr
                                          bahnuhr Forum Testing Most Active @wendy2702 last edited by bahnuhr

                                          @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.

                                          BuZZy 1 Reply Last reply Reply Quote 0
                                          • BuZZy
                                            BuZZy @bahnuhr last edited by

                                            @bahnuhr sagte in Rolladensteuerung über Telegram:

                                            CODE

                                            Nur ein kleiner Hinweis:
                                            Um einen weiteren String an eine "String-Variable" zu hängen kannst du einfach

                                            var += '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ß

                                            bahnuhr 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            563
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            49
                                            2946
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo