|
NAMEAnyEvent::Twitter::Stream - Receive Twitter streaming API in an event loop SYNOPSIS use AnyEvent::Twitter::Stream;
my $done = AE::cv;
# receive updates from @following_ids
my $listener = AnyEvent::Twitter::Stream->new(
username => $user,
password => $password,
method => "filter", # "firehose" for everything, "sample" for sample timeline
follow => join(",", @following_ids), # numeric IDs
on_tweet => sub {
my $tweet = shift;
warn "$tweet->{user}{screen_name}: $tweet->{text}\n";
},
on_keepalive => sub {
warn "ping\n";
},
on_delete => sub {
my ($tweet_id, $user_id) = @_; # callback executed when twitter send a delete notification
...
},
timeout => 45,
);
# track keywords
my $guard = AnyEvent::Twitter::Stream->new(
username => $user,
password => $password,
method => "filter",
track => "Perl,Test,Music",
on_tweet => sub { },
);
# to use OAuth authentication
my $listener = AnyEvent::Twitter::Stream->new(
consumer_key => $consumer_key,
consumer_secret => $consumer_secret,
token => $token,
token_secret => $token_secret,
method => "filter",
track => "...",
on_tweet => sub { ... },
);
$done->recv;
DESCRIPTIONAnyEvent::Twitter::Stream is an AnyEvent user to receive Twitter streaming API, available at <http://dev.twitter.com/pages/streaming_api> and <http://dev.twitter.com/pages/user_streams>. See "track.pl" in eg for more client code example. METHODSmy $streamer = AnyEvent::Twitter::Stream->new(%args);
NOTESTo use the userstream method, Twitter recommend using the HTTPS protocol. For this, you need to set the ANYEVENT_TWITTER_STREAM_SSL environment variable, and install the Net::SSLeay module. AUTHORTatsuhiko Miyagawa <miyagawa@bulknews.net> LICENSEThis library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. SEE ALSOAnyEvent::Twitter, Net::Twitter::Stream
|