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. Entwicklung
  4. [Frage] Wie lautet der Syntax für adapter.getState

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[Frage] Wie lautet der Syntax für adapter.getState

Geplant Angeheftet Gesperrt Verschoben Entwicklung
11 Beiträge 4 Kommentatoren 2.1k Aufrufe
  • Ä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.
  • PeoplesP Offline
    PeoplesP Offline
    Peoples
    schrieb am zuletzt editiert von
    #1

    Hi,

    ich traue mich fast nicht zu fragen aber mir gelingt es einfach nicht einen durch den Adapter angelegten Datenpunkt auf undefined zu prüfen und dessen wert auszulesen. Die adapter.config…. Datenpunkte klappen wunderbar.

    Der Datenpunkt den ich auslesen will lautet: backitup.0.History.Backup_history (der Wert ist ein String : Testwert)

    Im Js-Script-Adapter-Editor ist das überhaupt kein Thema aber ich bekomme es in der Main.js einfach nicht hin, folgendes habe ich versucht:

    adapter.log.info(adapter.getState(adapter.name+'.'+adapter.instance+".History.letztes_ccu_Backup"));
    adapter.log.info(adapter.getState(adapter.name+'.'+adapter.instance+".History.letztes_ccu_Backup").val);
    
    

    und zig Abwandlungen davon.

    Das setzen der States klappt wunderbar nur das prüfen ob undefined und das auslesen nicht.

    Wäre toll wenn mir hier mal jemand den codeschnipsel anpassen könnte.

    Eine Frage hätte ich zusätzlich, wie ich es verstanden habe ist es nicht möglich einen Datenpunkt zeitgleich mit adapter.setObjectNotExists zu erstellen und dessen Wert einzutragen oder?

    Denn beim Scripten mit CreateState klappt das ja.

    Vielen Dank schonmal

    Ich beantworte keine Fragen zu Themen via PN

    1 Antwort Letzte Antwort
    0
    • Jey CeeJ Online
      Jey CeeJ Online
      Jey Cee
      Developer
      schrieb am zuletzt editiert von
      #2

      Laut https://github.com/ioBroker/ioBroker/wiki/Adapter-Development-Documentation#object-fields:

      adapter.getState('myState', function (err, state) {
      
          adapter.log.info(
                'State ' + adapter.namespace + '.myState -' + 
                '  Value: '        + state.val + 
                ', ack: '          + state.ack + 
                ', time stamp: '   + state.ts  + 
                ', last changed: ' + state.lc
          ); 
      

      Persönlicher Support
      Spenden -> paypal.me/J3YC33

      1 Antwort Letzte Antwort
      0
      • apollon77A Offline
        apollon77A Offline
        apollon77
        schrieb am zuletzt editiert von
        #3

        Ist das gleiche wie bei einer anderen frage von dir: Adapter ist alles asynchron!! Also per callbacks ausschließlich.

        Gesendet vom Handy …

        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
        1 Antwort Letzte Antwort
        0
        • PeoplesP Offline
          PeoplesP Offline
          Peoples
          schrieb am zuletzt editiert von
          #4

          Da bin ich noch nicht wirklich durchgestiegen :lol:

          Ich versuche mich zu bessern

          Ich beantworte keine Fragen zu Themen via PN

          1 Antwort Letzte Antwort
          0
          • apollon77A Offline
            apollon77A Offline
            apollon77
            schrieb am zuletzt editiert von
            #5

            Wenn man aus dem JavaScript-Adapter Skript-Umfeld kommt muss man da umdenken.

            Im JavaScript-Adapter sind einige Dinge synchron gemacht damit es beim Scripte-Scheiben einfacher ist. Aber Adapter ist "plain" :-)

            Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

            • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
            • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
            1 Antwort Letzte Antwort
            0
            • PeoplesP Offline
              PeoplesP Offline
              Peoples
              schrieb am zuletzt editiert von
              #6

              @apollon77:

              Wenn man aus dem JavaScript-Adapter Skript-Umfeld kommt muss man da umdenken.

              Im JavaScript-Adapter sind einige Dinge synchron gemacht damit es beim Scripte-Scheiben einfacher ist. Aber Adapter ist "plain" :-) `

              Erschwerend kommt noch hinzu dass ich eigentlich nur ein Hobby-Scripter bin und das alles durch "learning bei schmeißing in the eis cold water" lernen muss :lol:

              Ich beantworte keine Fragen zu Themen via PN

              1 Antwort Letzte Antwort
              0
              • apollon77A Offline
                apollon77A Offline
                apollon77
                schrieb am zuletzt editiert von
                #7

                Danach kannst Du noch viele weitere Adapter bauen :-))

                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                1 Antwort Letzte Antwort
                0
                • PeoplesP Offline
                  PeoplesP Offline
                  Peoples
                  schrieb am zuletzt editiert von
                  #8

                  @apollon77:

                  Danach kannst Du noch viele weitere Adapter bauen :-)) `

                  Bis dahin bin ich ergraut!

                  Eine Frage hab ich noch, wie macht der Profi das nun dass er mit:

                  adapter.setObjectNotExists('History.letztes_minimal_Backup', {type: 'state', common: {name: 'Letztes minimal Backup', type: 'string', state: 'Noch kein Backup', role: 'indicator'}, native: {}});
                  
                  

                  Den Datenpunkt erstellt und ihn gleich mit bspw. (Noch kein Backup) befüllt?

                  Weil wenn jetzt der Datenpunkt neu erstellt wurde, ist er ja leer d.h. wenn ich in abfrage bekomme ich einen error (TypeError: Cannot read property 'val' of null) Wenn ich ihn jedoch mit setState befüllen würde ohne vorher zu prüfen ob da schon was drin steht, würde ja bei jedem Adapterstart wieder der "Default-Eintrag" reingeschrieben werden.

                  Oder sehe ich das falsch?

                  Ich beantworte keine Fragen zu Themen via PN

                  1 Antwort Letzte Antwort
                  0
                  • apollon77A Offline
                    apollon77A Offline
                    apollon77
                    schrieb am zuletzt editiert von
                    #9

                    An der Stelle würde ich das Trennen. Du machst einmal setObjectNotExists und danach ein "getState" und im Callback wenn state oder stata.val ===null ist dann den Wert setzen.

                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                    1 Antwort Letzte Antwort
                    0
                    • AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #10

                      Ich weiß ich bin etwas spät, aber dafür gibts eigentlich

                      {..., common: { ..., def: "Standardwert", ... }, ...}
                      

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      1 Antwort Letzte Antwort
                      0
                      • apollon77A Offline
                        apollon77A Offline
                        apollon77
                        schrieb am zuletzt editiert von
                        #11

                        Menno … stimmt ... du hast recht ... ohje ... :-)

                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                        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

                        641

                        Online

                        32.7k

                        Benutzer

                        82.3k

                        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