NAME

AnyEvent::XMPP::IM::Account - Instant messaging account

SYNOPSIS

my $cl = AnyEvent::XMPP::IM::Client->new;
...
my $acc = $cl->get_account ($jid);

DESCRIPTION

This module represents a class for IM accounts. It is used by AnyEvent::XMPP::Client.

You can get an instance of this class only by calling the get_account method on a AnyEvent::XMPP::Client object.

METHODS

connection ()

Returns the AnyEvent::XMPP::IM::Connection object if this account already has one (undef otherwise).

is_connected ()

Returns true if this accunt is connected.

jid ()

Returns either the full JID if the account is connected or returns the bare jid if not.

bare_jid ()

Returns always the bare JID of this account after stringprep has been applied, so you can compare the JIDs returned from this function.

nickname ()

Your nickname for this account.

nickname_for_jid ($jid)

This method transforms the $jid to a nickname. It looks the $jid up in the roster and looks for a nickname. If no nickname could be found in the roster it returns the node part for the $jid.

send_tracked_message ($msg)

This method sends the AnyEvent::XMPP::IM::Message object in $msg. The to attribute of the message is adjusted by the conversation tracking mechanism.

EVENTS

For these events callbacks can be registered (with the Object::Event interface):

tracked_message_destination => $bare_jid, $full_jid

This event is emitted whenever the message tracking mechanism changes (or sets) it's destination resource for the $bare_jid to $full_jid.

removed

Whenever the account is removed from the AnyEvent::XMPP::Client (eg. when disconnected) this event is emitted before it is destroyed.

AUTHOR

Robin Redeker, <elmex at ta-sa.org>, JID: <elmex at jabber.org>

COPYRIGHT & LICENSE

Copyright 2007, 2008 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.