Commit graph

88 commits

Author SHA1 Message Date
Franck Nijhof
7cd68381f1
Search/replace RESULT_TYPE_* by FlowResultType enum () 2022-07-07 19:57:36 +03:00
jjlawren
ba7ad1029c
Remove legacy Sonos grouping services () 2022-07-07 12:17:13 +02:00
jjlawren
86fde1a644
Handle failures during initial Sonos subscription () 2022-06-22 10:56:17 -05:00
jjlawren
07a46dee39
Additional surround controls for Sonos () 2022-06-22 09:08:31 +02:00
jjlawren
30e71dd96f
Add support for Sonos loudness switch () 2022-05-30 16:09:14 +02:00
jjlawren
1f1932d224
Fix Sonos races related to grouping and startup () 2022-04-28 14:26:29 -07:00
jjlawren
5bcc83f6f2
Remove "sonos" prefix for Sonos switch entity_ids () 2022-04-25 16:01:54 -10:00
jjlawren
ac88d0be14
Add Sonos favorites sensor () 2022-04-21 10:37:16 -07:00
jjlawren
c53aa50093
Rework Sonos discovery & availability () 2022-04-17 22:54:51 -07:00
jjlawren
653305b998
Support multiple Plex servers in media browser () 2022-03-21 15:48:44 -07:00
jjlawren
dbb79e2937
Add support for Sonos subwoofer gain controls () 2022-03-18 10:12:10 -07:00
jjlawren
f75d621888
Normalize enqueuing Plex media on Sonos () 2022-03-17 13:52:59 -07:00
jjlawren
cfd763db40
Refactor Sonos media metadata handling ()
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-23 08:58:00 -08:00
jjlawren
76149876ab
Enable fallback polling for Sonos microphone binary_sensor () 2022-02-21 19:46:20 +01:00
Joshua Roys
9134e5c844
Get discovered zeroconf IPv6 addresses () 2022-02-11 16:46:17 -06:00
jjlawren
4d944e35fd
Skip polling Sonos audio input sensor when idle () 2022-02-10 12:48:13 -08:00
jjlawren
cdad1a9f27
Use local Sonos API for Plex music playback () 2022-01-25 21:10:11 -08:00
jjlawren
ec88897d04
Add event statistics to Sonos diagnostics () 2022-01-24 22:52:40 -10:00
jjlawren
a7982adc73
Discard duplicate sonos events ()
* Throttle duplicate Sonos events

* Fix test by breaking reference
2022-01-23 00:40:08 +01:00
jjlawren
e7f0962979
Improve Sonos diagnostics () 2022-01-20 13:14:08 -10:00
jjlawren
740a8c33ee
Add audio_delay number entity to Sonos () 2022-01-10 16:04:40 +01:00
jjlawren
8a8ffa1c08
Add support for Sonos microphone binary_sensor ()
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-04 18:45:40 +01:00
jjlawren
00307e1ade
Bump soco to 0.25.2 () 2021-12-23 11:07:29 -08:00
jjlawren
6d54261322
Remove external library discovery call in Sonos ()
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-10 11:28:47 -10:00
jjlawren
9f3a4c3617
Improve Sonos tests, begin adding coverage ()
* Update entity registry handling

* Add and use fixtures to test setup via config entry

* Remove legacy redundant tests

* Remove unnecessary mock_coro

* Remove unnecessary namespace change

* Move zeroconf payload to fixture

* Begin adding Sonos to codecov

* Mock proper return value

* Revert return value for platform
2021-12-08 19:28:27 +01:00
jjlawren
cbf2bf2e1f
Add audio input format sensor to Sonos HT devices () 2021-12-03 10:06:56 -08:00
jjlawren
b883014ed4
Add Sonos subwoofer and surround on/off controls () 2021-12-03 16:05:40 +01:00
J. Nick Koston
8e0ef52cc8
Ensure sonos ssdp callbacks use dataclass methods () 2021-12-02 09:53:08 -08:00
jjlawren
a88cc8b98c
Move Sonos bass & treble controls to number entities () 2021-11-29 16:00:37 +01:00
epenet
77dfeb062f
Update ZeroconfServiceInfo in tests (n-t) ()
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 10:35:44 -06:00
epenet
b465131170
Use ZeroconfServiceInfo in sonos () 2021-11-21 15:49:50 -06:00
jjlawren
81e02a39df
Ignore non-Sonos SSDP devices with Sonos-like identifiers () 2021-11-19 10:14:12 -06:00
J. Nick Koston
cab9f821a1
Fix zeroconf with sonos v1 firmware () 2021-11-10 22:31:08 -08:00
jjlawren
6e7fe13d51
Disable polling Sonos switches by default () 2021-10-29 14:43:59 -05:00
jjlawren
084fd2d19f
Expose Sonos features as switch entities ()
Co-authored-by: Tobias Sauerwein <cgtobi@users.noreply.github.com>
2021-10-23 23:11:27 +02:00
Paulus Schoutsen
a4d9019ffc
Refactor persistent notification to no longer route all data via a service ()
* Convert persistent notification tests to async

* Create/dismiss persistent notifications in exposed functions, not service calls

* Fix notify persistent_notification

* Remove setting up persistent_notification

* Drop more setups

* Empty methods

* Undeprecate sync methods because too big task

* Fix setup clearing notifications

* Fix a bunch of tests

* Fix more tests

* Uno mas

* Test persistent notification events

* Clean up stale comment

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 12:58:00 +02:00
jjlawren
0d6aa89fd4
Refactor Sonos alarms and favorites updating () 2021-09-28 09:49:32 +02:00
Michael Chisholm
805e73f78c
Add UPNP device connection for Sonos () 2021-09-27 17:36:47 +02:00
J. Nick Koston
0363c22dd8
Fix Sonos going offline with 13.3 firmware () 2021-09-23 20:39:20 -07:00
Erik Montnemery
be0819b456
Mock out network.util.async_get_source_ip in tests () 2021-09-17 21:40:58 -10:00
Steven Looman
73260c5b88
Move parts of ssdp to async_upnp_client ()
* Move parts of ssdp to async_upnp_client

* Fix test for environments with multiple sources

* Fix sonos tests

* More fixes/changes

* More fixes

* Use async_upnp_client==0.21.0

* Pylint/test fixes

* More changes after review

* Fix tests

* Improve testing

* Fix mypy

* Fix yamaha_musiccast tests?

* Changes after review

* Pylint

* Reduce calls to combined_headers

* Update to async_upnp_client==0.21.1

* Update to async_upnp_client==0.21.2

* use as_dict

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-11 13:38:16 -10:00
jjlawren
214920f486
Ignore Sonos Boost devices during discovery v2 () 2021-07-27 09:50:46 -05:00
Anders Melchiorsen
e85b0ec052
Move Sonos to upstream SoCo () 2021-07-23 00:40:30 +02:00
J. Nick Koston
98109caee9
Add zeroconf discovery to Sonos () 2021-07-12 18:24:12 +02:00
jjlawren
578c897161
Ignore unused keys from Sonos device properties callback ()
* Ignore known but unused keys from device callback

* Fix bug, add test
2021-07-08 11:56:50 +02:00
jjlawren
7b5ed8faa8
Catch unexpected battery update payloads on Sonos () 2021-06-20 21:38:07 -07:00
jjlawren
31db3fcb23
Refactor Sonos alarms and favorites into system-level coordinators ()
* Refactor alarms and favorites into household-level coordinators

Create SonosHouseholdCoodinator class for system-level data
Fix polling for both alarms and favorites
Adjust tests

* Fix docstring

* Review cleanup

* Move exception handling up a level, do not save a failed coordinator

* Apply suggestions from code review

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-06-16 10:30:05 -05:00
jjlawren
e257dd4d07
Fix Sonos battery sensors on S1 firmware () 2021-06-08 00:29:17 +02:00
jjlawren
e5309e89ea
Skip processed Sonos alarm updates ()
* Skip processed Sonos alarm updates

* Fix bad conflict merge
2021-05-30 21:03:53 -07:00
J. Nick Koston
c5e5787e1d
Replace sonos discovery thread with ssdp callback registration ()
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2021-05-29 08:31:22 -05:00