use vars qw($VERSION %IRSSI);
-$VERSION = "2.4.0beta";
+$VERSION = "2.4.0";
%IRSSI = (
authors => 'Dan Boger',
contact => 'zigdon@gmail.com',
. 'Can optionally set your bitlbee /away message to same',
license => 'GNU GPL v2',
url => 'http://twirssi.com',
- changed => '$Date: 2009-08-07 01:24:53 -0700 (Fri, 07 Aug 2009) $',
+ changed => 'Fri Jan 22 14:40:48 PST 2010',
);
my $window;
return unless $data = &valid_username($data);
¬ice("Logging out $data...");
- $twits{$data}->end_session();
+ eval {
+ $twits{$data}->end_session();
+ };
delete $twits{$data};
undef $twit;
if ( keys %twits ) {
}
unless ( $twit->authorized ) {
+ my $url;
+ eval {
+ $url = $twit->get_authorization_url;
+ };
+
+ if ($@) {
+ ¬ice("ERROR: Failed to get OAuth authorization_url. Try again later.");
+ return;
+ }
+
¬ice("Twirssi not autorized to access $service for $user.");
¬ice("Please authorize at the following url, then enter the pin ");
¬ice("supplied with /twirssi_oauth $user\@$service <pin>");
- ¬ice($twit->get_authorization_url);
+ ¬ice($url);
$oauth{pending}{"$user\@$service"} = $twit;
return;
sub do_updates {
my ( $fh, $username, $obj, $cache ) = @_;
- my $rate_limit = $obj->rate_limit_status();
- if ( $rate_limit and $rate_limit->{remaining_hits} < 1 ) {
- ¬ice("Rate limit exceeded for $username");
- return undef;
- }
+ eval {
+ my $rate_limit = $obj->rate_limit_status();
+ if ( $rate_limit and $rate_limit->{remaining_hits} < 1 ) {
+ ¬ice("Rate limit exceeded for $username");
+ return undef;
+ }
+ };
print scalar localtime, " - Polling for updates for $username" if &debug;
my $tweets;