Développer un plugin pour les CPL devolo

Version beta publiée.

Les buts de cette première version sont

  1. Valider la détection automatique des appareils. Je suis surtout intéresser par les cas des appareils qui ne se trouvent pas dans le même Vlan (ou subnet) que le serveur Jeedom.
  2. Voir si des types d’appareils doivent être ajoutés et si les image sont correctes.
  3. Valider la fonctionnement du démon.

Attention si vous partager des fichiers de log, Les password des appareils peuvent y figurer en clair. Ceci sera corriger dans une version future.

NICKEL !!! C’est vraiment un bon debut

J’ai 2 reseaux :
1 reseau avec des MAGIC 1 : aucun souci de synchros
Les 5 devolos sont remontés tout seul !
image

1 reseau avec des Dlan550 wifi (compatibles) et Dlan1200 (non compatibles à priori)
Par contre, là, ca ne marche pas, aucune synchro

[2023-02-07 20:29:06][INFO][devolo_cpl     ] : ==================== START ====================
[2023-02-07 20:29:06][DEBUG][devolo_cpl     ] : action: syncDevolo
[2023-02-07 20:29:06][DEBUG][selector_events] : Using selector: EpollSelector
[2023-02-07 20:29:09][DEBUG][selector_events] : Using selector: EpollSelector
[2023-02-07 20:29:09][DEBUG][device         ] : Browsing for _dvl-deviceapi._tcp.local.
[2023-02-07 20:29:09][DEBUG][device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-07 20:29:09][DEBUG][device         ] : Updating service info of _dvl-deviceapi._tcp.local. for devolo-chambre.local.
[2023-02-07 20:29:09][WARNING][_logger        ] : Error with socket 7 (('127.0.0.1', 5353))): [Errno 22] Invalid argument
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/selector_events.py", line 1056, in sendto
self._sock.sendto(data, addr)
OSError: [Errno 22] Invalid argument
[2023-02-07 20:29:09][DEBUG][device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for devolo-chambre.local.
[2023-02-07 20:29:09][WARNING][devolo_cpl     ] : {'ip': '192.168.9.6', 'mac': 'B8BEF4449497', 'mt_number': '2733', 'product': 'dLAN 550 WiFi', 'technology': 'hpav', 'serial_number': '1907104520000693', 'device': <devolo_plc_api.device_api.deviceapi.DeviceApi object at 0x7f7cfe07c0>, 'plcnet': <devolo_plc_api.plcnet_api.plcnetapi.PlcNetApi object at 0x7f7e031e80>, '_browser': {'_dvl-deviceapi._tcp.local.': <zeroconf.asyncio.AsyncServiceBrowser object at 0x7f7e031cd0>, '_dvl-plcnetapi._tcp.local.': <zeroconf.asyncio.AsyncServiceBrowser object at 0x7f7cfe0730>}, '_connected': True, '_info': {'_dvl-plcnetapi._tcp.local.': ZeroconfServiceInfo(address=b'\xc0\xa8	\x06', port=47219, hostname='devolo-chambre.local.', properties={'Path': 'c23870c089f7f8aa/plcnetapi', 'Version': 'v0', 'PlcMacAddress': 'B8BEF4449497', 'PlcTechnology': 'hpav'}), '_dvl-deviceapi._tcp.local.': ZeroconfServiceInfo(address=b'\xc0\xa8	\x06', port=14791, hostname='devolo-chambre.local.', properties={'Path': '4dfa4c337c4110d6/deviceapi', 'Version': 'v0', 'Product': 'dLAN 550 WiFi', 'Features': 'reset,update,led,intmtg,notch,wifi1', 'MT': '2733', 'SN': '1907104520000693', 'FirmwareVersion': '5.8.5', 'FirmwareDate': '2021-10-08', 'PS': ''})}, '_logger': <Logger devolo_plc_api.device.Device (DEBUG)>, '_multicast': False, '_password': '', '_session_instance': None, '_zeroconf_instance': <zeroconf._core.Zeroconf object at 0x7f7e0229d0>, '_session': <httpx.AsyncClient object at 0x7f7e031c10>, '_zeroconf': <zeroconf.asyncio.AsyncZeroconf object at 0x7f7f5c1280>}
[2023-02-07 20:29:09][DEBUG][selector_events] : Using selector: EpollSelector
[2023-02-07 20:29:09][DEBUG][plcnetapi      ] : Getting network overview.
[2023-02-07 20:29:09][DEBUG][protobuf       ] : Getting from http://192.168.9.6:47219/c23870c089f7f8aa/plcnetapi/v0/GetNetworkOverview
[2023-02-07 20:29:09][DEBUG][_client        ] : HTTP Request: GET http://192.168.9.6:47219/c23870c089f7f8aa/plcnetapi/v0/GetNetworkOverview "HTTP/1.1 200 OK"
[2023-02-07 20:29:09][DEBUG][selector_events] : Using selector: EpollSelector
Traceback (most recent call last):
File "/var/www/html/plugins/devolo_cpl/resources/bin/devolo_cpl.py", line 155, in <module>
syncDevolo()
File "/var/www/html/plugins/devolo_cpl/resources/bin/devolo_cpl.py", line 95, in syncDevolo
discovered_devices[serial].disconnect()
File "/usr/local/lib/python3.9/dist-packages/devolo_plc_api/device.py", line 144, in disconnect
asyncio.run(self.async_disconnect())
File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
return loop.run_until_complete(main)
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/usr/local/lib/python3.9/dist-packages/devolo_plc_api/device.py", line 139, in async_disconnect
await self._session.aclose()
File "/usr/local/lib/python3.9/dist-packages/httpx/_client.py", line 1974, in aclose
await self._transport.aclose()
File "/usr/local/lib/python3.9/dist-packages/httpx/_transports/default.py", line 365, in aclose
await self._pool.aclose()
File "/usr/local/lib/python3.9/dist-packages/httpcore/_async/connection_pool.py", line 305, in aclose
await connection.aclose()
File "/usr/local/lib/python3.9/dist-packages/httpcore/_async/connection.py", line 159, in aclose
await self._connection.aclose()
File "/usr/local/lib/python3.9/dist-packages/httpcore/_async/http11.py", line 232, in aclose
await self._network_stream.aclose()
File "/usr/local/lib/python3.9/dist-packages/httpcore/backends/asyncio.py", line 54, in aclose
await self._stream.aclose()
File "/usr/local/lib/python3.9/dist-packages/anyio/_backends/_asyncio.py", line 1323, in aclose
self._transport.close()
File "/usr/lib/python3.9/asyncio/selector_events.py", line 700, in close
self._loop.call_soon(self._call_connection_lost, None)
File "/usr/lib/python3.9/asyncio/base_events.py", line 746, in call_soon
self._check_closed()
File "/usr/lib/python3.9/asyncio/base_events.py", line 510, in _check_closed
raise RuntimeError('Event loop is closed')
RuntimeError: Event loop is closed
[2023-02-07 20:29:09][INFO][devolo_cpl     ] : ===================== END =====================
[2023-02-07 20:29:10][WARNING][device         ] : Please disconnect properly from the device.

Il semble bien me trouver le 1er equipement : 192.168.9.6 mais plante après

les données remontées sont bien correctes par contre, mais donc aucun equipement n’est créé

[2023-02-07 20:29:09][WARNING][devolo_cpl     ] : {'ip': '192.168.9.6', 'mac': 'B8BEF4449497', 'mt_number': '2733', 'product': 'dLAN 550 WiFi', 'technology': 'hpav', 'serial_number': '1907104520000693', 'device': <devolo_plc_api.device_api.deviceapi.DeviceApi object at 0x7f7cfe07c0>, 'plcnet': <devolo_plc_api.plcnet_api.plcnetapi.PlcNetApi object at 0x7f7e031e80>, '_browser': {'_dvl-deviceapi._tcp.local.': <zeroconf.asyncio.AsyncServiceBrowser object at 0x7f7e031cd0>, '_dvl-plcnetapi._tcp.local.': <zeroconf.asyncio.AsyncServiceBrowser object at 0x7f7cfe0730>}, '_connected': True, '_info': {'_dvl-plcnetapi._tcp.local.': ZeroconfServiceInfo(address=b'\xc0\xa8	\x06', port=47219, hostname='devolo-chambre.local.', properties={'Path': 'c23870c089f7f8aa/plcnetapi', 'Version': 'v0', 'PlcMacAddress': 'B8BEF4449497', 'PlcTechnology': 'hpav'}), '_dvl-deviceapi._tcp.local.': ZeroconfServiceInfo(address=b'\xc0\xa8	\x06', port=14791, hostname='devolo-chambre.local.', properties={'Path': '4dfa4c337c4110d6/deviceapi', 'Version': 'v0', 'Product': 'dLAN 550 WiFi', 'Features': 'reset,update,led,intmtg,notch,wifi1', 'MT': '2733', 'SN': '1907104520000693', 'FirmwareVersion': '5.8.5', 'FirmwareDate': '2021-10-08', 'PS': ''})}, '_logger': <Logger devolo_plc_api.device.Device (DEBUG)>, '_multicast': False, '_password': '', '_session_instance': None, '_zeroconf_instance': <zeroconf._core.Zeroconf object at 0x7f7e0229d0>, '_session': <httpx.AsyncClient object at 0x7f7e031c10>, '_zeroconf': <zeroconf.asyncio.AsyncZeroconf object at 0x7f7f5c1280>}

EDIT : Si on crée les CPL à la mano (Nom/@IP/num série), leur contrôle (limité à la désactivation des leds aujourd’hui) fonctionne parfaitement. Ce n’est donc que l’autodiscover qui ne semble pal fonctionner

Norbert

Dans les paramétrages, dans le choix du pays, impossible d’enregistrer « france », ca bascule sur Begique systematiquement
Par contre, si on choisit suisse, c’est bien conserver !
(d’ici à m’imaginer que les suisses et les belges veulent se partager la france :thinking:)

D’ailleurs, à quoi sert le pays ?

Je pense savoir pourquoi:
En interne, j’ai le code hpour la Suisse et fr` pour la Belgique et la france qui ont le même type de prise. Je vais corriger ça dans le prochaine release…

Merci pour l’info.

Je vais analyser les logs et te contacterai probablement pour des tests car je n’ai plus de DLan550 et DLan1200.

Mais je ne pourrai pas le faire ce soir…

Pas de souci,
Si jamais tu as besoin de te connecter pour faire quelques tests, aucun souci
Norbert

Hello, tu peux installer une Python 3.8 en altinstall et utiliser un virtualenv.

Je le faisais là pour 3.7 :

J’ai laissé tombé ensuite et bloqué avant debian 10 pour finir (besoin de la 3.7 seulement), mais ça fonctionnait.

Non merci :slight_smile:

Nouvelle beta disponible avec sélection du pays fonctionnelle…

Oui, mais ça me parait un peu lourd alors qu’il n’y a que deux lignes à modifier dans le module pour être compatible python 3.7.

Je retiens la suggestion si le portage en version compatible python 3.7 devait s’avérer plus compliqué avec une version future du module.

1 « J'aime »

J’ai publié une nouvelle version.

Il est possible que la découverte des appareils fonctionne un peu mieux mais le but est surtout de récupérer des messages d’erreurs qui me permettrons probablement de mieux cerner la cause du problème.

Je te laisse donc refaire une tentative avec cette version et me transmettre le log quelque soit le résultat.

La decouverte marche nickel pour la gamme DLan.
Quelques erreurs dans les logs que je te laisse analyser :

[2023-02-08 07:54:03]INFO[devolo_cpl     ] : ==================== START ====================
[2023-02-08 07:54:03]DEBUG[devolo_cpl     ] : action: syncDevolo
[2023-02-08 07:54:03]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:54:06]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:54:06]DEBUG[device         ] : Browsing for _dvl-deviceapi._tcp.local.
[2023-02-08 07:54:06]DEBUG[device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-08 07:54:06]DEBUG[device         ] : Updating service info of _dvl-deviceapi._tcp.local. for devolo-chambre.local.
[2023-02-08 07:54:06]WARNING[_logger        ] : Error with socket 5 (('127.0.0.1', 5353))): [Errno 22] Invalid argument
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/selector_events.py", line 1056, in sendto
self._sock.sendto(data, addr)
OSError: [Errno 22] Invalid argument
[2023-02-08 07:54:06]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for devolo-chambre.local.
[2023-02-08 07:54:06]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:54:06]DEBUG[plcnetapi      ] : Getting network overview.
[2023-02-08 07:54:06]DEBUG[protobuf       ] : Getting from http://192.168.9.6:47219/c23870c089f7f8aa/plcnetapi/v0/GetNetworkOverview
[2023-02-08 07:54:06]DEBUG[_client        ] : HTTP Request: GET http://192.168.9.6:47219/c23870c089f7f8aa/plcnetapi/v0/GetNetworkOverview "HTTP/1.1 200 OK"
[2023-02-08 07:54:06]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:54:06]ERROR[devolo_cpl     ] : ++++++++++++++++++++++++++++++++++++++
[2023-02-08 07:54:06]ERROR[devolo_cpl     ] : Error disconnecting from device: Event loop is closed
[2023-02-08 07:54:06]ERROR[devolo_cpl     ] : --------------------------------------
[2023-02-08 07:54:06]ERROR[devolo_cpl     ] : RuntimeError
[2023-02-08 07:54:06]ERROR[devolo_cpl     ] : --------------------------------------
[2023-02-08 07:54:06]ERROR[devolo_cpl     ] : Event loop is closed
[2023-02-08 07:54:06]ERROR[devolo_cpl     ] : ++++++++++++++++++++++++++++++++++++++
[2023-02-08 07:54:06]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:54:06]DEBUG[device         ] : Browsing for _dvl-deviceapi._tcp.local.
[2023-02-08 07:54:06]DEBUG[device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-08 07:54:06]DEBUG[device         ] : Updating service info of _dvl-deviceapi._tcp.local. for devolo-hall.local.
[2023-02-08 07:54:06]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for devolo-hall.local.
[2023-02-08 07:54:06]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:54:06]DEBUG[plcnetapi      ] : Getting network overview.
[2023-02-08 07:54:06]DEBUG[protobuf       ] : Getting from http://192.168.9.5:47219/2472449be5eb15ff/plcnetapi/v0/GetNetworkOverview
[2023-02-08 07:54:07]DEBUG[_client        ] : HTTP Request: GET http://192.168.9.5:47219/2472449be5eb15ff/plcnetapi/v0/GetNetworkOverview "HTTP/1.1 200 OK"
[2023-02-08 07:54:07]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:54:07]ERROR[devolo_cpl     ] : ++++++++++++++++++++++++++++++++++++++
[2023-02-08 07:54:07]ERROR[devolo_cpl     ] : Error disconnecting from device: Event loop is closed
[2023-02-08 07:54:07]ERROR[devolo_cpl     ] : --------------------------------------
[2023-02-08 07:54:07]ERROR[devolo_cpl     ] : RuntimeError
[2023-02-08 07:54:07]ERROR[devolo_cpl     ] : --------------------------------------
[2023-02-08 07:54:07]ERROR[devolo_cpl     ] : Event loop is closed
[2023-02-08 07:54:07]ERROR[devolo_cpl     ] : ++++++++++++++++++++++++++++++++++++++
[2023-02-08 07:54:07]INFO[devolo_cpl     ] : ===================== END =====================
[2023-02-08 07:54:07]WARNING[device         ] : Please disconnect properly from the device.
[2023-02-08 07:54:07]WARNING[device         ] : Please disconnect properly from the device.

et la france est sauvée de l’invasion suisse et belge :sweat_smile:

A toute fin utile, les log sur un reseau magic 1 :
(pas d’erreurs sauf celle du tout debut Error with socket

[2023-02-08 07:58:56]INFO[devolo_cpl     ] : ==================== START ====================
[2023-02-08 07:58:56]DEBUG[devolo_cpl     ] : action: syncDevolo
[2023-02-08 07:58:56]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:58:59]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:58:59]DEBUG[device         ] : Browsing for _dvl-deviceapi._tcp.local.
[2023-02-08 07:58:59]DEBUG[device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-08 07:58:59]DEBUG[device         ] : Updating service info of _dvl-deviceapi._tcp.local. for box.local.
[2023-02-08 07:58:59]WARNING[_logger        ] : Error with socket 6 (('127.0.0.1', 5353))): [Errno 22] Invalid argument
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/selector_events.py", line 1056, in sendto
self._sock.sendto(data, addr)
OSError: [Errno 22] Invalid argument
[2023-02-08 07:59:02]DEBUG[device         ] : Having trouble getting _dvl-plcnetapi._tcp.local. via unicast messages. Switching to multicast for this device.
[2023-02-08 07:59:02]DEBUG[device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-08 07:59:02]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for box.local.
[2023-02-08 07:59:02]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for box.local.
[2023-02-08 07:59:02]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for box.local.
[2023-02-08 07:59:02]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for box.local.
[2023-02-08 07:59:02]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:02]DEBUG[plcnetapi      ] : Getting network overview.
[2023-02-08 07:59:02]DEBUG[protobuf       ] : Getting from http://192.168.8.204:14791/hVrtvmMr1L3tnpJV/plcnetapi/v0/GetNetworkOverview
[2023-02-08 07:59:03]DEBUG[_client        ] : HTTP Request: GET http://192.168.8.204:14791/hVrtvmMr1L3tnpJV/plcnetapi/v0/GetNetworkOverview "HTTP/1.1 200 OK"
[2023-02-08 07:59:03]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:03]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:03]DEBUG[device         ] : Browsing for _dvl-deviceapi._tcp.local.
[2023-02-08 07:59:03]DEBUG[device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-08 07:59:03]DEBUG[device         ] : Updating service info of _dvl-deviceapi._tcp.local. for piscine.local.
[2023-02-08 07:59:03]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for piscine.local.
[2023-02-08 07:59:03]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:03]DEBUG[plcnetapi      ] : Getting network overview.
[2023-02-08 07:59:03]DEBUG[protobuf       ] : Getting from http://192.168.8.201:14791/2db75771b6e13421/plcnetapi/v0/GetNetworkOverview
[2023-02-08 07:59:04]DEBUG[_client        ] : HTTP Request: GET http://192.168.8.201:14791/2db75771b6e13421/plcnetapi/v0/GetNetworkOverview "HTTP/1.1 200 OK"
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[device         ] : Browsing for _dvl-deviceapi._tcp.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Updating service info of _dvl-deviceapi._tcp.local. for cuisine.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for cuisine.local.
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[plcnetapi      ] : Getting network overview.
[2023-02-08 07:59:04]DEBUG[protobuf       ] : Getting from http://192.168.8.202:14791/f9eb1af03851623c/plcnetapi/v0/GetNetworkOverview
[2023-02-08 07:59:04]DEBUG[_client        ] : HTTP Request: GET http://192.168.8.202:14791/f9eb1af03851623c/plcnetapi/v0/GetNetworkOverview "HTTP/1.1 200 OK"
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[device         ] : Browsing for _dvl-deviceapi._tcp.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Updating service info of _dvl-deviceapi._tcp.local. for billard.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for billard.local.
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[plcnetapi      ] : Getting network overview.
[2023-02-08 07:59:04]DEBUG[protobuf       ] : Getting from http://192.168.8.203:14791/a96cd53c6c52856d/plcnetapi/v0/GetNetworkOverview
[2023-02-08 07:59:04]DEBUG[_client        ] : HTTP Request: GET http://192.168.8.203:14791/a96cd53c6c52856d/plcnetapi/v0/GetNetworkOverview "HTTP/1.1 200 OK"
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[device         ] : Browsing for _dvl-deviceapi._tcp.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Browsing for _dvl-plcnetapi._tcp.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Updating service info of _dvl-deviceapi._tcp.local. for tv.local.
[2023-02-08 07:59:04]DEBUG[device         ] : Updating service info of _dvl-plcnetapi._tcp.local. for tv.local.
[2023-02-08 07:59:04]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:04]DEBUG[plcnetapi      ] : Getting network overview.
[2023-02-08 07:59:04]DEBUG[protobuf       ] : Getting from http://192.168.8.206:14791/4d9b9cbdbfb6b383/plcnetapi/v0/GetNetworkOverview
[2023-02-08 07:59:05]DEBUG[_client        ] : HTTP Request: GET http://192.168.8.206:14791/4d9b9cbdbfb6b383/plcnetapi/v0/GetNetworkOverview "HTTP/1.1 200 OK"
[2023-02-08 07:59:05]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 07:59:05]INFO[devolo_cpl     ] : ===================== END =====================

Norbert

1 « J'aime »

Bonjour,

Moi j’ai des DLAN 1200+ et rien ne remonte en automatique

[2023-02-08 09:38:06]INFO[devolo_cpld    ] : Start demond
[2023-02-08 09:38:06]INFO[devolo_cpld    ] : Log level : debug
[2023-02-08 09:38:06]INFO[devolo_cpld    ] : Socket port : 34741
[2023-02-08 09:38:06]INFO[devolo_cpld    ] : Socket host : localhost
[2023-02-08 09:38:06]INFO[devolo_cpld    ] : PID file : /tmp/jeedom/devolo_cpl/deamon.pid
[2023-02-08 09:38:06]INFO[devolo_cpld    ] : Apikey : JGQHcHEGuH9cDvZeF6PxSKq7cZsrBhMVhveXD7S0C7TG97Jksie7RRdDnYRexW8V
[2023-02-08 09:38:06]INFO[devolo_cpld    ] : Callback : http://127.0.0.1:80/plugins/devolo_cpl/core/php/jeedevolo_cpl.php
[2023-02-08 09:38:06]INFO[jeedom         ] : Writing PID 14205 to /tmp/jeedom/devolo_cpl/deamon.pid
[2023-02-08 09:38:06]INFO[jeedom         ] : Init request module v2.28.1
[2023-02-08 09:38:06]DEBUG[connectionpool ] : Starting new HTTP connection (1): 127.0.0.1:80
[2023-02-08 09:38:06]DEBUG[connectionpool ] : http://127.0.0.1:80 "GET /plugins/devolo_cpl/core/php/jeedevolo_cpl.php?apikey=JxxxxxxxxxxxxxxxxxxDvZeF6PxSKq7cZsrBhMVhveXD7S0C7TG97Jksie7RRdDnYRexW8V HTTP/1.1" 200 0
[2023-02-08 09:38:06]INFO[jeedom         ] : Socket interface started
[2023-02-08 09:38:06]INFO[jeedom         ] : LoopNetServer Thread started
[2023-02-08 09:38:06]INFO[jeedom         ] : Listening on: [localhost:34741]
[2023-02-08 09:48:13]INFO[devolo_cpl     ] : ==================== START ====================
[2023-02-08 09:48:13]DEBUG[devolo_cpl     ] : action: syncDevolo
[2023-02-08 09:48:13]DEBUG[selector_events] : Using selector: EpollSelector
[2023-02-08 09:48:16]INFO[devolo_cpl     ] : ===================== END =====================

Dans la saisie manuelle, on demande l’adresse IP. Je n’en vois pas pour les modeles non wifi.
J’ai raté quelque chose?
Merci

Bonjour @patrice_payen

Oui, la liste des compatibilités de l’API utilisée :GitHub - 2Fake/devolo_plc_api: devolo PLC device API in Python :wink:
En fait, les 1200+, si elles ne sont pas WIFI, ne sont pas sur le réseau (pas d’adresse IP). Donc si tu n’as que ca, il n’y aura pas de solution miracle.
La seule solution sera, mais la, je laisse @ktn étudier le truc, si on a au moins 1 CPL compatible, extraire la liste des DEVOLO voisins et remonter les quelques infos dispo, mais ca sera très limit (cf 1er poste avec une extraction des devolos voisins en ne requetant qu’une seule prise)
Ce que je n’arrive pas à comprendre de mon coté, c’est comme l’outil devolo cockpit arrive à joindre ces équipements sans qu’ils n 'aient d’adresse ip ! :thinking:

Norbert

Hello,
Je ne me souviens plus très bien comment c’est pour les DL550 et DL1220 car je n’en ai plus. Avec les Magic, il y a la possibilité d’ouvrir une interface WEB depuis l’app Devolo pour gérer les config de l’appareil.

Est-ce que tu as cette possibilité avec tes DL550? Si oui, ouvre l’interface WEB et regarde l’adreese IP qui est dans l’URL de la page ouverte.

Si ça fonctionne. Envoie moi quelques images d’écran que je pourrai utiliser dans la DOC du plugin.

Les DLan (550 ou 1200) n’ont pas d’interface web. Seules celles qui ont l’option wifi en ont une en fait, d’ou la limitation.
Sur la gamme Magic, ce n’est plus le cas puisque même si les CPL n’ont pas de Wifi, elles ont quand même une interface WEB de management

Pour ma part, su rmon reseau DLAN, j’ai 2 550 WIFI et 1200+, les 2 1200+ ne sont pas vues, ce qui me parait normal. Mais elle seront dans les DEVOLO voisins des 550 WIFI

Je suppose donc qu’il n’est pas possible de configurer grand chose sur ces appareil via Devolo cockpit et que le plugin ne pourra pas faire plus.

Je vais laisser ce point en attente pour le moment et le reprendrai lorsque j’attaquerai les fonctionnalité de voisinnage car j’aurrai besoin d’un minimum d’infos (qui seront probablement recueillies indirectement) pour les tableau des vitesse de communication que je prévois de créer.

Non, c’est très très limité. Je te ferai un screenshot de ce qui est configurable dès que je rentre chez moi

1 « J'aime »

L’erreur Error with socket du début est systématique. Il qu’il y a une tentative de contacter le serveur local (Jeedom) pour une découverte.

Je n’ai pas encore regardé s’il y a une possibilité de l’éviter ou s’il faut simplement que je trouve une manière de supprimer le warning. Pour le moment, il me semble que c’est surtout cosmétique. Il faudra au minimum que je mette une infos à ce sujet dans la doc en attendant de le traiter correctement.

Merci pour les logs. L’erreur est maintenant interceptée avant qu’elle ne provoque un crash de script. Il faudrait que je teste si l’appareil est toujours connecté avent de faire un disconnect.

Hello,

Est-ce que les appareils DL550 et DL1200 sans Wifi, donc sans interface WEB de management, ont une adresse MAC?