Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. js- Abfrage von Status an Ausgängen per Telegram

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

js- Abfrage von Status an Ausgängen per Telegram

Geplant Angeheftet Gesperrt Verschoben JavaScript
38 Beiträge 3 Kommentatoren 1.5k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M maerzpa

    @fastfoot Stimmen da die Klammern? Ich bekomme eine Fehlermeldung

    F Offline
    F Offline
    fastfoot
    schrieb am zuletzt editiert von
    #12

    @maerzpa sagte in js- Abfrage von Status an Ausgängen per Telegram:

    @fastfoot Stimmen da die Klammern? Ich bekomme eine Fehlermeldung

    änder "change": in change:

    iobroker läuft unter Docker auf QNAP TS-451+
    SkriptRecovery: https://forum.iobroker.net/post/930558

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      maerzpa
      schrieb am zuletzt editiert von
      #13

      ich habe eine Schleife in der ich Anweisungen von Telegram abfrage:
      on({id: 'telegram.0.communicate.request', change: 'any'}, function (obj) {
      var stateval = getState('telegram.0.communicate.request').val; // Statevalue in Variable schreiben
      var benutzer = stateval.substring(1,stateval.indexOf("]")); // Benutzer aus Statevalue extrahieren
      var befehl = stateval.substring(stateval.indexOf("]")+1,stateval.length); // Befehl/Text aus Statevalue extrahieren
      var idSayIt = "sayit.0.tts.text";

       if (befehl.search(/(?=.*(\bmenu\b)).+/ig) != -1) {
          sendTo('telegram', {
              user: benutzer,
              text: 'Wähle das Gewerk',
              reply_markup: {
                  inline_keyboard: [
                      [{ text: 'Einstellungen', callback_data: '%Einstellungen'}, { text: 'Fenster+Türe', callback_data: '%Fenster+Türe'}, { text: 'Licht', callback_data: '%Licht'}],
                      [{ text: 'Steckdosen', callback_data: '%Steckdosen'}, { text: 'Beregnung', callback_data: '%Beregnung'}, { text: 'Kameras', callback_data: '%Kameras'}],
                  ]
               }
          });
      }
      

      else if (befehl === "%WC_Licht") {
      setState("modbus.0.coils.12356_WC_VisuTaster_Licht_fhem",true);
      on({id:"modbus.0.coils.12356_WC_VisuTaster_Licht_fhem", "change":"ne"}, function(obj) {
      sendTo('telegram', {
      user: benutzer,
      text: 'Licht WC: ' + obj.state.val
      });
      })
      }

      Wenn ich die Klammern so setzte wie oben in der Else Schleife--> bekomme ich den richtigen Status per Telegram gesendet. Allerdings mehrmals. Immer wieder ein vielfaches bei erneutem Wechsel des Statuses (EIN/AUS).

      F 2 Antworten Letzte Antwort
      0
      • M maerzpa

        ich habe eine Schleife in der ich Anweisungen von Telegram abfrage:
        on({id: 'telegram.0.communicate.request', change: 'any'}, function (obj) {
        var stateval = getState('telegram.0.communicate.request').val; // Statevalue in Variable schreiben
        var benutzer = stateval.substring(1,stateval.indexOf("]")); // Benutzer aus Statevalue extrahieren
        var befehl = stateval.substring(stateval.indexOf("]")+1,stateval.length); // Befehl/Text aus Statevalue extrahieren
        var idSayIt = "sayit.0.tts.text";

         if (befehl.search(/(?=.*(\bmenu\b)).+/ig) != -1) {
            sendTo('telegram', {
                user: benutzer,
                text: 'Wähle das Gewerk',
                reply_markup: {
                    inline_keyboard: [
                        [{ text: 'Einstellungen', callback_data: '%Einstellungen'}, { text: 'Fenster+Türe', callback_data: '%Fenster+Türe'}, { text: 'Licht', callback_data: '%Licht'}],
                        [{ text: 'Steckdosen', callback_data: '%Steckdosen'}, { text: 'Beregnung', callback_data: '%Beregnung'}, { text: 'Kameras', callback_data: '%Kameras'}],
                    ]
                 }
            });
        }
        

        else if (befehl === "%WC_Licht") {
        setState("modbus.0.coils.12356_WC_VisuTaster_Licht_fhem",true);
        on({id:"modbus.0.coils.12356_WC_VisuTaster_Licht_fhem", "change":"ne"}, function(obj) {
        sendTo('telegram', {
        user: benutzer,
        text: 'Licht WC: ' + obj.state.val
        });
        })
        }

        Wenn ich die Klammern so setzte wie oben in der Else Schleife--> bekomme ich den richtigen Status per Telegram gesendet. Allerdings mehrmals. Immer wieder ein vielfaches bei erneutem Wechsel des Statuses (EIN/AUS).

        F Offline
        F Offline
        fastfoot
        schrieb am zuletzt editiert von fastfoot
        #14

        @maerzpa siehe nächsten Post

        iobroker läuft unter Docker auf QNAP TS-451+
        SkriptRecovery: https://forum.iobroker.net/post/930558

        1 Antwort Letzte Antwort
        0
        • M maerzpa

          ich habe eine Schleife in der ich Anweisungen von Telegram abfrage:
          on({id: 'telegram.0.communicate.request', change: 'any'}, function (obj) {
          var stateval = getState('telegram.0.communicate.request').val; // Statevalue in Variable schreiben
          var benutzer = stateval.substring(1,stateval.indexOf("]")); // Benutzer aus Statevalue extrahieren
          var befehl = stateval.substring(stateval.indexOf("]")+1,stateval.length); // Befehl/Text aus Statevalue extrahieren
          var idSayIt = "sayit.0.tts.text";

           if (befehl.search(/(?=.*(\bmenu\b)).+/ig) != -1) {
              sendTo('telegram', {
                  user: benutzer,
                  text: 'Wähle das Gewerk',
                  reply_markup: {
                      inline_keyboard: [
                          [{ text: 'Einstellungen', callback_data: '%Einstellungen'}, { text: 'Fenster+Türe', callback_data: '%Fenster+Türe'}, { text: 'Licht', callback_data: '%Licht'}],
                          [{ text: 'Steckdosen', callback_data: '%Steckdosen'}, { text: 'Beregnung', callback_data: '%Beregnung'}, { text: 'Kameras', callback_data: '%Kameras'}],
                      ]
                   }
              });
          }
          

          else if (befehl === "%WC_Licht") {
          setState("modbus.0.coils.12356_WC_VisuTaster_Licht_fhem",true);
          on({id:"modbus.0.coils.12356_WC_VisuTaster_Licht_fhem", "change":"ne"}, function(obj) {
          sendTo('telegram', {
          user: benutzer,
          text: 'Licht WC: ' + obj.state.val
          });
          })
          }

          Wenn ich die Klammern so setzte wie oben in der Else Schleife--> bekomme ich den richtigen Status per Telegram gesendet. Allerdings mehrmals. Immer wieder ein vielfaches bei erneutem Wechsel des Statuses (EIN/AUS).

          F Offline
          F Offline
          fastfoot
          schrieb am zuletzt editiert von
          #15

          @maerzpa Du hast den Trigger nicht rausgenommen, ich hatte nur auf die Klammern geachtet. So sollte es jetzt funktionieren

          var stateval = getState('telegram.0.communicate.request').val; // Statevalue in Variable schreiben
          var benutzer = stateval.substring(1,stateval.indexOf("]")); // Benutzer aus Statevalue extrahieren
          var befehl = stateval.substring(stateval.indexOf("]")+1,stateval.length); // Befehl/Text aus Statevalue extrahieren
          var idSayIt = "sayit.0.tts.text";
          
          on({id: 'telegram.0.communicate.request', change: 'any'}, function (obj) {
          
              if (befehl.search(/(?=.*(\bmenu\b)).+/ig) != -1) {
                  sendTo('telegram', {
                      user: benutzer,
                      text: 'Wähle das Gewerk',
                      reply_markup: {
                          inline_keyboard: [
                              [{ text: 'Einstellungen', callback_data: '%Einstellungen'}, { text: 'Fenster+Türe', callback_data: '%Fenster+Türe'}, { text: 'Licht', callback_data: '%Licht'}],
                              [{ text: 'Steckdosen', callback_data: '%Steckdosen'}, { text: 'Beregnung', callback_data: '%Beregnung'}, { text: 'Kameras', callback_data: '%Kameras'}],
                          ]
                          }
                  });
              } else if (befehl === "%WC_Licht") {
                  setState("modbus.0.coils.12356_WC_VisuTaster_Licht_fhem",true);
              }
          })
          
          on({id:"modbus.0.coils.12356_WC_VisuTaster_Licht_fhem", "change":"ne"}, function(obj) {
              sendTo('telegram', {
              user: benutzer,
              text: 'Licht WC: ' + obj.state.val
              });
          })
          

          iobroker läuft unter Docker auf QNAP TS-451+
          SkriptRecovery: https://forum.iobroker.net/post/930558

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            maerzpa
            schrieb am zuletzt editiert von
            #16

            @fastfoot sagte in js- Abfrage von Status an Ausgängen per Telegram:

            modbus.0.coils.573_WC_Licht

            Danke erstmal für die Mühe und Geduld. So bekomme ich die richtige Meldung. Doch leider bekomme ich auch wenn ich vor Ort Taster drücke (ohne Telegramm Button), eine Meldung per Telegramm.
            Sorry das ich nerve.

            F P 2 Antworten Letzte Antwort
            0
            • M maerzpa

              @fastfoot sagte in js- Abfrage von Status an Ausgängen per Telegram:

              modbus.0.coils.573_WC_Licht

              Danke erstmal für die Mühe und Geduld. So bekomme ich die richtige Meldung. Doch leider bekomme ich auch wenn ich vor Ort Taster drücke (ohne Telegramm Button), eine Meldung per Telegramm.
              Sorry das ich nerve.

              F Offline
              F Offline
              fastfoot
              schrieb am zuletzt editiert von
              #17

              @maerzpa nee, nervt nicht :-) Ich überlege mir bis morgen etwas...

              iobroker läuft unter Docker auf QNAP TS-451+
              SkriptRecovery: https://forum.iobroker.net/post/930558

              1 Antwort Letzte Antwort
              0
              • F Offline
                F Offline
                fastfoot
                schrieb am zuletzt editiert von
                #18

                @maerzpa so, ein neuer Versuch, noch ein paar Fehler beseitigt, die ich aber selbst eingebaut hatte

                var benutzer,
                    menu_cmd = false;
                
                on({id: 'telegram.0.communicate.request', change: 'any'}, function (obj) {
                    var stateval = getState('telegram.0.communicate.request').val; // Statevalue in Variable schreiben
                    var befehl = stateval.substring(stateval.indexOf("]")+1,stateval.length); // Befehl/Text aus Statevalue extrahieren
                    var idSayIt = "sayit.0.tts.text";
                
                    benutzer = stateval.substring(1,stateval.indexOf("]")); // Benutzer aus Statevalue extrahieren
                
                    if (befehl.search(/(?=.*(\bmenu\b)).+/ig) != -1) {
                        sendTo('telegram', {
                            user: benutzer,
                            text: 'Wähle das Gewerk',
                            reply_markup: {
                                inline_keyboard: [
                                    [{ text: 'Einstellungen', callback_data: '%Einstellungen'}, { text: 'Fenster+Türe', callback_data: '%Fenster+Türe'}, { text: 'Licht', callback_data: '%Licht'}],
                                    [{ text: 'Steckdosen', callback_data: '%Steckdosen'}, { text: 'Beregnung', callback_data: '%Beregnung'}, { text: 'Kameras', callback_data: '%Kameras'}],
                                ]
                                }
                        });
                    } else if (befehl === "%WC_Licht") {
                        setState("modbus.0.coils.12356_WC_VisuTaster_Licht_fhem",true);
                        menu_cmd=true;
                    }
                })
                
                on({id:"modbus.0.coils.573_WC_Licht", change:"ne"}, function(obj) {
                    if(menu_cmd) {
                        menu_cmd=false;
                        sendTo('telegram', {
                            user: benutzer,
                            text: 'Licht WC: ' + obj.state.val
                        });
                    }
                })```

                iobroker läuft unter Docker auf QNAP TS-451+
                SkriptRecovery: https://forum.iobroker.net/post/930558

                1 Antwort Letzte Antwort
                0
                • M maerzpa

                  @fastfoot sagte in js- Abfrage von Status an Ausgängen per Telegram:

                  modbus.0.coils.573_WC_Licht

                  Danke erstmal für die Mühe und Geduld. So bekomme ich die richtige Meldung. Doch leider bekomme ich auch wenn ich vor Ort Taster drücke (ohne Telegramm Button), eine Meldung per Telegramm.
                  Sorry das ich nerve.

                  P Offline
                  P Offline
                  pix
                  schrieb am zuletzt editiert von
                  #19

                  Hallo!

                  Für genau diesen Fall gibt es die EIgenschaft from in der Subscription on(). Guck mal hier: https://www.iobroker.net/#de/documentation/basics/states.md

                  Da kannst du neben zum Beispiel dem Wert, den der Datenpunkt haben soll (hier soll er sich ändern, daher change: "ne") auch angeben, von wo aus er geändert wurde.

                  In diesem Falle wird die Änderung ja vom Javascript-Adapter gemacht, ich nehme an, von Instanz 0.

                  on({
                      id:"modbus.0.coils.573_WC_Licht", 
                      change:"ne",
                      from: "javascript.0"
                  }, function(obj) {
                      sendTo('telegram', {
                              user: benutzer,
                              text: 'Licht WC: ' + obj.state.val
                       });
                  });
                  

                  @fastfoot Sehr gute Idee, eine Variable zu verwenden. Das kann aber bei vielen Tastern schnell unübersichtlich werden.

                  Gruß
                  Pix

                  ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                  F 1 Antwort Letzte Antwort
                  0
                  • P pix

                    Hallo!

                    Für genau diesen Fall gibt es die EIgenschaft from in der Subscription on(). Guck mal hier: https://www.iobroker.net/#de/documentation/basics/states.md

                    Da kannst du neben zum Beispiel dem Wert, den der Datenpunkt haben soll (hier soll er sich ändern, daher change: "ne") auch angeben, von wo aus er geändert wurde.

                    In diesem Falle wird die Änderung ja vom Javascript-Adapter gemacht, ich nehme an, von Instanz 0.

                    on({
                        id:"modbus.0.coils.573_WC_Licht", 
                        change:"ne",
                        from: "javascript.0"
                    }, function(obj) {
                        sendTo('telegram', {
                                user: benutzer,
                                text: 'Licht WC: ' + obj.state.val
                         });
                    });
                    

                    @fastfoot Sehr gute Idee, eine Variable zu verwenden. Das kann aber bei vielen Tastern schnell unübersichtlich werden.

                    Gruß
                    Pix

                    F Offline
                    F Offline
                    fastfoot
                    schrieb am zuletzt editiert von
                    #20

                    @pix sagte in js- Abfrage von Status an Ausgängen per Telegram:

                    @fastfoot Sehr gute Idee, eine Variable zu verwenden. Das kann aber bei vielen Tastern schnell unübersichtlich werden.

                    ich dachte dabei an diese eine Variable, die allerdings bei jedem setState() gesetzt würde. Das sollte im Ein-Mann-Betrieb kein Problem sein, sollte aber die Frau gleichzeitig das Licht im Wohnzimmer schalten(durch Telegram), funktioniert das nicht mehr. Allerdings gibt es dann auch Probleme mit dem benutzer, denke ich

                    Was das from: angeht, Danke für den Tipp! Allerdings sagt mir mein Bauchgefühl, dass ein Adapter auf den Taster reagiert und dann entsprechend das Licht schaltet, da wäre dann beim manuellen Drücken kein Unterschied, der Trigger würde immer vom Adapter gefeuert.

                    Bin gespannt, was @maerzpa sagt, das from: wäre schon viel cooler

                    iobroker läuft unter Docker auf QNAP TS-451+
                    SkriptRecovery: https://forum.iobroker.net/post/930558

                    M 1 Antwort Letzte Antwort
                    0
                    • M Offline
                      M Offline
                      maerzpa
                      schrieb am zuletzt editiert von
                      #21

                      Hallo, Dankeschön. Auf die Art (ohne from) funktioniert es super. Mit dem from will es nicht mehr.

                      Vielen Dank an @pix und an @fastfoot.

                      1 Antwort Letzte Antwort
                      0
                      • F fastfoot

                        @pix sagte in js- Abfrage von Status an Ausgängen per Telegram:

                        @fastfoot Sehr gute Idee, eine Variable zu verwenden. Das kann aber bei vielen Tastern schnell unübersichtlich werden.

                        ich dachte dabei an diese eine Variable, die allerdings bei jedem setState() gesetzt würde. Das sollte im Ein-Mann-Betrieb kein Problem sein, sollte aber die Frau gleichzeitig das Licht im Wohnzimmer schalten(durch Telegram), funktioniert das nicht mehr. Allerdings gibt es dann auch Probleme mit dem benutzer, denke ich

                        Was das from: angeht, Danke für den Tipp! Allerdings sagt mir mein Bauchgefühl, dass ein Adapter auf den Taster reagiert und dann entsprechend das Licht schaltet, da wäre dann beim manuellen Drücken kein Unterschied, der Trigger würde immer vom Adapter gefeuert.

                        Bin gespannt, was @maerzpa sagt, das from: wäre schon viel cooler

                        M Offline
                        M Offline
                        maerzpa
                        schrieb am zuletzt editiert von
                        #22

                        @fastfoot Könntest du mir noch bei einer weiteren Frage helfen:
                        Ich möchte alle Statuse auf einen Blick als Popup (answercallbackquery) sehen. Doch leider gehen max 8 Zeilen als Ausgabe. Wenn ich also nur 8 Abfragen habe--> dann geht es. Sobald es nur eine mehr ist--> passiert nichts.

                        else if (befehl === "%Status_Licht") {
                        sendTo('telegram', {
                        user: benutzer,
                        answerCallbackQuery: {
                        text: "Status_Licht:" +
                        '\n++++++++++++++++++++++++++++++++++++++++++++'+
                        '\nLicht Wohnzimmer: ' + getState('modbus.0.coils.562_WZ_Licht').val +
                        '\nLicht Wohnzimmer LED: ' + getState('modbus.0.coils.566_WZ_LichtLED').val +
                        '\nLicht Wohnzimmer Essbereich1: ' + getState('modbus.0.coils.561_WZ_LichtEssb').val +
                        '\nLicht Wohnzimmer Essbereich2: ' + getState('modbus.0.coils.563_WZ_LichtEssbZus').val +
                        '\nLicht HWR: ' + getState('modbus.0.coils.572_HWR_Licht').val +
                        '\nLicht WC: ' + getState('modbus.0.coils.573_WC_Licht').val +
                        '\nLicht WC Spiegel: ' + getState('modbus.0.coils.534_WC_LichtSpiegel_').val +
                        '\nLicht Kueche: ' + getState('modbus.0.coils.568_Ku_Licht').val +
                        '\nLicht Kueche Arbeitsplatte: ' + getState('modbus.0.coils.569_Ku_Aplatte1').val +
                        '\nLicht Flur EG: ' + getState('modbus.0.coils.574_FEG_Licht2').val +
                        '\nLicht Abstellraum: ' + getState('modbus.0.coils.571_ARaum_Licht').val +
                        '\nLicht Flur OG: ' + getState('modbus.0.coils.579_FOG_Licht').val +
                        '\nLicht Badezimmer: ' + getState('modbus.0.coils.581_BAD_Licht').val +
                        '\nLicht Schlafzimmer: ' + getState('modbus.0.coils.576_SZ_Licht').val +
                        '\nLicht Kinderzimmer1: ' + getState('modbus.0.coils.577_KZ1_Licht').val +
                        '\nLicht Kinderzimmer2: ' + getState('modbus.0.coils.578_KZ2_Licht').val +
                        '\nLicht Dachgeschoss: ' + getState('modbus.0.coils.584_DG_Licht1u2').val +
                        '\nLicht Terrasse: ' + getState('modbus.0.coils.589_Ter_Licht').val +
                        '\nLicht Garage1: ' + getState('modbus.0.coils.558_Gar_Licht1_').val +
                        '\nLicht Garage2: ' + getState('modbus.0.coils.559_Gar_Licht2_').val +
                        '\nLicht Gartenhaus: ' + getState('modbus.0.coils.586_GartenhLicht').val,
                        showAlert: true
                        }
                        });
                        }
                        });

                        F 1 Antwort Letzte Antwort
                        0
                        • M maerzpa

                          @fastfoot Könntest du mir noch bei einer weiteren Frage helfen:
                          Ich möchte alle Statuse auf einen Blick als Popup (answercallbackquery) sehen. Doch leider gehen max 8 Zeilen als Ausgabe. Wenn ich also nur 8 Abfragen habe--> dann geht es. Sobald es nur eine mehr ist--> passiert nichts.

                          else if (befehl === "%Status_Licht") {
                          sendTo('telegram', {
                          user: benutzer,
                          answerCallbackQuery: {
                          text: "Status_Licht:" +
                          '\n++++++++++++++++++++++++++++++++++++++++++++'+
                          '\nLicht Wohnzimmer: ' + getState('modbus.0.coils.562_WZ_Licht').val +
                          '\nLicht Wohnzimmer LED: ' + getState('modbus.0.coils.566_WZ_LichtLED').val +
                          '\nLicht Wohnzimmer Essbereich1: ' + getState('modbus.0.coils.561_WZ_LichtEssb').val +
                          '\nLicht Wohnzimmer Essbereich2: ' + getState('modbus.0.coils.563_WZ_LichtEssbZus').val +
                          '\nLicht HWR: ' + getState('modbus.0.coils.572_HWR_Licht').val +
                          '\nLicht WC: ' + getState('modbus.0.coils.573_WC_Licht').val +
                          '\nLicht WC Spiegel: ' + getState('modbus.0.coils.534_WC_LichtSpiegel_').val +
                          '\nLicht Kueche: ' + getState('modbus.0.coils.568_Ku_Licht').val +
                          '\nLicht Kueche Arbeitsplatte: ' + getState('modbus.0.coils.569_Ku_Aplatte1').val +
                          '\nLicht Flur EG: ' + getState('modbus.0.coils.574_FEG_Licht2').val +
                          '\nLicht Abstellraum: ' + getState('modbus.0.coils.571_ARaum_Licht').val +
                          '\nLicht Flur OG: ' + getState('modbus.0.coils.579_FOG_Licht').val +
                          '\nLicht Badezimmer: ' + getState('modbus.0.coils.581_BAD_Licht').val +
                          '\nLicht Schlafzimmer: ' + getState('modbus.0.coils.576_SZ_Licht').val +
                          '\nLicht Kinderzimmer1: ' + getState('modbus.0.coils.577_KZ1_Licht').val +
                          '\nLicht Kinderzimmer2: ' + getState('modbus.0.coils.578_KZ2_Licht').val +
                          '\nLicht Dachgeschoss: ' + getState('modbus.0.coils.584_DG_Licht1u2').val +
                          '\nLicht Terrasse: ' + getState('modbus.0.coils.589_Ter_Licht').val +
                          '\nLicht Garage1: ' + getState('modbus.0.coils.558_Gar_Licht1_').val +
                          '\nLicht Garage2: ' + getState('modbus.0.coils.559_Gar_Licht2_').val +
                          '\nLicht Gartenhaus: ' + getState('modbus.0.coils.586_GartenhLicht').val,
                          showAlert: true
                          }
                          });
                          }
                          });

                          F Offline
                          F Offline
                          fastfoot
                          schrieb am zuletzt editiert von
                          #23

                          @maerzpa schaue ich mir mal an, answercallbackQuery ist neu für mich. Melde mich später :-)

                          iobroker läuft unter Docker auf QNAP TS-451+
                          SkriptRecovery: https://forum.iobroker.net/post/930558

                          1 Antwort Letzte Antwort
                          0
                          • F Offline
                            F Offline
                            fastfoot
                            schrieb am zuletzt editiert von
                            #24

                            @maerzpa der Text ist schlicht zu lang. Du kannst es so probieren:

                                sendTo('telegram', {
                                    user: benutzer,
                                    text: "Status_Licht:" +
                                    '\n++++++++++++++++++++++++++++++++++++++++++++'+
                                    '\nLicht Wohnzimmer: ' + getState('modbus.0.coils.562_WZ_Licht').val +
                                    '\nLicht Wohnzimmer LED: ' + getState('modbus.0.coils.566_WZ_LichtLED').val +
                                    '\nLicht Wohnzimmer Essbereich1: ' + getState('modbus.0.coils.561_WZ_LichtEssb').val +
                                    '\nLicht Wohnzimmer Essbereich2: ' + getState('modbus.0.coils.563_WZ_LichtEssbZus').val +
                                    '\nLicht HWR: ' + getState('modbus.0.coils.572_HWR_Licht').val +
                                    '\nLicht WC: ' + getState('modbus.0.coils.573_WC_Licht').val +
                                    '\nLicht WC Spiegel: ' + getState('modbus.0.coils.534_WC_LichtSpiegel_').val +
                                    '\nLicht Kueche: ' + getState('modbus.0.coils.568_Ku_Licht').val +
                                    '\nLicht Kueche Arbeitsplatte: ' + getState('modbus.0.coils.569_Ku_Aplatte1').val +
                                    '\nLicht Flur EG: ' + getState('modbus.0.coils.574_FEG_Licht2').val +
                                    '\nLicht Abstellraum: ' + getState('modbus.0.coils.571_ARaum_Licht').val +
                                    '\nLicht Flur OG: ' + getState('modbus.0.coils.579_FOG_Licht').val +
                                    '\nLicht Badezimmer: ' + getState('modbus.0.coils.581_BAD_Licht').val +
                                    '\nLicht Schlafzimmer: ' + getState('modbus.0.coils.576_SZ_Licht').val +
                                    '\nLicht Kinderzimmer1: ' + getState('modbus.0.coils.577_KZ1_Licht').val +
                                    '\nLicht Kinderzimmer2: ' + getState('modbus.0.coils.578_KZ2_Licht').val +
                                    '\nLicht Dachgeschoss: ' + getState('modbus.0.coils.584_DG_Licht1u2').val +
                                    '\nLicht Terrasse: ' + getState('modbus.0.coils.589_Ter_Licht').val +
                                    '\nLicht Garage1: ' + getState('modbus.0.coils.558_Gar_Licht1_').val +
                                    '\nLicht Garage2: ' + getState('modbus.0.coils.559_Gar_Licht2_').val +
                                    '\nLicht Gartenhaus: ' + getState('modbus.0.coils.586_GartenhLicht').val,
                                    parse_mode: "HTML"
                                });
                            

                            iobroker läuft unter Docker auf QNAP TS-451+
                            SkriptRecovery: https://forum.iobroker.net/post/930558

                            M 2 Antworten Letzte Antwort
                            0
                            • F fastfoot

                              @maerzpa der Text ist schlicht zu lang. Du kannst es so probieren:

                                  sendTo('telegram', {
                                      user: benutzer,
                                      text: "Status_Licht:" +
                                      '\n++++++++++++++++++++++++++++++++++++++++++++'+
                                      '\nLicht Wohnzimmer: ' + getState('modbus.0.coils.562_WZ_Licht').val +
                                      '\nLicht Wohnzimmer LED: ' + getState('modbus.0.coils.566_WZ_LichtLED').val +
                                      '\nLicht Wohnzimmer Essbereich1: ' + getState('modbus.0.coils.561_WZ_LichtEssb').val +
                                      '\nLicht Wohnzimmer Essbereich2: ' + getState('modbus.0.coils.563_WZ_LichtEssbZus').val +
                                      '\nLicht HWR: ' + getState('modbus.0.coils.572_HWR_Licht').val +
                                      '\nLicht WC: ' + getState('modbus.0.coils.573_WC_Licht').val +
                                      '\nLicht WC Spiegel: ' + getState('modbus.0.coils.534_WC_LichtSpiegel_').val +
                                      '\nLicht Kueche: ' + getState('modbus.0.coils.568_Ku_Licht').val +
                                      '\nLicht Kueche Arbeitsplatte: ' + getState('modbus.0.coils.569_Ku_Aplatte1').val +
                                      '\nLicht Flur EG: ' + getState('modbus.0.coils.574_FEG_Licht2').val +
                                      '\nLicht Abstellraum: ' + getState('modbus.0.coils.571_ARaum_Licht').val +
                                      '\nLicht Flur OG: ' + getState('modbus.0.coils.579_FOG_Licht').val +
                                      '\nLicht Badezimmer: ' + getState('modbus.0.coils.581_BAD_Licht').val +
                                      '\nLicht Schlafzimmer: ' + getState('modbus.0.coils.576_SZ_Licht').val +
                                      '\nLicht Kinderzimmer1: ' + getState('modbus.0.coils.577_KZ1_Licht').val +
                                      '\nLicht Kinderzimmer2: ' + getState('modbus.0.coils.578_KZ2_Licht').val +
                                      '\nLicht Dachgeschoss: ' + getState('modbus.0.coils.584_DG_Licht1u2').val +
                                      '\nLicht Terrasse: ' + getState('modbus.0.coils.589_Ter_Licht').val +
                                      '\nLicht Garage1: ' + getState('modbus.0.coils.558_Gar_Licht1_').val +
                                      '\nLicht Garage2: ' + getState('modbus.0.coils.559_Gar_Licht2_').val +
                                      '\nLicht Gartenhaus: ' + getState('modbus.0.coils.586_GartenhLicht').val,
                                      parse_mode: "HTML"
                                  });
                              
                              M Offline
                              M Offline
                              maerzpa
                              schrieb am zuletzt editiert von
                              #25

                              @fastfoot Dankeschön. Eine ähnliche Lösung habe ich auch. Leider sind beide ohne answercallbackquery. Sodass die Info nicht aufpoppt.
                              --> muss ich mit leben.

                              Nochmal Dankeschön

                              1 Antwort Letzte Antwort
                              0
                              • F fastfoot

                                @maerzpa der Text ist schlicht zu lang. Du kannst es so probieren:

                                    sendTo('telegram', {
                                        user: benutzer,
                                        text: "Status_Licht:" +
                                        '\n++++++++++++++++++++++++++++++++++++++++++++'+
                                        '\nLicht Wohnzimmer: ' + getState('modbus.0.coils.562_WZ_Licht').val +
                                        '\nLicht Wohnzimmer LED: ' + getState('modbus.0.coils.566_WZ_LichtLED').val +
                                        '\nLicht Wohnzimmer Essbereich1: ' + getState('modbus.0.coils.561_WZ_LichtEssb').val +
                                        '\nLicht Wohnzimmer Essbereich2: ' + getState('modbus.0.coils.563_WZ_LichtEssbZus').val +
                                        '\nLicht HWR: ' + getState('modbus.0.coils.572_HWR_Licht').val +
                                        '\nLicht WC: ' + getState('modbus.0.coils.573_WC_Licht').val +
                                        '\nLicht WC Spiegel: ' + getState('modbus.0.coils.534_WC_LichtSpiegel_').val +
                                        '\nLicht Kueche: ' + getState('modbus.0.coils.568_Ku_Licht').val +
                                        '\nLicht Kueche Arbeitsplatte: ' + getState('modbus.0.coils.569_Ku_Aplatte1').val +
                                        '\nLicht Flur EG: ' + getState('modbus.0.coils.574_FEG_Licht2').val +
                                        '\nLicht Abstellraum: ' + getState('modbus.0.coils.571_ARaum_Licht').val +
                                        '\nLicht Flur OG: ' + getState('modbus.0.coils.579_FOG_Licht').val +
                                        '\nLicht Badezimmer: ' + getState('modbus.0.coils.581_BAD_Licht').val +
                                        '\nLicht Schlafzimmer: ' + getState('modbus.0.coils.576_SZ_Licht').val +
                                        '\nLicht Kinderzimmer1: ' + getState('modbus.0.coils.577_KZ1_Licht').val +
                                        '\nLicht Kinderzimmer2: ' + getState('modbus.0.coils.578_KZ2_Licht').val +
                                        '\nLicht Dachgeschoss: ' + getState('modbus.0.coils.584_DG_Licht1u2').val +
                                        '\nLicht Terrasse: ' + getState('modbus.0.coils.589_Ter_Licht').val +
                                        '\nLicht Garage1: ' + getState('modbus.0.coils.558_Gar_Licht1_').val +
                                        '\nLicht Garage2: ' + getState('modbus.0.coils.559_Gar_Licht2_').val +
                                        '\nLicht Gartenhaus: ' + getState('modbus.0.coils.586_GartenhLicht').val,
                                        parse_mode: "HTML"
                                    });
                                
                                M Offline
                                M Offline
                                maerzpa
                                schrieb am zuletzt editiert von
                                #26

                                @fastfoot Hallo, noch eine Frage:

                                Ich möchte den Status einer IST-Temperatur durch 10 teilen und raus geben. Leider wird diese mit jedem weiteren Abruf von Telegram durch 10 geteilt.

                                '\nEingang Temperatur: ' + (getState('modbus.0.inputRegisters.11_Eingang_Temp_').val /=10) + ' °C ' +

                                Wiesst du wie ich das lösen könnte?

                                F 1 Antwort Letzte Antwort
                                0
                                • M maerzpa

                                  @fastfoot Hallo, noch eine Frage:

                                  Ich möchte den Status einer IST-Temperatur durch 10 teilen und raus geben. Leider wird diese mit jedem weiteren Abruf von Telegram durch 10 geteilt.

                                  '\nEingang Temperatur: ' + (getState('modbus.0.inputRegisters.11_Eingang_Temp_').val /=10) + ' °C ' +

                                  Wiesst du wie ich das lösen könnte?

                                  F Offline
                                  F Offline
                                  fastfoot
                                  schrieb am zuletzt editiert von
                                  #27

                                  @maerzpa Das Gleichheitszeichen(/=) hat da nichts zu suchen. Ehrlich gesagt weiss ich aber nicht weshalb es zu diesem Effekt kommt, da der Wert ja immer wieder neu geholt wird und keine Variable ist

                                  iobroker läuft unter Docker auf QNAP TS-451+
                                  SkriptRecovery: https://forum.iobroker.net/post/930558

                                  M 2 Antworten Letzte Antwort
                                  0
                                  • F fastfoot

                                    @maerzpa Das Gleichheitszeichen(/=) hat da nichts zu suchen. Ehrlich gesagt weiss ich aber nicht weshalb es zu diesem Effekt kommt, da der Wert ja immer wieder neu geholt wird und keine Variable ist

                                    M Offline
                                    M Offline
                                    maerzpa
                                    schrieb am zuletzt editiert von
                                    #28

                                    @fastfoot Vielen Dank. Das war der Fehler.

                                    1 Antwort Letzte Antwort
                                    0
                                    • F fastfoot

                                      @maerzpa Das Gleichheitszeichen(/=) hat da nichts zu suchen. Ehrlich gesagt weiss ich aber nicht weshalb es zu diesem Effekt kommt, da der Wert ja immer wieder neu geholt wird und keine Variable ist

                                      M Offline
                                      M Offline
                                      maerzpa
                                      schrieb am zuletzt editiert von
                                      #29

                                      @fastfoot Weisst du wie man Schrittketten erstellen kann?

                                      F 1 Antwort Letzte Antwort
                                      0
                                      • M maerzpa

                                        @fastfoot Weisst du wie man Schrittketten erstellen kann?

                                        F Offline
                                        F Offline
                                        fastfoot
                                        schrieb am zuletzt editiert von
                                        #30

                                        @maerzpa Tut mir leid, mit Ablaufsteuerungen kenne ich mich gar nicht aus

                                        iobroker läuft unter Docker auf QNAP TS-451+
                                        SkriptRecovery: https://forum.iobroker.net/post/930558

                                        M 1 Antwort Letzte Antwort
                                        0
                                        • F fastfoot

                                          @maerzpa Tut mir leid, mit Ablaufsteuerungen kenne ich mich gar nicht aus

                                          M Offline
                                          M Offline
                                          maerzpa
                                          schrieb am zuletzt editiert von
                                          #31

                                          @fastfoot Ich hätte noch eine Frage (Sorry).

                                          Mit der folgenden Abfrage schaffe ich es das Fenster zu überwachen.
                                          Das Problem: Ich bekomme eine Durchsage obwohl ich das Fenster nur kurz geöffnet und wieder geschlossen habe. Der Timer wurde also nicht zurückgesetzt + gestoppt.

                                          F 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          593

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe