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.