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. ioBroker Allgemein
  4. VIS Werte werden von ioBroker nicht bestätigt (ack = false)

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    546

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

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

VIS Werte werden von ioBroker nicht bestätigt (ack = false)

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
visjqueryjquery-ui style widgetbestätigt
7 Beiträge 5 Kommentatoren 1.4k 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.
  • S Offline
    S Offline
    SaschaS
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,
    über die Suche habe nichts auf Anhieb gefunden. Sicherlich ist meine Frage auch schnell gelöst, aber alleine komme ich nicht weiter.

    Ich erzeuge meine Datenpunkte immer mit createState (siehe nachstehend). Das Beschreiben einiger dieser Datenpunkte erfolgt erstmalig über die jqui Eingabemöglichkeiten mittels VIS. 0d4842d5-fb83-431a-a66b-8c1787fc2422-image.png Die Werte werden auch übernommen, allerdings werden diese von iobroker nicht bestätigt.
    c2dcfd41-4105-445d-a297-6ddf22bdc7a0-image.png

    // Tahoma
    createState('javascript.0.Tahoma.Beschattungsautomatik', false, false, {type:"boolean", name:"Beschattungsautomatik", role:"indicator.state", unit:""});
    createState('javascript.0.Tahoma.WetterBeschattungEmpfehlung', false, false, {type:"boolean", name:"WetterBeschattungEmpfehlung", role:"indicator.state", unit:""});
    createState('javascript.0.Tahoma.BeschattungLuxHinten', false, false, {type:"number", name:"BeschattungLuxHinten", role:"level.color.luminance", unit:"Lux"});
    createState('javascript.0.Tahoma.BeschattungLuxVorne', false, false, {type:"number", name:"BeschattungLuxVorne", role:"level.color.luminance", unit:"Lux"});
    createState('javascript.0.Tahoma.BeschattungBewoelkung', false, false, {type:"number", name:"BeschattungBewoelkung", role:"weather.clouds.forecast", unit:"%"});
    createState('javascript.0.Tahoma.Programmsteuerung_Startzeit', '6:30', false, {type:'string', name:"Programmsteuerung_Startzeit", role:"value.datetime", unit:""});
    createState('javascript.0.Tahoma.Programmsteuerung_Endzeit',  '18:00', false, {type:'string', name:"Programmsteuerung_Endzeit", role:"value.datetime", unit:""});
    createState('javascript.0.Tahoma.Programmsteuerung_Startzeit_Stunde', '6', false, {type:'string', name:"Programmsteuerung_Startzeit_Stunde", role:"value.datetime", unit:""});
    createState('javascript.0.Tahoma.Programmsteuerung_Startzeit_Minute', '30', false, {type:'string', name:"Programmsteuerung_Startzeit_Minute", role:"value.datetime", unit:""});
    createState('javascript.0.Tahoma.Programmsteuerung_Endzeit_Stunde', '18', false, {type:'string', name:"Programmsteuerung_Endzeit_Stunde", role:"value.datetime", unit:""});
    createState('javascript.0.Tahoma.Programmsteuerung_Endzeit_Minute', '0', false, {type:'string', name:"Programmsteuerung_Endzeit_Minute", role:"value.datetime", unit:""});
    

    Ist das so, oder wo habe ich was vergessen einzustellen?

    HomoranH paul53P 2 Antworten Letzte Antwort
    0
    • S SaschaS

      Hallo zusammen,
      über die Suche habe nichts auf Anhieb gefunden. Sicherlich ist meine Frage auch schnell gelöst, aber alleine komme ich nicht weiter.

      Ich erzeuge meine Datenpunkte immer mit createState (siehe nachstehend). Das Beschreiben einiger dieser Datenpunkte erfolgt erstmalig über die jqui Eingabemöglichkeiten mittels VIS. 0d4842d5-fb83-431a-a66b-8c1787fc2422-image.png Die Werte werden auch übernommen, allerdings werden diese von iobroker nicht bestätigt.
      c2dcfd41-4105-445d-a297-6ddf22bdc7a0-image.png

      // Tahoma
      createState('javascript.0.Tahoma.Beschattungsautomatik', false, false, {type:"boolean", name:"Beschattungsautomatik", role:"indicator.state", unit:""});
      createState('javascript.0.Tahoma.WetterBeschattungEmpfehlung', false, false, {type:"boolean", name:"WetterBeschattungEmpfehlung", role:"indicator.state", unit:""});
      createState('javascript.0.Tahoma.BeschattungLuxHinten', false, false, {type:"number", name:"BeschattungLuxHinten", role:"level.color.luminance", unit:"Lux"});
      createState('javascript.0.Tahoma.BeschattungLuxVorne', false, false, {type:"number", name:"BeschattungLuxVorne", role:"level.color.luminance", unit:"Lux"});
      createState('javascript.0.Tahoma.BeschattungBewoelkung', false, false, {type:"number", name:"BeschattungBewoelkung", role:"weather.clouds.forecast", unit:"%"});
      createState('javascript.0.Tahoma.Programmsteuerung_Startzeit', '6:30', false, {type:'string', name:"Programmsteuerung_Startzeit", role:"value.datetime", unit:""});
      createState('javascript.0.Tahoma.Programmsteuerung_Endzeit',  '18:00', false, {type:'string', name:"Programmsteuerung_Endzeit", role:"value.datetime", unit:""});
      createState('javascript.0.Tahoma.Programmsteuerung_Startzeit_Stunde', '6', false, {type:'string', name:"Programmsteuerung_Startzeit_Stunde", role:"value.datetime", unit:""});
      createState('javascript.0.Tahoma.Programmsteuerung_Startzeit_Minute', '30', false, {type:'string', name:"Programmsteuerung_Startzeit_Minute", role:"value.datetime", unit:""});
      createState('javascript.0.Tahoma.Programmsteuerung_Endzeit_Stunde', '18', false, {type:'string', name:"Programmsteuerung_Endzeit_Stunde", role:"value.datetime", unit:""});
      createState('javascript.0.Tahoma.Programmsteuerung_Endzeit_Minute', '0', false, {type:'string', name:"Programmsteuerung_Endzeit_Minute", role:"value.datetime", unit:""});
      

      Ist das so, oder wo habe ich was vergessen einzustellen?

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

      @SaschaS sollen diese Daten noch irgendwie übernommen und verarbeitet werden?
      Von einem Adapter?

      Wenn es reine eigene Datenpunkte sind müssten sie mit ack=true übergeben werden.
      Ob und wie das mit den Widgets out of the Box geht weiß ich nicht.

      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 -

      S 1 Antwort Letzte Antwort
      0
      • S SaschaS

        Hallo zusammen,
        über die Suche habe nichts auf Anhieb gefunden. Sicherlich ist meine Frage auch schnell gelöst, aber alleine komme ich nicht weiter.

        Ich erzeuge meine Datenpunkte immer mit createState (siehe nachstehend). Das Beschreiben einiger dieser Datenpunkte erfolgt erstmalig über die jqui Eingabemöglichkeiten mittels VIS. 0d4842d5-fb83-431a-a66b-8c1787fc2422-image.png Die Werte werden auch übernommen, allerdings werden diese von iobroker nicht bestätigt.
        c2dcfd41-4105-445d-a297-6ddf22bdc7a0-image.png

        // Tahoma
        createState('javascript.0.Tahoma.Beschattungsautomatik', false, false, {type:"boolean", name:"Beschattungsautomatik", role:"indicator.state", unit:""});
        createState('javascript.0.Tahoma.WetterBeschattungEmpfehlung', false, false, {type:"boolean", name:"WetterBeschattungEmpfehlung", role:"indicator.state", unit:""});
        createState('javascript.0.Tahoma.BeschattungLuxHinten', false, false, {type:"number", name:"BeschattungLuxHinten", role:"level.color.luminance", unit:"Lux"});
        createState('javascript.0.Tahoma.BeschattungLuxVorne', false, false, {type:"number", name:"BeschattungLuxVorne", role:"level.color.luminance", unit:"Lux"});
        createState('javascript.0.Tahoma.BeschattungBewoelkung', false, false, {type:"number", name:"BeschattungBewoelkung", role:"weather.clouds.forecast", unit:"%"});
        createState('javascript.0.Tahoma.Programmsteuerung_Startzeit', '6:30', false, {type:'string', name:"Programmsteuerung_Startzeit", role:"value.datetime", unit:""});
        createState('javascript.0.Tahoma.Programmsteuerung_Endzeit',  '18:00', false, {type:'string', name:"Programmsteuerung_Endzeit", role:"value.datetime", unit:""});
        createState('javascript.0.Tahoma.Programmsteuerung_Startzeit_Stunde', '6', false, {type:'string', name:"Programmsteuerung_Startzeit_Stunde", role:"value.datetime", unit:""});
        createState('javascript.0.Tahoma.Programmsteuerung_Startzeit_Minute', '30', false, {type:'string', name:"Programmsteuerung_Startzeit_Minute", role:"value.datetime", unit:""});
        createState('javascript.0.Tahoma.Programmsteuerung_Endzeit_Stunde', '18', false, {type:'string', name:"Programmsteuerung_Endzeit_Stunde", role:"value.datetime", unit:""});
        createState('javascript.0.Tahoma.Programmsteuerung_Endzeit_Minute', '0', false, {type:'string', name:"Programmsteuerung_Endzeit_Minute", role:"value.datetime", unit:""});
        

        Ist das so, oder wo habe ich was vergessen einzustellen?

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

        @SaschaS sagte:

        allerdings werden diese von iobroker nicht bestätigt.

        ioBroker bestätigt keine Werte. Dies tun Instanzen mit ihren Datenpunkten. Eigene Datenpunkte können (per Script), müssen aber nicht bestätigt 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
        0
        • HomoranH Homoran

          @SaschaS sollen diese Daten noch irgendwie übernommen und verarbeitet werden?
          Von einem Adapter?

          Wenn es reine eigene Datenpunkte sind müssten sie mit ack=true übergeben werden.
          Ob und wie das mit den Widgets out of the Box geht weiß ich nicht.

          S Offline
          S Offline
          SaschaS
          schrieb am zuletzt editiert von
          #4

          @Homoran Die geschrieben Daten werden nur von meinen eigenen Skripten weiterverwendet. Hört sich also so an, als ob das nicht so schlimm ist, dass die Daten nicht bestätigt sind.
          @paul53 Hast du mir einen Anstoss, wie ich per Skript Datenpunkte bestätigen lassen kann?

          paul53P 1 Antwort Letzte Antwort
          0
          • S SaschaS

            @Homoran Die geschrieben Daten werden nur von meinen eigenen Skripten weiterverwendet. Hört sich also so an, als ob das nicht so schlimm ist, dass die Daten nicht bestätigt sind.
            @paul53 Hast du mir einen Anstoss, wie ich per Skript Datenpunkte bestätigen lassen kann?

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

            @SaschaS sagte:

            wie ich per Skript Datenpunkte bestätigen lassen kann?

            Wozu möchtest Du sie bestätigen lassen ?

            on({id: /^javascript\.0\.Tahoma\..+/, ack: false}, function(dp) {
               setState(dp.id, dp.state.val, true);
            });
            

            Problem: Auswertende Skripte müssen auf Wertänderung oder ack = true triggern, da sonst zweimal getriggert wird.

            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
            • mickymM Offline
              mickymM Offline
              mickym
              Most Active
              schrieb am zuletzt editiert von mickym
              #6

              Grundsätzlich werden bzw. müssen nach meiner Erfahrung Werte ohne ack geschrieben werden, da sie von Adaptern weiterverarbeitet werden die quasi direkt mit der Hardware kommunizieren.

              Wenn Du also über VIS einen Wert setzt, wird er standardmässig bewusst ohne ack gesetzt, damit der "HW-"Adapter oder verarbeitende Adapter erkennen kann, welchen Wert er umsetzen muss und bestätigt die Umsetzung mit einem ack=true.
              In sofern wäre eine Visualisierungssoftware, die selbst Änderungen bestätigt völliger Nonsens.
              Ist die Verarbeitung rein logisch, dann müsstest Du über Deine Logikmaschine diese Werte auch bestätigen - das ist in meinen Augen völlig korrekt. Insofern ist die Bestätigung über ein Script sinnvoll.

              In NodeRed wird das bei den iobroker Ausgaben dadurch gesteuert, indem man angibt ob Änderungen als Wert/Value (ack=true) oder als Kommando/Command (ack=false) interpretiert werden sollen. Viele wundern sich, warum dann nichts passiert, wenn sie Werte als Values schreiben. Und die Erklärung ist in meinen Augen die obige.

              Logik Maschinen (Java oder NodeRed) können nun auswerten, wann ein Wert gesetzt wurde und wann er vom Adapter bestätigt wurde und ggf. unterschiedlich reagieren.

              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

              1 Antwort Letzte Antwort
              0
              • A Offline
                A Offline
                antimon
                schrieb am zuletzt editiert von antimon
                #7

                Noch ergänzend zum Beitrag von mickym:

                Man kann sich das ack zur Unterscheidung Soll/Ist vorstellen. Angenommen man hat einen Button in vis mit einer Lampe als Statussymbol. In dem Moment, indem man den Button betätigt, wird ein Kommando gesendet: Schalte Lampe ein (=Soll). Dabei ist ACK=false, denn die Bestätigung der Lampe ist ja noch nicht da. Erst wenn die Lampe auch wirklich reagiert hat und an ist, schickt sie ihren Status mit ACK=true (=Istwert) zurück, dann weiß vis, dass die Lampe auch wirklich angegangen ist. Im Falle von z.B. einer Hue-Lampe, die gerade eine Funkstörung hat, würde keine Bestätigung (ACK=true) zurückkommen, damit weiß man dass der Soll-Befehl nicht ausgeführt werden konnte.

                Bei einer Jalousie wäre das beispielsweise so: Ich will eine offene (Wert: 0 % geschlossen) Jalousie herunterfahren - ich setze den Sollwert auf 100 % geschlossen. Die Markise braucht eine gewisse Zeit und sendet, während sie fährt, die ganze Zeit Ihren Status ... 10 %, 20 %, 30 %, ... und zwar immer als IST-Wert (ACK=true). Der Sollwert (100 %) bleibt die ganze Zeit unverändert, bis die Jalousie ihr Ziel erreicht hat. Während der ganzen Zeit kann vis aber die aktuelle Position ermitteln und entsprechend anzeigen. Das geht nur, wenn Sie Soll/Ist unterscheiden kann - und dazu brauche ich das Flag "ACK".

                Das Flag sollte nur der Teil des Systems setzen, der auch wirklich den aktuellen Zustand kennt.

                Ich hoffe, das ist jetzt etwas klarer geworden?

                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
                FAQ Cloud / IOT
                HowTo: Node.js-Update
                HowTo: Backup/Restore
                Downloads
                BLOG

                825

                Online

                32.5k

                Benutzer

                81.8k

                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