Commit graph

12 commits

Author SHA1 Message Date
Robert Hillis
5c5fd746fd
Add digital loggers as a Belkin supported brand (#72515) 2022-06-22 22:38:45 +02:00
Joakim Plate
8910d265d6
Keep track of a context for each listener (#72702)
* Remove async_remove_listener

This avoids the ambuigity as to what happens if same callback is added multiple times.

* Keep track of a context for each listener

This allow a update coordinator to adapt what data to request on update from the backing service based on which entities are enabled.

* Clone list before calling callbacks

The callbacks can end up unregistering and modifying the dict while iterating.

* Only yield actual values

* Add a test for update context

* Factor out iteration of _listeners to helper

* Verify context is passed to coordinator

* Switch to Any as type instead of object

* Remove function which use was dropped earliers

The use was removed in 8bee25c938
2022-06-03 13:55:57 +02:00
Eric Severance
f0b9aa7894
Bump pywemo==0.8.1 (#72400) 2022-05-24 09:53:01 +02:00
Eric Severance
8459a28489
WeMo state changes are seen by all coordinator entities (#64228)
* WeMo push update is seen by all coordinator entities

* Rename _wemo_exception_handler -> _wemo_call_wrapper

* Test turning off the entity

* Test setting light brightness

* Improve brightness test

* It is unnecessary to setup the platform integration

* Use domain names, not platform enum, in service calls
2022-01-17 10:03:24 +01:00
Eric Severance
a1be11a492
Store wemo device sw_version & upnp connections (#62758) 2021-12-24 10:31:42 -10:00
Eric Severance
1318597370
Fix typing for wemo (#62157) 2021-12-19 18:09:30 -06:00
Eric Severance
d874eb261d
Fix Wemo create task for awaitable (#62159) 2021-12-17 16:23:53 +01:00
epenet
107bd11a31
Use DeviceInfo in wemo (#58638) 2021-10-28 23:58:33 +02:00
Eric Severance
88a08fdf57
Wemo Insight devices need polling when off (#55348) 2021-08-31 09:32:26 +02:00
Eric Severance
67d04b6082
Use DataUpdateCoordinator for wemo (#54866)
* Use DataUpdateCoordinator for wemo

* Rename DeviceWrapper->DeviceCoordinator and make it a subclass of DataUpdateCoordinator

* Rename async_update_data->_async_update_data to override base class

* Rename: device -> coordinator
2021-08-21 20:14:55 +02:00
Eric Severance
ab36ac7a94
Handle all WeMo ensure_long_press_virtual_device exceptions (#53094)
* Handle all exceptions around the WeMo ensure_long_press_virtual_device method

* Don't use a bare exception

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Log exception

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-07-20 09:20:47 +02:00
Eric Severance
61079ab7fa
Support receiving long-press events from WeMo devices (#45503)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-06-16 12:00:34 +02:00