NAME
POE::Component::Server::Twirc - Twitter/IRC gateway
SYNOPSIS
use POE::Component::Server::Twirc;
POE::Component::Server::Twirc->new;
POE::Kernel->run;
DESCRIPTION
POE::Component::Server::Twirc
provides an IRC/Twitter gateway. Twitter friends are added to a channel and messages they post on twitter appear as channel messages in IRC. The IRC interface supports several Twitter features, including posting status updates, following and un-following Twitter feeds, enabling and disabling mobile device notifications or retweets, sending direct messages, and querying information about specific Twitter users.
Friends who are also followers are given "voice" as a visual clue in IRC.
METHODS
new
Spawns a POE component encapsulating the Twitter/IRC gateway.
Arguments:
- irc_server_name
-
(Optional) The name of the IRC server. Defaults to
twitter.irc
. - irc_server_port
-
(Optional) The port number the IRC server binds to. Defaults to 6667.
- irc_server_bindaddr
-
(Optional) The local address to bind to. Defaults to '127.0.0.1'.
- irc_mask
-
(Optional) The IRC user/host mask used to restrict connecting users. Defaults to
*@127.0.0.1
. - irc_password
-
(Optional) Password used to authenticate to the IRC server.
- irc_botname
-
(Optional) The name of the channel operator bot. Defaults to
tweeter
. Select a name that does not conflict with friends, followers, or your own IRC nick. - irc_botircname
-
(Optional) Text to be used as the channel operator bot's IRC full name.
- irc_channel
-
(Optional) The name of the channel to use. Defaults to
&twitter
. - selection_count
-
(Optional) How many favorites candidates to display for selection. Defaults to 3.
- truncate_to
-
(Optional) When displaying tweets for selection, they will be truncated to this length. Defaults to 60.
- log_channel
-
(Optional) If specified, twirc will post log messages to this channel.
- state_file
-
(Optional) File used to store state information between sessions, including last message read for replies, direct messages, and timelines.
- plugins
-
(Optional) An array of plugin objects.
COMMANDS
Commands are entered as public messages in the IRC channel in the form:
command arg1 arg2 ... argn
Where the arguments, if any, depend upon the command.
- post status
-
Post a status update. E.g.,
post Now cooking tweets with twirc!
- follow id
-
Follow a new Twitter user, id. In Twitter parlance, this creates a friendship.
- unfollow id
-
Stop following Twitter user id. In Twitter, parlance, this destroys a friendship.
- block id
-
Block Twitter user id.
- unblock id
-
Stop blocking Twitter user id.
- whois id
-
Displays information about Twitter user id, including name, location, and description.
- notify on|off screen_name ...
-
Turns mobile device notifications on or off for the list of screen_names.
- retweets on|off screen_name ...
-
Turns retweet display on your timeline on or off for the list of screen_names.
- favorite screen_name [count]
-
Mark a tweet as a favorite. Specify the user by screen_name and select from a list of recent tweets. Optionally, specify the number of tweets to display for selection with count (Defaults to 3.)
- rate_limit_status
-
Displays the remaining number of API requests available in the current hour.
- retweet screen_name [count]
-
Re-tweet another user's status. Specify the user by screen_name and select from a list of recent tweets. Optionally, specify the number of tweets to display for selection with count (Defaults to 3.)
- rt screen_name [count]
-
An alias for the
retweet
command. -
Reply to another user's status. Specify the user by screen_name and select from a list of recent tweets. Optionally, specify the number of tweets to display for selection with -count (Defaults to 3.) Note that the count parameter is prefixed with a dash.
- report_spam
-
Report 1 or more screen names as spammers.
- add screen_name to list-slug
-
Add a user to one of your lists.
- remove screen_name from list-slug
-
Add a user to one of your lists.
- help
-
Display a simple help message
- /msg id text
-
Sends a direct message to Twitter user id using an IRC private message.
SEE ALSO
AUTHOR
Marc Mims <marc@questright.com>
CONTRIBUTORS
Adam Prime <adam.prime@utoronto.ca> (@adamprime) Peter Roberts <me+dev@peter-r.co.uk>
LICENSE
Copyright (c) 2008 Marc Mims
You may distribute this code and/or modify it under the same terms as Perl itself.