Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Script erstellen und via Telegram versenden - wie?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Script erstellen und via Telegram versenden - wie?

    This topic has been deleted. Only users with topic management privileges can see it.
    • ?
      A Former User last edited by

      Hallo Leute

      Kann mir eventuell jemand kurz Schritt für Schritt erklären, wie man nun den Script von Paul53 erstellt und dann in Telegram einbindet? Telegram ist installiert. Mir geht es um das Zusammenspiel von Script und Telegram.... Blicke da nicht ganz durch 🙄

      Ich wäre Euch sehr dankbar.

      Gruss
      Vazi

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

        In Zeile 4 des oben genannten Skripts folgendes einfügen:

        sendTo("telegram.0", "send", {
            text: txt
        });
        
        ? 1 Reply Last reply Reply Quote 0
        • ?
          A Former User @eumats last edited by

          @eumats

          Wow, das ging aber schnell, vielen Dank eumats.

          Verstehe ich es richtig: ich muss lediglich den Script unter "Scripte" neu erstellen, einen Namen vergeben, den Script dort hinein kopieren (mit Deiner Anpassung oben) speichern und - den Rest übernimmt dann Telegram von sich aus, sofern das Ereignis eintritt, sprich hier, eine Instanz nicht laufen würde, korrekt?

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

            Nicht vergessen das Skript zu starten. Und der javascript und telegram Adapter müssen natürlich laufen.
            Der Telgram Adapter muss natürlich generell konfiguriert sein. Die Funktion am Besten ohne das Skript testen.

            1 Reply Last reply Reply Quote 0
            • ?
              A Former User last edited by

              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);
              
                    } 
              
                 }
              
              });
              
              J 1 Reply Last reply Reply Quote 0
              • J
                Jan1 @Guest last edited by

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

                1 Reply Last reply Reply Quote 0
                • ?
                  A Former User last edited by

                  @Jan1

                  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

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

                    @Vazi
                    Läuft der Telegram Adapter schon und kann Telegramme verschicken?
                    Und welche Instanz(en) sollen überwacht werden?

                    1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User last edited by

                      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

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

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

                        1 Reply Last reply Reply Quote 0
                        • ?
                          A Former User last edited by

                          Telegram funktioniert. Konnte es mit einem Test-Blockly testen.

                          Wo finde ich von den Adapter ein DP alive? Expertenmodus habe ich umgestellt

                          J bahnuhr 2 Replies Last reply Reply Quote 0
                          • J
                            Jan1 @Guest last edited by

                            @Vazi
                            Welche Adapter möchtest Du überwachen?

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

                              @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

                              1 Reply Last reply Reply Quote 0
                              • ?
                                A Former User last edited by

                                @Jan1
                                backitup.0
                                fullcalendar.0
                                hm-rega.0
                                hm-rpc.0
                                hm-rpc.2
                                iqontrol.o
                                sonoff.o
                                web.0
                                yahka.o

                                @bahnuhr
                                Danke, aber leider steht dort bei mir gar keine system.adapter....

                                Objekte.jpeg

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

                                  Du hast geschrieben, dass du den Expertenmodus an hast!!!

                                  Wenn ja, dann siehst du den Punkt auch.

                                  1 Reply Last reply Reply Quote 0
                                  • ?
                                    A Former User last edited by

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

                                    bahnuhr J 2 Replies Last reply Reply Quote 0
                                    • bahnuhr
                                      bahnuhr Forum Testing Most Active @Guest last edited by

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

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

                                        @Vazi
                                        so könnte dann das Blockly für 9 Adapter aussehen:
                                        fcb989ea-7cfe-43a8-b3c6-e51920e4b20a-grafik.png
                                        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.

                                        1 Reply Last reply Reply Quote 0
                                        • ?
                                          A Former User last edited by A Former User

                                          @Jan1 @eumats @bahnuhr ......
                                          Also echt, Ihr seid alle ganz grosse Klasse 👍 Unglaublich, was Ihr drauf habt - und helft einem im Nu, toll, so ein super Forum muss man zuerst finden...

                                          Werde es heute Abend einmal testen, bin schon gespannt....

                                          Vielen herzlichen Dank Euch allen.

                                          Vazi

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

                                            @bahnuhr sagte in Script erstellen und via Telegram versenden - wie?:

                                            Wenn geholfen, dann mal Daumen hoch.

                                            Tja, wäre schön gewesen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            964
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            21
                                            2013
                                            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