Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. createState (Ack)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    createState (Ack)

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      Nahasapee last edited by

      Hi,
      ich erzeuge über die Programmierung diverse States, mir ist jetzt aufgefallen das diese States im IoBroker rot bleiben nach dem setzen(also sie sind unbestätigt)
      415b1d0b-4047-4848-b1d6-10db9b90732c-image.png
      Was muss man da machen damit die normal schwarz werden? Wenn ich über die Programmierung setState ausführe und ack mitgeben werden sie zwar schwarz aber ich hab irgendwie das Gefühl dass ich beim erzeugen was falsch mache denn wenn ich über die GUI vom Broker es setze bleiben sie auch rot.

      //.....
      createState(tStateName,0,
                                                                        {
                                                                          read: true,
                                                                          write: true,
                                                                          desc: "executed Commands with google",
                                                                          type: "number",
                                                                          def: 0,
                                                                          value :0,
                                                                          role:   'value'                                                                  
                                                                        });
      ....
      

      beim setzten mit setState bleiben sie rot:

      setState(pName,25);
      

      wenn ich es so aufrufe:

      setState(pName,25,true);
      

      werden sie zwar schwarz

      Viele Grüße

      paul53 UncleSam 2 Replies Last reply Reply Quote 0
      • paul53
        paul53 @Nahasapee last edited by

        @Nahasapee sagte:

        wenn ich es so aufrufe:
        setState(pName,25,true);
        werden sie zwar schwarz

        Dann ist alles in Ordnung. Wenn Ack direkt bei createState() gesetzt werden soll, dann über die Callback-Funktion.

        createState(name, init, common, function() {
           setState(name, init, true);
        });
        
        1 Reply Last reply Reply Quote 1
        • UncleSam
          UncleSam Developer @Nahasapee last edited by

          @Nahasapee Das mit dem Ack hast du richtig verstanden.

          Wenn du den Wert über Admin von Hand setzt, dann wird Ack nicht gesetzt, deshalb bleibt der Wert rot.

          Wenn du ganz korrekt arbeiten willst, solltest du auf Veränderungen des Datenpunktes hören und nur wenn Ack nicht gesetzt ist (false), dann machst du was auch immer du auf eine Status Änderung machen musst und setzt dann den Datenpunkt auf denselben Wert, aber mit Ack=true. Somit kannst du anhand des Ack unterscheiden, ob der Wert von aussen (Ack=false) oder von "innen" (Ack=true) gesetzt wurde.

          paul53 1 Reply Last reply Reply Quote 1
          • paul53
            paul53 @UncleSam last edited by

            @UncleSam sagte:

            anhand des Ack unterscheiden, ob der Wert von aussen (Ack=false) oder von "innen" (Ack=true) gesetzt wurde.

            Das betrifft Datenpunkte in Adaptern, aber nicht eigene, virtuelle Datenpunkte, die mittels createState() erstellt werden.

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

            Support us

            ioBroker
            Community Adapters
            Donate

            826
            Online

            31.9k
            Users

            80.1k
            Topics

            1.3m
            Posts

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