NEWS
[solved] HM: Abfragen von Datenpunkt generiert Duty Cycle?
-
Hallo,
Frage an die Experten:
Habe eigentlich in der Absicht unnötige Kommandos und damit DC auf der HM CCU zu vermeiden, den aktuellen Aktorzustand in den ioBroker Objekten per Skript abgefragt.
Wollte nur dann ein Zustandstandsignal an dden Datenpunkt übergeben, wenn das tatsächlich zu einer Änderung geführt hätte.
Dazu also den Datenpunktunkt abgefragt und verglichen.
Aber durch diese Abfrage des Datenpunkts in den ioBroker Objekten scheint sich der DC auf der CCU drastisch zu erhöhen.Wie ist das zu erklären? Ich dachte so ein getState sei ein lesender Zugriff? Offensichtlich habe ich das Zusammenspiel zwischen ioBroker und HM nicht verstanden.
Habe jetzt im Skript eine Varibla angelegt, die abfrage. Diese Variable wird geändert, wenn sich das subscribierte HM-Objekt ändert. Jetzt ist der DC wieder normal.
Thema also gelöst, aber nicht wirklich verstanden. -
Hallo,
Frage an die Experten:
Habe eigentlich in der Absicht unnötige Kommandos und damit DC auf der HM CCU zu vermeiden, den aktuellen Aktorzustand in den ioBroker Objekten per Skript abgefragt.
Wollte nur dann ein Zustandstandsignal an dden Datenpunkt übergeben, wenn das tatsächlich zu einer Änderung geführt hätte.
Dazu also den Datenpunktunkt abgefragt und verglichen.
Aber durch diese Abfrage des Datenpunkts in den ioBroker Objekten scheint sich der DC auf der CCU drastisch zu erhöhen.Wie ist das zu erklären? Ich dachte so ein getState sei ein lesender Zugriff? Offensichtlich habe ich das Zusammenspiel zwischen ioBroker und HM nicht verstanden.
Habe jetzt im Skript eine Varibla angelegt, die abfrage. Diese Variable wird geändert, wenn sich das subscribierte HM-Objekt ändert. Jetzt ist der DC wieder normal.
Thema also gelöst, aber nicht wirklich verstanden.@klassisch sagte: Ich dachte so ein getState sei ein lesender Zugriff?
Ja, und sogar nur auf den Puffer der Javascript-Instanz. Der HM-RPC-Adapter bekommt den Zugriff nicht mit - erst recht nicht die CCU.
-
@klassisch sagte: Ich dachte so ein getState sei ein lesender Zugriff?
Ja, und sogar nur auf den Puffer der Javascript-Instanz. Der HM-RPC-Adapter bekommt den Zugriff nicht mit - erst recht nicht die CCU.
@paul53 Danke!
Das dachte ich auch.
Passt aber nicht zu meinem DC.Jetzt habe ich das nochmals recherchiert und das alte Script aus dem Backup geholt und nochmals genauer nachgeschaut und einen Fehler gefunden:
Da stand
if(intendedState != getState(windowsAdviserId)){wo hätte stehen sollen
if(intendedState != getState(windowsAdviserId).val){Der hat also nicht den Datenpunkt geholt, sondern das ganze Objekt. damit ist wohl die Ungleichheit im if statement immer gegeben und der Aktor wird immer angesteuert. Die "Sparschaltung" war also fehlerhaft.
"User did err" hätte die alte Univac gesagt.
Danke für Deine Mühe.
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