alandtse / alexa_media_player

This is a custom component to allow control of Amazon Alexa devices in Home Assistant using the unofficial Alexa API.
Apache License 2.0
1.51k stars 289 forks source link

Entities get duplicated every restart - HA with 3 Alexa Media Player different accounts #2529

Closed rodrigogbs closed 1 month ago

rodrigogbs commented 1 month ago

Describe the bug

In my installation I have 3 different Amazon accounts configured on Alexa Media Player Integration, and every time that I do a restart on HA, one account get all the entities duplicated.

To Reproduce

  1. Configure more than 1 account in Integration
  2. Simply restart HA
  3. All the entities of one of them will get duplicated

Expected behavior

After a restart, everything shoul work well, without any entity duplication.

Screenshots

N/A

System details

Debug Logs (alexa_media & alexapy) 2024-09-16 09:26:30.209 WARNING (MainThread) [homeassistant.util.loop] Detected blocking call to load_verify_locations with args (<ssl.SSLContext object at 0x7f24362e73d0>, '/usr/local/lib/python3.12/site-packages/certifi/cacert.pem', None, None) inside the event loop by custom integration 'alexa_media' at custom_components/alexa_media/init.py, line 341: AlexaLogin( (offender: /usr/local/lib/python3.12/ssl.py, line 708: context.load_verify_locations(cafile, capath, cadata)), please create a bug report at https://github.com/alandtse/alexa_media_player/issues For developers, please see https://developers.home-assistant.io/docs/asyncio_blocking_operations/#load_verify_locations Traceback (most recent call last): File "", line 198, in _run_module_as_main File "", line 88, in _run_code File "/usr/src/homeassistant/homeassistant/main.py", line 223, in sys.exit(main()) File "/usr/src/homeassistant/homeassistant/main.py", line 209, in main exit_code = runner.run(runtime_conf) File "/usr/src/homeassistant/homeassistant/runner.py", line 189, in run return loop.run_until_complete(setup_and_run_hass(runtime_config)) File "/usr/local/lib/python3.12/asyncio/base_events.py", line 674, in run_until_complete self.run_forever() File "/usr/local/lib/python3.12/asyncio/base_events.py", line 641, in run_forever self._run_once() File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1990, in _run_once handle._run() File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run self._context.run(self._callback, *self._args) File "/usr/src/homeassistant/homeassistant/setup.py", line 165, in async_setup_component result = await _async_setup_component(hass, domain, config) File "/usr/src/homeassistant/homeassistant/setup.py", line 461, in _async_setup_component await asyncio.gather( File "/usr/src/homeassistant/homeassistant/setup.py", line 463, in create_eagertask( File "/usr/src/homeassistant/homeassistant/util/async.py", line 45, in create_eager_task return Task(coro, loop=loop, name=name, eager_start=True) File "/usr/src/homeassistant/homeassistant/config_entries.py", line 752, in async_setup_locked await self.async_setup(hass, integration=integration) File "/usr/src/homeassistant/homeassistant/config_entries.py", line 604, in async_setup result = await component.async_setup_entry(hass, self) File "/config/custom_components/alexa_media/init.py", line 341, in async_setup_entry AlexaLogin(

Additional context

N/A

danielbrunt57 commented 1 month ago

2024-09-16 09:26:30.209 WARNING (MainThread) [homeassistant.util.loop] Detected blocking call to load_verify_locations

Your debug log entry is only a WARNING and has absolutely nothing to with your issue!

rodrigogbs commented 1 month ago

I solved the problem removing the 3 accounts and inserting it again, now ai can restart HA without any concern about duplicating the entities.