TooTallNate / node-spotify-web

Node.js implementation of the Spotify Web protocol
MIT License
696 stars 126 forks source link

TrackError: Account subscription status not Spotify Premium #111

Open ghost opened 9 years ago

ghost commented 9 years ago

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?

Watiswat commented 8 years ago

having some problems again, account subscription not spotify premium...

can anyone advise please?

mervew commented 8 years ago

having troubles here...account subscription status not spotify premium... it was wrking just fine but now this eror shows up

can anyone help?

DoMation666 commented 8 years ago

@Quacky2200 i'am sorry this almost will work the error has vanished but it still don't download anything when i but your files in SilentAngel - Spotify MP3 Downloader , the problem still exist

capture

jengel3 commented 8 years ago

Keep on getting all the network errors or "Track not available in US" with your fork @Quacky2200

jengel3 commented 8 years ago

I was able to fix the region error by switching to your play code rather than using the original example, but yeah network error remains.

samsnyder commented 8 years ago

Over the past week, I have ported this project to Scala.

I am getting this "TrackError: Account subscription status not Spotify Premium" error most times I run the nodejs version, however I have never seen the error in my Scala port.

I was getting the error when I forgot to send back the "work_done" command, but as soon as I sent any argument with that command, the error disappeared.

Is anyone else still having this error, and would there be any demand to publish my Scala port?

Zazama commented 8 years ago

Hi,

I was able to resolve this issue by using node version 4.4.0 instead of 0.10.36 (which I've used before).

jengel3 commented 8 years ago

That resolved the account is not premium issue, correct? On Sun, Apr 17, 2016 at 9:13 AM Jan Metzger notifications@github.com wrote:

Hi,

I was able to resolve this issue by using node version 4.4.0 instead of 0.10.36 (which I've used before).

— You are receiving this because you commented. Reply to this email directly or view it on GitHub https://github.com/TooTallNate/node-spotify-web/issues/111#issuecomment-211026558

Zazama commented 8 years ago

@Jake0oo0

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

jeffdran commented 8 years ago

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 commented 8 years ago

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

jeffdran commented 8 years ago

@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 commented 8 years ago

@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 commented 8 years ago

@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 commented 8 years ago

@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 commented 8 years ago

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

npm install protobufjs@2.2.1

vincentcox commented 8 years ago

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

CoreParadox commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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

juanmito commented 8 years ago

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

juanmito commented 8 years ago

Nope. I've seen first time this morning.

denysvitali commented 8 years ago

@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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 https://github.com/TooTallNate/node-spotify-web/issues/111#issuecomment-230660281, or mute the thread https://github.com/notifications/unsubscribe/AB5sLUaR4Rpcz4ixn-KmT4zIfURiB1Zyks5qSxuYgaJpZM4FdxO_ .

denysvitali commented 8 years ago

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

denysvitali commented 8 years ago

Maybe we could try to reverse engineer the linux app: http://repository.spotify.com/pool/non-free/s/spotify/spotify-client-0.9.17_0.9.17.8.gd06432d.31-1_amd64.deb

denysvitali commented 8 years ago

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

denysvitali commented 8 years ago

Anyway, I was able to get some file URLs, although they seem to be encrypted MP3s:

http://audio-fa.spotify.com/audio/2eba33b3b80e77c6750b398ad7060893d9db1efb?1467794771_w3U/V9gLj0UtCVBk7SSSObmodsqPKlal0FznnEdIJFw= http://audio-fa.spotify.com/audio/4c955a83a85dcb7bcce2e7ce2da19e404ab95a77?1467794438_vMFogSCJ+T1+9Ge9LXh4lN9q+7dF15Qyw6+/A7T/XnY=