Net::XMPP2::IM::Contact - Instant messaging roster contact
   my $con = Net::XMPP2::IM::Connection->new (...);
   ...
   my $ro  = $con->roster;
   if (my $c = $ro->get_contact ('test@example.com')) {
      $c->make_message ()->add_body ("Hello there!")->send;
   }
This module represents a class for contact objects which populate
    a roster (Net::XMPP2::IM::Roster.
You can get an instance of this class only by calling the
    "get_contact" function on a roster
  object.
  - send_update
    ($cb, %upd)
 
  - This method updates a contact. If the request is finished it will call
      $cb. If it resulted in an error the first argument
      of that callback will be a Net::XMPP2::Error::IQ object.
    
The %upd hash should have one of the
        following keys and defines what parts of the contact to update:
   
  - send_subscribe
    ()
 
  - This method sends this contact a subscription request.
 
  - send_subscribed
    ()
 
  - This method accepts a contact's subscription request.
 
  - send_unsubscribe
    ()
 
  - This method sends this contact a unsubscription request.
 
  - send_unsubscribed
    ()
 
  - This method sends this contact a unsubscription request which unsubscribes
      ones own presence from him (he wont get any further presence from
    us).
 
  - update
    ($item)
 
  - This method wants a Net::XMPP2::Node in $item
      which should be a roster item received from the server. The method will
      update the contact accordingly and return it self.
 
  - update_presence
    ($presence)
 
  - This method updates the presence of contacts on the roster.
      $presence must be a Net::XMPP2::Node object and
      should be a presence packet.
 
  - get_presence
    ($jid)
 
  - This method returns a presence of this contact if it is available. The
      return value is an instance of Net::XMPP2::IM::Presence or undef if no
      such presence exists.
 
  - get_presences
 
  - Returns all presences of this contact in form of Net::XMPP2::IM::Presence
      objects.
 
  - get_priority_presence
 
  - Returns the presence with the highest priority.
 
  - groups
 
  - Returns the list of groups (strings) this contact is in.
 
  - jid
 
  - Returns the bare JID of this contact.
 
  - name
 
  - Returns the (nick)name of this contact.
 
  - is_on_roster
    ()
 
  - Returns 1 if this is a contact that is officially on the roster and not
      just a contact we've received presence information for.
 
  - subscription
 
  - Returns the subscription state of this contact, which can be one of:
    
    
   'none', 'to', 'from', 'both'
    
    If the contact isn't on the roster anymore this method
        returns:
    
       'remove'
    
   
  - ask
 
  - Returns 'subscribe' if we asked this contact for subscription.
 
  - subscription_pending
 
  - Returns true if this contact has a pending subscription. That means: the
      contact has to aknowledge the subscription.
 
  - nickname
 
  - Returns the nickname of this contact.
 
  - make_message
    (%args)
 
  - This method returns a Net::XMPP2::IM::Message object with the to field set
      to this contacts JID.
    
%args are further arguments for the
        message constructor.
   
Robin Redeker, "<elmex at
    ta-sa.org>", JID: "<elmex at
    jabber.org>"
Copyright 2007 Robin Redeker, all rights reserved.
This program is free software; you can redistribute it and/or
    modify it under the same terms as Perl itself.