Bonjour @Lunarok,
Je fais suite au message de @ds5 ici car mon KLF est aussi parfois capricieux.
Ci dessous les logs et le détail de ce qu’il s’est passé ce matin.
- Première Demande d’ouverture => KO
- Deuxième Demande d’ouverture => KO
- Redémarrage du daemon => OK mais la connection avec le KLF ne semble pas s’établir
- Troisième Demande d’ouverture => KO
- Redémarrage électrique du KLF
- Quatrième Demande d’ouverture => KO
- Redémarrage du daemon => OK
- Cinquième Demande d’ouverture =| OK
Je précise que le KLF était bien toujours joignable au niveau réseau.
[2020-01-25 09:34:17][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:34:17][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:34:17][DEBUG] : Update ChambreVolet at 99%
################################################### Première Demande d'ouverture ###################################################
[2020-01-25 09:34:31][DEBUG] : Action /set/0/0
[2020-01-25 09:34:31][DEBUG] : Send http://localhost:9123/set/0/0
Connecting to KLF 200.
Connecting to KLF 200.
Connecting to KLF 200.
[2020-01-25 09:34:56][DEBUG] : Result
[2020-01-25 09:35:18][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:35:18][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:35:18][DEBUG] : Update ChambreVolet at 99%
[2020-01-25 09:36:17][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:36:17][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:36:17][DEBUG] : Update ChambreVolet at 99%
[2020-01-25 09:37:17][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:37:17][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:37:17][DEBUG] : Update ChambreVolet at 99%
[2020-01-25 09:38:17][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:38:17][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:38:17][DEBUG] : Update ChambreVolet at 99%
[2020-01-25 09:39:16][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:39:16][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:39:16][DEBUG] : Update ChambreVolet at 99%
[2020-01-25 09:40:18][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:40:18][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:40:18][DEBUG] : Update ChambreVolet at 99%
[2020-01-25 09:41:17][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:41:17][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:41:17][DEBUG] : Update ChambreVolet at 99%
################################################### Deuxième Demande d'ouverture ###################################################
[2020-01-25 09:41:29][DEBUG] : Action /set/0/0
[2020-01-25 09:41:29][DEBUG] : Send http://localhost:9123/set/0/0
Connecting to KLF 200.
Connecting to KLF 200.
Connecting to KLF 200.
[2020-01-25 09:41:54][DEBUG] : Result
[2020-01-25 09:42:16][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:42:16][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
[2020-01-25 09:42:16][DEBUG] : Update ChambreVolet at 99%
[2020-01-25 09:42:40][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:42:40][DEBUG] : Result {"devices": [{"type": "RollerShutter", "name": "ChambreVolet", "id": 0, "position": 99}], "result": "ok"}
################################################### Redémarrage du daemon ###################################################
======== Running on http://localhost:9123 ========
(Press CTRL+C to quit)
[2020-01-25 09:42:40][INFO] : Arrêt du service klf200
Task exception was never retrieved
future: <Task finished coro=<Heartbeat.loop() done, defined at /usr/local/lib/python3.5/dist-packages/pyvlx/heartbeat.py:37> exception=PyVLXException('Unable to send get state.',)>
Traceback (most recent call last):
File "/usr/lib/python3.5/asyncio/tasks.py", line 239, in _step
result = coro.send(None)
File "/usr/local/lib/python3.5/dist-packages/pyvlx/heartbeat.py", line 45, in loop
await self.pulse()
File "/usr/local/lib/python3.5/dist-packages/pyvlx/heartbeat.py", line 64, in pulse
raise PyVLXException("Unable to send get state.")
pyvlx.exception.PyVLXException: <PyVLXException description="Unable to send get state." />
[2020-01-25 09:42:41][INFO] : Arrêt du service klf200
[2020-01-25 09:42:41][INFO] : Lancement démon klf200 : /usr/bin/python3 /var/www/html/plugins/klf200/resources/klf200d.py 192.168.0.200 pqc4aKnpSf
Connecting to KLF 200.
[2020-01-25 09:43:17][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:43:18][DEBUG] : Result
################################################### Troisième Demande d'ouverture ###################################################
[2020-01-25 09:43:23][DEBUG] : Action /set/0/0
[2020-01-25 09:43:23][DEBUG] : Send http://localhost:9123/set/0/0
[2020-01-25 09:43:24][DEBUG] : Result
Connecting to KLF 200.
[2020-01-25 09:44:18][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:44:19][DEBUG] : Result
[2020-01-25 09:45:18][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:45:19][DEBUG] : Result
################################################### Redémarrage électrique du KLF et quatrième Demande d'ouverture ###################################################
[2020-01-25 09:45:21][DEBUG] : Action /set/0/0
[2020-01-25 09:45:21][DEBUG] : Send http://localhost:9123/set/0/0
[2020-01-25 09:45:22][DEBUG] : Result
[2020-01-25 09:45:58][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:45:58][INFO] : Arrêt du service klf200
[2020-01-25 09:45:59][DEBUG] : Result
################################################### Redémarrage du daemon ###################################################
[2020-01-25 09:46:00][INFO] : Arrêt du service klf200
[2020-01-25 09:46:00][INFO] : Lancement démon klf200 : /usr/bin/python3 /var/www/html/plugins/klf200/resources/klf200d.py ##IP_KLF## ##Password_KLF##
Connecting to KLF 200.
Connected to: KLF 200: Software version: 0.2.0.0.71.0, hardware version: 6, protocol version: 3.14
[2020-01-25 09:46:17][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:46:17][DEBUG] : Result {"result": "ok", "devices": [{"name": "ChambreVolet", "id": 0, "type": "RollerShutter"}]}
[2020-01-25 09:46:17][DEBUG] : Update ChambreVolet at %
################################################### Cinquième Demande d'ouverture ###################################################
[2020-01-25 09:47:12][DEBUG] : Action /set/0/0
[2020-01-25 09:47:12][DEBUG] : Send http://localhost:9123/set/0/0
[2020-01-25 09:47:12][DEBUG] : Result {"result": "ok", "position": "UNKNOWN", "device": 0}
[2020-01-25 09:47:16][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:47:16][DEBUG] : Result {"result": "ok", "devices": [{"name": "ChambreVolet", "id": 0, "position": 99, "type": "RollerShutter"}]}
[2020-01-25 09:47:16][DEBUG] : Update ChambreVolet at 99%
[2020-01-25 09:48:17][DEBUG] : Send http://localhost:9123/devices
[2020-01-25 09:48:17][DEBUG] : Result {"result": "ok", "devices": [{"name": "ChambreVolet", "id": 0, "position": 0, "type": "RollerShutter"}]}
[2020-01-25 09:48:17][DEBUG] : Update ChambreVolet at 0%
Je viens de voir qu’il y avait une mise à jour de disponible qui date du 16/01, je vais donc la faire de ce pas.
Celle ci détecte elle les erreurs de connexions dans le démon pour pouvoir agir en automatique dessus comme tu l’as évoqué dans les échanges avec @ds5 ?
Néanmoins, comme tu l’as évoqué, le redémarrage du daemon seul ne semble pas suffire. Il a fallu que je le redémarre électriquement puis redémarrer le daemon pour que cela fonctionne.
Y a t-il moyen de voir de plus prêt (en collectant des logs sur le KLF) ce qui ce passe côté KLF car le soucis semble venir du boitier ?
En attendant, y aurait-il moyen de détecter le problème afin d’éxécuter un scenario qui redémarrerait électriquement le KLF puis le daemon ? Le KLF étant toujours joignable au niveau réseau, on ne peut pas s’appuyer la dessus pour lancer le scenario …
Sinon, je vais planifié ce reboot et redémarrage du daemon de façon régulière mais bon …
Merci