NEWS
Frage: setState(id, getState(other id).val) in Adapter verwenden
-
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
-
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.
-
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
-
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 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
-
Das hatte ich damals auch gesucht, aber nicht gefunden.
Daher hab ich mir mit den Timern geholfen.
-
Im JS-Adapter wird das NPM-Modul https://www.npmjs.com/package/node-schedule verwendet.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden