- Timestamp:
- Dec 22, 2009, 6:37:38 PM (13 years ago)
- Branches:
- master, release-1.5, release-1.6, release-1.7, release-1.8, release-1.9
- Children:
- a2a5236
- Parents:
- 6396c1e
- git-author:
- Alejandro R. Sedeño <asedeno@mit.edu> (12/22/09 01:15:39)
- git-committer:
- Alejandro R. Sedeño <asedeno@mit.edu> (12/22/09 18:37:38)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
perl/modules/Jabber/lib/BarnOwl/Module/Jabber/Connection.pm
r8590774 r0dbb7d2 163 163 } 164 164 165 =head2 OnConnect 166 167 Actions to perform on connecting and reconnecting. 168 169 =cut 170 171 sub onConnect { 172 my $self = shift; 173 my $conn = shift; 174 my $jidStr = shift; 175 176 my $fullJid = $self->{SESSION}->{FULLJID} || $jidStr; 177 my $roster = $conn->getRosterFromJID($jidStr); 178 179 $roster->fetch(); 180 $self->PresenceSend( priority => 1 ); 181 182 $conn->renameConnection($jidStr, $fullJid); 183 BarnOwl::admin_message('Jabber', "Connected to jabber as $fullJid"); 184 # The remove_io_dispatch() method is called from the 185 # ConnectionManager's removeConnection() method. 186 $self->{fileno} = $self->getSocket()->fileno(); 187 BarnOwl::add_io_dispatch($self->{fileno}, 'r', sub { $self->OwlProcess($fullJid) }); 188 189 # populate completion from roster. 190 for my $buddy ( $roster->jids('all') ) { 191 my %jq = $roster->query($buddy); 192 my $name = $jq{name} || $buddy->GetUserID(); 193 $BarnOwl::Module::Jabber::completion_jids{$name} = 1; 194 $BarnOwl::Module::Jabber::completion_jids{$buddy->GetJID()} = 1; 195 } 196 $BarnOwl::Module::Jabber::vars{idletime} |= BarnOwl::getidletime(); 197 unless (exists $BarnOwl::Module::Jabber::vars{keepAliveTimer}) { 198 $BarnOwl::Module::Jabber::vars{keepAliveTimer} = 199 BarnOwl::Timer->new({ 200 'after' => 5, 201 'interval' => 5, 202 'cb' => sub { BarnOwl::Module::Jabber::do_keep_alive_and_auto_away(@_) } 203 }); 204 } 205 } 206 165 207 =head1 SEE ALSO 166 208
Note: See TracChangeset
for help on using the changeset viewer.