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. createState (Ack)

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

createState (Ack)

Geplant Angeheftet Gesperrt Verschoben JavaScript
4 Beiträge 3 Kommentatoren 423 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.
  • N Offline
    N Offline
    Nahasapee
    schrieb am zuletzt editiert von
    #1

    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

    paul53P UncleSamU 2 Antworten Letzte Antwort
    0
    • N Nahasapee

      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

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

      @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);
      });
      

      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
      1
      • N Nahasapee

        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

        UncleSamU Offline
        UncleSamU Offline
        UncleSam
        Developer
        schrieb am zuletzt editiert von
        #3

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

        Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
        ♡-lichen Dank an meine Sponsoren

        paul53P 1 Antwort Letzte Antwort
        1
        • UncleSamU UncleSam

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

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

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

          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
          1
          Antworten
          • In einem neuen Thema antworten
          Anmelden zum Antworten
          • Älteste zuerst
          • Neuste zuerst
          • Meiste Stimmen


          Support us

          ioBroker
          Community Adapters
          Donate

          341

          Online

          32.6k

          Benutzer

          82.1k

          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