Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. Button der nur betätigt werden kann wenn Object ID= 0 oder 1

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    680

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Button der nur betätigt werden kann wenn Object ID= 0 oder 1

Scheduled Pinned Locked Moved Visualisierung
22 Posts 3 Posters 1.3k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • SebasDiS Offline
    SebasDiS Offline
    SebasDi
    wrote on last edited by
    #1

    Hallo zusammen.

    Ich visualisiere gerade meine sehr aufwändige Schwimmbadsteuerung.

    Bisher habe ich leider noch keine Lösung gefunden, wie ich einen Button oder eine Checkbox so einstellen kann, dass der Button bzw. die Checkbox nur abhängig vom abgefragten Zustand (ObjectID) betätigt werden kann.

    Z.B.:

    "Button Automatik"
    -> SteuerID: Netzwerkeingang 1 meiner SPS
    -> ObjectID: Merker 1 (der nach Netzwerkeingang1 = 1 via Setze-/Rücksetzebaustein aktiviert wird)

    Nach dem Betätigen des Buttons Automatik, wird mein Merker gesetzt, der Button ändert die Farbe da ObjectID von 0 auf 1 gewechselt hat.
    Und genau in diesem Moment soll der Button Automatik nicht mehr betätigt werden können.
    Denn, betätige ich den Button Automatik wenn ObjectID=1 wechselt der Button in der Visu (Vis2) von seiner Farbe "true" auf "false" obwohl die ObjectID immernoch 1 ist.

    Ich habe leider keinerlei Java-Kenntnisse oder ähnliches. Auch ChatGPT hat mir nicht weiterhelfen können.

    Am besten wäre eine Checkbox, die mir beim Aktivieren in der Visu einen separaten Netzwerkeingang schaltet und beim Deaktivieren einen anderen Netzwerkeingang schaltet. Abhängig vom Status der ObjectID.

    Das Gleiche mit einem Button würde mich endlich voranbringen .

    Ich habe leider keine Java Kenntnisse und weiß daher nicht wie man das in der Vis2 am Besten umsetzen kann.

    Danke im Voraus

    O paul53P 3 Replies Last reply
    0
    • SebasDiS SebasDi

      Hallo zusammen.

      Ich visualisiere gerade meine sehr aufwändige Schwimmbadsteuerung.

      Bisher habe ich leider noch keine Lösung gefunden, wie ich einen Button oder eine Checkbox so einstellen kann, dass der Button bzw. die Checkbox nur abhängig vom abgefragten Zustand (ObjectID) betätigt werden kann.

      Z.B.:

      "Button Automatik"
      -> SteuerID: Netzwerkeingang 1 meiner SPS
      -> ObjectID: Merker 1 (der nach Netzwerkeingang1 = 1 via Setze-/Rücksetzebaustein aktiviert wird)

      Nach dem Betätigen des Buttons Automatik, wird mein Merker gesetzt, der Button ändert die Farbe da ObjectID von 0 auf 1 gewechselt hat.
      Und genau in diesem Moment soll der Button Automatik nicht mehr betätigt werden können.
      Denn, betätige ich den Button Automatik wenn ObjectID=1 wechselt der Button in der Visu (Vis2) von seiner Farbe "true" auf "false" obwohl die ObjectID immernoch 1 ist.

      Ich habe leider keinerlei Java-Kenntnisse oder ähnliches. Auch ChatGPT hat mir nicht weiterhelfen können.

      Am besten wäre eine Checkbox, die mir beim Aktivieren in der Visu einen separaten Netzwerkeingang schaltet und beim Deaktivieren einen anderen Netzwerkeingang schaltet. Abhängig vom Status der ObjectID.

      Das Gleiche mit einem Button würde mich endlich voranbringen .

      Ich habe leider keine Java Kenntnisse und weiß daher nicht wie man das in der Vis2 am Besten umsetzen kann.

      Danke im Voraus

      O Away
      O Away
      oFbEQnpoLKKl6mbY5e13
      wrote on last edited by oFbEQnpoLKKl6mbY5e13
      #2

      @sebasdi

      Dann blende den Button mit "Sichtbarkeit" doch einfach aus.

      vis1sichtbarkeit.PNG

      Das wird wohl mit VIS2 auch noch gehen.

      SebasDiS 1 Reply Last reply
      1
      • O oFbEQnpoLKKl6mbY5e13

        @sebasdi

        Dann blende den Button mit "Sichtbarkeit" doch einfach aus.

        vis1sichtbarkeit.PNG

        Das wird wohl mit VIS2 auch noch gehen.

        SebasDiS Offline
        SebasDiS Offline
        SebasDi
        wrote on last edited by
        #3

        @ofbeqnpolkkl6mby5e13

        Habe ich so realisiert. Benötige dann aber einen zweiten Button der den ausgeblendeten genau überlagert um den Status anzuzeigen.

        Wie du hier im Screenshot sehen kannst, habe ich den "Automatik" Button zweimal erstellt. Wenn ObjectID=0 ist der graue Button zu sehen. Wenn dann ObjectID=1 verschwindet der graue Button und der grüne erscheint.
        Ist aber alles sehr umständlich und meiner Ansicht nach nicht so professionell. Zudem hängt die Visu oft und man muss den versteckten Button zuerst kurz antippen, damit die Signale rausgehen. Warum auch immer.

        77568277-c0da-485b-a69c-36b31128a962-image.png

        Gibt es da keine Möglichkeit mit so einem Skript:

        *function sendCommand(command) {
        // Hier implementieren Sie den Code zum Senden des Befehls an Ihre Steuer-ID
        console.log('Command sent:', command);
        }

        function handleRadioChange(value) {
        if (value === true) {
        // Aktivierungs-Befehl senden
        sendCommand('activate_command');
        } else {
        // Deaktivierungs-Befehl senden
        sendCommand('deactivate_command');
        }
        }*

        Verstehe nur nicht welche "commands" ich da eingeben muss. Hab keine Ahnung von Java & Co. 😞

        SebasDiS O 2 Replies Last reply
        0
        • SebasDiS SebasDi

          Hallo zusammen.

          Ich visualisiere gerade meine sehr aufwändige Schwimmbadsteuerung.

          Bisher habe ich leider noch keine Lösung gefunden, wie ich einen Button oder eine Checkbox so einstellen kann, dass der Button bzw. die Checkbox nur abhängig vom abgefragten Zustand (ObjectID) betätigt werden kann.

          Z.B.:

          "Button Automatik"
          -> SteuerID: Netzwerkeingang 1 meiner SPS
          -> ObjectID: Merker 1 (der nach Netzwerkeingang1 = 1 via Setze-/Rücksetzebaustein aktiviert wird)

          Nach dem Betätigen des Buttons Automatik, wird mein Merker gesetzt, der Button ändert die Farbe da ObjectID von 0 auf 1 gewechselt hat.
          Und genau in diesem Moment soll der Button Automatik nicht mehr betätigt werden können.
          Denn, betätige ich den Button Automatik wenn ObjectID=1 wechselt der Button in der Visu (Vis2) von seiner Farbe "true" auf "false" obwohl die ObjectID immernoch 1 ist.

          Ich habe leider keinerlei Java-Kenntnisse oder ähnliches. Auch ChatGPT hat mir nicht weiterhelfen können.

          Am besten wäre eine Checkbox, die mir beim Aktivieren in der Visu einen separaten Netzwerkeingang schaltet und beim Deaktivieren einen anderen Netzwerkeingang schaltet. Abhängig vom Status der ObjectID.

          Das Gleiche mit einem Button würde mich endlich voranbringen .

          Ich habe leider keine Java Kenntnisse und weiß daher nicht wie man das in der Vis2 am Besten umsetzen kann.

          Danke im Voraus

          paul53P Offline
          paul53P Offline
          paul53
          wrote on last edited by paul53
          #4

          @sebasdi sagte: wechselt der Button in der Visu (Vis2) von seiner Farbe "true" auf "false" obwohl die ObjectID immernoch 1 ist.

          Wenn Kommando und Status getrennt sind, führe sie mit Lese- und Schreibkonvertierung in einem Alias vom Typ "Logikwert", Rolle "switch" zusammen, um beliebige Schalter-Widgets verwenden zu können.
          Der Netzwerkeingang 1 (Taster) toggelt den Merker 1? Dann Schreibkonvertierung:

          val ? 1 : 1
          

          Lesekonvertierung:

          !!val
          

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Reply Last reply
          0
          • SebasDiS SebasDi

            @ofbeqnpolkkl6mby5e13

            Habe ich so realisiert. Benötige dann aber einen zweiten Button der den ausgeblendeten genau überlagert um den Status anzuzeigen.

            Wie du hier im Screenshot sehen kannst, habe ich den "Automatik" Button zweimal erstellt. Wenn ObjectID=0 ist der graue Button zu sehen. Wenn dann ObjectID=1 verschwindet der graue Button und der grüne erscheint.
            Ist aber alles sehr umständlich und meiner Ansicht nach nicht so professionell. Zudem hängt die Visu oft und man muss den versteckten Button zuerst kurz antippen, damit die Signale rausgehen. Warum auch immer.

            77568277-c0da-485b-a69c-36b31128a962-image.png

            Gibt es da keine Möglichkeit mit so einem Skript:

            *function sendCommand(command) {
            // Hier implementieren Sie den Code zum Senden des Befehls an Ihre Steuer-ID
            console.log('Command sent:', command);
            }

            function handleRadioChange(value) {
            if (value === true) {
            // Aktivierungs-Befehl senden
            sendCommand('activate_command');
            } else {
            // Deaktivierungs-Befehl senden
            sendCommand('deactivate_command');
            }
            }*

            Verstehe nur nicht welche "commands" ich da eingeben muss. Hab keine Ahnung von Java & Co. 😞

            SebasDiS Offline
            SebasDiS Offline
            SebasDi
            wrote on last edited by
            #5

            @sebasdi Verstehe ich das richtig, dass das Skript dann weiß, dass NI1 und NI2 den M1 ein- bzw. ausschalten?

            paul53P 1 Reply Last reply
            0
            • SebasDiS SebasDi

              @sebasdi Verstehe ich das richtig, dass das Skript dann weiß, dass NI1 und NI2 den M1 ein- bzw. ausschalten?

              paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by
              #6

              @sebasdi sagte: NI2 den M1 ein- bzw. ausschalten?

              Was ist NI2?

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              SebasDiS 1 Reply Last reply
              0
              • paul53P paul53

                @sebasdi sagte: NI2 den M1 ein- bzw. ausschalten?

                Was ist NI2?

                SebasDiS Offline
                SebasDiS Offline
                SebasDi
                wrote on last edited by
                #7

                @paul53 Abkürzung für Netzwerkeingang an der SPS (sorry)

                paul53P 1 Reply Last reply
                0
                • SebasDiS SebasDi

                  @ofbeqnpolkkl6mby5e13

                  Habe ich so realisiert. Benötige dann aber einen zweiten Button der den ausgeblendeten genau überlagert um den Status anzuzeigen.

                  Wie du hier im Screenshot sehen kannst, habe ich den "Automatik" Button zweimal erstellt. Wenn ObjectID=0 ist der graue Button zu sehen. Wenn dann ObjectID=1 verschwindet der graue Button und der grüne erscheint.
                  Ist aber alles sehr umständlich und meiner Ansicht nach nicht so professionell. Zudem hängt die Visu oft und man muss den versteckten Button zuerst kurz antippen, damit die Signale rausgehen. Warum auch immer.

                  77568277-c0da-485b-a69c-36b31128a962-image.png

                  Gibt es da keine Möglichkeit mit so einem Skript:

                  *function sendCommand(command) {
                  // Hier implementieren Sie den Code zum Senden des Befehls an Ihre Steuer-ID
                  console.log('Command sent:', command);
                  }

                  function handleRadioChange(value) {
                  if (value === true) {
                  // Aktivierungs-Befehl senden
                  sendCommand('activate_command');
                  } else {
                  // Deaktivierungs-Befehl senden
                  sendCommand('deactivate_command');
                  }
                  }*

                  Verstehe nur nicht welche "commands" ich da eingeben muss. Hab keine Ahnung von Java & Co. 😞

                  O Away
                  O Away
                  oFbEQnpoLKKl6mbY5e13
                  wrote on last edited by oFbEQnpoLKKl6mbY5e13
                  #8

                  @sebasdi sagte in Button der nur betätigt werden kann wenn Object ID= 0 oder 1:

                  ... Zudem hängt die Visu oft und man muss den versteckten Button zuerst kurz antippen, damit die Signale rausgehen. Warum auch immer.

                  Muss an VIS2 liegen. Mit VIS1 gibt es das Problem bei mir nicht. Wundert mich allerdings bei VIS2 auch nicht...

                  Edit:
                  Was ich damit sagen will: Ich habe keine Ahnung von VIS2, kann also dbzgl. nicht helfen.

                  SebasDiS 2 Replies Last reply
                  0
                  • O oFbEQnpoLKKl6mbY5e13

                    @sebasdi sagte in Button der nur betätigt werden kann wenn Object ID= 0 oder 1:

                    ... Zudem hängt die Visu oft und man muss den versteckten Button zuerst kurz antippen, damit die Signale rausgehen. Warum auch immer.

                    Muss an VIS2 liegen. Mit VIS1 gibt es das Problem bei mir nicht. Wundert mich allerdings bei VIS2 auch nicht...

                    Edit:
                    Was ich damit sagen will: Ich habe keine Ahnung von VIS2, kann also dbzgl. nicht helfen.

                    SebasDiS Offline
                    SebasDiS Offline
                    SebasDi
                    wrote on last edited by
                    #9

                    @ofbeqnpolkkl6mby5e13

                    hmmm....

                    Ich dachte halt, dass ich über manuelles "Widget-Einfügen" einfach jedes mal den richtigen Code einfüge und dann nur die ObjectID und SteuerID's ändern muss.

                    Aber irgendwie klappt das nicht. Hab auch schon das hier versucht:

                    [
                    {
                    "tpl": "tplJquiToogle",
                    "data": {
                    "bindings": [],
                    "type": "button",
                    "g_common": true,
                    "oid": "nothing_selected",
                    "text_false": "Aus",
                    "g_text": true,
                    "text_true": "An",
                    "color_true": "#93ff93",
                    "padding": 5,
                    "g_style": true,
                    "variant": "contained",
                    "orientation": "horizontal",
                    "icon_false": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMyAzaC0ydjEwaDJWM3ptNC44MyAyLjE3bC0xLjQyIDEuNDJBNi45MiA2LjkyIDAgMCAxIDE5IDEyYzAgMy44Ny0zLjEzIDctNyA3QTYuOTk1IDYuOTk1IDAgMCAxIDcuNTggNi41OEw2LjE3IDUuMTdBOC45MzIgOC45MzIgMCAwIDAgMyAxMmE5IDkgMCAwIDAgMTggMGMwLTIuNzQtMS4yMy01LjE4LTMuMTctNi44M3oiLz48L3N2Zz4=",
                    "g_icon_false": true,
                    "onchange": "if (this.value) { sendCommand('s7.1.DBs.DB1.NI33'); } else { sendCommand('s7.1.DBs.DB1.NI33'); }"
                    },
                    "style": {
                    "bindings": [],
                    "left": "728.203125px",
                    "top": "785px",
                    "width": 92,
                    "height": 36
                    },
                    "widgetSet": "jqui",
                    "_id": "i000001"
                    }
                    ]

                    1 Reply Last reply
                    0
                    • O oFbEQnpoLKKl6mbY5e13

                      @sebasdi sagte in Button der nur betätigt werden kann wenn Object ID= 0 oder 1:

                      ... Zudem hängt die Visu oft und man muss den versteckten Button zuerst kurz antippen, damit die Signale rausgehen. Warum auch immer.

                      Muss an VIS2 liegen. Mit VIS1 gibt es das Problem bei mir nicht. Wundert mich allerdings bei VIS2 auch nicht...

                      Edit:
                      Was ich damit sagen will: Ich habe keine Ahnung von VIS2, kann also dbzgl. nicht helfen.

                      SebasDiS Offline
                      SebasDiS Offline
                      SebasDi
                      wrote on last edited by
                      #10

                      @ofbeqnpolkkl6mby5e13 trotzdem Danke ;-)

                      O 1 Reply Last reply
                      0
                      • SebasDiS SebasDi

                        @ofbeqnpolkkl6mby5e13 trotzdem Danke ;-)

                        O Away
                        O Away
                        oFbEQnpoLKKl6mbY5e13
                        wrote on last edited by
                        #11

                        @sebasdi

                        Ich kann dir allerdings bzgl. "manuelles "Widget-Einfügen"" nicht folgen.

                        SebasDiS 1 Reply Last reply
                        0
                        • SebasDiS SebasDi

                          @paul53 Abkürzung für Netzwerkeingang an der SPS (sorry)

                          paul53P Offline
                          paul53P Offline
                          paul53
                          wrote on last edited by
                          #12

                          @sebasdi sagte: Abkürzung für Netzwerkeingang

                          Das dachte ich mir. Weshalb erwähnst du jetzt einen NI2? Was soll er bewirken?

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          SebasDiS 1 Reply Last reply
                          0
                          • O oFbEQnpoLKKl6mbY5e13

                            @sebasdi

                            Ich kann dir allerdings bzgl. "manuelles "Widget-Einfügen"" nicht folgen.

                            SebasDiS Offline
                            SebasDiS Offline
                            SebasDi
                            wrote on last edited by
                            #13

                            @ofbeqnpolkkl6mby5e13 in Vis2 kann man auf einer Seite die rechte Maustaste klciken, dann auf "Widget einfügen" und einen Java Code einfügen. Das meinte ich.

                            1 Reply Last reply
                            0
                            • SebasDiS SebasDi

                              Hallo zusammen.

                              Ich visualisiere gerade meine sehr aufwändige Schwimmbadsteuerung.

                              Bisher habe ich leider noch keine Lösung gefunden, wie ich einen Button oder eine Checkbox so einstellen kann, dass der Button bzw. die Checkbox nur abhängig vom abgefragten Zustand (ObjectID) betätigt werden kann.

                              Z.B.:

                              "Button Automatik"
                              -> SteuerID: Netzwerkeingang 1 meiner SPS
                              -> ObjectID: Merker 1 (der nach Netzwerkeingang1 = 1 via Setze-/Rücksetzebaustein aktiviert wird)

                              Nach dem Betätigen des Buttons Automatik, wird mein Merker gesetzt, der Button ändert die Farbe da ObjectID von 0 auf 1 gewechselt hat.
                              Und genau in diesem Moment soll der Button Automatik nicht mehr betätigt werden können.
                              Denn, betätige ich den Button Automatik wenn ObjectID=1 wechselt der Button in der Visu (Vis2) von seiner Farbe "true" auf "false" obwohl die ObjectID immernoch 1 ist.

                              Ich habe leider keinerlei Java-Kenntnisse oder ähnliches. Auch ChatGPT hat mir nicht weiterhelfen können.

                              Am besten wäre eine Checkbox, die mir beim Aktivieren in der Visu einen separaten Netzwerkeingang schaltet und beim Deaktivieren einen anderen Netzwerkeingang schaltet. Abhängig vom Status der ObjectID.

                              Das Gleiche mit einem Button würde mich endlich voranbringen .

                              Ich habe leider keine Java Kenntnisse und weiß daher nicht wie man das in der Vis2 am Besten umsetzen kann.

                              Danke im Voraus

                              paul53P Offline
                              paul53P Offline
                              paul53
                              wrote on last edited by paul53
                              #14

                              @sebasdi sagte: Checkbox, die mir beim Aktivieren in der Visu einen separaten Netzwerkeingang schaltet und beim Deaktivieren einen anderen Netzwerkeingang schaltet. Abhängig vom Status der ObjectID.

                              Also zwei Taster - einer für Set, der andere für Reset? Das geht wohl nur mit Skript.

                              const idM1 = 'S7...';
                              const idNI1 = 'S7...'; // Set
                              const idNI2 = 'S7...'; // Reset
                              
                              on({id: idM1, change: 'ne', ack: false}, function(dp) {
                                  if(dp.state.val) setState(idNI1, 1);
                                  else setState(idNI2, 1);
                              });
                              

                              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                              SebasDiS 2 Replies Last reply
                              1
                              • paul53P paul53

                                @sebasdi sagte: Abkürzung für Netzwerkeingang

                                Das dachte ich mir. Weshalb erwähnst du jetzt einen NI2? Was soll er bewirken?

                                SebasDiS Offline
                                SebasDiS Offline
                                SebasDi
                                wrote on last edited by SebasDi
                                #15

                                @paul53

                                Also diese Funktion benötige ich zum Beispiel um Merker der Steuerung zu setzen oder zurückzusetzen.

                                Die Netzwerkeingänge werden beim Klick auf den Button nur kurz angesteuert und werden nicht gehalten. Daher benötige ich, um diverse Programmabschnitte in der Steuerung ein- oder auszublenden, einige Merker.

                                1ef65c0f-b3ad-4270-8341-ecfc527255ce-image.png

                                Die Poolsteuerung ist universell und beinhaltet wirklich alles was es gibt. Daher gibt es in der Visu eine Anlagenkonfiguration für viele Funktionen. Je nachdem was ausgewählt / nicht ausgewählt wird, passt sich das Programm in der Steuerung an.

                                1 Reply Last reply
                                0
                                • paul53P paul53

                                  @sebasdi sagte: Checkbox, die mir beim Aktivieren in der Visu einen separaten Netzwerkeingang schaltet und beim Deaktivieren einen anderen Netzwerkeingang schaltet. Abhängig vom Status der ObjectID.

                                  Also zwei Taster - einer für Set, der andere für Reset? Das geht wohl nur mit Skript.

                                  const idM1 = 'S7...';
                                  const idNI1 = 'S7...'; // Set
                                  const idNI2 = 'S7...'; // Reset
                                  
                                  on({id: idM1, change: 'ne', ack: false}, function(dp) {
                                      if(dp.state.val) setState(idNI1, 1);
                                      else setState(idNI2, 1);
                                  });
                                  
                                  SebasDiS Offline
                                  SebasDiS Offline
                                  SebasDi
                                  wrote on last edited by
                                  #16

                                  @paul53

                                  Würde das mit dem Ding hier funktionieren?

                                  [
                                  {
                                  "tpl": "tplJquiToogle",
                                  "data": {
                                  "bindings": [],
                                  "type": "button",
                                  "g_common": true,
                                  "oid": "nothing_selected",
                                  "text_false": "Aus",
                                  "g_text": true,
                                  "text_true": "An",
                                  "color_true": "#93ff93",
                                  "padding": 5,
                                  "g_style": true,
                                  "variant": "contained",
                                  "orientation": "horizontal",
                                  "icon_false": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMyAzaC0ydjEwaDJWM3ptNC44MyAyLjE3bC0xLjQyIDEuNDJBNi45MiA2LjkyIDAgMCAxIDE5IDEyYzAgMy44Ny0zLjEzIDctNyA3QTYuOTk1IDYuOTk1IDAgMCAxIDcuNTggNi41OEw2LjE3IDUuMTdBOC45MzIgOC45MzIgMCAwIDAgMyAxMmE5IDkgMCAwIDAgMTggMGMwLTIuNzQtMS4yMy01LjE4LTMuMTctNi44M3oiLz48L3N2Zz4=",
                                  "g_icon_false": true,
                                  "onchange": "if (this.value) { sendCommand('s7.1.DBs.DB1.NI33'); } else { sendCommand('s7.1.DBs.DB1.NI33'); }"
                                  },
                                  "style": {
                                  "bindings": [],
                                  "left": "728.203125px",
                                  "top": "785px",
                                  "width": 92,
                                  "height": 36
                                  },
                                  "widgetSet": "jqui",
                                  "_id": "i000001"
                                  }
                                  ]

                                  Falls ja, was muss man da anpassen? Wie lauten die "commands" die ich an meinen S7 Adapter senden muss?

                                  paul53P 1 Reply Last reply
                                  0
                                  • SebasDiS SebasDi

                                    @paul53

                                    Würde das mit dem Ding hier funktionieren?

                                    [
                                    {
                                    "tpl": "tplJquiToogle",
                                    "data": {
                                    "bindings": [],
                                    "type": "button",
                                    "g_common": true,
                                    "oid": "nothing_selected",
                                    "text_false": "Aus",
                                    "g_text": true,
                                    "text_true": "An",
                                    "color_true": "#93ff93",
                                    "padding": 5,
                                    "g_style": true,
                                    "variant": "contained",
                                    "orientation": "horizontal",
                                    "icon_false": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMyAzaC0ydjEwaDJWM3ptNC44MyAyLjE3bC0xLjQyIDEuNDJBNi45MiA2LjkyIDAgMCAxIDE5IDEyYzAgMy44Ny0zLjEzIDctNyA3QTYuOTk1IDYuOTk1IDAgMCAxIDcuNTggNi41OEw2LjE3IDUuMTdBOC45MzIgOC45MzIgMCAwIDAgMyAxMmE5IDkgMCAwIDAgMTggMGMwLTIuNzQtMS4yMy01LjE4LTMuMTctNi44M3oiLz48L3N2Zz4=",
                                    "g_icon_false": true,
                                    "onchange": "if (this.value) { sendCommand('s7.1.DBs.DB1.NI33'); } else { sendCommand('s7.1.DBs.DB1.NI33'); }"
                                    },
                                    "style": {
                                    "bindings": [],
                                    "left": "728.203125px",
                                    "top": "785px",
                                    "width": 92,
                                    "height": 36
                                    },
                                    "widgetSet": "jqui",
                                    "_id": "i000001"
                                    }
                                    ]

                                    Falls ja, was muss man da anpassen? Wie lauten die "commands" die ich an meinen S7 Adapter senden muss?

                                    paul53P Offline
                                    paul53P Offline
                                    paul53
                                    wrote on last edited by paul53
                                    #17

                                    @sebasdi sagte: Würde das mit dem Ding hier funktionieren?

                                    Keine Ahnung: Damit kann ich nichts anfangen.

                                    EDIT: Versuche es mal mit Javascript:

                                    const idM32 = 'S7.1...M32'; // Anpassen!
                                    const idNI32 = 's7.1.DBs.DB1.NI32'; // Set
                                    const idNI33 = 's7.1.DBs.DB1.NI33'; // Reset
                                    
                                    on({id: idM32, change: 'ne', ack: false}, function(dp) {
                                        if(dp.state.val) setState(idNI32, 1);
                                        else setState(idNI33, 1);
                                    });
                                    

                                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                    1 Reply Last reply
                                    0
                                    • paul53P paul53

                                      @sebasdi sagte: Checkbox, die mir beim Aktivieren in der Visu einen separaten Netzwerkeingang schaltet und beim Deaktivieren einen anderen Netzwerkeingang schaltet. Abhängig vom Status der ObjectID.

                                      Also zwei Taster - einer für Set, der andere für Reset? Das geht wohl nur mit Skript.

                                      const idM1 = 'S7...';
                                      const idNI1 = 'S7...'; // Set
                                      const idNI2 = 'S7...'; // Reset
                                      
                                      on({id: idM1, change: 'ne', ack: false}, function(dp) {
                                          if(dp.state.val) setState(idNI1, 1);
                                          else setState(idNI2, 1);
                                      });
                                      
                                      SebasDiS Offline
                                      SebasDiS Offline
                                      SebasDi
                                      wrote on last edited by
                                      #18

                                      @paul53 said in Button der nur betätigt werden kann wenn Object ID= 0 oder 1:

                                      const idM1 = 'S7...'; const idNI1 = 'S7...'; // Set const idNI2 = 'S7...'; // Reset on({id: idM1, change: 'ne', ack: false}, function(dp) { if(dp.state.val) setState(idNI1, 1); else setState(idNI2, 1); });

                                      Okay. Schade. ABer sicherlich mit bisschen Aufwand lösbar für alle Funktionen.
                                      Dein Skript habe ich mal erstellt und es läuft.
                                      Wie verknüpfe ich jetzt einen Button aus der Vis2 mit dem Skript?

                                      paul53P 1 Reply Last reply
                                      0
                                      • SebasDiS SebasDi

                                        @paul53 said in Button der nur betätigt werden kann wenn Object ID= 0 oder 1:

                                        const idM1 = 'S7...'; const idNI1 = 'S7...'; // Set const idNI2 = 'S7...'; // Reset on({id: idM1, change: 'ne', ack: false}, function(dp) { if(dp.state.val) setState(idNI1, 1); else setState(idNI2, 1); });

                                        Okay. Schade. ABer sicherlich mit bisschen Aufwand lösbar für alle Funktionen.
                                        Dein Skript habe ich mal erstellt und es läuft.
                                        Wie verknüpfe ich jetzt einen Button aus der Vis2 mit dem Skript?

                                        paul53P Offline
                                        paul53P Offline
                                        paul53
                                        wrote on last edited by
                                        #19

                                        @sebasdi sagte: Wie verknüpfe ich jetzt einen Button aus der Vis2 mit dem Skript?

                                        Die Verknüpfung muss ein Schalter mit M32 sein.

                                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                        SebasDiS 1 Reply Last reply
                                        0
                                        • paul53P paul53

                                          @sebasdi sagte: Wie verknüpfe ich jetzt einen Button aus der Vis2 mit dem Skript?

                                          Die Verknüpfung muss ein Schalter mit M32 sein.

                                          SebasDiS Offline
                                          SebasDiS Offline
                                          SebasDi
                                          wrote on last edited by
                                          #20

                                          @paul53

                                          Habe einen neuen Schalter erstellt und die ObjektID mit dem M32 verknüpft.
                                          Der SteuerID ist dann die angelegte Skriptdatei?

                                          paul53P 1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          283

                                          Online

                                          32.7k

                                          Users

                                          82.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe