gce-electronics / HA_RFPlayer

RFPlayer plugin for Home assistant
Apache License 2.0
27 stars 9 forks source link

Impossible d'enregistrer une entité automatiquement #2

Closed Czara closed 2 years ago

Czara commented 2 years ago

Bonjour,

Tout d'abord merci pour cette intégration, enfin je peux utiliser mon RFPlayer dans HA, merci !!

J'ai pu ajouter une entité, elle s'est ajoutée automatiquement et permet de commander un de mes volets qui utilise un module DIO. Mais lorsque j'ai voulu en ajouter un deuxième, mon volet à bien enregistrer l'onde émise (elle est d'ailleurs réutilisable dans les services) mais l'entité ne s'est pas ajoutée. Si je teste en redémarrant HA, rien n'y fait. Voici de ce que j'ai dans les logs :

2022-01-23 13:33:00 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [140059664586880] Received {'type': 'execute_script', 'sequence': [{'service': 'rfplayer.send_command', 'data': {'command': 'ON', 'protocol': 'CHACON', 'device_address': 'A2', 'automatic_add': True, 'device_id': '54'}}], 'id': 25}
2022-01-23 13:33:00 INFO (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Running websocket_api script
2022-01-23 13:33:00 INFO (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Executing step call service
2022-01-23 13:33:00 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=rfplayer, service=send_command, service_data=command=ON, protocol=CHACON, device_address=A2, automatic_add=True, device_id=54>
2022-01-23 13:33:00 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'ON', 'protocol': 'CHACON', 'device_address': 'A2', 'automatic_add': True, 'device_id': '54'}
2022-01-23 13:33:00 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++ON CHACON ID 54\n\r'
2022-01-23 13:33:00 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'ON', 'protocol': 'CHACON', 'device_address': 'A2', 'automatic_add': True, 'device_id': '54'}
2022-01-23 13:33:00 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [140059499096144] Sending {"id": 31, "type": "event", "event": {"event_type": "call_service", "data": {"domain": "rfplayer", "service": "send_command", "service_data": {"command": "ON", "protocol": "CHACON", "device_address": "A2", "automatic_add": true, "device_id": "54"}}, "origin": "LOCAL", "time_fired": "2022-01-23T12:33:00.072184+00:00", "context": {"id": "fc2b02761cdacec2b0dff70ac4e06892", "parent_id": null, "user_id": "dfcfe65c3b2f4831aa9243182765855d"}}}
2022-01-23 13:33:00 ERROR (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'command'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 381, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 584, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1495, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1530, in _execute_service
    await handler.job.target(service_call)
  File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command
    await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
KeyError: 'command'
2022-01-23 13:33:00 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140059664586880] Error handling message: Unknown error
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response
    await func(hass, connection, msg)
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 527, in handle_execute_script
    await script_obj.async_run(msg.get("variables"), context=context)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1260, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 363, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 381, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 584, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1495, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1530, in _execute_service
    await handler.job.target(service_call)
  File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command
    await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
KeyError: 'command'

J'ai choisi A2 et 54 aléatoirement. Ma première commande, qui fonctionne, j'avais mis VSALLEG (mais je me suis rendu compte qu'il n'aimait pas les nom ou ID à rallonge.

Je peux faire d'autres tests s'il le faut.

Merci pour le travail accompli.

Christophe

Czara commented 2 years ago

Bonjour,

Des nouvelles ? Merci

Aohzan commented 2 years ago

Je n'arrive pas à reproduire, je me demande si lors du premier ajout il n'y aurait pas un soucis. Pour les ID/nom il faut utiliser ce qui est autorisé dans la doc https://raw.githubusercontent.com/gce-electronics/HA_RFPlayer/main/rfplayer_api_v1.8.pdf (page 13: A1 à P16). Est-ce que tu peux supprimer l'intégration, redémarrer et la remettre, et réessayer en mettant que des ID à la suite, A1, A2... ?

Czara commented 2 years ago

Bonjour,

Merci pour ce retour. Pour les ID ok, je vais respecter la doc par contre pour les Device Address, je peux (ou dois) mettre quoi ? Merci encore

Aohzan commented 2 years ago

C'est l'un ou l'autre en fait, mais autant faire que les ID

Czara commented 2 years ago

Bonjour,

Ah ben ok, c'est peut-être ça le problème alors. Je mettais les deux.

Voici mon premier retour après réinstallation de l'intégration (mais en utilisant les deux paramètres).

2022-02-06 17:53:03 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [139898878988592] Received {'type': 'execute_script', 'sequence': [{'service': 'rfplayer.send_command', 'data': {'command': 'OFF', 'protocol': 'CHACON', 'automatic_add': True, 'device_address': 'A2', 'device_id': 'A2'}}], 'id': 39}
2022-02-06 17:53:03 INFO (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Running websocket_api script
2022-02-06 17:53:03 INFO (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Executing step call service
2022-02-06 17:53:03 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=rfplayer, service=send_command, service_data=command=OFF, protocol=CHACON, automatic_add=True, device_address=A2, device_id=A2>
2022-02-06 17:53:03 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'OFF', 'protocol': 'CHACON', 'automatic_add': True, 'device_address': 'A2', 'device_id': 'A2'}
2022-02-06 17:53:03 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++OFF CHACON ID A2\n\r'
2022-02-06 17:53:03 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'OFF', 'protocol': 'CHACON', 'automatic_add': True, 'device_address': 'A2', 'device_id': 'A2'}
2022-02-06 17:53:03 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [139898883581120] Sending {"id": 46, "type": "event", "event": {"event_type": "call_service", "data": {"domain": "rfplayer", "service": "send_command", "service_data": {"command": "OFF", "protocol": "CHACON", "automatic_add": true, "device_address": "A2", "device_id": "A2"}}, "origin": "LOCAL", "time_fired": "2022-02-06T16:53:03.022728+00:00", "context": {"id": "ae39ef6253ad3c28743102994e420fbc", "parent_id": null, "user_id": "dfcfe65c3b2f4831aa9243182765855d"}}}
2022-02-06 17:53:03 ERROR (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'command'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command
    await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
KeyError: 'command'
2022-02-06 17:53:03 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [139898878988592] Error handling message: Unknown error
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response
    await func(hass, connection, msg)
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 534, in handle_execute_script
    await script_obj.async_run(msg.get("variables"), context=context)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1253, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 354, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command
    await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
KeyError: 'command'
2022-02-06 17:53:03 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [139898878988592] Sending {"id": 39, "type": "result", "success": false, "error": {"code": "unknown_error", "message": "Unknown error"}}
2022-02-06 17:53:03 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] received data: ZIA--
error request number=0
Syntax error: A2
2022-02-06 17:53:03 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] decoded packet: {'node': 'gateway', 'message': '\nerror request number=0\nSyntax error: A2\n\n'}
2022-02-06 17:53:03 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpparser] f:node,v:gateway
2022-02-06 17:53:03 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpparser] f:message,v:
error request number=0
Syntax error: A2

La séquence RF est envoyée, car mes volets ont réagis. La commande que tu vois là, c'est que j'ai supprimé le code A2 de mes deux volets.

Czara commented 2 years ago

Nouvelle tentative, après la suppression des codes A2, enregistrement d'un nouveau code : A1, en n'utilisant que le Device ID

2022-02-06 18:00:07 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [139898878988592] Received {'type': 'execute_script', 'sequence': [{'service': 'rfplayer.send_command', 'data': {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_id': 'A1'}}], 'id': 49}
2022-02-06 18:00:07 INFO (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Running websocket_api script
2022-02-06 18:00:07 INFO (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Executing step call service
2022-02-06 18:00:07 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=rfplayer, service=send_command, service_data=command=ON, protocol=CHACON, automatic_add=True, device_id=A1>
2022-02-06 18:00:07 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_id': 'A1'}
2022-02-06 18:00:07 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++ON CHACON ID A1\n\r'
2022-02-06 18:00:07 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_id': 'A1'}
2022-02-06 18:00:07 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [139898883581120] Sending {"id": 46, "type": "event", "event": {"event_type": "call_service", "data": {"domain": "rfplayer", "service": "send_command", "service_data": {"command": "ON", "protocol": "CHACON", "automatic_add": true, "device_id": "A1"}}, "origin": "LOCAL", "time_fired": "2022-02-06T17:00:07.040193+00:00", "context": {"id": "d2931015d76feaff97c345baedde6451", "parent_id": null, "user_id": "dfcfe65c3b2f4831aa9243182765855d"}}}
2022-02-06 18:00:07 ERROR (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'command'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command
    await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
KeyError: 'command'
2022-02-06 18:00:07 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [139898878988592] Error handling message: Unknown error
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response
    await func(hass, connection, msg)
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 534, in handle_execute_script
    await script_obj.async_run(msg.get("variables"), context=context)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1253, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 354, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command
    await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
KeyError: 'command'

Je me répète, mais le code a bien été envoyé au volet, si j'envoie le ON et le OFF, le volet réagit il l'a bien enregistré. Mais j'ai quand même une erreur en bas de la fenêtre à gauche, après lancement de la commande. Par contre, malgré le fait d'avoir coché la case "Create entity", je n'ai aucune entité qui se créait et je pense que le problème vient de là. ça n'a marché que la première fois.

prahal commented 2 years ago

@Czara You want to set only one of device adress or device id. Else only device_id is taken into account, with A1 on both: 2022-02-14 17:37:17 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=rfplayer, service=send_command, service_data=command=OFF, protocol=CHACON, automatic_add=False, device_address= A1, device_id=A1> 2022-02-14 17:37:17 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'OFF', 'protocol': 'CHACON', 'automatic_add': False, 'device_address': ' A1', 'device_id': 'A1'} 2022-02-14 17:37:17 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++OFF CHACON ID A1\n\r' 2022-02-14 17:37:17 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [281473072681888] Sending {"id": 38, "type": "result", "success": true, "result": {"context": {"id": "be29838dbc5fc7a2b93eba97936463ce", "parent_id": null, "user_id": "13509228443a4b73af86bb1caf37038f"}}} 2022-02-14 17:37:17 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] received data: ZIA-- error request number=0 Syntax error: A1 2022-02-14 17:37:17 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] decoded packet: {'node': 'gateway', 'message': '\nerror request number=0\nSyntax error: A1\n\n'} 2022-02-14 17:37:17 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpparser] f:node,v:gateway 2022-02-14 17:37:17 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpparser] f:message,v: error request number=0 Syntax error: A1

As shown abote, you ought not set A1 as device id. Here my rfplayer returns a syntax error if device id is not fully numeric. A1 is a pseudo X10 adress not device id.

I guess you have to deinstall and reinstall the integration to clean the mess.

Also could you show your firmware version: picocom -b 115200 /dev/ttyUSB0 then on the prompt, press ZIA++STATUS

And your home assistant version.

Cheers

Czara commented 2 years ago

Hello,

Thank you (ou merci, j'ai vu que tu étais français 👍 ) I used device_address= 1, device_id=1, or device_address1 or device_id=1 and I haved the same result but with two differents errors. 2022-02-15 19:11:34 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_id': '1', 'device_address': '1'} 2022-02-15 19:11:34 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++ON CHACON ID 1\n\r' 2022-02-15 19:11:34 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_id': '1', 'device_address': '1'} 2022-02-15 19:11:35 ERROR (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'command' Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step await service_task File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) KeyError: 'command' 2022-02-15 19:11:35 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [139735453107344] Error handling message: Unknown error Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response await func(hass, connection, msg) File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 534, in handle_execute_script await script_obj.async_run(msg.get("variables"), context=context) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1253, in async_run await asyncio.shield(run.async_run()) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 354, in async_run await self._async_step(log_exceptions=False) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step await service_task File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) KeyError: 'command'

2022-02-15 19:12:09 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_id': 'A1', 'device_address': '1'} 2022-02-15 19:12:09 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++ON CHACON ID A1\n\r' 2022-02-15 19:12:09 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_id': 'A1', 'device_address': '1'} 2022-02-15 19:12:09 ERROR (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'command' Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step await service_task File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) KeyError: 'command' 2022-02-15 19:12:09 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [139735453107344] Error handling message: Unknown error Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response await func(hass, connection, msg) File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 534, in handle_execute_script await script_obj.async_run(msg.get("variables"), context=context) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1253, in async_run await asyncio.shield(run.async_run()) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 354, in async_run await self._async_step(log_exceptions=False) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step await service_task File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) KeyError: 'command' 2022-02-15 19:12:10 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] received data: ZIA-- error request number=0 Syntax error: A1 2022-02-15 19:12:10 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] decoded packet: {'node': 'gateway', 'message': '\nerror request number=0\nSyntax error: A1\n\n'} 2022-02-15 19:12:10 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpparser] f:node,v:gateway 2022-02-15 19:12:10 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpparser] f:message,v: error request number=0 Syntax error: A1

2022-02-15 19:12:42 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_address': 'A1', 'device_id': '1'} 2022-02-15 19:12:42 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++ON CHACON ID 1\n\r' 2022-02-15 19:12:42 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_address': 'A1', 'device_id': '1'} 2022-02-15 19:12:42 ERROR (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'command' Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step await service_task File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) KeyError: 'command' 2022-02-15 19:12:42 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [139735453107344] Error handling message: Unknown error Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response await func(hass, connection, msg) File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 534, in handle_execute_script await script_obj.async_run(msg.get("variables"), context=context) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1253, in async_run await asyncio.shield(run.async_run()) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 354, in async_run await self._async_step(log_exceptions=False) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step await service_task File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) KeyError: 'command'

I will connect my Rfplayer on my Windows PC, and I will edit this post.

prahal commented 2 years ago

Désolé j'ai pris l'habitude de répondre en anglais. Donc n'utilise que device adress (décoche l'autre) sinon device id seul est utilisé (quand il y a les deux seul le dernier est pris en compte avec le code actuel). Le device adress ne peut pas être '1' . Cela doit être soit A1, soit A2, etc jusqu'à P16

Le device_id ne serait pas '1' non plus. À priori il fait beaucup plus que un chiffre et semble défini dans le récepteur (par hasard j'ai tenté un numéro qui resortait dans mes logs mais il se trouve que j'ai eu de la chance : le device id que j'ai testé correspondait à un autre de mes appareils mais pas à celui indiqué dans les logs. Donc j'en ai trouvé un mais c'est un pur hasard d'autant que le numéro du device_id fait 11 chiffres.

L'erreur que tu obtiens est néanmoins étrange, j'en avais une à peu près similaire mais avec 'rfplayer' au lieu de 'command' quand mon rfplayer n'était pas accessible. Cela ne doit pas être ton cas car tu as déjà dit que ton premier volet réagissait aux commandes. Mais as tu essayé de mettre à jour le code dans custom_componenents/rfplayer et vérifié si ton home assistant est à jour ? J'ai Home Assistant core-2022.2.5.

Sinon essaye avec picocom comme je l'ai indiqué, directement sur ttyUSB0. Ou avec l'application java du rfplayer. Tu peux envoyer les commandes en ASCII: ZIA++ON CHACON A1 revient à envoyer la command ON avec le protocole CHACON et le device adress A1.

prahal commented 2 years ago

Par contre je n'ai pas de volets, seulement des prises onoff chacon dio et smartwares.eu (flamingo). Donc si le problème est au niveau de la creation de l'entité pour le volet je ne peux pas vérifier. Mais tu peux tester sans créer d'entité (au moins au niveau du rfplayer.send_command). Si tu as toujours la même erreur après avoir désinstaller et reinstallé l'intégration (pour enlever les entités du rfplayer) et en utilisant rfplayer.send_command directement avec la créatoin d'entité quand on envoie une "commande rfplayer.send_command" désactivée, cela devient étrange.

Czara commented 2 years ago

Bonsoir,

Merci de prendre le temps de répondre. Je viens de tester, mais bon en même temps j'avais un peu testé toutes les solutions possibles.

Comme tu le dis, j'ai décoché Devic ID, je n'ai laisse que le Device Address, si je ne coche pas l'ajout aucun problème mon volet réagit. Si je coche l'ajout du périphérique, j'ai ça :

2022-02-17 20:22:27 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'ON', 'protocol': 'CHACON', 'device_address': 'A1', 'automatic_add': True} 2022-02-17 20:22:27 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++ON CHACON A1\n\r' 2022-02-17 20:22:27 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'ON', 'protocol': 'CHACON', 'device_address': 'A1', 'automatic_add': True} 2022-02-17 20:22:27 ERROR (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'command' Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step await service_task File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) KeyError: 'command' 2022-02-17 20:22:27 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [139734169663664] Error handling message: Unknown error Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response await func(hass, connection, msg) File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 534, in handle_execute_script await script_obj.async_run(msg.get("variables"), context=context) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1253, in async_run await asyncio.shield(run.async_run()) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 354, in async_run await self._async_step(log_exceptions=False) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step await service_task File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/config/custom_components/rfplayer/__init__.py", line 108, in async_send_command await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) KeyError: 'command'

Je vais devenir fou ...

La commande en directe doit certainement fonctionner, bon je ne peux pas tester java et Windows 11 ne font pas bon ménage. L'utilitaire ne se lance même pas. J'ai une poisse moi en ce moment. Je vais tester sur mon Mac, au moins pour avoir la version du firmware mais là encore pour moi ce n'est pas le Rfplayer qui est en cause, il marche très bien sans que l'on enregistre l'entité. Mais c'est pas pratique du coup :)

Czara commented 2 years ago

ça semble déconner ici : Je ne suis pas trop développeur, mais je comprends quelques petites choses.

`async def async_setup_entry(hass, entry): """Set up GCE RFPlayer from a config entry.""" config = entry.data options = entry.options

async def async_send_command(call):
    """Send Rfplayer command."""
    _LOGGER.debug("Rfplayer send command for %s", str(call.data))
    if not await hass.data[DOMAIN][RFPLAYER_PROTOCOL].send_command_ack(
        call.data[CONF_PROTOCOL],
        call.data[CONF_COMMAND],
        device_address=call.data.get(CONF_DEVICE_ADDRESS),
        device_id=call.data.get(CONF_DEVICE_ID),
    ):
        _LOGGER.error("Failed Rfplayer command")
    if call.data[CONF_AUTOMATIC_ADD] is True:
        _LOGGER.debug("Add device for %s", str(call.data))
        event_id = "_".join(
            [
                call.data[CONF_PROTOCOL],
                call.data.get(CONF_DEVICE_ID) or call.data.get(CONF_DEVICE_ADDRESS),
            ]
        )
        device = {
            CONF_PROTOCOL: call.data[CONF_PROTOCOL],
            CONF_DEVICE_ADDRESS: call.data.get(CONF_DEVICE_ADDRESS),
            CONF_DEVICE_ID: call.data.get(CONF_DEVICE_ID),
            EVENT_KEY_COMMAND: True,
            EVENT_KEY_ID: event_id,
        }
        **await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
        _add_device_to_base_config(device, event_id)**

hass.services.async_register(
    DOMAIN, SERVICE_SEND_COMMAND, async_send_command, schema=SEND_COMMAND_SCHEMA
)`

ça ne va pas à la ligne en gras (en fait au niveau où se trouve les doubles étoiles, le gras n'apparait pas dans les balises de code), mais c'est dépendant d'autres bouts de code, appartenant à HA.

prahal commented 2 years ago

@Czara la version du firmware est moins importante que celle de home assistant dans Configuration > Paramètres > Onglet Info Moi j'ai Home Assistant 2022.2.5.

Mais je crois que tu vas devoir ajouter des lignes de debug (dans le code). Dans custom_components/rfplayer/init.py dans les lignes de code que tu as montrées (juste avant ta mise en gras, c'est à dire juste avant: await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device) J'ai ajouté (cas où tu as activé les logs en mode debug mais tes extraits de logs indique que c'est déjà ton cas):

            _LOGGER.debug("DOMAIN %s", str(DOMAIN))  
            _LOGGER.debug("DATA_DEVICE_REGISTER %s", str(DATA_DEVICE_REGISTER))  
            _LOGGER.debug("EVENT_KEY_COMMAND %s", str(EVENT_KEY_COMMAND))  
            _LOGGER.debug("hass.data[DOMAIN] %s", str(hass.data[DOMAIN]))  
            _LOGGER.debug("hass.data[DOMAIN][DATA_DEVICE_REGISTER] %s", str(hass.data[DOMAIN][DATA_DEVICE_REGISTER]))

Ce qui me donne:

2022-02-18 16:42:20 INFO (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Running websocket_api script                                                                      
2022-02-18 16:42:20 INFO (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Executing step call service                                                                       
2022-02-18 16:42:20 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=rfplayer, service=send_command, service_data=command=ON, protocol=CHACON, device_address=A1, automatic_add=
True>                                                                                                                                                                                                             
2022-02-18 16:42:20 DEBUG (MainThread) [custom_components.rfplayer] Rfplayer send command for {'command': 'ON', 'protocol': 'CHACON', 'device_address': 'A1', 'automatic_add': True}                              
2022-02-18 16:42:20 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++ON CHACON A1\n\r'                                                                                      
2022-02-18 16:42:20 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'ON', 'protocol': 'CHACON', 'device_address': 'A1', 'automatic_add': True}                                         
2022-02-18 16:42:20 DEBUG (MainThread) [custom_components.rfplayer] DOMAIN rfplayer                                                                                                                               
2022-02-18 16:42:20 DEBUG (MainThread) [custom_components.rfplayer] DATA_DEVICE_REGISTER device_register                                                                                                          
2022-02-18 16:42:20 DEBUG (MainThread) [custom_components.rfplayer] EVENT_KEY_COMMAND command 
2022-02-18 16:42:20 DEBUG (MainThread) [custom_components.rfplayer] hass.data[DOMAIN] {'rfplayer_protocol': <custom_components.rfplayer.rflib.rfpprotocol.RfplayerProtocol object at 0xffffb2b5c9a0>, 'device': '/d
ev/ttyUSB0', 'entity_lookup': {'command': defaultdict(<class 'list'>, {'CHACON_A1': 'switch.chacon_salon_enceinte', 'CHACON_A2': 'switch.chacon_salon_bureau', 'CHACON_A3': 'switch.chacon_salon_imprimante', 'PARR
OT_A4': 'switch.parrot_chambre_lampe', 'PARROT_ A5': 'switch.parrot_chambre_prises', 'PARROT_ A6': 'switch.parrot_chambre_tv'}), 'sensor': defaultdict(<class 'list'>, {'CHACON_705495168_cmd': 'sensor.chacon_salo
n_enceinte', 'CHACON_705495172_cmd': 'sensor.chacon_salon_bureau', 'CHACON_705495180_cmd': 'sensor.chacon_salon_imprimante', 'CHACON_3305046017_cmd': 'sensor.chacon_chambre_lampe', 'CHACON_3305046018_cmd': 'sens
or.chacon_chambre_prises', 'CHACON_3305046019_cmd': 'sensor.chacon_chambre_tv', 'PARROT_5_cmd': 'sensor.parrot_chambre_tv', 'PARROT_4_cmd': 'sensor.parrot_chambre_prises', 'PARROT_3_cmd': 'sensor.parrot_chambre_
lampe'})}, 'device_register': {'sensor': <function async_setup_entry.<locals>.add_new_device at 0xffffb292a310>, 'command': <function async_setup_entry.<locals>.add_new_device at 0xffffb29b9a60>}}              
2022-02-18 16:42:20 DEBUG (MainThread) [custom_components.rfplayer] hass.data[DOMAIN][DATA_DEVICE_REGISTER] {'sensor': <function async_setup_entry.<locals>.add_new_device at 0xffffb292a310>, 'command': <function
 async_setup_entry.<locals>.add_new_device at 0xffffb29b9a60>}

Je suppose que: _LOGGER.debug("hass.data[DOMAIN][DATA_DEVICE_REGISTER] %s", str(hass.data[DOMAIN][DATA_DEVICE_REGISTER])) ne renverra pas un object javascript ou celui-ci ne comportera pas de champ 'command'.

A priori il faut redermarrer home assistant après le changement dans le code du custom_components/rf/player.

Bonne chance

Czara commented 2 years ago

Hello,

Voilà le résultat :

2022-02-18 22:08:49 DEBUG (MainThread) [custom_components.rfplayer.rflib.rfpprotocol] writing data: b'ZIA++ON CHACON A1\n\r'
2022-02-18 22:08:49 DEBUG (MainThread) [custom_components.rfplayer] Add device for {'command': 'ON', 'protocol': 'CHACON', 'automatic_add': True, 'device_address': 'A1'}
2022-02-18 22:08:49 DEBUG (MainThread) [custom_components.rfplayer] DOMAIN rfplayer
2022-02-18 22:08:49 DEBUG (MainThread) [custom_components.rfplayer] DATA_DEVICE_REGISTER device_register
2022-02-18 22:08:49 DEBUG (MainThread) [custom_components.rfplayer] EVENT_KEY_COMMAND command
2022-02-18 22:08:49 DEBUG (MainThread) [custom_components.rfplayer] hass.data[DOMAIN] {'rfplayer_protocol': <custom_components.rfplayer.rflib.rfpprotocol.RfplayerProtocol object at 0x7f626204a940>, 'device': '/dev/serial/by-id/usb-Ziblue_RFPLAYER_A122NGVK-if00-port0', 'entity_lookup': {'command': defaultdict(<class 'list'>, {}), 'sensor': defaultdict(<class 'list'>, {})}, 'device_register': {}}
2022-02-18 22:08:49 DEBUG (MainThread) [custom_components.rfplayer] hass.data[DOMAIN][DATA_DEVICE_REGISTER] {}
2022-02-18 22:08:49 ERROR (MainThread) [homeassistant.helpers.script.websocket_api_script] websocket_api script: Error executing script. Unexpected error for call_service at pos 1: 'command'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/config/custom_components/rfplayer/__init__.py", line 113, in async_send_command
    await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
KeyError: 'command'
2022-02-18 22:08:49 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140060277225120] Error handling message: Unknown error
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response
    await func(hass, connection, msg)
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 534, in handle_execute_script
    await script_obj.async_run(msg.get("variables"), context=context)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1253, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 354, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 372, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 575, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1630, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1667, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/config/custom_components/rfplayer/__init__.py", line 113, in async_send_command
    await hass.data[DOMAIN][DATA_DEVICE_REGISTER][EVENT_KEY_COMMAND](device)
KeyError: 'command'

Je ne vois rien de bien différent, sauf les devices qui semblent déjà enregistrés chez toi.

Ma version de HA est la 2022.2.8.

prahal commented 2 years ago

2022-02-18 22:08:49 DEBUG (MainThread) [custom_components.rfplayer] hass.data[DOMAIN][DATA_DEVICE_REGISTER] {} C'est vide ( vaut {}), ce qui explique ton erreur car la ligne de code après va chercher le champ 'command' dans cet objetJavaScript. Pourquoi je ne sais pas. Mais c'est un point de départ.

Czara commented 2 years ago

Bonsoir,

Ne maitrisant pas le code, ça va être difficile pour moi d'elle plus loin. Tant pis, je vais attendre le retour des devs à ce sujet. Je ne sais plus trop quoi tester.

Merci pour ton implication en tout cas.

Doubledom45 commented 2 years ago

Slt a tous ... Le problème de @Czara c'est qu'il n'y a aucune "ident" dans l'enregistrement pour le Rfplayer, d'ou cette erreur. PS @prahal est-tu sur les forums Fr ?

prahal commented 2 years ago

@Doubledom45 non , as tu l'url de ces forums ? Je suis nouveau sur Home Assistant et la domotique. J'ai acheté 4 prises chacon dio et un Rfplayer et je m'éclate :-)

Pour l'ident manquant cela me dépasse. J'ai essayé de comprendre comment les async_setup_entry des platforms de l'intégration sont appelés. Car c'est le async_setup_entry des platforms switch.py et sensor.py de l'intégration Rfplayer qui enregistrent les EVENT_KEY_COMMAND command et sensor qui manquent dans le log de debug que Czara m'a renvoyé au dessus.

Tant mieux si ce n'est pas nécessaire, je n'ai pas encore compris la chaîne d'appels.

Doubledom45 commented 2 years ago

Bjr @prahal Je ne sais pas trop quoi penser de l'évolution du Rfplayer pour HA. Je ne vois pas trop d'évolution ni de réponse au dernière demande. Il est vrai que pour moi c'est compliqué de reprendre ce projet, qui a été fait depuis un Rflink.. Je ne sais pas ce que font les initiateurs du projet ? Je sais que c'est pas si simple ... Le Forum Fr ( que celui "lu" va se rapproche) Il y a aussi version io

@+DÖM (Ô¿Ô) :vulcan_salute:

Czara commented 2 years ago

Bonjour,

Le problème est en parti réglé.

Suite à une petite discussion avec @Doubledom45 (qui a pris le temps de m"aider, merci encore), nous avons pu nous rendre compte que si je laissais l'option permettant à l'intégration d'ajouter les entités inconnues, ça fonctionnait. Le fonctionnement ne semble pas normal, mais c'est ainsi que ça fonctionne. Je peux maintenant ajouter mes entités à l'aide des outils de dev via l'appel du service "rfplayer.send_command" et commander mes volets.

Bonne soirée