Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TrackError: Account subscription status not Spotify Premium #111

Open
ghost opened this issue Jul 22, 2015 · 136 comments
Open

TrackError: Account subscription status not Spotify Premium #111

ghost opened this issue Jul 22, 2015 · 136 comments

Comments

@ghost
Copy link

ghost commented Jul 22, 2015

Just started seeing these responses today

{ [TrackError: Account subscription status not Spotify Premium]
 domain: 12,
 code: 0,
 description: '',
 data: null,
 name: 'TrackError',
 message: 'Account subscription status not Spotify Premium' }

Is this a server side change by Spotify?

@ghost
Copy link
Author

ghost commented Jul 22, 2015

The error is happening even on accounts with Premium (at least, a freshly created one)

@ghost
Copy link
Author

ghost commented Jul 22, 2015

After updating to the latest commit, I'm getting Track is not playable in country

@lucbernard
Copy link

Same here, was working fine yesterday

@vincentcox
Copy link

same here

TooTallNate added a commit that referenced this issue Jul 22, 2015
@TooTallNate
Copy link
Owner

Can you guys try latest master branch? I've reverted the problematic commit in 9ace59c

@lucbernard
Copy link

@TooTallNate I'd already reverted that change on my side

@TooTallNate
Copy link
Owner

@lucbernard and so which error are you seeing now?

@lucbernard
Copy link

"Account subscription status not Spotify Premium". On every track. With both premium & free accounts.

The problem is with Spotify.prototype.trackUri (called by Track.prototype.play)

this.sendCommand('sp/track_uri') returns the error "error":[12,0,""],"id":13} systematically

@vincentcox
Copy link

"Can you guys try latest master branch? I've reverted the problematic commit in 9ace59c"
Noob question: if I just do "#npm install spotify-web", will I get updated to your latest branch commit?
If yes: then my output is:
TrackError: Account subscription status not Spotify Premium
at Spotify._onmessage (/app/node_modules/spotify-web/lib/spotify.js:401:15)

@TooTallNate
Copy link
Owner

Noob question: if I just do "#npm install spotify-web", will I get updated to your latest branch commit?

No, since I haven't published a new version to npm yet, only pushed to this git repo.

"Account subscription status not Spotify Premium". On every track. With both premium & free accounts.

I'm not getting this error on my end, so you'll have to do some digging to find out what the culprit is I think...

@LinusU
Copy link
Contributor

LinusU commented Jul 22, 2015

You can install it with npm install TooTallNate/node-spotify-web#master

@vincentcox
Copy link

thanks for clearing that up, Nathan and LinusU.
I get the same error after updating

@npresseault
Copy link

Getting this with the samples as well:

node example/play.js

Playing: The Whispers - And the Beat Goes On

TrackError: Account subscription status not Spotify Premium

node --version

v0.10.28

@ghost
Copy link
Author

ghost commented Jul 23, 2015

So are we sure that the account types are as follows? Where do these values come from?

premium: 'SUBSCRIPTION',
unlimited: 'SUBSCRIPTION',
free: 'AD'

@ghost ghost changed the title Tracks no longer playable without Spotify premium? TrackError: Account subscription status not Spotify Premium Jul 23, 2015
@ghost
Copy link
Author

ghost commented Jul 23, 2015

I got the idea to change the user agent, based on a few old issues centered around this same error. I tried setting it to a generic Chrome on OS X UA string, but it doesn't seem to have any impact one way or another.

@juanmito
Copy link

Hi guys

Any news?

I've just testing and, without TooTallNate commit, i've got "Account subscription status not Spotify Premium", and applying it, the other error: "Track is not playable in country"

I'm confused. This was working yesterday :(

@juanmito
Copy link

Hmm, I've done a lot of changes, but nothing appears to change. Any ideas?

Thanks

@juanmito
Copy link

Just a question. Can someone play one song right now?

I've just installed the latest NodeJS version for Mac OS X, and then, I've downloaded the last branch doing npm install TooTallNate/node-spotify-web#master

And it doesn't works. I've tried to modify some attributes bur nothing changed.
Maybe, country codes have changed internally to numerical codes, so, could it be possible to try something like that? And, would it be possible to see any trace with wireshark or something like that stuff?

Thanks

@TooTallNate
Copy link
Owner

I'm getting it now too :(

@ghost
Copy link
Author

ghost commented Jul 24, 2015

@TooTallNate Anything we can do to help, or any avenues you have in mind to pursue? Much of this is currently above my head but I can certainly try

@juanmito
Copy link

@sciencepro +1
If @TooTallNate have any clue, please share, and if we can help..

@12finger
Copy link

maybe premium is now zero or "0" ?!
or "201" ?!

      var accountTypeMap = {

        premium: '0',
        unlimited: 'premium',
        free: 'AD'
      };

spot_web

@aaiyer
Copy link

aaiyer commented Jul 25, 2015

What's odd, IT IS working for me on my Arch Linux system, while on other Linux distros (tried Ubuntu & RHEL) and Windows it does not work... Tried to find the root cause, got lazy and installed my app in a docker container that has Arch running in it instead...

@ghost
Copy link
Author

ghost commented Jul 25, 2015

@aaiyer anything different about the configs? Node version? Module versions?

@ghost
Copy link
Author

ghost commented Jul 25, 2015

@aaiyer it works! Brand new arch install with Node v0.12.7

@aaiyer
Copy link

aaiyer commented Jul 25, 2015

@sciencepro I took the same Node v0.12.7 and modules and put it in another distro, didn't work.. I suspected it was something in protobuf, so I upgraded the node module to use the latest stable sources of protobuf to no avail ... But doesn't matter, its easier to just use arch.

@ghost
Copy link
Author

ghost commented Jul 25, 2015

Thanks so much @aaiyer. I'm definitely fine using Arch since that seems to be the more reliable choice. Would still be interesting to know what the root cause was here.

@alfs
Copy link

alfs commented Jul 25, 2015

I have the same auth problems. Trying to pinpoint what differs in the protocol, I tested a brand new Arch install (150701 dual iso), booted from iso, installed npm, and npm installed the git master.

Now I instead get error 'Track is not playable in country "SE"'.

@Zazama
Copy link

Zazama commented Apr 17, 2016

@Jake0oo0

Right, it was working since august though (using 0.10.36), so there's still a change on spotifys side.

@jeffdran
Copy link

People experiencing issues, just update with Xstasy's fork and then update your packages via npm update within spotify-web --protobufjs gave an error until updating. Got everything working.

@vincentcox
Copy link

@jeffdran can you link the repo? can't find it...

@jeffdran
Copy link

jeffdran commented May 23, 2016

@vincentcox I can't find his fork anymore either, but terranmoccasin's should work. Anything that is the latest:

https://github.com/terranmoccasin/node-spotify-web/

Be sure you end VMWare hostd process or any process using port 80, such as Apache... or change the port to be used in the code for the app you're using.

Edit: found Xstasty's, I spelled it wrong the first time: https://github.com/Xstasy/node-spotify-web

Edit 2: Tested Xstasy's fork and terranmoccasin's. Xstasy's give me no problems, however terranmoccasin's gives me a server error 500 every few songs.

@vincentcox
Copy link

vincentcox commented May 24, 2016

@jeffdran Thanks for pointing me in the right direction! However, I got some problems with the library.

Error: Illegal value for Message.Field .spotify.metadata.proto.Restriction.catalogue: 4 (not a valid enum value)
    at ProtoBuf.Reflect.Field.verifyValue (\node_modules.win32.x64\spotify-web\node_modules\protobufjs\ProtoBuf.js:2318:27)
    at Message.add (\node_modules.win32.x64\spotify-web\node_modules\protobufjs\ProtoBuf.js:1690:53)
    at ProtoBuf.Reflect.Message.decode (node_modules.win32.x64\spotify-web\node_modules\protobufjs\ProtoBuf.js:2134:29)
    at ProtoBuf.Reflect.Field.decode (node_modules.win32.x64\spotify-web\node_modules\protobufjs\ProtoBuf.js:2591:46)
    at ProtoBuf.Reflect.Message.decode (\node_modules.win32.x64\spotify-web\node_modules\protobufjs\ProtoBuf.js:2134:51)
    at Message.decode (\node_modules.win32.x64\spotify-web\node_modules\protobufjs\ProtoBuf.js:1979:41)
    at Function.protobufjs_parse_wrapper [as parse] (node_modules.win32.x64\spotify-web\lib\schemas.js:98:39)
    at Spotify._parse (node_modules.win32.x64\spotify-web\lib\spotify.js:1287:20)
    at parseData (node_modules.win32.x64\spotify-web\lib\spotify.js:591:18)
    at Spotify.<anonymous> (node_modules.win32.x64\spotify-web\lib\spotify.js:651:16)

Any idea where the problem lies? Should I try an older nodeJS version?

@jeffdran
Copy link

jeffdran commented May 26, 2016

@vincentcox Yes, I'm using 4.4.0. Be sure to update protobufjs as I mentioned in my previous post.

Let me know if you need help.

@vincentcox
Copy link

@jeffdran Thanks, I just tried to use that version. However, I still experience some issues. :

Illegal value for Message.Field .spotify.metadata.proto.Restriction.catalogue: 4 (not a valid enum value)

Can't get rid of them :/

@jeffdran
Copy link

Turns out, I'm referencing a separate repo. You will need protobufjs 2.2.1.

npm install protobufjs@2.2.1

@vincentcox
Copy link

@jeffdran Thanks that did the trick! :D But a new error appears:
Error: Track is not playable in country "DE"

@CoreParadox
Copy link

Just started getting this randomly this morning, no changes made to the environment, which makes me believe Spotify must have done something again...

Using Xstasy's fork on Windows with a premium account

@denysvitali
Copy link
Contributor

denysvitali commented Jun 8, 2016

Why don't we rewrite the node-spotify-web using Spotify's Android APIs? For Spotify changing an Android app will cause more troubles than updating the website. For Spotify right now it's a js / swf file versus a built app that has to be published on the Play Store. This will cause them some problems since they will have to cut out Android (or iOS) users that don't update the app, causing major issues

@12finger
Copy link

12finger commented Jun 9, 2016

idea: we could try and build in the spotify flash thingy which gives us the pong back, like build it directly into our expressJS powered downloader.. ?! (i remember, a while ago, there was a server, out in the wild, to whom we made a request to get the pong back..)
i have no clue yet on how to do it, somehow as a standalone site, running on our very own system, to get a nice and valid and always up to date ping/pong verification, something like "faking" the original spotify web-player scenario..

@aaronholtomcook
Copy link

I'm assuming spotify has changed their API again, as this is the last message I receive:

Is anybody else getting this?

spotify-web WebSocket "message" event: {"id":7,"result":{"lid":"0:86ab404c5da04a6bae6321d8802a7842:4599265054657716:1465472639:8cd830fcb361350ecbd0a5706eaca3db5599f33e:8ebe90d58d49497c11ea5094c0ffdca58e270d38","tid":"86ab404c5da04a6bae6321d8802a7842","type":0,"uri":"http://dsu0uct5x2puz.cloudfront.net/mp3enc/8cd830fcb361350ecbd0a5706eaca3db5599f33e?Expires=1465472640&Signature=AaoMxwRgo16o9rp4L55H23tESBc--5tMQrvK96WWbIrjOHZKo9jt1ByxndnSwviVb6teLFpj4txQWGdDmsp~3wvdr~NulKCqVtDR4F6zLsdoFMwjJh3n0DK0SoucnMutuZypk2C6aFv3e4qz6-luIeicJZJbwjiH0vq6BO4mKzP_&Key-Pair-Id=APKAIJ6GQLKYCDRS5HFA"}} +19ms

@jmmc
Copy link

jmmc commented Jun 10, 2016

Yes, I'm receiving it too. Sometimes this log and other {"error":[12,0,""],"id":6}

When you enter on the url it says that Key-Pair-Id is wrong.

@Musiphilos
Copy link

I've also recently started to receive the "TrackError: Account subscription status not Spotify Premium" on my Premium account and no changes where made to the system.

@juanmito
Copy link

juanmito commented Jul 4, 2016

Hi.
I'm receiving the same error :(
Any clues?

@juanmito
Copy link

juanmito commented Jul 5, 2016

Wow, today I've found a reCaptcha. I think there's no solution for that, isn't it?

@juanmito
Copy link

juanmito commented Jul 5, 2016

Nope. I've seen first time this morning.

@denysvitali
Copy link
Contributor

@juanmito Are you sure? Do you have a screenshot / URL?

It seems really, really strange to me. It may also be nearly impossible for spotify to put a captcha for their free / premium users. There will probably always be a way...

@juanmito
Copy link

juanmito commented Jul 5, 2016

Here it is.
screenshot

Anyway, I've discovered It this morning when I tried to use nodespotifyweb. I had an error at login stage, and then, I visited the website.
----------------------------------fallback: Invalid captcha value supplied----------------------------------

@denysvitali
Copy link
Contributor

Well, that problem differs from the one that is being discussed here.
Hypotetically you should only login once, and then the session shouldn't have a short lifetime.
Therefore, this isn't a blocking problem yet - IMHO we have more important problems right now (like playing the audio files).
You may need to open another issue

@juanmito
Copy link

juanmito commented Jul 5, 2016

Hi.
Of course this is another issue, but, I think this is the most important problem. If you can't login, it will be impossible, not to play audio files, but just try to search something.
Anyway, til today, I was looking for a solution, because I've seen that node_spotify was working correct in some systems (ej. Ubuntu 16.4 with node 4.2.6) but not in 14.04.

I couldn't find any difference.

I'll open another issue about this

@denysvitali
Copy link
Contributor

If you can't login via an automatic system due to captcha you can still login manually and extract the cookies / access tokens needed.
I understand your problem, probably this could be fixed by reverse engineering the Android / iOS app since there isn't such a limitation there.

@jengel3
Copy link

jengel3 commented Jul 6, 2016

Obviously it depends on what you're using node-spotify for, but since I was
doing a personal project for home use (speaker setup), I used NodeJS for a
backend API and then used redis pub/sub to play songs from PySpotify, which
works 100% of the time. Obviously this isn't a viable solution for web
applications, but just a suggestion for those looking for temporary/simpler
solutions.

On Tue, Jul 5, 2016 at 10:06 PM jeffdran notifications@github.com wrote:

@denysvitali https://github.com/denysvitali It would be easier to mod
the app instead of completely reverse engineering it... though I'm sure
this solution wouldn't be a fix for everyone. For what I like it for,
running it on BlueStacks would be good enough.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#111 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AB5sLUaR4Rpcz4ixn-KmT4zIfURiB1Zyks5qSxuYgaJpZM4FdxO_
.

@denysvitali
Copy link
Contributor

@jeffdran Well, that could be a solution, but apparently it isn't cross platform (or at least it isn't available for Linux 😢 )

@denysvitali
Copy link
Contributor

@denysvitali
Copy link
Contributor

I'll be happy to join the IRC / chat if someone is gonna create it 👍

denysvitali referenced this issue in Shigawire/node-spotify-web Jul 6, 2016
removes the dependency on http://git.io/WyCx0Q
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests