[RELEASE] Pandora Radio (Script) Music Addon (Updated 2011-11-13 : V1.2.8)

  Thread Rating:
  • 10 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
spbogie Offline
Skilled Python Coder
Posts: 125
Joined: Oct 2009
Reputation: 5
Post: #1
This addon is currently undergoing a major rewrite. The version in this first post is no longer functional, however VTWoods has provided a working version which can be found on at https://gitorious.org/~vtwoods/xbmc-pand...ees/master (click "Download master as tar.gz" on the right). If you have any input on design or improvements for the new version, please post your concepts in this thread and/or send me a PM.

[Image: fiZoql.jpg]

Credits:
Code:
- TWC Supplemental by Nuka1195
    Used extensively as a reference for building the GUI.
    Borrowed a few images for initial testing release.

- pianobar
    Copyright (c) 2008-2010 Lars-Dominik Braun <PromyLOPh@lavabit.com>
    http://github.com/PromyLOPh/pianobar | http://6xq.net/html/00/17.html
        Uses as early reference for parts of the pandora protocol.

- jurmb84
    Modified existing script to work with new xbmc addon framework.

- smorloc
    Modified script to include like/dislike/tired functionality; additional
    addon settings;layout changes

- htpc_guy
    Android-like skin

Download:
Gitorious project page
V1.2.10 (MediaFire)

Now go enjoy some music and give me feedback Big Grin

Please use a pastebin service when posting logs to reduce clutter in the thread. Thank you. (Plenty to choose from, take your pick)

P.S. Please remember that Pandora needs to pay royalties for the music they play, and it's the ads which they show on their site that allow them to do so. If you intend to use this script extensively please consider upgrading to a Pandora One account to support them and keep the music flowing. You may also wish to use a separate account for this script just in case they decide to start disabling accounts or something, don't want to loose all your stations and such.
(This post was last modified: 2012-09-20 17:13 by spbogie.)
find quote
spbogie Offline
Skilled Python Coder
Posts: 125
Joined: Oct 2009
Reputation: 5
Post: #2
I've taken the download down temporarily. Found some issues upon further testing.

I'm also starting to question whether I should actually release this considering the way it accesses Pandora using non-public api calls... I don't want to get sued...
find quote
UnisonRuss Offline
Senior Member
Posts: 241
Joined: Jan 2009
Reputation: 0
Location: Los Angeles
Post: #3
I really hope to see this... it looks great, and I would love to use it in XBMC Smile

I love my Mac Mini :;):
find quote
arosequi Offline
Senior Member
Posts: 111
Joined: Nov 2008
Reputation: 0
Post: #4
spbogie Wrote:I've taken the download down temporarily. Found some issues upon further testing.

I'm also starting to question whether I should actually release this considering the way it accesses Pandora using non-public api calls... I don't want to get sued...

You're using pianobar, right? Its creator publishes the source (and binaries) of pianobar, and I don't think he's had any legal issues.

Plus, I don't think using non-public API calls is illegal, is it? Look at the whole Hulu/Boxee debacle a few months ago -- I don't think Hulu ever considered legal action, only technical barriers. I'm sure if they had a legal case, they would've pursued it.
find quote
spbogie Offline
Skilled Python Coder
Posts: 125
Joined: Oct 2009
Reputation: 5
Post: #5
New download up Smile. I believe I've fixed the issues that were causing it to stop playing randomly (stupid mistake on my part :rolleyesSmile

Installation has become slightly more involved, but it affords me a bit of piece of mind. Instructions in the first post (should be fairly self-explanatory.)
find quote
stacked Offline
Skilled Python Coder
Posts: 802
Joined: Jun 2007
Reputation: 18
Post: #6
wow, thanks. Great work. Big Grin
find quote
rsdza Offline
Junior Member
Posts: 3
Joined: Mar 2010
Reputation: 0
Post: #7
Thanks, will have to wait until I get home from work to try it out, but will report back asap Smile

Really excited about this...
find quote
keller999 Offline
Junior Member
Posts: 2
Joined: Mar 2010
Reputation: 0
Post: #8
Hello,

Thank you for working on this! Having some issues with the latest SVN:

Code:
10:54:21 T:2958064496 M:1606062080    INFO: -->Python script returned the following error<--
10:54:21 T:2958064496 M:1606062080   ERROR: Error Type: <type 'exceptions.TypeError'>
10:54:21 T:2958064496 M:1606062080   ERROR: Error Contents: Required argument 'uuid' (pos 1) not found
10:54:21 T:2958064496 M:1606062080   ERROR: Traceback (most recent call last):
                                              File "/home/theater/.xbmc/scripts/Pandora/default.py", line 115, in <module>
                                                panda = Panda()
                                              File "/home/theater/.xbmc/scripts/Pandora/default.py", line 22, in __init__
                                                self.settings = xbmc.Settings( path=scriptPath )
                                            TypeError: Required argument 'uuid' (pos 1) not found
10:54:21 T:2958064496 M:1606062080    INFO: -->End of Python script error report<--

Any direction would be greatly appreciated. Thanks!

-keller999
find quote
spbogie Offline
Skilled Python Coder
Posts: 125
Joined: Oct 2009
Reputation: 5
Post: #9
keller999,
As the addon branch is merged into SVN, there are going to be a number of changes potentially breaking existing scripts. This script was written for the pre-merge xbmc python bindings. Once everything is settled with the merge and new python docs released, I will adjust it accordingly.
find quote
keller999 Offline
Junior Member
Posts: 2
Joined: Mar 2010
Reputation: 0
Post: #10
spbogie Wrote:keller999,
As the addon branch is merged into SVN, there are going to be a number of changes potentially breaking existing scripts. This script was written for the pre-merge xbmc python bindings. Once everything is settled with the merge and new python docs released, I will adjust it accordingly.

Thanks for the info! When it's ready for SVN, I'll be happy to test there. =)

-keller999
find quote
m_lopez_h Online
Member
Posts: 63
Joined: Jul 2004
Reputation: 0
Post: #11
Script works great! One question, how do you exit from the script? I haven't been able to exit with the script with the remote control (I'm using an AppleTV).
find quote
viking2003 Offline
Junior Member
Posts: 4
Joined: Aug 2009
Reputation: 0
Post: #12
Hi:

I followed the direction to copy the 2 key_input.h and key_output.h files. But the script starts with prompting for a username / password when I press Yes to enter the username and passworh the script fails with following error log - Any help

Thanks

14:06:26 T:2496 M:2595434496 NOTICE: load default skin:[Confluence]
14:06:28 T:2496 M:2586779648 NOTICE: initialize done
14:06:28 T:2496 M:2586779648 NOTICE: Running the application...
14:06:28 T:2496 M:2586759168 NOTICE: ES: Starting event server
14:06:28 T:2776 M:2586734592 NOTICE: ES: Starting UDP Event server on 127.0.0.1:9777
14:06:28 T:2776 M:2586681344 NOTICE: UDP: Listening on port 9777
14:06:34 T:2792 M:2560634880 NOTICE: -->Python Interpreter Initialized<--
14:06:39 T:2792 M:2557767680 ERROR: Error Type: exceptions.AttributeError
14:06:39 T:2792 M:2557767680 ERROR: Error Contents: Panda instance has no attribute 'gui'
14:06:39 T:2792 M:2557767680 ERROR: Traceback (most recent call last):
File "C:\Documents and Settings\xxx\Application Data\XBMC\scripts\Pandora\default.py", line 115, in ?
panda = Panda()
find quote
spbogie Offline
Skilled Python Coder
Posts: 125
Joined: Oct 2009
Reputation: 5
Post: #13
@m_lopez_h,
It should currently exit with either the Back button, or with the Esc key. What button do you typically go back with?

@viking2003
Sorry about that, thought I fixed that one already. New download up.
(This post was last modified: 2010-03-26 00:13 by spbogie.)
find quote
m_lopez_h Online
Member
Posts: 63
Joined: Jul 2004
Reputation: 0
Post: #14
If I run XBMC on my PC then yes...I can exit with the <esc> key or <back> button. However, when running on the AppleTV all I have is the remote control (so no access to esc or back keys). All other scripts exit with the <menu> key.

Is it possible to add <menu> keypress to exit the script?

BTW, very cool script!
find quote
spbogie Offline
Skilled Python Coder
Posts: 125
Joined: Oct 2009
Reputation: 5
Post: #15
Ok, try that.

I really need to come up with a better way to handle this than repacking a new zip for every change. Will probably set up a repo on github tomorrow or something.
find quote
Post Reply