projects
/
twirssi-net-twitter-lite.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add new setting - twitter_timeout, defaults to 30 seconds. Requests that take longer...
[twirssi-net-twitter-lite.git]
/
twirssi.pl
diff --git
a/twirssi.pl
b/twirssi.pl
index 356660fdbbb793d46cf95302940d70ee54a170f2..331715ce03737fbfe13a9606df4d34fc16799292 100644
(file)
--- a/
twirssi.pl
+++ b/
twirssi.pl
@@
-12,7
+12,7
@@
$Data::Dumper::Indent = 1;
use vars qw($VERSION %IRSSI);
$VERSION = "2.2.5beta";
use vars qw($VERSION %IRSSI);
$VERSION = "2.2.5beta";
-my ($REV) = '$Rev: 6
7
7 $' =~ /(\d+)/;
+my ($REV) = '$Rev: 6
8
7 $' =~ /(\d+)/;
%IRSSI = (
authors => 'Dan Boger',
contact => 'zigdon@gmail.com',
%IRSSI = (
authors => 'Dan Boger',
contact => 'zigdon@gmail.com',
@@
-21,7
+21,7
@@
my ($REV) = '$Rev: 677 $' =~ /(\d+)/;
. 'Can optionally set your bitlbee /away message to same',
license => 'GNU GPL v2',
url => 'http://twirssi.com',
. 'Can optionally set your bitlbee /away message to same',
license => 'GNU GPL v2',
url => 'http://twirssi.com',
- changed => '$Date: 2009-0
7-22 13:58:05 -0700 (Wed, 22 Jul
2009) $',
+ changed => '$Date: 2009-0
8-07 01:24:53 -0700 (Fri, 07 Aug
2009) $',
);
my $window;
);
my $window;
@@
-499,6
+499,15
@@
sub cmd_login {
ssl => Irssi::settings_get_bool("twirssi_avoid_ssl") ? 0 : 1,
);
ssl => Irssi::settings_get_bool("twirssi_avoid_ssl") ? 0 : 1,
);
+ unless ($twit) {
+ ¬ice("Failed to create Net::$service object! Aborting.");
+ return;
+ }
+
+ if ( my $timeout = Irssi::settings_get_int("twitter_timeout") ) {
+ $twit->ua->timeout($timeout);
+ }
+
unless ( $twit->verify_credentials() ) {
¬ice("Login as $user\@$service failed");
$twit = undef;
unless ( $twit->verify_credentials() ) {
¬ice("Login as $user\@$service failed");
$twit = undef;
@@
-910,7
+919,9
@@
sub do_updates {
printf $fh "id:%u account:%s type:last_id timeline\n",
$new_poll_id, $username;
printf $fh "id:%u account:%s type:last_id timeline\n",
$new_poll_id, $username;
- print scalar localtime, " - Polling for replies" if &debug;
+ print scalar localtime, " - Polling for replies since ",
+ $id_map{__last_id}{$username}{reply}
+ if &debug;
$new_poll_id = 0;
eval {
if ( $id_map{__last_id}{$username}{reply} )
$new_poll_id = 0;
eval {
if ( $id_map{__last_id}{$username}{reply} )
@@
-1032,6
+1043,7
@@
sub monitor_child {
# pretend
if ( open FILE, $filename ) {
# pretend
if ( open FILE, $filename ) {
+ binmode FILE, ":utf8";
my @lines;
my %new_cache;
while (<FILE>) {
my @lines;
my %new_cache;
while (<FILE>) {
@@
-1162,8
+1174,16
@@
sub monitor_child {
}
if (/^-- (\d+)$/) {
}
if (/^-- (\d+)$/) {
- ($new_last_poll) = ($1);
- last;
+ $new_last_poll = $1;
+ if ( $new_last_poll >= $last_poll ) {
+ last;
+ } else {
+ print "Impossible! ",
+ "new_last_poll=$new_last_poll < last_poll=$last_poll!"
+ if &debug;
+ undef $new_last_poll;
+ next;
+ }
}
my ( $f, $t ) = split ' ', $_;
$nicks{$f} = $friends{$f} = $t;
}
my ( $f, $t ) = split ' ', $_;
$nicks{$f} = $friends{$f} = $t;
@@
-1500,6
+1520,7
@@
Irssi::settings_add_str( "twirssi", "twirssi_replies_store",
".irssi/scripts/twirssi.json" );
Irssi::settings_add_int( "twirssi", "twitter_friends_poll", 600 );
".irssi/scripts/twirssi.json" );
Irssi::settings_add_int( "twirssi", "twitter_friends_poll", 600 );
+Irssi::settings_add_int( "twirssi", "twitter_timeout", 30 );
Irssi::settings_add_bool( "twirssi", "twirssi_upgrade_beta", 0 );
Irssi::settings_add_bool( "twirssi", "tweet_to_away", 0 );
Irssi::settings_add_bool( "twirssi", "twirssi_upgrade_beta", 0 );
Irssi::settings_add_bool( "twirssi", "tweet_to_away", 0 );