Provided by: libanyevent-xmpp-perl_0.55-5_all bug

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.