Skip to content

Releases: fondberg/spotcast

v3.6.25

11 Feb 14:41
2026d23
Compare
Choose a tag to compare

Bug fix release

  • added retrocompatibility to ensure Spotcast works with python 3.8

v.3.6.24

17 Jan 01:50
75e2999
Compare
Choose a tag to compare

New functionality

  • Added random_cateogry method. Which lets the user provid a playlist category and Spotcast will return a random playlist from the category to play. See https://developer.spotify.com/console/get-browse-categories/ for a list of categories. Credit to @maxenced
  • Market localisation is now possible in Spotcast. A new parameter country was added. This parameter can be provided at the service call or added to the configuration file directly. In order for the sensor to be localised, the parameter must be added in the sensor section as well in the configuration file.

Main configuration exemple

spotcast:
    sp_dc: !secret felix_sp_dc
    sp_key: !secret felix_sp_key
    country: CA
    accounts:
    felix:
        sp_dc: !secret felix_sp_dc
        sp_key: !secret felix_sp_key
    mellissa:
        sp_dc: !secret mellissa_sp_dc
        sp_key: !secret mellissa_sp_key

Sensor configuration exemple

sensors:
  - platform: spotcast
    country: CA

Bug fix and improvement

  • Spotcast will now validate the uri provided to make sure it is a valid URI before sending it to spotify API. If the URI is invalid a clear error message will be sent to the log explaining the problem in the URI.

v3.6.23

17 Dec 01:40
df2fd73
Compare
Choose a tag to compare

Bug correction #267

This is a temporary fix while waiting for spotipy to correct a bug when passing an URI containing a ? parameter.

v3.6.22

12 Dec 21:18
87a67c7
Compare
Choose a tag to compare

thank you @hmmbob for the pr

2021.12.0 has a bump of pychromecast, which changes the way you can retrieve Chromecast info.

home-assistant/core#59719
home-assistant/core#60205

With the changes in this PR I fixed the issue locally. It should be tested by others too.
Also implemented a fix for a warning on device_state_attributes while I was at it anyway - this is just a rename to extra_state_attributes

Fixes #269
Fixes #273
Fixes #274
Fixes custom-cards/spotify-card#170

v3.6.21

05 Nov 22:28
ade2ea0
Compare
Choose a tag to compare

fixes #258 and #261

v3.6.20

04 Nov 17:30
a25c17b
Compare
Choose a tag to compare

reverted get_playlist change, breaking api call for certain user #261

Support additional playlist types in get_playlists

03 Nov 11:46
c5f9c72
Compare
Choose a tag to compare

@gmcmicken added additionnal playlist types in get_playlists

User playlists selected by "user" "default", or "". Featured selected by "featured", and everything else to be sent to Spotify API to match a users personalized playlists.

// Retrieve playlists
const res = await this.props.hass.callWS({
  type: 'spotcast/playlists',
  playlist_type: 'featured', // 'user' for saved playlists, 'featured' for spotify featured, or personalized view id
  country_code: 'SV', // Optional country code used by featured playlists
  limit: 20, // Optional limit, default is 10
  account: 'ming' // optional account name
});

Bug fix

  • regression found in #255, potential race condition. Reverted the change, but kept the error log

Fix error callback on bad install

27 Oct 14:24
3f9a27a
Compare
Choose a tag to compare

Fixed an error that caused spotcast to enter an error state when the official Spotify Installation is not configured in home assistant. The fix does a check at the start of the script. If the spotify integration is missing, spotcast will send an error log explaining the missing component and exit.

Correction for:

Added search to service

23 Sep 14:16
debc185
Compare
Choose a tag to compare

@kylepotts added Search 🥇

It works by providing the data field "search" ie:

service: spotcast.start
data:
  entity_id: media_player.cuisine
  random_song: true
  shuffle: true
  search: between the buried and me

Currently the code will only do a search request if the Uri field is empty. The flow of the search is has followed:

Intercept if Uri is none or empty
Get the most relevant result from each searchType (artist, album, track, and playlist)
Sort the results according the most identical to the search query
Set the Uri to the one of the results in index zero of the list
Continue the usual flow of the component
...
In case multiple results are identical, the priority will be artist->album->track->playlist. Let's take the search exemple "Between the buried and me". We have a song called "between the buried and me" on an album of the same name from a band of the same name. The uri that is returned will be the one from the artist.

Fix playlist sensor

29 Aug 11:11
Compare
Choose a tag to compare

Fix playlist sensor