DAILY_SKIP_LIMIT_REACHED Error Not Handled/New #214

Closed
masterkoppa opened this Issue Jan 19, 2012 · 30 comments

Comments

Projects
None yet
Contributor

masterkoppa commented Jan 19, 2012

As I was skiping through songs in a station I encoutered the Playlist end message. When trying to change stations I encoutered this error message

libpiano: Unknown error DAILY_SKIP_LIMIT_REACHED in com.savagebeast.radio.RadioApplicationException: 192.168.161.228|1326941005365|DAILY_SKIP_LIMIT_REACHED
Error: Unknown.

The error keeps appearing no matter how many times I log in/out, change stations, etc.

On the website I can move stations, skip and play music without a probelm. The problem only occurs when using pianobar.

If you need any additional information please let me know.

Running on Archlinux(x86_64)

Have had several users come to me with this same error. Can not confirm that pandora website still works.

Pandora website does still work. Based on experimentation, the problem i ran into with creating anonymous users has just happened for everything: the old synctime method is no longer correct. They seem to have added an argument, which the contents of actually matter. If it's correct then everything works fine.

Contributor

masterkoppa commented Jan 19, 2012

So from what you are saying is this a fixable problem, or is it a server side limitation?

EDIT: Upon testing the next morning everything seems to work just fine.

Owner

PromyLOPh commented Jan 20, 2012

There seems to be a new “key” that – if not sent by the client – imposes
somewhat stricter limits on the client. If we knew how to generate it
(it is time-based and has a lifetime of at least two or three days), we
could “pass” this test and the error would go away.

See this gist for a working key: https://gist.github.com/1646245

PromyLOPh added a commit that referenced this issue Jan 20, 2012

I ran into this issue for the second time today. Can you provide any guidance on how to obtain this "key"? The one in the gist doesn't seem to work for me.

Contributor

masterkoppa commented Jan 25, 2012

PromyLOPh:

Could you let us know where did you grab that key value from or where can we find our own key so that we may look them up and maybe try to figure them out/reverse engineer them?

Owner

PromyLOPh commented Jan 25, 2012

The keys expire after a few days.

With Firebug: Enable Firebug, reload the page, click the DOM tab, search
for “TunerVars” and expand, then “_data” and finally “c” which is the
key you are looking for.

Note that this move directly targets third-party clients like pianobar
and Pandora currently has the finger on the trigger that disables all
third-party clients that use their web API. To prevent further
escalation pianobar will not support methods to circumvent the
restriction officially in the near future.

Unless someone else aleady did this I will ask Pandora for a statement
on this issue and post it here.

See http://6xq.net/blog/2012/api/ for details on the authorization
method Pandora uses.

Would subscribing to Pandora One (which I've been considering anyway) make this problem go away?

vekin commented Jan 25, 2012

mckooper: Not sure I had the trial for Pandora One activated and it had no effect on the API I still got the limit error.

@PromyLOPh I did as you said and got my key looking at firebug and added it here -> https://gist.github.com/1646245, but now I get the following error -> Login... Error: Out of sync. Please correct your system's time.

Owner

PromyLOPh commented Jan 25, 2012

This usually means your key is wrong (unless you get the same error
without a key too.)

@PromyLOPh do i have to login as my user in pianobar, do I need to have pandoraONE?, or do i have to be signed out
when i get the key from firebug ^ ?

It looks like whether or not i'm signed in it changes everytime i refresh the page

Contributor

masterkoppa commented Jan 26, 2012

@PromyLOPh I will have to agree with you on not implementing a way to overrice this limitation. I wouldn't like for this great project to become useless because Pandora decides to break it. I would mark this as won't fix and let this rest until you recieve an official response from pandora on this issue if you ever do.

If this limitation would go away with PandoraOne that would be great and would definately consider getting it, but so far I'm happy with what we have.

@mckooper et al I am a Pandora One subscriber and this issue is impacting me as well.

slevine commented Jan 26, 2012

Just updated to latest on master and get the following error:

Receiving new playlist... Error: Daily skip limit reached

Website works fine for me.

davidbrenner/pianobar@fc7532e

I've committed a change to my fork that reads the "key" from the configuration file. It's probably not the cleanest code (no error checking if key is not defined in the config file), but it is better than having to recompile. By the way, the pianobar code is very well-written. Kudos @PromyLOPh!

If it continues to annoy me, this weekend I'll probably write a windmill-based script to load up the pandora page and grab the key. Though, based on the discussion here, I don't think I'll release that. I'm very interested to see Pandora's official comments on this.

I've been sitting here at work listening all day and haven't reached the limit. Odd.

Separate thought: Pandora One includes "Access to the Pandora One Desktop App, which functions independently of a browser window". I have no experience with the app, but it might be interesting to see what traffic it is generating...

slevine commented Jan 28, 2012

Strange - today when listening I didn't skip a single song yet the above mentioned error appeared after about an hour of use. Had to revert back to using the website.

I should add, I updated to the latest code (commit fc7532e), and started receiving the following error:

Login... Error: Out of sync. Please correct your system's time.

Owner

PromyLOPh commented Jan 28, 2012

The desktop app uses a different API, but I don’t have the time to
reverse-engineer its protocol. I’ve had a look at it though and could
give you (or anyone else) a few hints.

02strich commented Feb 1, 2012

Just as an observation: I am an PandoraOne subscriber and am still using pianobar without any issues (also for extended periods at once)

gtsafas commented Feb 8, 2012

This was working fine on my Mac last night, today at work I am getting the same issues (Ubuntu 11.04). Both I build from source. I tried the suggested patch and also now receive Error: Out of sync. Please correct your system's time.

Are there any other suggestions?

edmcman commented Feb 8, 2012

I just got this error for the first time today, as soon as I open pianobar:

(i) Receiving new playlist... Error: Daily skip limit reached.

I did not skip any songs.

My patch (commit 4df7cec) requires you to specify the "key," however that no longer seems to work. The out of sync error means you did not provide the correct key. Unfortunately, pandora seems to be very proactively discouraging the use of 3rd party clients. Even with the correct key, I now still receive the daily skip limit error.

It would be nice to see pandora give some sort of "official" statement on this instead of just reading the thread and changing their "security" measures after workarounds are discovered.

gtsafas commented Feb 8, 2012

I upgraded to pandora one and now its working again.

Owner

PromyLOPh commented Feb 8, 2012

The authorization token’s validity has been reduced. It can only be used
once now.

I set up a webservice that fetches a fresh token:
https://6xq.net/pandora-auth
Please be polite and don’t retrieve this URL more often than you have
to. If the load gets too high I’ll take it down again.

Owner

PromyLOPh commented Feb 9, 2012

Update: It seems there is another way to circumvent the skip limit
restriction. Please give this patch a try:
https://gist.github.com/1778702

Thanks to ZigZagJoe for providing the server-side script.

It looks like the skip limit has been removed. I've skipped upwards of 10 songs with no DAILY_SKIP_LIMIT_REACHED and this is without zigzagjoes patch

Owner

PromyLOPh commented Feb 9, 2012

It looks like the skip limit has been removed.
Or increased. Anyway, I suppose that’s a good sign and we can close this
issue now.

I'm curious to what their intentions were with this error in the first place. They could have blocked us off completely if we didn't send the sync key, but instead they let us listen in a limited mode.

Was this their way of showing a partial acceptance of third party clients like pianobar? Giving us access, but only just so?

@PromyLOPh PromyLOPh closed this Feb 13, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment