use vars qw($VERSION %IRSSI);
-$VERSION = "2.2.1beta";
-my ($REV) = '$Rev: 607 $' =~ /(\d+)/;
+$VERSION = "2.2.3beta";
+my ($REV) = '$Rev: 616 $' =~ /(\d+)/;
%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-04-09 21:22:55 -0700 (Thu, 09 Apr 2009) $',
+ changed => '$Date: 2009-04-21 12:20:40 -0700 (Tue, 21 Apr 2009) $',
);
my $window;
my $defservice;
my $poll;
my $last_poll;
+my $last_friends_poll = time;
my %nicks;
my %friends;
my %tweet_cache;
return;
}
- if ( exists $id_map{__searches}{$user}{$data} ) {
+ if ( exists $id_map{__searches}{"$user\@$defservice"}{$data} ) {
¬ice("Already had a subscription for '$data'");
return;
}
- $id_map{__searches}{$user}{$data} = 1;
+ $id_map{__searches}{"$user\@$defservice"}{$data} = 1;
¬ice("Added subscription for '$data'");
}
return;
}
- unless ( exists $id_map{__searches}{$user}{$data} ) {
+ unless ( exists $id_map{__searches}{"$user\@$defservice"}{$data} ) {
¬ice("No subscription found for '$data'");
return;
}
- delete $id_map{__searches}{$user}{$data};
+ delete $id_map{__searches}{"$user\@$defservice"}{$data};
¬ice("Removed subscription for '$data'");
}
$error++ unless &do_updates( $fh, $_, $twits{$_}, \%context_cache );
}
- my ( $added, $removed ) = &load_friends($fh);
- if ( $added + $removed ) {
- print $fh "type:debug %R***%n Friends list updated: ",
- join( ", ",
- sprintf( "%d added", $added ),
- sprintf( "%d removed", $removed ) ),
- "\n";
+ if (
+ time - $last_friends_poll >
+ Irssi::settings_get_int('twitter_friends_poll') )
+ {
+ my ( $added, $removed ) = &load_friends($fh);
+ if ( $added + $removed ) {
+ print $fh "type:debug %R***%n Friends list updated: ",
+ join( ", ",
+ sprintf( "%d added", $added ),
+ sprintf( "%d removed", $removed ) ),
+ "\n";
+ }
+
+ $last_friends_poll = time;
}
+
print $fh "__friends__\n";
foreach ( sort keys %friends ) {
print $fh "$_ $friends{$_}\n";
eval {
if ( $id_map{__last_id}{$username}{timeline} )
{
- $tweets = $obj->friends_timeline(
- { since_id => $id_map{__last_id}{$username}{timeline} } );
+ $tweets = $obj->friends_timeline( { count => 100 } );
} else {
$tweets = $obj->friends_timeline();
}
keys %{ $id_map{__indexes} };
}
+ if ( $linestart =~ /^\/twitter_unfriend\s*$/ )
+ { # /twitter_unfriend gets a nick
+ $word =~ s/^@//;
+ push @$complist, grep /^\Q$word/i,
+ sort { $nicks{$b} <=> $nicks{$a} } keys %nicks;
+ }
+
# /tweet, /tweet_as, /dm, /dm_as - complete @nicks (and nicks as the first
# arg to dm)
if ( $linestart =~ /^\/(?:tweet|dm)/ ) {
".irssi/scripts/twirssi.pl" );
Irssi::settings_add_str( "twirssi", "twirssi_replies_store",
".irssi/scripts/twirssi.json" );
+
+Irssi::settings_add_int( "twirssi", "twitter_friends_poll", 600 );
+
Irssi::settings_add_bool( "twirssi", "twirssi_upgrade_beta", 0 );
Irssi::settings_add_bool( "twirssi", "tweet_to_away", 0 );
Irssi::settings_add_bool( "twirssi", "show_reply_context", 0 );