Flutterby™! : Twitter giggles

Next unread comment / Catchup all unread comments User Account Info | Logout | XML/Pilot/etc versions | Long version (with comments) | Weblog archives | Site Map | | Browse Topics

Twitter giggles

2009-04-01 15:20:29.113025+02 by Dan Lyke 4 comments

Snicker: New Archie McPhee Service: Blogging and Twitter explained to parents:

Have you given up trying to get your parents to understand your blog, let alone Twitter and Facebook? We're here to help. Hire us, and we'll have a patient ten year old call your parents and explain the intricacies of social networking and micro-blogging to them. ...

And you may have noticed that I'm now mirroring my Face/Twit/Identi.ca/whatever status updates here. I'll probably be judicious, specific @replies and such won't go here, and I plan on splitting this stuff out to separate RSS feeds over on Flutterby.net when I get that stuff written.

[ related topics: Humor Weblogs Net Culture ]

comments in ascending chronological order (reverse):

#Comment Re: made: 2009-04-02 02:51:08.750261+02 by: John Anderson

Mirroring that stuff has been on my TODO list for a while -- have you got anything you can share, or any particularly noteworthy problems you had to deal with?

#Comment Re: made: 2009-04-02 03:55:37.602622+02 by: Dan Lyke

Not particularly. I've just got a little Perl script which checks to make sure that its $ARGV[1] is <= 140 characters, and then spawns fbcmd, the Net::Twitter sample command line updater (twitter update "my twitter update"), the Net::Identica sample command line updater (which is basically s/Twitter/Identica), and then a bit of Perl that uses LWP::UserAgent to post to Flutterby (all Flutterby authenticated operations can be done without cookies if you include the "!user" and "!pass" fields in the form).

#Comment Re: made: 2009-04-02 16:22:01.049049+02 by: John Anderson

cool, thanks.

#Comment Re: made: 2009-04-02 16:56:11.22155+02 by: Dan Lyke [edit history]

#!/usr/bin/perl -w
use strict;
my $t = join(' ', @ARGV);
if (length($t) > 140)
  {
        die "Update must be less than 140 chars, was ".length($t)."\n";
  }
else
  {
        open O, ">>/home/danlyke/var/setstatus.log";
        my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
        $year += 1900;
        $mon++;
        print O sprintf("%04.4d-%02.2d-%02.2d %02.2d:%02.2d:%02.2d",
                                  $year, $mon, $mday, $hour, $min, $sec)." $t\n";
        print sprintf("%04.4d-%02.2d-%02.2d %02.2d:%02.2d:%02.2d",
                                  $year, $mon, $mday, $hour, $min, $sec)." $t\n";
        close O;
        system '/home/danlyke/bin/twitter','update',$t;
        system '/home/danlyke/bin/identica','update',$t;
        system '/usr/bin/php','/home/danlyke/bin/fbcmd/fbcmd.php','STATUS',$t;
        open(O, '|/home/danlyke/pin/posttoflutterby "Face/Twit/Whatever status"')
          || die "Unable to open posttoflutterby for piping\n";
        print O "Dan: $t\n";
        close O;
  }

Comment policy

We will not edit your comments. However, we may delete your comments, or cause them to be hidden behind another link, if we feel they detract from the conversation. Commercial plugs are fine, if they are relevant to the conversation, and if you don't try to pretend to be a consumer. Annoying endorsements will be deleted if you're lucky, if you're not a whole bunch of people smarter and more articulate than you will ridicule you, and we will leave such ridicule in place.


Flutterby™ is a trademark claimed by

Dan Lyke
for the web publications at www.flutterby.com and www.flutterby.net.