Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

PHP interface to Twitter Streaming API

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 example
Octocat-spinner-32 lib
Octocat-spinner-32 .gitignore
Octocat-spinner-32 Changelog.txt
Octocat-spinner-32 Readme.md
Octocat-spinner-32 gpl.txt
Readme.md

Phirehose

A PHP interface to the Twitter Streaming API (firehose, etc). This library makes it easy to connect to and consume the Twitter stream via the Streaming API.

See:

Goals

  • Provide a simple interface to the Twitter Streaming API for PHP applications
  • Comply to Streaming API recommendations for error handling, reconnection, etc
  • Encourage well-behaved streaming API clients
  • Operate independently of PHP extensions (ie: shared memory, PCNTL, etc)

In short:

require_once('Phirehose.php');
class MyStream extends Phirehose
{
  public function enqueueStatus($status)
  {
    print $status;
  }
}

$stream = new MyStream('username', 'password');
$stream->consume();

What this library does do

  • Handles connection/authentication to the twitter streaming API
  • Consumes the stream handing off each status to be enqueued by a method of your choice
  • Handles graceful reconnection/back-off on connection and API errors
  • Monitors/reports performance metrics and errors

What this library doesn't do

  • Decode/process tweets
  • Provide any sort of queueing mechanism for asynchronous processing (though some examples are included)
  • Provide any sort of inter-process communication
  • Provide any non-streaming API functionality (ie: user profile info, search, etc)

Please see the wiki for documentation.

If you have any additional questions, head over to the Phirehose Users group [http://groups.google.com/group/phirehose-users]

It's recommended that you join (or at least regularly check) this group if you're actively using Phirehose so I can let you know when I release new versions.

Additionally, if you'd like to contact me directly, I'm @fennb on twitter.

Something went wrong with that request. Please try again.