AnyEvent::XMPP::Ext::Version - Software version


AnyEvent-XMPP documentation  | view source Contained in the AnyEvent-XMPP distribution.

Index


NAME

Top

AnyEvent::XMPP::Ext::Version - Software version

SYNOPSIS

Top

   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

Top

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

Top

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

Top

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

COPYRIGHT & LICENSE

Top


AnyEvent-XMPP documentation  | view source Contained in the AnyEvent-XMPP distribution.