NEWS
Adapter über Blockly starten/stoppen
-
Ja danke Euch für die informationen!
Ich werde es mal probieren.Frohe Ostern !!!
-
wie im post von Hiltex schon beschrieben, schalte ich einen Adapter ein oder aus.
Ausgangsituation:
Für das WLANThermogrillthermometer gibt es einen entsprechenden Adapter. Den möchte ich nur aktiv haben, falls der WLANThermo aktiv ist, also das Thermometer eingeschalten und im Wlan connected ist.Bei den Objekten gibt es im Expertenview einen Eintrag namens system.adapter.wlan-thermo.nano1
Innerhalb des Objekt gibt es den Eintrag wlanthermo-nano.1 alive (true/false). Mit diesem Eintrag kann man die Instanz ein- bzw. aisschalten.
Dies habe ich dann auch in einem Blockly genutzt.
hoffe das hilft
-
Danke Euch, soweit funktioniert das wirklich.
Im Grunde habe ich das Problem, daß ein Adapter unzuverlässig läuft und der mir abschmiert, steht also bei den Instanzen auf rot.
Unter Systemadapter stehen dann sowohl alive und connected auf false.
Ich dachte ich könnte ein Blocky bauen der den Adapter überwacht und dann wieder restartet, allerdings klappt es nicht, einfach alive und connected manuell auf true zu stellen.Gibt es eine andere Möglichkeit, einen Adapter per Blockly-Befehl zu starten?
Vielen Dank für Eure Hilfe
EDIT: Habe bereits eine Antwort von Tante Google erhalten!!!!!
-
Hallo zusammen, klinke mich hier mal ein.
Ich habe genau das gleiche Problem. Jedes Wochenende wird Iobroker gestopt, ein komplettes Backup gemacht und dann Iobroker wieder gestartet.
Dabei kommt es sehr oft vor, dass die Instanz Zigbee.0 nicht grün wird sondern nur gelb.
Dann funktionieren im Haus sämtliche Rollläden nicht mehr, was sehr ärgerlich ist.Wenn man dann in den Instanzen über den Adapter fährt wird angezeigt -> Die Verbindung zum Host steht, Lebenszeichen ist auch auf true. Nur Verbunden mit Gerät oder Dienst ist nicht vorhanden.
Nur gibt es genau dafür leider keinen Datenpunkt.
Hat einer ne Idee wie ich das erkennen kann, dass die Zigbee Instanz nur auf gelb ist?
Würde gerne über ein Blockly-Script die Instanz dann bei Bedarf neu starten. -
@atifan sagte in Adapter über Blockly starten/stoppen:
Jedes Wochenende wird Iobroker gestopt, ein komplettes Backup gemacht
Wieso nutzt du denn nicht den backitup-Adapter.
Das liest sich kompliziert, und ein Image-Backup ist aus meiner Sicht total oversized, zumal der RPI ab und an ohnehin ein neues Image benötigt (z. B. bullseye => bookworm).
-
@atifan Es gibt den Datenpunkt zigbee.0.info.connection. Dieser sollte nur dann 'true' sein wenn der Zigbee Adapter sauber gestartet wurde.
Ob ein skript-getriggerter Neustart des Zigbee-Adapters hier Abhilfe bringt wage allerdings zu bezweifeln. Das eigentliche Problem dürfte woanders sein. Ich kann meinen ioBroker beliebig oft herunter und wieder hoch fahren ohne das ich Probleme mit der Zigbee-Instanz habe. Ich erzwinge allerdings zwischen Start und Stop auch immer mindestens 2 Minuten Wartezeit.
Du kannst versuchen den Adapter via Blockly neu zu starten, musst aber dabei auf jeden Fall eine Wartezeit von mindestens 5 Minuten einprogrammieren.
Warum 5 Minuten ?
Es gibt 3 Fälle, ausgehend davon das der Adapter versucht zu starten - das Zigbee-Netzwerk kommt aber nicht sauber hoch.
Fall1: Du beendest den Adapter während das noch läuft. In diesem Fall kann es sein das der interne Timeout mit dem der Adapter versucht das Zigbee-Netzwerk aufbaut nicht beendet. Dieser Timeout kann bis zu 120 sekunden nachlaufen. Wenn der Adapter wirklich nicht durchstartet dann würden 120 s Wartezeit reichen.
Fall2: Du beendest den Adapter während das noch läuft. In diesem Fall kann es sein das der interne Timeout mit dem der Adapter versucht das Zigbee-Netzwerk aufbaut nicht beendet. Dieser Timeout kann bis zu 120 sekunden nachlaufen. Wenn das Zigbee-Netzwerk in der Zwischenzeit hoch gekommen ist wird es sofort wieder geschlossen. Dieses kann bis zu 180 sekunden dauern (je nach Anbindung des Koordinators). In diesem Fall brauchst du Wirklich die 300 s Wartezeit
Fall 3: Du startest den Adapter nachdem er erkannt hat das das Zigbee-Netzwerk nicht starten kann, und beendest ihn genau in der Lücke wo der Adapter wartet bis er es wieder Versucht das Zigbee-Netzwerk zu starten. Nur dann bist du sauber - der Adapter kann gestoppt und sofort neu gestartet werden.A.
-
@Asgothian
Der Datenpunkt zigbee.0.info.connection entspricht auf dem Bild "Verbunden mit Host".
Das ist bei mir aber grün, auch wenn der Adapter auf gelb ist.
Der Punkt "Verbunden mit Gerät oder Dienst" ist dann auf rot bzw. die Ursache, warum der Adapter auf gelb ist.Bisher war es immer so, dass ich einfach nur einmal neu starten musste und es dann direkt funktioniert hat.
Unter zigbee.0.info ist folgender Fehler gespeichert, vermutlich ist das die Ursache: Error: Starting zigbee-herdsman problem : "Error Resource temporarily unavailable Cannot lock port". undefinedDas mit der Wartezeit kann ich ja so einbauen.
Problem ist halt nur wie kann ich automatisiert erkennen, dass der Adapter gelb ist bzw. "Verbunden mit Gerät oder Dienst" fehlgeschlagen ist?@Meister-Mopper : Backitup nutze ich auch. Aber jede Woche wird über Proxmox 1x der komplette IoBroker LXC ein Backup gemacht.
Hat den Vorteil, dass wenn was nicht funktioniert ich mit 2 Klicks alles easy und schnell wiederherstellen kann. -
@atifan sagte in Adapter über Blockly starten/stoppen:
Unter zigbee.0.info ist folgender Fehler gespeichert, vermutlich ist das die Ursache: Error: Starting zigbee-herdsman problem : "Error Resource temporarily unavailable Cannot lock port". undefined
Ich bin fast sicher das das nur ein Folgefehler ist. Früher im Log gibt es sicherlich noch andere Fehlermeldungen die den Grund angeben warum der Adapter nicht startet. Das was bei zigbee.0.info steht ist immer nur die letzte Meldung.
Ansonsten beendest Du den Adapter (bzw. den ioBroker) unsauber.A.
-
@atifan sagte in Adapter über Blockly starten/stoppen:
Aber jede Woche wird über Proxmox 1x der komplette IoBroker LXC ein Backup gemacht.
Das kannst du aber auch über den snapshot-Modus bewerkstelligen, da wird der lxc nicht gestoppt.
Ja, ich weiß, dass der stop-Modus eine sichere Variante ist, aber ich kann seit Jahren alle Backups mit snapshot-Modus fehlerfrei wiederherstellen.
-
@asgothian Naja Iobroker wird wahrscheinlich unsauber gestoppt, weil Proxmox den LXC einfach runterfährt.
@Meister-Mopper : Ja wäre ne Möglichkeit den über Snapshot statt Stopmodus. Werde das mal so einstellen.