Commit graph

114 commits

Author SHA1 Message Date
jjlawren
0ae4d017b9
Add subwoofer crossover support to Sonos Amp devices (#106290) 2023-12-23 10:25:20 +01:00
Marc Mueller
8b0fdd6fd2
Use asyncio.timeout [s-z] (#98452) 2023-08-15 14:34:18 +02:00
[pʲɵs]
6013584b7b
Add balance entity for Sonos speakers (#85205) 2023-04-23 01:18:17 +02:00
jjlawren
27f3b53872
Support Sonos announcements using websockets (#91145) 2023-04-13 20:08:53 -10:00
J. Nick Koston
44eaf70625
Make sonos activity check a background task (#90553)
Ensures the task is canceled at shutdown if the device
is offline and the ping is still in progress
2023-03-31 14:33:44 -04:00
epenet
b3d6f098d2
Adjust entity registry access in integrations (1) (#88946) 2023-03-01 08:02:34 +01:00
jjlawren
b51836a57b
Detect when battery-powered Sonos devices are turned off (#87606) 2023-02-17 19:13:22 +01:00
Franck Nijhof
3d557b5583
Collection of code styling tweaks (#87381) 2023-02-04 12:52:26 -05:00
Franck Nijhof
5e81d28116
Update black to 23.1.0 (#87188) 2023-02-02 18:35:24 +01:00
jjlawren
1b592e6885
Use subscription callbacks to discover Sonos speakers (#85411)
fixes undefined
2023-01-08 09:50:18 -10:00
Franck Nijhof
f39f3b612a
String formatting and max line length - Part 5 (#84501)
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2022-12-23 16:43:17 +01:00
jjlawren
5694a4bfc8
Fix state updating for crossfade switch on Sonos (#79776) 2022-10-07 06:29:34 +02:00
Marc Mueller
b9d34ce169
Improve sonos typing (#78661) 2022-09-19 09:59:12 +02:00
Robert Hillis
73ba7a989b
Make Sonos typing more complete (#68072) 2022-09-05 13:12:37 -05:00
jjlawren
329ecc74c4
Optimize Sonos join behavior when using media_player.join (#74174)
Optimize Sonos media_player.join service
2022-06-29 15:23:22 +02:00
jjlawren
4bfdb1433e
Optimize Sonos unjoin behavior when using media_player.unjoin (#74086)
* Coalesce Sonos unjoins to process together

* Refactor for readability

* Skip unjoin call if already ungrouped

* Store unjoin data in a dedicated dataclass

* Revert import adjustment
2022-06-28 13:19:27 -07:00
jjlawren
800bae68a8
Fix clearing of Sonos library cache during regrouping (#74085)
Fix clearing of ZoneGroupState attribute cache
2022-06-28 09:51:33 +02:00
jjlawren
86fde1a644
Handle failures during initial Sonos subscription (#73456) 2022-06-22 10:56:17 -05:00
jjlawren
07a46dee39
Additional surround controls for Sonos (#73805) 2022-06-22 09:08:31 +02:00
jjlawren
77c92b0b77
Mark Sonos speaker as offline when switching to bluetooth (#73519) 2022-06-14 20:32:13 -10:00
jjlawren
30e71dd96f
Add support for Sonos loudness switch (#72572) 2022-05-30 16:09:14 +02:00
jjlawren
532b3d780f
Rework Sonos battery and ping activity tracking (#70942) 2022-05-14 13:40:26 -05:00
jjlawren
9b03ef4829
Improve Sonos terminology for inclusiveness (#71206)
* Improve Sonos group terminology

* Deprecate Sonos-specific grouping services

* Push deprecation back one version

* Revert deprecation notice
2022-05-02 23:01:19 -07:00
jjlawren
1f1932d224
Fix Sonos races related to grouping and startup (#71026) 2022-04-28 14:26:29 -07:00
jjlawren
c53aa50093
Rework Sonos discovery & availability (#70066) 2022-04-17 22:54:51 -07:00
jjlawren
29a43cef0b
Add cooldown timer before Sonos resubscriptions (#68521) 2022-03-23 14:20:20 -07:00
jjlawren
dbb79e2937
Add support for Sonos subwoofer gain controls (#68334) 2022-03-18 10:12:10 -07:00
jjlawren
cfd763db40
Refactor Sonos media metadata handling (#66840)
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 (#66299) 2022-02-21 19:46:20 +01:00
jjlawren
e86c82e675
Tweak Sonos activity monitoring (#66207)
* Tweak Sonos activity monitoring

* Support new 'sleeping' vanish reason
* Check availability before last-ditch check
* Use short-timeout call for last-ditch check
* Adjust reboot logging message and severity

* Simplify activity check failure
2022-02-10 14:11:47 -06:00
jjlawren
9fd8428254
Sonos lock subscription actions (#66204)
* Move exception logging to helper

* Wrap subscription in lock

* Rewrite subscribe method to use new logging helper

* Mark entitites as unavailable sooner to avoid unnecessary polls

* Rename unclear method and update docstring

* Move lock to unsubscribe
2022-02-09 21:56:10 -06:00
jjlawren
a7fd477c64
Refactor Sonos polling (#65722)
* Refactor Sonos polling

Explicitly rename fallback polling
Catch soco exceptions centrally where possible
Create SonosPollingEntity subclass
Remove unnecessary soco_error fixture argument
Remove unnecessary polling in update_volume()
Adjust log levels and wording
Set explicit timeout on library

* Adjust logging to use raised exceptions

* Simplify availabiliity checks when using built-in poller

* Fix typing for return values
2022-02-08 12:17:05 -06:00
jjlawren
36cfa7786d
Clean up Sonos unsubscribe/resubscribe exception handling and logging (#66025) 2022-02-07 16:00:57 -08:00
jjlawren
8c0c4f9bca
Log traceback in debug for Sonos unsubscribe errors (#65596) 2022-02-03 15:03:18 -08:00
jjlawren
770707f487
Fix vanished checks on old Sonos firmware (#65477) 2022-02-03 13:22:34 +01:00
jjlawren
4794625048
Detect battery-operated Sonos devices going offline (#65382) 2022-02-01 22:11:21 -06:00
jjlawren
2129972904
Add activity statistics to Sonos diagnostics (#65214) 2022-01-30 13:15:51 -08:00
jjlawren
cdad1a9f27
Use local Sonos API for Plex music playback (#63357) 2022-01-25 21:10:11 -08:00
jjlawren
ec88897d04
Add event statistics to Sonos diagnostics (#64845) 2022-01-24 22:52:40 -10:00
jjlawren
a7982adc73
Discard duplicate sonos events (#64722)
* Throttle duplicate Sonos events

* Fix test by breaking reference
2022-01-23 00:40:08 +01:00
jjlawren
e7f0962979
Improve Sonos diagnostics (#64586) 2022-01-20 13:14:08 -10:00
jjlawren
53aed22d5c
Add diagnostics support to Sonos (#64576)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-01-20 13:26:54 -08:00
jjlawren
740a8c33ee
Add audio_delay number entity to Sonos (#63566) 2022-01-10 16:04:40 +01:00
jjlawren
8a8ffa1c08
Add support for Sonos microphone binary_sensor (#63097)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-04 18:45:40 +01:00
jjlawren
00a4b60f74
Fix night mode switch state on Sonos (#63009) 2021-12-29 17:25:29 +01:00
jjlawren
00307e1ade
Bump soco to 0.25.2 (#62691) 2021-12-23 11:07:29 -08:00
jjlawren
4475e88707
Fix Sonos updating when entities are disabled (#62456)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-21 20:36:12 -08:00
jjlawren
9a1109949f
Fix Sonos sub & surround switch state reporting (#61531)
* Fix sub/surround states, refactor volume param handling

* Lint
2021-12-11 21:14:22 -07:00
jjlawren
3ae16caf6a
Fix Sonos radio handling during polling (#61401) 2021-12-09 14:12:19 -08:00
jjlawren
cbf2bf2e1f
Add audio input format sensor to Sonos HT devices (#60884) 2021-12-03 10:06:56 -08:00