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: setState(id, getState(other id).val) in Adapter verwenden

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Frage: setState(id, getState(other id).val) in Adapter verwenden

Geplant Angeheftet Gesperrt Verschoben Entwicklung
10 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.
  • F Offline
    F Offline
    foxthefox
    Developer
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich hab man ne Frage zur Adapter Entwicklung.

    Im Javascript Adapter kann man folgendes machen:

    setState(id, getState(other id).val)
    
    

    also das Setzen eines Objektes mit dem Wert eines anderen, oder auch mit dem jetzt gültigen der gleichen id.

    Und das klappt ohne die Asynchronitätsprobleme.

    Wie kann man das nun in einem normalen Adapter realisieren?

    Ein Codeschnipsel wäre hilfreich.

    Eine weiter Frage, wie kann man in einem zyklisch laufenden Adapter auch ein schedule() cronjob, ähnlich dem Javascript Adapter einbauen?

    Gruß

    Klaus

    Adapterüberblick: Profil Github;

    Wenn der Adapter gefällt und nützlich ist, bitte ins Repo gehen und Star setzen. Danke

    Ein Aufruf: video

    1 Antwort Letzte Antwort
    0
    • AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      schrieb am zuletzt editiert von
      #2
      getState("other id", function (obj) {
          setState("id", obj.val, ack); // ack ist true oder false
      });
      
      

      Bedenke, dass Code, der unter getState folgt, direkt nach dem Aufruf von getState ausgeführt wird und wahrscheinlich bevor der Callback aufgerufen wird.

      Kann Probleme in der Ausführungsreihenfolge bedeuten, wenn du es nicht beachtest.

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

      1 Antwort Letzte Antwort
      0
      • F Offline
        F Offline
        foxthefox
        Developer
        schrieb am zuletzt editiert von
        #3

        @AlCalzone:

        getState("other id", function (obj) {
            setState("id", obj.val, ack); // ack ist true oder false
        });
        
        

        Bedenke, dass Code, der unter getState folgt, direkt nach dem Aufruf von getState ausgeführt wird und wahrscheinlich bevor der Callback aufgerufen wird.

        Kann Probleme in der Ausführungsreihenfolge bedeuten, wenn du es nicht beachtest. `

        Aber innerhalb des callbacks ist alles richtig?! Die Anweisung etwas umzuspeichern wäre die letzte im funktionsaufruf. Also danach kommt nix mehr (bzw. evtl. Läuft ein nächster schleifendurchlauf.).

        Versuche mich grad an nem Adapter für Statistik und da kommt das häufiger vor.

        Gesendet von iPhone mit Tapatalk

        Adapterüberblick: Profil Github;

        Wenn der Adapter gefällt und nützlich ist, bitte ins Repo gehen und Star setzen. Danke

        Ein Aufruf: video

        1 Antwort Letzte Antwort
        0
        • AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von
          #4

          Ja, das passt so!

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

          1 Antwort Letzte Antwort
          0
          • F Offline
            F Offline
            foxthefox
            Developer
            schrieb am zuletzt editiert von
            #5

            Danke für die callback Info.

            bleibt noch die Frage, wie kann man in einem zyklisch laufenden Adapter auch ein schedule() cronjob, ähnlich dem Javascript Adapter einbauen kann?

            Hat jemand eine Idee?

            Gruß

            Klaus

            Adapterüberblick: Profil Github;

            Wenn der Adapter gefällt und nützlich ist, bitte ins Repo gehen und Star setzen. Danke

            Ein Aufruf: video

            1 Antwort Letzte Antwort
            0
            • htreckslerH Offline
              htreckslerH Offline
              htrecksler
              Forum Testing
              schrieb am zuletzt editiert von
              #6

              ich hab in meinem "lokalen" Adapter mehrere Timer laufen welche z.B. jede Minute oder jede Stunde oder 1 x am Tag irgendetwas ausführen.

              Meinst Du sowas? Dann kann ich dir ein Beispiel posten.

              Gruss Hermann

              ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

              1 Antwort Letzte Antwort
              0
              • F Offline
                F Offline
                foxthefox
                Developer
                schrieb am zuletzt editiert von
                #7

                @htrecksler:

                ich hab in meinem "lokalen" Adapter mehrere Timer laufen welche z.B. jede Minute oder jede Stunde oder 1 x am Tag irgendetwas ausführen.

                Meinst Du sowas? Dann kann ich dir ein Beispiel posten. `

                Ich meinte so etwas wie cronjob. Im JavaScript Adapter ist es schedule mit dem Format vom cronjob. Eine Funktion die Suche alle 5min wiederholt hab ich. Ich suche etwas um an einem bestimmten Zeitpunkt einen trigger zu setzen.

                Gesendet von iPhone mit Tapatalk

                Adapterüberblick: Profil Github;

                Wenn der Adapter gefällt und nützlich ist, bitte ins Repo gehen und Star setzen. Danke

                Ein Aufruf: video

                1 Antwort Letzte Antwort
                0
                • htreckslerH Offline
                  htreckslerH Offline
                  htrecksler
                  Forum Testing
                  schrieb am zuletzt editiert von
                  #8

                  Das hatte ich damals auch gesucht, aber nicht gefunden.

                  Daher hab ich mir mit den Timern geholfen.

                  Gruss Hermann

                  ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                  1 Antwort Letzte Antwort
                  0
                  • paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #9

                    Im JS-Adapter wird das NPM-Modul https://www.npmjs.com/package/node-schedule verwendet.

                    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
                    • F Offline
                      F Offline
                      foxthefox
                      Developer
                      schrieb am zuletzt editiert von
                      #10

                      @paul53:

                      Im JS-Adapter wird das NPM-Modul https://www.npmjs.com/package/node-schedule verwendet. `
                      Danke, das ist genau der richtige Hinweis.[emoji106]

                      Gesendet von iPhone mit Tapatalk

                      Adapterüberblick: Profil Github;

                      Wenn der Adapter gefällt und nützlich ist, bitte ins Repo gehen und Star setzen. Danke

                      Ein Aufruf: video

                      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

                      785

                      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