tircd - An ircd proxy to the twitter API.
tircd presents twitter as an irc channel. You can connect to tircd with
any irc client, and twitter as if you were on irc
tircd requires a recent version of perl, and the following modules:
You can install them all by running:
"cpan -i POE POE::Filter::IRCD Net::Twitter::Lite"
When started, tircd will look for a configuration file in the
tircd.cfg (in the current directory)
You can specify an alternate path to the configuration file on the
commandline if you want to keep the configuration in another
By default, tircd listens on localhost port 6667.
There are two modes of authentication for connecting tircd to
twitter. Basic authentication is the old style where you provide
tircd with your twitter username and password, and it authenticates
you against the twitter api service normally. OAuth authentication
is a 3-way handshake involving where tircd will present you with an
authentication URL hosted by twitter and allows you to manage
tircd's access to your account through twitters OAuth system.
The main difference between OAuth and Basic authentication is that
using OAuth you never have to expose your login and password to the
tircd daemon, nor worry about it sending your credentials in plain
text if you are not using SSL.
Connecting with Basic Authentication
Connect to tircd, using your twitter username as your NICK. Send
your twitter password with the PASS command.
With many irc clients you can do this by issuing the command /SERVER
running tircd 6667 . Check your client's documentation for the appropirate
Connecting with OAuth Authentication
Connect to tircd with the username of "oauth". Tircd will make a
challenege to twitter, and twitter will provide a link to tircd for
you to authorize the connection. Follow the link, make sure you are
logged into twitter as the user you wish to use tircd as, and then
click Allow to allow the connection. Twitter will then present you
with a PIN number. To complete your connection to tircd, type:
/stats pin . On some clients that honor the irc protocol
and do not expect you to be sending a stats command before
connecting you may have to type: /quote stats pin .
Tircd will then attempt to authorize the connection using the
Once connected JOIN #twitter to get started. The channel #twitter is
where you will perform most opertions
Updating your status
To update your status on twitter, simply send a message to the
witter channel. The server will keep your most recent update in the topic at all times.
Getting your friend's status
When users you follow update their status, it will be sent to the
channel as a message from them.
@replies are also sent to the channel as messages.
Listing the users you follow
Each user you follow will be in the #twitter channel. If you follow
a new user outside of tircd, that user will join the channel the
first time they update their status. People who follow you back are
given voice (+v) to indicate that fact.
Direct messages to you will show up as a private message from the
To send a direct message, simply send a private message to the user
you want to dm.
Getting additional information on users
You can /who or /whois a user to view their Location / Bio /
Website. Their last status update (and time sent) will also be
Issuing a /whois on your own user name will also provide the number
of API calls that have been used in the last hour.
Following new users
To begin following a new user, simply /invite them to #twitter. The
user will join the channel if the request to follow was successful.
If you attempt to invite a user who protects their updates, you will
receive a notice that you have requested to follow them. The user
will join the channel if they accept your request and update their
Unfollowing / removing users
To stop following a user, /kick them from #twitter.
To block a user /ban them. There is currently no way to get a list
of users you've currently blocked via the API, so listing the bans
in #twitter will only return users you've blocked in the current
To unblock a user /unban them.
Multiple Channels / Groups
If you want to create a channel with just a subset of the people you
follow, you can /join and then /invite them to the
channel. tircd will send a user's updates to #twitter and any other
channels you have invited a user to.
If you want to have updated search results for a specific term
delivered, you can /join then set the /topic for the
channnel to your search query. Results that match that query will be
sent to that channel. The /topic can be almost anything supported by
the twitter search (see http://search.twitter.com/operators for
exmaples). Using the 'near' option is not currently supported.
This module may be used, modified, and distributed under the same terms
as Perl itself. Please see the license that came with your Perl
distribution for details.