Dora

About / FAQ

Dora is a mashup of three API's: Pandora, Twitter, and Bit.ly. The goal is to streamline tweets about what Pandora's playing for Twitter users, so that it's easier to communicate and share your thoughts about the music you're hearing, and maybe explore some new music while you're at it. Sure, Gtalk and AIM provide a way for you to broadcast info about your iTunes music through your status/away message. But if we're talking music and status updates in '09, Pandora and Twitter are where it's at.

It is also my final class project for Mixing and Remixing Information, the web mashup course taught by Raymond Yee at the UC Berkeley School of Information, where I am a second-year master's student. I am on twitter as dish_, on Pandora as sellout, and my own personal/professional site is www.is-h.org.

You can follow dora.fm on Twitter at @dorafm.

Curiosity:

Q: Is Dora a Pandora-produced mashup?

No. It was not developed by, sponsored by, or produced by the good people at Pandora. I can only hope that they enjoy it. If you spot any bugs or other issues, please contact me directly.

Q: If I tweet a song through Dora, what will my tweet look like?

Let's say you were listening to "Shakey Mama Blues" by Leopold & His Fiction. The tweet you wrote in the input box was "@myfriend This song is pretty sweet." and you checked the option to include a bit.ly URL in the tweet.

Your tweet would show up as: @myfriend This song is pretty sweet. — Leopold & His Fiction: Shakey Mama Blues http://bit.ly/xyz123 #dora.

Q: Where will the Bit.ly URL lead to?

Your Bit.ly URL will lead to a Dora-framed window, similar to the one you've already seen. The Pandora window contains information about the tweeted song, including Music Genome Project data and a brief sample of the song. The Dora area will allow visiting users to open Dora with a Pandora station based on your tweeted song, or simply open Dora with their own stations playing. For an example, check out http://bit.ly/tn9MD.

Q: Why won't my Bit.ly link go to a full version of the song?

Pandora's music licenses restrict their service from providing full tracks on demand. You can create new stations based on single songs, and these stations will usually play your desired song after a short period of time. Because Pandora has these restrictions and one of my goals is to encourage more users to explore music through Pandora, I have built Dora accordingly.

Troubleshooting:

Q: I got an error saying "Service Temporarily Unavailable" when I tried authenticating. Why?

The most likely reason is that Twitter is temporarily down. Check status.twitter.com. When they're back up and running, you'll be able to authenticate.

Q: I had a different problem while authenticating.

If the popup window did not open up, simply allow popups from Dora.fm. I promise I won't pop anything else at you. Just the authentication window. If the window hangs while the Twitter authorization screen is loading, it's a Twitter issue. Try again shortly. If, on the other hand, the browser crashed or something else catastrophic happened, let me know @dorafm_qa and we can discuss it via private messages.

Q: Dora tweeted the wrong song. What happened?

Before tweeting, check the "Now playing" area of the Dora frame. Dora will tweet whatever song is listed in that section. If it is not the song you are actually listening to and you've been waiting for the display to change for more than twenty seconds or so, first read the question below this one. If the suggestions below don't solve the problem, contact me at @dorafm_qa and we can discuss it via private message.

Q: Why isn't Dora picking up the song I'm listening to?

Please note that there is always a delay of a few seconds between when a song begins playing and when Dora registers it. I have no control over this. If, however, you've already listened to a few songs and the "Now playing" section still says it's waiting for the Pandora API, chances are good that if you refresh the browser, things should work. It's a Pandora API flub, and I can't do much about it. Sorry about that.

If you are using the Flashblock Firefox plugin, add Pandora and Dora.fm to your whitelist and restart Firefox.

If you are using Safari or Chrome, please note that these browsers are not supported by Pandora. If you are experiencing issues with them, they may be unsolvable errors (unsolvable for an independent developer like me, anyway). That said, there are some specific issues that I do know of...

If you are using Safari and have minimized the Dora window, you may find that the Pandora API stops notifying Dora of new songs. This is a known bug, and I'm working on trying to fix it. In the meantime, Dora should work in Safari if you simply do not minimize the window.

If you have multiple Pandora or Dora tabs open, the Pandora events API may pick up on whichever tab was open first. Even if you open up another new tab, when Dora connects to the Pandora API, the "Now playing" section could show whatever is playing or paused in your original Pandora/Dora tab. This appears to be a strange quirk of the Pandora events API, and I'm not positive what exactly causes it. The easy solution: Just use one Dora window.

If you are using Chrome and have Pandora or Dora open in Firefox already, Chrome may pick up on the Pandora instance running in Firefox and display its song in "Now playing". Again, the easiest thing to do here is make sure that Dora is running in only one window in one browser.

Q: I clicked "Tweet it!" and something screwed up. Help.

Tweet a message to the Dora QA account (@dorafm_qa) describing exactly what happened, and I'll do my best to fix it.

Q: I just tweeted a song but it doesn't show up in the blue section. Did it go through?

Yes, it did. But the Twitter search API may need a few seconds to pick up your tweet.

Antagonistic:

Q: This is nonsense. There is no public Pandora API.

They released a Javascript document a while back that serves as an "events" API. You can use it to detect when songs are played or paused, or when new stations start playing. It's unsupported and has no documentation, but it's out there and it is free to use for educational or non-commercial purposes.

Q: Frames, seriously?

I know, I know. I initially tried creating Dora as a Greasemonkey script, but the hurdles of dealing with OAuth authentication for Twitter and communicating with the Twitter and Bit.ly APIs made the framed environment much, much simpler to build.

Q: I'm not in the United States, which means I can't use Pandora. I blame you.

Well, I'm just one guy, so the licensing restrictions aren't exactly something I can overhaul or hack around. When Pandora is available outside the US, Dora will be too.