[382] in BarnOwl Developers

home help back first fref pref prev next nref lref last post

[D-O-H] r523 - in trunk: . owl/perl/lib/Net/Jabber

daemon@ATHENA.MIT.EDU (nelhage@MIT.EDU)
Thu Oct 29 18:05:33 2009

Resent-From: nelhage@mit.edu
Resent-To: barnowl-dev-mtg@charon.mit.edu
Date: Thu, 11 Jan 2007 17:29:21 -0500
To: dirty-owl-hackers@mit.edu
From: nelhage@MIT.EDU
Reply-To: dirty-owl-hackers@MIT.EDU

Author: nelhage
Date: 2007-01-11 17:29:21 -0500 (Thu, 11 Jan 2007)
New Revision: 523

Modified:
   trunk/
   trunk/owl/perl/lib/Net/Jabber/MUC.pm
Log:
 r17948@phanatique:  nelhage | 2007-01-11 17:26:44 -0500
 Some stupid Net::Jabber::MUC bugfixes.



Property changes on: trunk
___________________________________________________________________
Name: svk:merge
   - bb873fd7-8e23-0410-944a-99ec44c633eb:/branches/owl/filter-rewrite:15925
bb873fd7-8e23-0410-944a-99ec44c633eb:/local/d-o-h/trunk:17947
   + bb873fd7-8e23-0410-944a-99ec44c633eb:/branches/owl/filter-rewrite:15925
bb873fd7-8e23-0410-944a-99ec44c633eb:/local/d-o-h/trunk:17948

Modified: trunk/owl/perl/lib/Net/Jabber/MUC.pm
===================================================================
--- trunk/owl/perl/lib/Net/Jabber/MUC.pm	2007-01-11 22:29:14 UTC (rev 522)
+++ trunk/owl/perl/lib/Net/Jabber/MUC.pm	2007-01-11 22:29:21 UTC (rev 523)
@@ -54,7 +54,7 @@
         my $jid = $args{jid};
         $jid = Net::Jabber::JID->new($jid) unless UNIVERSAL::isa($jid, 'Net::Jabber::JID');
         $args{jid} = $jid;
-    } else if($args{room} && $args{server} && $args{nick}) {
+    } elsif($args{room} && $args{server} && $args{nick}) {
         $args{jid} = New::Jabber::JID->new($args{room}."@".$args{server}."/".$args{nick});
     } else {
         croak("You must specify either a jid or room,server,nick.");
@@ -165,7 +165,7 @@
     my $self = shift;
     my $sid = shift;
     my $packet = shift;
-    
+
     $self->_handlePresence($packet) if $packet->GetTag() eq "presence";
 }
 
@@ -180,13 +180,15 @@
     my $presence = shift;
 
     my $type = $presence->GetType() || "available";
-    my $from = $presence->GetFrom();
+    my $from = Net::Jabber::JID->new($presence->GetFrom());
 
-    return unless $from->GetJid('base') eq $self->BaseJID;
+    return unless $from->GetJID('base') eq $self->BaseJID;
 
-    if($type eq 'available') {
+    owl::error('JID matches');
+
+    if($type eq 'unavailable') {
         delete $self->{PRESENCE}->{$from->GetJID('full')};
-    } else {
+    } elsif($type eq 'available') {
         $self->{PRESENCE}->{$from->GetJID('full')} = $from;
     }
 }
@@ -214,5 +216,7 @@
 
 sub Presence {
     my $self = shift;
-    return keys %{$self->{PRESENCE}};
+    return values %{$self->{PRESENCE}};
 }
+
+1;


home help back first fref pref prev next nref lref last post