DJabberd::Agent::Node(3) User Contributed Perl Documentation NAME DJabberd::Agent::Node - Abstract class for an agent that handles a specific node SYNOPSIS package MyPackage::DJabberd::MyNode; use base DJabberd::Agent::Node; # Example of an agent that responds to incoming chat messages sub handle_message { my ($self, $vhost, $stanza) = @_; my $response = $stanza->make_response(); $response->set_raw("Hello. I'm a software agent."); $response->deliver($vhost); } This class provides a parent class for agents which recieve stanzas addressed to a particular nodename within a domain. Such an agent is often referred to as a "Bot". A higher-level API for implementing "chat bots" is also provided in DJabberd::Bot. USAGE This class is a specialization of DJabberd::Agent. In most cases, users of this class will use the API exposed by DJabberd::Agent. However, there is some special behaviour to note and some additional methods that are not part of the basic agent class. handles_destination($self, $to_jid, $vhost) This class provides an overriden version of this method which responds with a true value if and only if the domain and the nodename of the destination JID match those that are handled by this instance. vcard($self, $requester_jid) The overriden version of this method will return a vCard where the full name is set to the nodename of this instance. Subclasses will probably want to override this to do something more fancy. SEE ALSO See also DJabberd::Agent, DJabberd::Component. COPYRIGHT Copyright 2007-2008 Martin Atkins This module is part of the DJabberd distribution and is covered by the distribution's overall licence. perl v5.38.0 2023-07-25 DJabberd::Agent::Node(3)