Skip to content

Support for Spotify DJ X #1393

@foxt

Description

@foxt

When attempting to use Spotify's DJ feature when connected to Librespot, the app shows a "something went wrong" error, and attempting to connect to Librespot after starting DJ locally disables DJ and ends playback after the current song

Log output

Feb 03 11:35:09 pi43 spotifyd[4200]: [WARN] couldn't load context info because: context is not available. type: Default
Feb 03 11:35:09 pi43 spotifyd[4200]: [WARN] couldn't load context info because: context is not available. type: Default
Feb 03 11:35:09 pi43 spotifyd[4200]: [ERROR] context didn't have any tracks: Context {
Feb 03 11:35:09 pi43 spotifyd[4200]:     uri: Some(
Feb 03 11:35:09 pi43 spotifyd[4200]:         "spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:35:09 pi43 spotifyd[4200]:     ),
Feb 03 11:35:09 pi43 spotifyd[4200]:     url: Some(
Feb 03 11:35:09 pi43 spotifyd[4200]:         "context://spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:35:09 pi43 spotifyd[4200]:     ),
Feb 03 11:35:09 pi43 spotifyd[4200]:     metadata: {
Feb 03 11:35:09 pi43 spotifyd[4200]:         "context_description": "DJ",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.tag_color": "#FF0D72EA",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.jellyfish_mid_color": "#CB1ED7BC",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.text_color": "#FFFFFFFF",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "format_list_type": "unknown",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "context_owner": "spotify",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.dj.transcript_text": "Hey it's me, your DJ. Got all kinds of music for you. Just press play.",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.jellyfish_bottom_color": "#7F1E95D7",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.background_color": "#FF0A59B8",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "context_long_description": "DJ",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "lexicon_context_url": "hm://lexicon-session-provider/context-resolve/v2/session?contextUri=spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "add_context_load_reason": "true",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.jellyfish_animation": "https://lexicon-assets.spotifycdn.com/DJ_Lottie_tighter.json",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "lexicon_set_type": "your_dj",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.dj.transcript_id": "justpressplay0",
Feb 03 11:35:09 pi43 spotifyd[4200]:         "home.card.jellyfish_top_color": "#FF19E68C",
Feb 03 11:35:09 pi43 spotifyd[4200]:     },
Feb 03 11:35:09 pi43 spotifyd[4200]:     restrictions: MessageField(
Feb 03 11:35:09 pi43 spotifyd[4200]:         None,
Feb 03 11:35:09 pi43 spotifyd[4200]:     ),
Feb 03 11:35:09 pi43 spotifyd[4200]:     pages: [
Feb 03 11:35:09 pi43 spotifyd[4200]:         ContextPage {
Feb 03 11:35:09 pi43 spotifyd[4200]:             page_url: None,
Feb 03 11:35:09 pi43 spotifyd[4200]:             next_page_url: None,
Feb 03 11:35:09 pi43 spotifyd[4200]:             metadata: {},
Feb 03 11:35:09 pi43 spotifyd[4200]:             tracks: [],
Feb 03 11:35:09 pi43 spotifyd[4200]:             loading: None,
Feb 03 11:35:09 pi43 spotifyd[4200]:             special_fields: SpecialFields {
Feb 03 11:35:09 pi43 spotifyd[4200]:                 unknown_fields: UnknownFields {
Feb 03 11:35:09 pi43 spotifyd[4200]:                     fields: None,
Feb 03 11:35:09 pi43 spotifyd[4200]:                 },
Feb 03 11:35:09 pi43 spotifyd[4200]:                 cached_size: CachedSize {
Feb 03 11:35:09 pi43 spotifyd[4200]:                     size: 0,
Feb 03 11:35:09 pi43 spotifyd[4200]:                 },
Feb 03 11:35:09 pi43 spotifyd[4200]:             },
Feb 03 11:35:09 pi43 spotifyd[4200]:         },
Feb 03 11:35:09 pi43 spotifyd[4200]:     ],
Feb 03 11:35:09 pi43 spotifyd[4200]:     loading: None,
Feb 03 11:35:09 pi43 spotifyd[4200]:     special_fields: SpecialFields {
Feb 03 11:35:09 pi43 spotifyd[4200]:         unknown_fields: UnknownFields {
Feb 03 11:35:09 pi43 spotifyd[4200]:             fields: None,
Feb 03 11:35:09 pi43 spotifyd[4200]:         },
Feb 03 11:35:09 pi43 spotifyd[4200]:         cached_size: CachedSize {
Feb 03 11:35:09 pi43 spotifyd[4200]:             size: 0,
Feb 03 11:35:09 pi43 spotifyd[4200]:         },
Feb 03 11:35:09 pi43 spotifyd[4200]:     },
Feb 03 11:35:09 pi43 spotifyd[4200]: }
Feb 03 11:35:09 pi43 spotifyd[4200]: [ERROR] Invalid state { the provided context has no tracks }
Feb 03 11:35:09 pi43 spotifyd[4200]: [ERROR] setup of state failed: Invalid state { context is not available. type: Default }, last used resolve ResolveContext {
Feb 03 11:35:09 pi43 spotifyd[4200]:     resolve: Uri(
Feb 03 11:35:09 pi43 spotifyd[4200]:         "spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:35:09 pi43 spotifyd[4200]:     ),
Feb 03 11:35:09 pi43 spotifyd[4200]:     fallback: Some(
Feb 03 11:35:09 pi43 spotifyd[4200]:         "spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:35:09 pi43 spotifyd[4200]:     ),
Feb 03 11:35:09 pi43 spotifyd[4200]:     update: Default,
Feb 03 11:35:09 pi43 spotifyd[4200]:     action: Replace,
Feb 03 11:35:09 pi43 spotifyd[4200]: }
Feb 03 11:35:09 pi43 spotifyd[4200]: [WARN] couldn't load context info because: context is not available. type: Default
Feb 03 11:35:09 pi43 spotifyd[4200]: [ERROR] failed to handle request: Invalid state { context is not available. type: Default }
Feb 03 11:36:02 pi43 spotifyd[4200]: [INFO] device became inactive
Feb 03 11:36:02 pi43 spotifyd[4200]: [WARN] couldn't load context info because: context is not available. type: Default
Feb 03 11:36:02 pi43 spotifyd[4200]: [WARN] failed filling up next_track during stopping: Invalid state { context is not available. type: Default }
Feb 03 11:36:13 pi43 spotifyd[4200]: [WARN] couldn't load context info because: context is not available. type: Default
Feb 03 11:36:13 pi43 spotifyd[4200]: [INFO] Loading <Year of the Cup> with Spotify URI <spotify:track:2MmmnMXMAdLUAvyPlD06Qj>
Feb 03 11:36:13 pi43 spotifyd[4200]: [INFO] <Year of the Cup> (262770 ms) loaded
Feb 03 11:36:13 pi43 pipewire-pulse[1868]: can't assign STEREO
Feb 03 11:36:13 pi43 spotifyd[4200]: [ERROR] context didn't have any tracks: Context {
Feb 03 11:36:13 pi43 spotifyd[4200]:     uri: Some(
Feb 03 11:36:13 pi43 spotifyd[4200]:         "spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:36:13 pi43 spotifyd[4200]:     ),
Feb 03 11:36:13 pi43 spotifyd[4200]:     url: Some(
Feb 03 11:36:13 pi43 spotifyd[4200]:         "context://spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:36:13 pi43 spotifyd[4200]:     ),
Feb 03 11:36:13 pi43 spotifyd[4200]:     metadata: {
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.jellyfish_mid_color": "#CB1ED7BC",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.jellyfish_bottom_color": "#7F1E95D7",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "context_owner": "spotify",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "lexicon_context_url": "hm://lexicon-session-provider/context-resolve/v2/session?contextUri=spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.jellyfish_top_color": "#FF19E68C",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.dj.transcript_text": "Hey your DJ is here. I'm ready to scratch that discovery itch for you today.",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "add_context_load_reason": "true",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.dj.transcript_id": "discovery7",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "format_list_type": "unknown",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.tag_color": "#FF0D72EA",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "context_long_description": "DJ",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.jellyfish_animation": "https://lexicon-assets.spotifycdn.com/DJ_Lottie_tighter.json",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "lexicon_set_type": "your_dj",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "context_description": "DJ",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.text_color": "#FFFFFFFF",
Feb 03 11:36:13 pi43 spotifyd[4200]:         "home.card.background_color": "#FF0A59B8",
Feb 03 11:36:13 pi43 spotifyd[4200]:     },
Feb 03 11:36:13 pi43 spotifyd[4200]:     restrictions: MessageField(
Feb 03 11:36:13 pi43 spotifyd[4200]:         None,
Feb 03 11:36:13 pi43 spotifyd[4200]:     ),
Feb 03 11:36:13 pi43 spotifyd[4200]:     pages: [
Feb 03 11:36:13 pi43 spotifyd[4200]:         ContextPage {
Feb 03 11:36:13 pi43 spotifyd[4200]:             page_url: None,
Feb 03 11:36:13 pi43 spotifyd[4200]:             next_page_url: None,
Feb 03 11:36:13 pi43 spotifyd[4200]:             metadata: {},
Feb 03 11:36:13 pi43 spotifyd[4200]:             tracks: [],
Feb 03 11:36:13 pi43 spotifyd[4200]:             loading: None,
Feb 03 11:36:13 pi43 spotifyd[4200]:             special_fields: SpecialFields {
Feb 03 11:36:13 pi43 spotifyd[4200]:                 unknown_fields: UnknownFields {
Feb 03 11:36:13 pi43 spotifyd[4200]:                     fields: None,
Feb 03 11:36:13 pi43 spotifyd[4200]:                 },
Feb 03 11:36:13 pi43 spotifyd[4200]:                 cached_size: CachedSize {
Feb 03 11:36:13 pi43 spotifyd[4200]:                     size: 0,
Feb 03 11:36:13 pi43 spotifyd[4200]:                 },
Feb 03 11:36:13 pi43 spotifyd[4200]:             },
Feb 03 11:36:13 pi43 spotifyd[4200]:         },
Feb 03 11:36:13 pi43 spotifyd[4200]:     ],
Feb 03 11:36:13 pi43 spotifyd[4200]:     loading: None,
Feb 03 11:36:13 pi43 spotifyd[4200]:     special_fields: SpecialFields {
Feb 03 11:36:13 pi43 spotifyd[4200]:         unknown_fields: UnknownFields {
Feb 03 11:36:13 pi43 spotifyd[4200]:             fields: None,
Feb 03 11:36:13 pi43 spotifyd[4200]:         },
Feb 03 11:36:13 pi43 spotifyd[4200]:         cached_size: CachedSize {
Feb 03 11:36:13 pi43 spotifyd[4200]:             size: 0,
Feb 03 11:36:13 pi43 spotifyd[4200]:         },
Feb 03 11:36:13 pi43 spotifyd[4200]:     },
Feb 03 11:36:13 pi43 spotifyd[4200]: }
Feb 03 11:36:13 pi43 spotifyd[4200]: [ERROR] Invalid state { the provided context has no tracks }
Feb 03 11:36:13 pi43 spotifyd[4200]: [WARN] couldn't load context info because: context is not available. type: Default
Feb 03 11:36:13 pi43 spotifyd[4200]: [ERROR] setup of state failed: Invalid state { context is not available. type: Default }, last used resolve ResolveContext {
Feb 03 11:36:13 pi43 spotifyd[4200]:     resolve: Uri(
Feb 03 11:36:13 pi43 spotifyd[4200]:         "spotify:playlist:37i9dQZF1EYkqdzj48dyYq",
Feb 03 11:36:13 pi43 spotifyd[4200]:     ),
Feb 03 11:36:13 pi43 spotifyd[4200]:     fallback: Some(
Feb 03 11:36:13 pi43 spotifyd[4200]:         "spotify:track:2MmmnMXMAdLUAvyPlD06Qj",
Feb 03 11:36:13 pi43 spotifyd[4200]:     ),
Feb 03 11:36:13 pi43 spotifyd[4200]:     update: Default,
Feb 03 11:36:13 pi43 spotifyd[4200]:     action: Replace,
Feb 03 11:36:13 pi43 spotifyd[4200]: }
Feb 03 11:40:31 pi43 spotifyd[4200]: [INFO] Not playing next track because there are no more tracks left in queue.
Feb 03 11:40:31 pi43 spotifyd[4200]: [WARN] failed filling up next_track during stopping: Invalid state { context is not available. type: Default }

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementA new feature that would improve Spotifyd

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions