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
Login not working #87
Comments
|
I've looked into this issue a bit, the 'ping_flash2' command has been changed (again), but it isn't a simple key change this time. We will probably need to determine the new algorithm used for generating 'pong_flash2' responses. I've traced this back to a "ping_pong" method in "player.swf", but this would need to be deobfuscated. Not sure how this was found originally, maybe someone else has some ideas? |
|
Bummer, that's what I was afraid of! Thanks for looking. |
|
I can't get it the way I'd like, seems like it's not a simple XOR operation anymore but a bit more complex logic, but I can brute force it (ugly I know, but it works): https://gist.github.com/adammw/7f192694c3ed0b13f1f9 |
|
@adammw Good work, that really works! |
|
Do you have means to run player.swf locally, or did you make 256 manual calls to sp_run? I tried to find any way to calculate the correct number, but so far no luck ... |
|
I have been working a bit with this too. I haven't had any luck in decompiling the flash file, but I managed to host the flash file in a local server and obtaining the real pong value using a headless selenium. I am using flask to load a webserver and then I use selenium to fetch the page and look for the value, whichs opens a firefox to render the page. I managed to do it headless in linux with xvfb. Final user don't see what is happeing behind the hood, but is slow, requires firefox and flash, so is not something you would like in a library. Anyway I wanted to share this info, in case you can think of a better alternative based on this. Firefox is the real PITA, I couldn't find a better way to render a HTML+JS+Flash. |
|
In a perfect world we would fire up Shumway within Node.js and load up the player.swf file and invoke the ping_pong function directly. I know that @adammw looked into this idea though and there were complications related to the fact that the swf file uses Adobe Alchemy to compile C code to Flash, which Shumway didn't support (at the time... not sure if that's changed or not). |
|
Just in case it matters, the flash funtion I call is "sp_run" |
|
@adammw 's solution doesnt work for me unfortunetly, atleast thats how I interprete it... Without the modification I don't get any message at all. |
|
@Miladiir that's an exception in your code, not ours. |
|
Replaced Am I doing something wrong? |
|
@adammw thanks for the fix! |
|
You know, I'm not sure what changed on their end, but the current code in the repo is working for me again (without @adammw's patch). Can anybody else confirm? |
|
Yep. I used |
|
I seem to be running into this issue as of this morning. |
|
Yup :( On Mon, Jul 28, 2014 at 8:15 AM, Patrick Burns notifications@github.com
|
|
I tried putting @adammw brute force into the spotify.js, no luck. Can we open the issue back up? |
|
Any idea? I've been working on this issue. I've only discover that 5º position on pong is 4º ping position XOR 37, and last ping position (19) changes first pong position sometimes. I'm trying to find any pattern. I think it should be great if anyone who discover something could share it here. I'll post my discovers if anyone want :) |
|
It looks like the algorithm got a lot smarter, it is not relating one index to one other. It seems it is changing the internals quite a lot, the final byte looks like it triggers some sort of if/ else effect. The final byte seems to trigger position 1, 2, 6, 7 and 9, but it also varies at what number it uses the if/ else branche .... document.querySelector('[id_=player]').sp_run("12 23 125 43 56 72 56 76 45 34 12 64 127 143 1 2 3 4 5 10") document.querySelector('[id_=player]').sp_run("0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0") 10 and 11 here both give: |
|
Yep, looks really complex. I'm guessing the idea is that to brute force the algorithm will take a non-trivial amount of time. |
|
Interesting. I decided to investigate byte 3 further and found that it depends on input byte 7 when input byte 6 is zero, and then only on input byte 6 for all other values. But it doesn't seem to be an XOR of byte 6 so it's only so helpful. |
|
Its really complex. Almost all inputs affect all outputs 0 --> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
Maybe we can try another solution. Instead of emulating player.swf functionality, we could call and use it to get the pong chain and follow the workflow. Any idea of executing the swf file directly from node and calling sp_run function? |
|
I've been trying this evening to call No Even if |
|
I followed this thread, but when I use @1994rstefan 's solution, my music plays sometimes, but sometimes gives me a "Failed to send to backend (Invalid user)" error. Does anyone know how fix this? I'd really appreciate it! |
|
Have you guys though about integrating the player within node-webkit (https://github.com/rogerwang/node-webkit) instead of including it in a separate worker-server? |
|
@1994rstefan Did your server crash again? it isn't working anymore:( Please advice. |
|
@Watiswat Nope - works for me |
|
My brain is fried and I'm not smart enough to figure out what to do What do I have to do to get Spotify Mp3 Downloader working again? Please help the uninitiated. |
Closes #98. Squashed commit of the following: commit 547cb2b Author: Denys Vitali <denys@denv.it> Date: Thu Dec 11 18:15:25 2014 +0100 Removed request dependency commit 435b266 Author: Denys Vitali <denys@denv.it> Date: Thu Dec 11 18:15:02 2014 +0100 Replaced request with superagent commit e661d43 Author: Denys Vitali <denys@denv.it> Date: Thu Dec 11 12:28:44 2014 +0100 Update package.json commit e971f19 Author: Denys Vitali <denys@denv.it> Date: Thu Dec 11 12:01:08 2014 +0100 Added request module to deal with sendPong commit 200f5c0 Author: Denys Vitali <denys@denv.it> Date: Thu Dec 11 12:00:30 2014 +0100 Updated Spotify sendPong commit b08ed0d Author: Denys Vitali <denys@denv.it> Date: Thu Dec 11 00:42:39 2014 +0100 Updated Spotify sendPong Thanks to @1994rstefan #87 (comment)
|
Login failed again... invalid username/password it says .. anyone? |
|
@giacecco thanks, problem solved! |
|
So, it seems that login isn't working for me anymore. I've been running my own pingpong server, and it says it's returning the pong ok, but still fails to login. Only have one pong worker if that helps. I tried ping-pong.spotify.nodestuff.net, but seems to be down at the moment. Anyone else having issues? |
|
Seeing similar issues with login via facebook or credentials. |
|
It's just weird because it's not throwing any errors at all. Making it a little difficult to debug. |
|
Yeah it's just spitting out a 403, I have not had the chance yet to dive in and see where it is failing. |
|
@TooTallNate should there be a new issue for this, or re-open this one? Will try to examine this further after my finals |
|
Seems to be working again |
|
Not working for me :/ Edit: Got it working. Just didn't have the header set to application/json for server.js. |
|
Hello, Von: jeffdranmailto:notifications@github.com Got it working with the server, but it's not working from local server. Reply to this email directly or view it on GitHub: |
|
Instead of making a new thread... anyone here experiencing "Track is not playable in country" issues? I can login fine, but cannot access track info. My assumption is they changed country codes to numbers. |
|
@jeffdran Prior to updating to the latest commit, I was getting errors like After updating, I'm getting |
|
@sciencepro I was getting the same issue until I updated. It's definitely recent, I had no problems about 2 days ago. I'll try looking into it either tonight or tomorrow morning. |
|
@jeffdran I'm getting the same track error since a couple days, any clue what the problem might be? |
|
Duplicate of #111 |
|
Hi Guys, I got this spotify music download about 6 months ago, it was working fine until now, any suggestions ?? |
Starting this morning, I'm not able to login. I've tried several accounts (all premium).
Never gets to logged in- it either hangs at about to login, or I get this error:
The text was updated successfully, but these errors were encountered: