Skip to content

Instantly share code, notes, and snippets.

@joar
Created December 13, 2010 15:14
Show Gist options
  • Save joar/739076 to your computer and use it in GitHub Desktop.
Save joar/739076 to your computer and use it in GitHub Desktop.
Real-time Twitter Buzz in a CLI

Requirements

  • sudo aptitude install php5-cli

Example

Lutontweets: RT @Political_FunRT @wearethebritish: RT @britishbullybee: Sweden bomb probe: Stockholm blast suicide bomber was... http://bit.ly/dUklQw
@ Mon Dec 13 15:23:52 +0000 2010

RealScotnews: Insular Lifestyle Of Sweden Suicide Bomber: The suicide bomber behind the twin blasts in Stockholm lived and stu... http://bit.ly/e6VTvh
@ Mon Dec 13 15:23:52 +0000 2010

joshempire: @amberleyjane oh wow lol. yeh im travelling in sweden with sara atm lol. shes staying in stockholm with other cuzins atm
@ Mon Dec 13 15:23:54 +0000 2010

ne_zeitgesch: Terrorismus - „Playboy“ und Fanatiker: Der Attentäter von Stockholm http://bit.ly/eYya9U
@ Mon Dec 13 15:23:57 +0000 2010

<?php
$h = fopen('php://stdin', 'r');
while ( $l = fgets( $h ) ) {
if ( stristr( $l, 'Error 401 UNAUTHORIZED' ) ) {
die('-\!- Wrong credentials' . PHP_EOL . PHP_EOL );
}
$d = json_decode( $l );
echo sprintf('%1$s: %2$s' . PHP_EOL . '@ %3\$s' . PHP_EOL . PHP_EOL, $d->user->screen_name, $d->text, $d->created_at );
}
# Updated version, uses base64 encoded PHP code
curl -u TWITTER_USERNAME --silent http://stream.twitter.com/1/statuses/filter.json?track=stockholm | php -r "eval( base64_decode('JGggPSBmb3BlbigncGhwOi8vc3RkaW4nLCAncicpOwoKd2hpbGUgKCAkbCA9IGZnZXRzKCAkaCApICkgeyAKCWlmICggc3RyaXN0ciggJGwsICdFcnJvciA0MDEgVU5BVVRIT1JJWkVEJyApICkgeyAKCQlkaWUoJy0hLSBXcm9uZyBjcmVkZW50aWFscycgLiBQSFBfRU9MIC4gUEhQX0VPTCApOyAKCX0gCgkkZCA9IGpzb25fZGVjb2RlKCAkbCApOwoJZWNobyBzcHJpbnRmKCclMSRzOiAlMiRzJyAuIFBIUF9FT0wgLiAnQCAlMyRzJyAuIFBIUF9FT0wgLiBQSFBfRU9MLCAkZC0+dXNlci0+c2NyZWVuX25hbWUsICRkLT50ZXh0LCAkZC0+Y3JlYXRlZF9hdCApOwp9Cg==') );"
curl -u TWITTER_USERNAME --silent http://stream.twitter.com/1/statuses/filter.json?track=stockholm | php -r "\$h = fopen('php://stdin', 'r'); while ( \$l = fgets( \$h ) ) { if ( stristr( \$l, 'Error 401 UNAUTHORIZED' ) ) { die('-\!- Wrong credentials' . PHP_EOL . PHP_EOL ); } \$d = json_decode( \$l ); echo sprintf('%1\$s: %2\$s' . PHP_EOL . '@ %3\$s' . PHP_EOL . PHP_EOL, \$d->user->screen_name, \$d->text, \$d->created_at ); }"
# Enter your password when this dialog appears:
# Enter host password for user 'TWITTERHANDLE':
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment