Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Status negiert übertragen

NEWS

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

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

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

Status negiert übertragen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
34 Beiträge 11 Kommentatoren 3.7k Aufrufe 3 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.
  • T Offline
    T Offline
    tempestas
    schrieb am zuletzt editiert von
    #9

    @paul53:

    @tempestas:

    Wenn ich das richtig sehe, gilt "on" ohne weitere Spezifizierung immer als "change: any", d.h. bei jedem Statuswechsel wird die definierte Funktion ausgeführt. Richtig: > Wenn ich das richtig sehe, gilt "on" bei Verwendung eines ID-Strings (anstelle eines Objekts) für das Triggermuster immer als "change: 'ne'", d.h. bei jeder Wertänderung wird die definierte Funktion ausgeführt. `
    @tempestas:

    "dp" in Klammern ist eine Variable,…Man kann auch Funktionen ohne diese Variablenm schreiben. Ob man die manchmal zwingend braucht oder nicht, soweit bin ich leider noch nicht mit ausreichender Sicherheit. Grundsätlich geht aber auch "function() {....}" "dp" in Klammern ist der Name des Datenpunkt-Objektes für die Callback-Funktion. Einen Namen für das Objekt benötigt man, wenn Eigenschaften des Objektes innerhalb dieser Funktion ausgewertet werden. Werden keine Datenpunkt-Eigenschaften ausgewertet (typisch z.B. bei Reaktion auf einen Tastendruck), sollte keine Name angegeben werden.

    Kommt gleich wieder in meine Sammlung der kleinen Wissensschnippsel.

    Danke!

    <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #10

      @TOBO:

      Wird dieser Teil nun zyklisch abgearbeitet?…Wie lange muss das Signal anstehen, dass es überhaupt bemerkt wird? `
      Nein, dieser Teil wird nur einmal bei Start des Skriptes abgearbeitet (so wie kommentiert). Javascript / nodejs arbeitet nicht zyklisch wie eine SPS, sondern Ereignis-gesteuert:

      on(Trigger-Muster, callback) reagiert auf Zustandsänderungen eines Datenpunktes

      schedule('Zeitmuster', callback) reagiert auf zeitliche Ereignisse

      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 Antwort Letzte Antwort
      0
      • T Offline
        T Offline
        TOBO
        schrieb am zuletzt editiert von
        #11

        Also ist es eigentlich egal, ob dies am Anfang, oder am Ende steht ?

        Es wird nur einmal nach drücken des Start Buttons ausgeführt.

        // Script start
        setState(idDst, !getState(idSrc).val);
        

        Noch mal zu der Pollzeit. Wie lange muss ein Signal an einem Eingang anstehen, dass es überhaupt bemerkt wird ?

        Sind das ms oder schon gar Sekunden ?

        Gruss.

        ToBo

        1 Antwort Letzte Antwort
        0
        • DutchmanD Online
          DutchmanD Online
          Dutchman
          Developer Most Active Administrators
          schrieb am zuletzt editiert von
          #12

          @TOBO:

          Also ist es eigentlich egal, ob dies am Anfang, oder am Ende steht ?

          Es wird nur einmal nach drücken des Start Buttons ausgeführt.

          // Script start
          setState(idDst, !getState(idSrc).val);
          ```` `  
          

          correct

          @TOBO:

          Noch mal zu der Pollzeit. Wie lange muss ein Signal an einem Eingang anstehen, dass es überhaupt bemerkt wird ?

          Sind das ms oder schon gar Sekunden ? `

          millisekunden, komt der wert einmalig kurz rein ist das ein update (bzw weise change des objectes) damit triggert das script.

          Du hast einen reiter der heist events, da siehst du alle events vorbij kommen. mechtest du eine variable beobachten schau mal bei states und such nach deinem object.

          Darin steht zeit (letztes mal daten bekommen) und lc (last change, zeit das der wert letztesmal geaendert wurde)

          ~Dutch

          1 Antwort Letzte Antwort
          0
          • T Offline
            T Offline
            TOBO
            schrieb am zuletzt editiert von
            #13

            Nunja, ich bin mir da bei ms nicht ganz so sicher. IOBroker ist ja eigentlich ein Datensammler und hat selbst direkt keine Hardware. Ist ja auch logisch. Die Hardware sitzt dann an einer anderen Komponente und die Kommunikation läuft in der Regel über LAN. Da die Hardware nicht pusht, sondern IOBroker die Komponenten pollt, muss die mindest Aktivzeit für zum Beispiel einen Eingang >Pollzeit sein.

            1 Antwort Letzte Antwort
            0
            • DutchmanD Online
              DutchmanD Online
              Dutchman
              Developer Most Active Administrators
              schrieb am zuletzt editiert von
              #14

              @TOBO:

              Nunja, ich bin mir da bei ms nicht ganz so sicher. IOBroker ist ja eigentlich ein Datensammler und hat selbst direkt keine Hardware. Ist ja auch logisch. Die Hardware sitzt dann an einer anderen Komponente und die Kommunikation läuft in der Regel über LAN. Da die Hardware nicht pusht, sondern IOBroker die Komponenten pollt, muss die mindest Aktivzeit für zum Beispiel einen Eingang >Pollzeit sein. `

              Dem stimme ich dir nicht ganz zu, woher kommt die stellungname das iObroker pullt ?

              Probiere es mal mit de HomeMatic componenten, da ist ein PULL von 30 secunden fuer HM-Rega, alle HM-RPC daten sind live und wen ich jetzt was aendere ist es direct da und nicht nach einer pull zeitspanne.

              Openhab adapter benutze ich, selber fall. Die meisten API haben einen event moeglichkeit, mit anderen worden sie broadcasten jedes event und uebertragen damit die daten und iObroker "lauchst" anstatt zu pullen.

              MQTT/IFTTT/HomeMatic/z.wave etc alle functionieren nach diesem princiep

              ~Dutch

              1 Antwort Letzte Antwort
              0
              • T Offline
                T Offline
                TOBO
                schrieb am zuletzt editiert von
                #15

                Wie soll es denn anders sein? Weiss die Homematic das dort ein IOBRoker ist und pusht die Daten bei Änderung zu Ihm ?

                Die SPS weiss es mit Sicherheit nicht. Also muss IOBRoker zwangsweise in einem Zeitabstand Daten aus den diversen Adaptern

                holen. Live kommt es einem vielleicht vor, weil ziemlich schnell geht.

                Es tut mir wirklich leid, wenn ich Euch mit meinen Anfänger Dummy Fragen nerve.

                Also ich habe nun gelernt, dass direkte unbedingte Befehle in einen Javascript nur einmalig bei Start bearbeitet werden und man immer auf ein Ereignis reagieren muss.

                Bis jetzt beschäftige ich mich erst ein mal mit logischen Verknüpfungen.

                Das habe ich bisher gelernt.

                var idSrc = "Quelle";
                var idDst = "Ziel";
                
                on(idSrc, function(dp) {  // Triggern bei Änderung
                   setState(idDst, !dp.state.val);
                });
                
                

                Überprüft eine Änderung der Quelle und überträgt den Zustand der Quelle negiert an das Ziel.

                var idSrc = "Quelle";
                var idDst = "Ziel";
                
                on(idSrc, function(dp) {  // Triggern bei Änderung
                   setState(idDst, dp.state.val);
                });
                
                

                Überprüft eine Änderung der Quelle und überträgt den Zustand der Quelle 1:1 an das Ziel.

                Ich glaube das Ganze kann man auch so machen ?

                var idSrc = "Quelle";
                var idDst = "Ziel";
                
                on("Quelle", function(dp) {
                
                    if (dp.newState.val == true) {
                        setState("Ziel",true); 
                    } else {
                        setState("Ziel",false); 
                    }
                });
                
                

                oder sogar so habe ich gesehen

                var idSrc = "Quelle";
                var idDst = "Ziel";
                
                on("Quelle", "Ziel");
                
                

                Ist das richtig ?

                1 Antwort Letzte Antwort
                0
                • P Offline
                  P Offline
                  pix
                  schrieb am zuletzt editiert von
                  #16

                  Alles richtig. 😄

                  Die Homematic CCU gibt neue Stati von sich aus raus. Dabei ist ihr egal, ob ein ioBroker lauscht oder nicht.

                  Meine Homepilot Zentrale (für Rademacher Rollläden) tut das nicht (zumindest nicht über LAN). Daher muss ich im Adapter alle paar Sekunden den Zustand der Geräte abfragen. Die Zentrale kann aber auch ZWAVE und pusht darüber die Zustände live. Leider kann ich damit nicht umgehen und den Adapter dahingehend anpassen :oops: 😢

                  Übrigens: Der Playbutton/Pausebutton im Javascript-Adapter ist zum Starten/Anhalten des Skriptes. Das Skript startet aber auch jedesmal neu, wenn der ganze Javascript-Adapter bzw. die entsprechende Instanz oder eben der ganze ioBroker neu gestartet werden. Da die Aktionen in den Skripten meistens auf Zeitpunkte (schedule()) oder Ereignisse (on()) getriggert werden, können die Skripte dauerhaft eingeschaltet bleiben und reagieren eigentlich nicht besonders beim Neustart (außer man legt das natürlich explizit fest).

                  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

                  1 Antwort Letzte Antwort
                  0
                  • T Offline
                    T Offline
                    TOBO
                    schrieb am zuletzt editiert von
                    #17
                    var idSrc = "Quelle";
                    var idDst = "Ziel";
                    
                    on("Quelle", !"Ziel");
                    
                    

                    Funktioniert dies auch als Negation ?

                    1 Antwort Letzte Antwort
                    0
                    • BluefoxB Offline
                      BluefoxB Offline
                      Bluefox
                      schrieb am zuletzt editiert von
                      #18

                      @paul53:

                      var idSrc = "hm-rpc.0.OEQ0119091.1.STATE";
                      var idDst = "s7.0.Outputs.0.Status_Haustür";
                      
                      on(idSrc, function(dp) {  // Triggern bei Änderung
                         setState(idDst, !dp.state.val);
                      });
                      
                      // Script start
                      setState(idDst, !getState(idSrc).val);
                      
                      ```` `  
                      

                      Es gibt jetzt auch "toggle" block für Blockly (github)

                      1 Antwort Letzte Antwort
                      0
                      • T Offline
                        T Offline
                        TOBO
                        schrieb am zuletzt editiert von
                        #19

                        Nun zwei letzte Fragen 🙂

                        Wie kann man mehrere logische Verknüpfungen machen ?

                        Also

                        ist Eingang 1 = 1

                        und Eingang 2 = 1

                        und Eingang 3 = 0

                        Setze Ausgang 1 = 1

                        und ich hätte gern einen "Stromstoßschalter" in Javascript

                        Eingang = 1

                        setze Ausgang

                        Eingang geht nach 0

                        mache nix

                        Eingang geht wieder 1

                        Rücksetze Ausgang

                        Hoffe ich konnte mich erklären 🙂

                        1 Antwort Letzte Antwort
                        0
                        • DutchmanD Online
                          DutchmanD Online
                          Dutchman
                          Developer Most Active Administrators
                          schrieb am zuletzt editiert von
                          #20

                          @TOBO:

                          Nun zwei letzte Fragen 🙂

                          Wie kann man mehrere logische Verknüpfungen machen ?

                          Also

                          ist Eingang 1 = 1

                          und Eingang 2 = 1

                          und Eingang 3 = 0

                          Setze Ausgang 1 = 1

                          und ich hätte gern einen "Stromstoßschalter" in Javascript

                          Eingang = 1

                          setze Ausgang

                          Eingang geht nach 0

                          mache nix

                          Eingang geht wieder 1

                          Rücksetze Ausgang

                          Hoffe ich konnte mich erklären 🙂 `

                          du meinst verschieden states mit einander vergleichen ? z.b.:

                          IF ( value_1 == "1" && value_2 == "1") {
                                setstate(hier was du willst oder)
                                log("Value 1 und 2 sind 1")
                          };
                          

                          Hast du dir die javascript adapter documentation mal angeschaut ?

                          && z.b. bedeuted UND, || bedeutet oder usw, ansonsten mal mit blockly anfangen und damit rumspielen dan sieht man auch welche code generiert wird.

                          ~Dutch

                          1 Antwort Letzte Antwort
                          0
                          • paul53P Offline
                            paul53P Offline
                            paul53
                            schrieb am zuletzt editiert von
                            #21

                            @TOBO:

                            ist Eingang 1 = 1

                            und Eingang 2 = 1

                            und Eingang 3 = 0 `

                            if(Eingang_1 && Eingang_2 && !Eingang_3) {...}
                            

                            @TOBO:

                            Eingang = 1

                            setze Ausgang

                            Eingang geht nach 0

                            mache nix

                            Eingang geht wieder 1

                            Rücksetze Ausgang `

                            // Toggle
                            on({id: idEingang, val: 1}, function() {
                               Ausgang = !Ausgang;
                            });
                            

                            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

                            Z 1 Antwort Letzte Antwort
                            0
                            • paul53P paul53

                              @TOBO:

                              ist Eingang 1 = 1

                              und Eingang 2 = 1

                              und Eingang 3 = 0 `

                              if(Eingang_1 && Eingang_2 && !Eingang_3) {...}
                              

                              @TOBO:

                              Eingang = 1

                              setze Ausgang

                              Eingang geht nach 0

                              mache nix

                              Eingang geht wieder 1

                              Rücksetze Ausgang `

                              // Toggle
                              on({id: idEingang, val: 1}, function() {
                                 Ausgang = !Ausgang;
                              });
                              
                              Z Offline
                              Z Offline
                              Zimbl
                              schrieb am zuletzt editiert von Homoran
                              #22

                              @paul53

                              irgendwie komme ich nun hier bei den ganzen etwas durcheinander.
                              Aber ich habe etwas ähnlich, es ist auch mit mehr oder minder unterschiedlichen Typen. Bei dem der Ausgang auch negiert werden muss.

                              Aber da aber irgendwie den Faden verloren.

                              Ich habe eine Variable die den Name hat vom Typ Number "close 1 or. open 0"

                              Diese muss ich auf einen GPIO schalten....nur in umgekehrter Reihenfolge....

                              Das heisst wenn TRUE ist, soll nicht geschaltet werden und wenn FALSE soll geschaltet werden...

                              Typ Number Open 0 = Typ Bool FALSE
                              Typ Number Close 1 = Typ Bool TRUE

                              Wenn ich das mit diesem mache, funktioniert das ja nicht, aber was muss ich ändern ?

                              var idSrc = "tuya.0.658013063c6105ee34fe.36";
                              
                              var idDst = "rpi2.0.gpio.11.state";
                              
                               
                              
                              on(idSrc, function(dp) {  // Triggern bei Änderung
                              
                                 setState(idDst, !dp.state.val);
                              
                              });
                              
                              
                              // Script start
                              
                              setState(idDst, !getState(idSrc).val);
                              

                              MOD-EDIT: Code in code-tags gesetzt!

                              HomoranH bahnuhrB paul53P 3 Antworten Letzte Antwort
                              0
                              • Z Zimbl

                                @paul53

                                irgendwie komme ich nun hier bei den ganzen etwas durcheinander.
                                Aber ich habe etwas ähnlich, es ist auch mit mehr oder minder unterschiedlichen Typen. Bei dem der Ausgang auch negiert werden muss.

                                Aber da aber irgendwie den Faden verloren.

                                Ich habe eine Variable die den Name hat vom Typ Number "close 1 or. open 0"

                                Diese muss ich auf einen GPIO schalten....nur in umgekehrter Reihenfolge....

                                Das heisst wenn TRUE ist, soll nicht geschaltet werden und wenn FALSE soll geschaltet werden...

                                Typ Number Open 0 = Typ Bool FALSE
                                Typ Number Close 1 = Typ Bool TRUE

                                Wenn ich das mit diesem mache, funktioniert das ja nicht, aber was muss ich ändern ?

                                var idSrc = "tuya.0.658013063c6105ee34fe.36";
                                
                                var idDst = "rpi2.0.gpio.11.state";
                                
                                 
                                
                                on(idSrc, function(dp) {  // Triggern bei Änderung
                                
                                   setState(idDst, !dp.state.val);
                                
                                });
                                
                                
                                // Script start
                                
                                setState(idDst, !getState(idSrc).val);
                                

                                MOD-EDIT: Code in code-tags gesetzt!

                                HomoranH Nicht stören
                                HomoranH Nicht stören
                                Homoran
                                Global Moderator Administrators
                                schrieb am zuletzt editiert von
                                #23

                                @zimbl sagte in Status negiert übertragen:

                                irgendwie komme ich nun hier bei den ganzen etwas durcheinander.

                                wäre nach über 5 Jahren Ruhe im Thread nicht ein neuer angesagt?

                                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                Z 1 Antwort Letzte Antwort
                                0
                                • HomoranH Homoran

                                  @zimbl sagte in Status negiert übertragen:

                                  irgendwie komme ich nun hier bei den ganzen etwas durcheinander.

                                  wäre nach über 5 Jahren Ruhe im Thread nicht ein neuer angesagt?

                                  Z Offline
                                  Z Offline
                                  Zimbl
                                  schrieb am zuletzt editiert von
                                  #24

                                  @homoran

                                  ja sorry, wollte nicht unnötig wieder etwas neues beginne. Da das Thema ja ähnlich bzw. fast das gleiche ist.

                                  aber bei dem nächsten mal werde ich mich dran halten, es wird ja immer gesagt. Ob man die SuFu auch benutzt.

                                  Aber werde mich beim nächsten mal dran halten. Versprochen...

                                  1 Antwort Letzte Antwort
                                  0
                                  • Z Zimbl

                                    @paul53

                                    irgendwie komme ich nun hier bei den ganzen etwas durcheinander.
                                    Aber ich habe etwas ähnlich, es ist auch mit mehr oder minder unterschiedlichen Typen. Bei dem der Ausgang auch negiert werden muss.

                                    Aber da aber irgendwie den Faden verloren.

                                    Ich habe eine Variable die den Name hat vom Typ Number "close 1 or. open 0"

                                    Diese muss ich auf einen GPIO schalten....nur in umgekehrter Reihenfolge....

                                    Das heisst wenn TRUE ist, soll nicht geschaltet werden und wenn FALSE soll geschaltet werden...

                                    Typ Number Open 0 = Typ Bool FALSE
                                    Typ Number Close 1 = Typ Bool TRUE

                                    Wenn ich das mit diesem mache, funktioniert das ja nicht, aber was muss ich ändern ?

                                    var idSrc = "tuya.0.658013063c6105ee34fe.36";
                                    
                                    var idDst = "rpi2.0.gpio.11.state";
                                    
                                     
                                    
                                    on(idSrc, function(dp) {  // Triggern bei Änderung
                                    
                                       setState(idDst, !dp.state.val);
                                    
                                    });
                                    
                                    
                                    // Script start
                                    
                                    setState(idDst, !getState(idSrc).val);
                                    

                                    MOD-EDIT: Code in code-tags gesetzt!

                                    bahnuhrB Online
                                    bahnuhrB Online
                                    bahnuhr
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #25

                                    @zimbl sagte in Status negiert übertragen:

                                    on(idSrc, function(dp) { // Triggern bei Änderung setState(idDst, !dp.state.val); });

                                    Ich habs nicht richtig verstanden was du willst.
                                    Aber baue doch einfach if Abfragen rein.

                                    z.B. so:

                                    var idSrc = "tuya.0.658013063c6105ee34fe.36";
                                    var idDst = "rpi2.0.gpio.11.state";
                                      
                                    on(idSrc, function(dp) {  // Triggern bei Änderung
                                       if (dp.state.val == 0) {
                                          setState(idDst, false);
                                       } else {
                                          setState(idDst, true);
                                       }
                                    });
                                    

                                    Wie gesagt, habe deine Bedingungen nicht ganz verstanden.
                                    Aber vielleicht ist dies ja ne Grundlage für dich.


                                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                    Danke.
                                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                    ScreenToGif :https://www.screentogif.com/downloads.html

                                    1 Antwort Letzte Antwort
                                    0
                                    • Z Zimbl

                                      @paul53

                                      irgendwie komme ich nun hier bei den ganzen etwas durcheinander.
                                      Aber ich habe etwas ähnlich, es ist auch mit mehr oder minder unterschiedlichen Typen. Bei dem der Ausgang auch negiert werden muss.

                                      Aber da aber irgendwie den Faden verloren.

                                      Ich habe eine Variable die den Name hat vom Typ Number "close 1 or. open 0"

                                      Diese muss ich auf einen GPIO schalten....nur in umgekehrter Reihenfolge....

                                      Das heisst wenn TRUE ist, soll nicht geschaltet werden und wenn FALSE soll geschaltet werden...

                                      Typ Number Open 0 = Typ Bool FALSE
                                      Typ Number Close 1 = Typ Bool TRUE

                                      Wenn ich das mit diesem mache, funktioniert das ja nicht, aber was muss ich ändern ?

                                      var idSrc = "tuya.0.658013063c6105ee34fe.36";
                                      
                                      var idDst = "rpi2.0.gpio.11.state";
                                      
                                       
                                      
                                      on(idSrc, function(dp) {  // Triggern bei Änderung
                                      
                                         setState(idDst, !dp.state.val);
                                      
                                      });
                                      
                                      
                                      // Script start
                                      
                                      setState(idDst, !getState(idSrc).val);
                                      

                                      MOD-EDIT: Code in code-tags gesetzt!

                                      paul53P Offline
                                      paul53P Offline
                                      paul53
                                      schrieb am zuletzt editiert von paul53
                                      #26

                                      @zimbl sagte:

                                      Typ Number Open 0 = Typ Bool FALSE
                                      Typ Number Close 1 = Typ Bool TRUE

                                      setState(idDst, !!dp.state.val);
                                      

                                      @zimbl sagte in Status negiert übertragen:

                                      nur in umgekehrter Reihenfolge....

                                      Oder ist Quelle vom Typ "boolean" und Ziel vom Typ "number"? Dann

                                      setState(idDst, dp.state.val ? 1 : 0);
                                      

                                      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

                                      Z 1 Antwort Letzte Antwort
                                      0
                                      • Z Offline
                                        Z Offline
                                        Zimbl
                                        schrieb am zuletzt editiert von
                                        #27

                                        @bahnuhr

                                        das ist schon sehr gut.
                                        Es scheint auch zu funktionieren, ich sehe das an anderer Stelle, das er einen Wertänderung mitbekommen hat. Aber wenn ich im RPI2 unter GPIO schaue, wird der Wert nicht geändert.
                                        Obwohl er dazu einen Befehl bekommt.

                                        Woran könnte das noch liegen ?

                                        1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @zimbl sagte:

                                          Typ Number Open 0 = Typ Bool FALSE
                                          Typ Number Close 1 = Typ Bool TRUE

                                          setState(idDst, !!dp.state.val);
                                          

                                          @zimbl sagte in Status negiert übertragen:

                                          nur in umgekehrter Reihenfolge....

                                          Oder ist Quelle vom Typ "boolean" und Ziel vom Typ "number"? Dann

                                          setState(idDst, dp.state.val ? 1 : 0);
                                          
                                          Z Offline
                                          Z Offline
                                          Zimbl
                                          schrieb am zuletzt editiert von
                                          #28

                                          @paul53

                                          genau rumgedreht.
                                          Das andere ist vom Typ Number und das Ziel ist ein GPIO...also vom Typ Bool.

                                          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

                                          708

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe