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. Wann ist ein nach der Erzeugung dp verfügbar?

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Wann ist ein nach der Erzeugung dp verfügbar?

Geplant Angeheftet Gesperrt Verschoben JavaScript
16 Beiträge 5 Kommentatoren 818 Aufrufe 5 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 ticaki

    @asgothian sagte in Wann ist ein nach der Erzeugung dp verfügbar?:

    await extendObjectAsync(DestinationId, {type:'state', common:{name:'Gerät ist zu Hause', type:'boolean', def: false}});
    // Aktuellen Zustand auslesen
    const actState= getState(DestinationId);

    Ändert nix, der state existiert noch nicht im Javascript-Adapter, wenn getState() ausgeführt wird. Aber das async fehlt natürlich trotzdem.

    Mit const actState= await getStateAsync(DestinationId);geht auch die abfrage auf den State.

    AsgothianA Offline
    AsgothianA Offline
    Asgothian
    Developer
    schrieb am zuletzt editiert von
    #7

    @ticaki sagte in Wann ist ein nach der Erzeugung dp verfügbar?:

    @asgothian sagte in Wann ist ein nach der Erzeugung dp verfügbar?:

    await extendObjectAsync(DestinationId, {type:'state', common:{name:'Gerät ist zu Hause', type:'boolean', def: false}});
    // Aktuellen Zustand auslesen
    const actState= getState(DestinationId);

    Ändert nix, der state existiert noch nicht im Javascript-Adapter, wenn getState() ausgeführt wird. Aber das async fehlt natürlich trotzdem.

    Mit const actState= await getStateAsync(DestinationId);geht auch die abfrage auf den State.

    Interessant. Mein System scheint da schneller zu sein - der Code den ich gepostet hab geht bei mir direkt durch - ohne Probleme :)

    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

    T 1 Antwort Letzte Antwort
    0
    • AsgothianA Asgothian

      @ticaki sagte in Wann ist ein nach der Erzeugung dp verfügbar?:

      @asgothian sagte in Wann ist ein nach der Erzeugung dp verfügbar?:

      await extendObjectAsync(DestinationId, {type:'state', common:{name:'Gerät ist zu Hause', type:'boolean', def: false}});
      // Aktuellen Zustand auslesen
      const actState= getState(DestinationId);

      Ändert nix, der state existiert noch nicht im Javascript-Adapter, wenn getState() ausgeführt wird. Aber das async fehlt natürlich trotzdem.

      Mit const actState= await getStateAsync(DestinationId);geht auch die abfrage auf den State.

      Interessant. Mein System scheint da schneller zu sein - der Code den ich gepostet hab geht bei mir direkt durch - ohne Probleme :)

      T Nicht stören
      T Nicht stören
      ticaki
      schrieb am zuletzt editiert von
      #8

      @asgothian
      Eh ich habe gerade geupgraded.. also nix da :D

      Kann halt nur schreiben was passiert ist. Aber ein sleep hinter einem extend macht das ganze eh viel entspannter.

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      1 Antwort Letzte Antwort
      0
      • T ticaki

        @asgothian sagte in Wann ist ein nach der Erzeugung dp verfügbar?:

        await extendObjectAsync(DestinationId, {type:'state', common:{name:'Gerät ist zu Hause', type:'boolean', def: false}});
        // Aktuellen Zustand auslesen
        const actState= getState(DestinationId);

        Ändert nix, der state existiert noch nicht im Javascript-Adapter, wenn getState() ausgeführt wird. Aber das async fehlt natürlich trotzdem.

        Mit const actState= await getStateAsync(DestinationId);geht auch die abfrage auf den State.

        Ben1983B Offline
        Ben1983B Offline
        Ben1983
        schrieb am zuletzt editiert von
        #9

        @ticaki bei mir geht es auch damit nicht (Hatte ich schon vor erstellen dieses Threads gecheckt.)
        Und extendObjectAsync sollte soweit mit bekannt in extendObject drin sein, wenn dies nicht als Callback benutzt wird.

        mcm1957M 1 Antwort Letzte Antwort
        0
        • Ben1983B Ben1983

          @ticaki bei mir geht es auch damit nicht (Hatte ich schon vor erstellen dieses Threads gecheckt.)
          Und extendObjectAsync sollte soweit mit bekannt in extendObject drin sein, wenn dies nicht als Callback benutzt wird.

          mcm1957M Online
          mcm1957M Online
          mcm1957
          schrieb am zuletzt editiert von
          #10

          @ben1983 said in Wann ist ein nach der Erzeugung dp verfügbar?:

          @ticaki bei mir geht es auch damit nicht (Hatte ich schon vor erstellen dieses Threads gecheckt.)
          Und extendObjectAsync sollte soweit mit bekannt in extendObject drin sein, wenn dies nicht als Callback benutzt wird.

          Nur wenn du aktuellen js-controlelr einsetzt.
          https://github.com/ioBroker/ioBroker.js-controller/blob/master/CHANGELOG.md#704-2024-12-04---lucy
          Kann gut sein, dass setObject zu extendObject durchschlägt

          Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
          Support Repositoryverwaltung.

          Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

          LESEN - gute Forenbeitrage

          Ben1983B 1 Antwort Letzte Antwort
          0
          • Ben1983B Ben1983

            Hallo, ich habe folgende Logik:

            on(TrigerId,async(dp)=>{
                await extendObject(DestinationId, {type:'state', common:{name:'Gerät ist zu Hause', type:'boolean', def: false}});
                // Aktuellen Zustand auslesen
                const actState= getState(DestinationId).val;
            }
            

            nun verursacht dies aber ein actState = null

            Erzeuge ich den state mit extendObject beim Scriptstart (nur zum Testen), so funktioniert es.
            Ich dachte, dass das await dafür sorgt, dass entsprechend lange gewartet wird.

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            schrieb am zuletzt editiert von
            #11

            @ben1983
            Und wo wird der State geschrieben oder der default Wert des Objekts gesetzt?
            Welcher Wert würde erwartet werden?

            Bin mir zwar nicht sicher, aber ein Objekt muss nicht zwangsläufig auch gleich einen State haben

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            1 Antwort Letzte Antwort
            0
            • mcm1957M mcm1957

              @ben1983 said in Wann ist ein nach der Erzeugung dp verfügbar?:

              @ticaki bei mir geht es auch damit nicht (Hatte ich schon vor erstellen dieses Threads gecheckt.)
              Und extendObjectAsync sollte soweit mit bekannt in extendObject drin sein, wenn dies nicht als Callback benutzt wird.

              Nur wenn du aktuellen js-controlelr einsetzt.
              https://github.com/ioBroker/ioBroker.js-controller/blob/master/CHANGELOG.md#704-2024-12-04---lucy
              Kann gut sein, dass setObject zu extendObject durchschlägt

              Ben1983B Offline
              Ben1983B Offline
              Ben1983
              schrieb am zuletzt editiert von
              #12

              @mcm1957 setze 7.0.6 ein ;-)

              mcm1957M T 2 Antworten Letzte Antwort
              0
              • Ben1983B Ben1983

                @mcm1957 setze 7.0.6 ein ;-)

                mcm1957M Online
                mcm1957M Online
                mcm1957
                schrieb am zuletzt editiert von
                #13

                @ben1983
                Hoffe deine User auch :-)
                Ansonsten solltest du ggF die dependencies des js-controllers checken / anpassen.

                Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                Support Repositoryverwaltung.

                Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                LESEN - gute Forenbeitrage

                Ben1983B 1 Antwort Letzte Antwort
                0
                • Ben1983B Ben1983

                  @mcm1957 setze 7.0.6 ein ;-)

                  T Nicht stören
                  T Nicht stören
                  ticaki
                  schrieb am zuletzt editiert von ticaki
                  #14

                  @ben1983
                  @mcm1957

                  Ich glaube das ist leichter zu begründen, will jetzt aber nicht den Eindruck erwecken als wenn ich den Javascript-Adapter-Code durchschaut hätte. :)

                  create/set/extendWasauchimmerAsyncerzeugt im js-controller einen State/Object und wartet bis er angelegt ist. Jedoch hat der Javascript-Adapter einen Cache. Ein darauf folgenden getState() wird aus dem Cache gezogen und wenn der subscriber noch nicht durch ist, gibts ihn halt noch nicht.

                  Dazu kommt dann noch das die ...Async sich anders verhält als im Adapter - ohne Async wird nicht gewartet. https://github.com/ioBroker/ioBroker.javascript/blob/7778007eb9304658aed10f4a975de91864ad26bc/lib/sandbox.js#L4403

                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                  Spenden

                  1 Antwort Letzte Antwort
                  0
                  • mcm1957M mcm1957

                    @ben1983
                    Hoffe deine User auch :-)
                    Ansonsten solltest du ggF die dependencies des js-controllers checken / anpassen.

                    Ben1983B Offline
                    Ben1983B Offline
                    Ben1983
                    schrieb am zuletzt editiert von
                    #15

                    @mcm1957 Das hier ist ein eigenes Skript im Javascript Adapter, kein Eigener Adapter

                    mcm1957M 1 Antwort Letzte Antwort
                    0
                    • Ben1983B Ben1983

                      @mcm1957 Das hier ist ein eigenes Skript im Javascript Adapter, kein Eigener Adapter

                      mcm1957M Online
                      mcm1957M Online
                      mcm1957
                      schrieb am zuletzt editiert von mcm1957
                      #16

                      @ben1983

                      OK - Für Javascript im Javascript Adapter gelten tw. andere Regeln.

                      Wenn Unetrscheide allerdings eher verwirrend sind und aufwärtskompatibel anpassbar scheinen dann macht es ev. durchaus Sinn ein Issue zu erstellen. Bluefox migriert den Javascritp adapter meines Wissens nach z,Z zu Typescript. Da kann man ggF kompatible (!) Anpassungen durchaus vornehmen.

                      Aber das müssen die Maintainer entscheiden.

                      Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                      Support Repositoryverwaltung.

                      Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                      LESEN - gute Forenbeitrage

                      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

                      584

                      Online

                      32.6k

                      Benutzer

                      82.2k

                      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