Today I decided to give twitterspy a try in order to get rid of a dedicated twitter client that wastes space and resources on my desktop.
Twitterspy is a jabber bot that sits in your roster and forwards messages to twitter back and forth.
As it’s still missing some helpful documentation on howto setup such a service on your own I decided to write a short tutorial documenting the steps it took me to get it up and runninng.
Note: If you only want to use the service you don’t have to do this. You can use the public address ‘email@example.com‘ which is operated by the author of the software. In order to get started send ‘help’ to this address. Of course you should be aware of the fact that you’d have to provide your twitter login credentials to the bot in order to do anything useful with it. That said, I’ll continue with my guide.
I’m using Debian ‘etch’ 4.0r4 as host operating system. This guide should be applicable to almost any other Un*x/Linux system though.
First I downloaded a copy of twitterspy by
$ git clone git://github.com/dustin/twitterspy.git
(You need to have git installed for this work of course).
Note: The code there didn’t work for me. I had to apply a small fix, that’s why I’ve created a fork available at http://github.com/sstrigler/twitterspy/tree/master
Update: The fix has been backported to the original tree, so no need to use my fork.
Addtional software packages I had to install:
* ruby1.8-dev (includes mkmf which was needed for building the json gem)
Gems (quite a lot):
* summize (see below)
* dm-core (this took some time due to heavy dependencies)
* do_sqlite3 (see below)
In order to get do_sqlite3 working I had to install sqlite3 from source first.
Except for ‘summize’ I was able to install them using gem like
$ gem install json
summize is available at http://github.com/dustin/ruby-summize/tree/master.
Download using git:
$ git clone git://github.com/dustin/ruby-summize.git
I had to build my own gem with
$ cd ruby-summzie
$ gem build ruby-summize.gemspec
$ sudo gem install ruby-summize-0.3.gem
As a last step I coppied twitterspy.yml.sample to twitterspy.yml and edited it to suit my needs. Then I started with
You can watch messages and errors fly by at twitterspy.log. So if things don’t seem to work as they should have a look at there.
If you see strange errors starting with
No connection to server/usr/lib/ruby/gems/1.8/gems/activesupport-2.1.1/lib/active_support/vendor/memcache-client-1.5.0/memcache.rb:663:in `request_setup'
consider installing a memcache daemon.
And as a last note: Of course twitterspy is available at jwchat.org too now. It’s address is firstname.lastname@example.org. Feel free to use it!