GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
AnyEvent::Twitter::Stream(3) User Contributed Perl Documentation AnyEvent::Twitter::Stream(3)

AnyEvent::Twitter::Stream - Receive Twitter streaming API in an event loop

  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;

AnyEvent::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.

username password
These arguments are used for basic authentication.
consumer_key consumer_secret token token_secret
If you want to use the OAuth authentication mechanism, you need to set these arguments
method
The name of the method you want to use on the stream. Currently, any one of :
firehose
sample
userstream
To use this method, you need to use the OAuth mechanism.
filter
With this method you can specify what you want to filter amongst track, follow and locations.

See <https://dev.twitter.com/docs/api/1.1/post/statuses/filter> for the details of the parameters.

api_url
Pass this to override the default URL for the API endpoint.
request_method
Pass this to override the default HTTP request method.
timeout
Set the timeout value.
on_connect
Callback to execute when a stream is connected.
on_tweet
Callback to execute when a new tweet is received. The argument is the tweet, a hashref documented at <https://dev.twitter.com/docs/api/1/get/statuses/show/%3Aid>.
on_error
on_eof
on_keepalive
on_delete
Callback to execute when the stream send a delete notification.
on_friends
Only with the usertream method. Callback to execute when the stream send a list of friends.
on_direct_message
Only with the usertream method. Callback to execute when a direct message is received in the stream.
on_event
Only with the userstream method. Callback to execute when the stream send an event notification (follow, ...).
additional agruments
Any additional arguments are assumed to be parameters to the underlying API method and are passed to Twitter.

To 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.

Tatsuhiko Miyagawa <miyagawa@bulknews.net>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AnyEvent::Twitter, Net::Twitter::Stream
2016-07-30 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.