Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • perl/modules/Jabber/lib/BarnOwl/Module/Jabber.pm

    rf032974 r892568b  
    581581      or die("Usage: jmuc join MUC [-p password] [-a account]");
    582582
     583    die("Error: Must specify a fully-qualified MUC name (e.g. barnowl\@conference.mit.edu)\n")
     584        unless $muc =~ /@/;
    583585    $muc = Net::Jabber::JID->new($muc);
    584586    $jid = Net::Jabber::JID->new($jid);
     
    586588
    587589    $conn->getConnectionFromJID($jid)->MUCJoin(JID      => $muc,
    588                                                   Password => $password,
    589                                                   History  => {
    590                                                       MaxChars => 0
    591                                                      });
     590                                               Password => $password,
     591                                               History  => {
     592                                                   MaxChars => 0
     593                                                  });
    592594    return;
    593595}
     
    599601    die("Usage: jmuc part MUC [-a account]") unless $muc;
    600602
    601     $conn->getConnectionFromJID($jid)->MUCLeave(JID => $muc);
    602     queue_admin_msg("$jid has left $muc.");
     603    if($conn->getConnectionFromJID($jid)->MUCLeave(JID => $muc)) {
     604        queue_admin_msg("$jid has left $muc.");
     605    } else {
     606        die("Error: Not joined to $muc");
     607    }
    603608}
    604609
     
    639644    my $m = shift;
    640645    my @jids = $m->Presence();
    641     return "JIDs present in " . $m->BaseJID . "\n\t"
    642       . join("\n\t", map {$_->GetResource}@jids) . "\n";
     646
     647    my $presence = "JIDs present in " . $m->BaseJID;
     648    if($m->Anonymous) {
     649        $presence .= " [anonymous MUC]";
     650    }
     651    $presence .= "\n\t";
     652    $presence .= join("\n\t", map {pp_jid($m, $_);} @jids) . "\n";
     653    return $presence;
     654}
     655
     656sub pp_jid {
     657    my ($m, $jid) = @_;
     658    my $nick = $jid->GetResource;
     659    my $full = $m->GetFullJID($jid);
     660    if($full && $full ne $nick) {
     661        return "$nick ($full)";
     662    } else {
     663        return "$nick";
     664    }
    643665}
    644666
     
    904926                              sid => $sid } );
    905927    $jhash{type} = 'admin';
     928   
    906929    BarnOwl::queue_message( BarnOwl::Message->new(%jhash) );
    907930}
     
    11341157    }
    11351158    elsif ( $jtype eq 'normal' ) {
    1136         $props{replycmd}  = undef;
     1159        $props{replycmd}  = "";
    11371160        $props{private} = 1;
    11381161    }
    11391162    elsif ( $jtype eq 'headline' ) {
    1140         $props{replycmd} = undef;
     1163        $props{replycmd} = "";
    11411164    }
    11421165    elsif ( $jtype eq 'error' ) {
    1143         $props{replycmd} = undef;
     1166        $props{replycmd} = "";
    11441167        $props{body}     = "Error "
    11451168          . $props{error_code}
Note: See TracChangeset for help on using the changeset viewer.