My very own twitter client.

Followers on Twitter may have noticed that I’m now posting using a client called alanjames. This is really just Spaz but now registered at Twitter under my own name.

Here’s the how and why I’ve done that.

For some months now I’ve been using the in development versions of Spaz pulled from the GitHub repository mostly cos I like to get all the new stuff first. Recently though they’ve changed all the login code to use xAuth as it looks like Twitter will be forcing all clients to go that way sometime soon.

So when I pulled the latest code on Tuesday it wouldn’t run. It just complained that the SPAZCORE_CONSUMERKEY_TWITTER and SPAZCORE_CONSUMERSECRET_TWITTER values were empty. These are the values an app uses to identify itself with Twitter (so when it misbehaves and causes a problem for Twitter they know who to contact), and they would normally be hard coded into the application.

When you’ve got an open source app though, anyone could look in the code and take your keys and then impersonate your application, potentially making you look bad when they somehow cause the fail whale to resurface. So until that problem is solved Spaz isn’t putting their key and secret in the source code.

Fair enough, I thought, I’ll just register it myself and get my own keys. Here’s what I did.

  • Go to http://dev.twitter.com/apps and register a new application. Call it what you like, set it to ‘client’ and ‘read & write’.
  • On the application detail page you’ll find your consumer key and secret.
  • In the Spaz source  you’ll find app/auth_config_sample.js copy this to app/auth_config.js and edit it.
  • Fill in the key and secret.
  • Run it and it still wont work. 🙁
  • Go back to your app page and notice the message at the bottom “Note: xAuth is not enabled for applications by default. Email api@twitter.com to request xAuth access.”
  • Send them a nice email :
    Hi,

    I have my own version of the twitter client Spaz and would like xAuth
    access for it. I’ve registered it here:
    http://dev.twitter.com/apps/999999

    I’ll keep it mostly in line with the cvs version from
    http://www.getspaz.com/ so any changes you require them to make I’ll
    quickly do the same.

    Thanks,

    @alanjames

  • Wait for 4 days.
  • Run it again and it works!

2 thoughts on “My very own twitter client.”

  1. Wow, that is really a great thing to learn about – my own twitter client.
    But can you tell me to use oAuth instead (whatever, I am just a newbie and don’t know much about); but I just want under my tweets ( from Ekendra’s app on 2010-07-22 13:41:08 ) or something. Yes I am talking about displaying the app’s name.
    Thank you!

    Reply
    • This post explains the difference between oAuth and xAuth, basically xAuth is better for applications and oAuth is better for authorising websites. Twitter will do both, but for Spaz you want xAuth.

      Reply

Leave a Reply to Alan Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.