Releases: thlucas1/homeassistantcomponent_spotifyplus
Releases · thlucas1/homeassistantcomponent_spotifyplus
v1.0.26
[ 1.0.26 ] - 2024/06/10
- Added service
zeroconf_device_connect
that calls theaddUser
Spotify Zeroconf API endpoint to issue a call to SpConnectionLoginBlob. If successful, the associated device id is added to the Spotify Connect active device list for the specified user account. - Added service
zeroconf_device_disconnect
that calls theresetUsers
Spotify Zeroconf API endpoint to issue a call to SpConnectionLogout. The currently logged in user (if any) will be logged out of Spotify Connect, and the device id removed from the active Spotify Connect device list. - Removed service
zeroconf_device_resetusers
and replaced it withzeroconf_device_disconnect
. - Updated underlying
spotifywebapiPython
package requirement to version 1.0.48.
v1.0.25
v1.0.24
[ 1.0.24 ] - 2024/06/07
- Updated underlying
spotifywebapiPython
package requirement to version 1.0.46. - Added the following requirements to manifest.json so that any dependency
ResolutionImpossible
errors can be quickly identified: 'oauthlib>=3.2.2', 'platformdirs>=4.1.0', 'requests>=2.31.0', 'requests_oauthlib>=1.3.1', 'zeroconf>=0.132.2'. This bug bit me in the HA 2024.6.1 release when the HA devs upgraded therequests
dependency to 2.32.3! The System log was showing that thespotifywebapiPython
library was the invalid dependency, but it was not - the REAL culprit was therequests
dependency!
v1.0.23
v1.0.22
v1.0.21
[ 1.0.21 ] - 2024/06/07
- Fixed a bug that caused player state to return an error every 30 seconds when playing the Spotify DJ playlist. As the Spotify Web API does not support retrieving the DJ playlist (
spotify:playlist:37i9dQZF1EYkqdzj48dyYq
), it simply returns a manually built representation of the Spotify DJ playlist with limited properties populated (uri, id, name, description, etc). Note that Spotify DJ support is not supported (as of 2024/06/07) by the Spotify Web API (this includes starting play, retrieving playlist details, retrieving playlist items, etc). - Added service
zeroconf_discover_devices
to discover Spotify Connect devices on the local network via the ZeroConf (aka MDNS) service, and return details about each device. - Added service
zeroconf_device_getinfo
to retrieve Spotify Connect device information from the Spotify Zeroconf APIgetInfo
endpoint. - Added service
zeroconf_device_resetusers
to reset users for a Spotify Connect device by calling the Spotify Zeroconf APIresetUsers
endpoint. - Updated underlying
spotifywebapiPython
package requirement to version 1.0.44.
v1.0.20
[ 1.0.20 ] - 2024/06/06
- Changed all
media_player.schedule_update_ha_state(force_refresh=True)
calls toschedule_update_ha_state(force_refresh=False)
to improve performance. Suggested by @bdraco, along with an explanation of why. Thanks @bdraco! - Changed logic to call
session.hass.config_entries.async_update_entry
via ahass.add_job
call instead of calling directly. This fixes the issue ofDetected that custom integration 'spotifyplus' calls hass.config_entries.async_update_entry from a thread other than the event loop, which may cause Home Assistant to crash or data to corrupt
that was introduced with HA 2024.6 release. - Changed logic to access local file system files via a
hass.async_add_executor_job
call. This fixes the issue ofDetected blocking call to open inside the event loop by custom integration 'X' ...
that was introduced with HA 2024.6 release.
v1.0.19
[ 1.0.19 ] - 2024/05/03
- Changed all
media_player.async_write_ha_state()
calls toschedule_update_ha_state(force_refresh=True)
calls due to HA 2024.5 release requirements. This fixes the issue of "Failed to call service X. Detected that custom integration 'Y' calls async_write_ha_state from a thread at Z. Please report it to the author of the 'Y' custom integration.". - Added more information to system health display (version, integration configs, etc).
- Updated Python version from 3.11 to 3.12.3 due to HA 2024.5 release requirements.
v1.0.18
[ 1.0.18 ] - 2024/04/25
- Updated various
media_player
services that control playback to verify a Spotify Connect Player device is active. If there is no active device, or the default device was specified (e.g. "*"), then we will force the configuration option default device to be used and transfer playback to it. If an active device was found, then we will use it without transferring playback for services that do not specify adeviceId
argument. For services that can supply adeviceId
argument, we will issue a transfer playback command if a device id (or name) was specified.
v1.0.17
[ 1.0.17 ] - 2024/04/21
- Added device name support to the following custom services that take a Spotify Connect Player
deviceId
argument for player functions. You can now specify either a device id or device name in thedeviceId
argument to target a specific Spotify Connect Player device. Services updated were:player_media_play_context
,player_media_play_track_favorites
,player_media_play_tracks
,player_transfer_playback
. - Updated underlying
spotifywebapiPython
package requirement to version 1.0.43.