NAME¶
AnyEvent::XMPP::Ext::Version - Software version
SYNOPSIS¶
use AnyEvent::XMPP::Ext::Version;
my $version = AnyEvent::XMPP::Ext::Version->new;
$version->set_name ("My client");
$version->set_version ("0.3");
$version->set_os (`uname -a`);
$disco->enable_feature ($version->disco_feature);
DESCRIPTION¶
This module defines an extension to provide the abilities to answer to software
version requests and to request software version from other entities.
See also XEP-0092
This class is derived from AnyEvent::XMPP::Ext and can be added as extension to
objects that implement the AnyEvent::XMPP::Extendable interface or derive from
it.
METHODS¶
- new (%args)
- Creates a new software version handle.
- set_name ($name)
- This method sets the software $name string, the default is
"AnyEvent::XMPP".
- set_version ($version)
- This method sets the software $version string that is replied.
The default is $AnyEvent::XMPP::VERSION.
- set_os ($os)
- This method sets the operating system string $os. If you pass undef the
string will be removed.
The default is no operating system string at all.
You may want to pass something like this:
$version->set_os (`uname -s -r -m -o`);
- request_version ($con, $dest,
$cb)
- This method sends a version request to $dest on the connection $con.
$cb is the callback that will be called if either an error occured or the
result was received. The callback will also be called after the default IQ
timeout for the connection $con. The second argument for the callback will
be either undef if no error occured or a AnyEvent::XMPP::Error::IQ error.
The first argument will be a hash reference with the following
fields:
- jid
- The JID of the entity this version reply belongs to.
- version
- The software version string of the entity.
- name
- The software name of the entity.
- os
- The operating system of the entity, which might be undefined if none was
provided.
Here an example of the structure of the hash reference:
{
jid => 'juliet@capulet.com/balcony',
name => 'Exodus',
version => '0.7.0.4',
os => 'Windows-XP 5.01.2600',
}
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.