![]() |
![]()
| ![]() |
![]()
NAMENet::XMPP::Roster - XMPP Roster Object SYNOPSISNet::XMPP::Roster is a module that provides a developer an easy interface to an XMPP roster. It provides high level functions to query, update, and manage a user's roster. DESCRIPTIONThe Roster object seeks to provide an easy to use API for interfacing with a user's roster. When you instantiate it, it automatically registers with the connection to receivce the correct packets so that it can track all roster updates, and presence packets. Basic Functionsmy $Client = Net::XMPP::Client->new(...); my $Roster = Net::XMPP::Roster->new(connection=>$Client); or my $Roster = $Client->Roster(); $Roster->clear(); if ($Roster->exists('bob@jabber.org')) { ... } if ($Roster->exists(Net::XMPP::JID)) { ... } if ($Roster->groupExists("Friends")) { ... } my @groups = $Roster->groups(); my @jids = $Roster->jids(); my @friends = $Roster->jids("group","Friends"); my @unfiled = $Roster->jids("nogroup"); if ($Roster->online('bob@jabber.org')) { ... } if ($Roster->online(Net::XMPP::JID)) { ... } my %hash = $Roster->query('bob@jabber.org'); my %hash = $Roster->query(Net::XMPP::JID); my $name = $Roster->query('bob@jabber.org',"name"); my $ask = $Roster->query(Net::XMPP::JID,"ask"); my $resource = $Roster->resource('bob@jabber.org'); my $resource = $Roster->resource(Net::XMPP::JID); my %hash = $Roster->resourceQuery('bob@jabber.org',"Home"); my %hash = $Roster->resourceQuery(Net::XMPP::JID,"Club"); my $show = $Roster->resourceQuery('bob@jabber.org',"Home","show"); my $status = $Roster->resourceQuery(Net::XMPP::JID,"Work","status"); my @resource = $Roster->resources('bob@jabber.org'); my @resource = $Roster->resources(Net::XMPP::JID); $Roster->resourceStore('bob@jabber.org',"Home","gpgkey",key); $Roster->resourceStore(Net::XMPP::JID,"logged on","2004/04/07 ..."); $Roster->store('bob@jabber.org',"avatar",avatar); $Roster->store(Net::XMPP::JID,"display_name","Bob"); Advanced FunctionsThese functions are only needed if you want to manually control the Roster. $Roster->add('bob@jabber.org', name=>"Bob", groups=>["Friends"] ); $Roster->add(Net::XMPP::JID); $Roster->addResource('bob@jabber.org', "Home", show=>"dnd", status=>"Working" ); $Roster->addResource(Net::XMPP::JID,"Work"); $Roster->remove('bob@jabber.org'); $Roster->remove(Net::XMPP::JID); $Roster->removeResource('bob@jabber.org',"Home"); $Roster->removeResource(Net::XMPP::JID,"Work"); $Roster->handler(Net::XMPP::IQ); $Roster->handler(Net::XMPP::Presence); METHODSBasic Functions
Advanced Functionsadd(jid, - Manually adds the JID to the Roster with the
addResource(jid, - Manually add the resource to the JID in the
remove(jid) - Removes all reference to the JID from the Roster
object.
removeResource(jid, - Removes the resource from the jid in the
handler(packet) - Take either a Net::XMPP::IQ or
Net::XMPP::Presence
AUTHOROriginally authored by Ryan Eatmon. Previously maintained by Eric Hacker. Currently maintained by Darian Anthony Patrick. COPYRIGHTThis module is free software, you can redistribute it and/or modify it under the LGPL 2.1.
|