Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Net::XMPP2::Ext::RegisUseriContributed Perl DoNet::XMPP2::Ext::Registration(3)

NAME
       Net::XMPP2::Ext::Registration - Handles all tasks of in band
       registration

SYNOPSIS
	  my $con = Net::XMPP2::Connection->new	(...);

	  $con->reg_cb (stream_pre_authentication => sub {
	     my	($con) = @_;
	     my	$reg = Net::XMPP2::Ext::Registration->new (connection => $con);

	     $reg->send_registration_request (sub {
		my ($reg, $form, $error) = @_;

		if ($error) {
		   # error handling

		} else {
		   my $af = $form->try_fillout_registration ("tester", "secret");

		   $reg->submit_form ($af, sub {
		      my ($reg,	$ok, $error, $form) = @_;

		      if ($ok) { # registered successfully!
			 $con->authenticate

		      }	else {	 # error
			 if ($form) { #	we got an alternative form!
			    # fill it out and submit it	with C<submit_form> again
			 }
		      }
		   });
		}
	     });

	     0
	  });

DESCRIPTION
       This module handles all tasks of	in band	registration that are possible
       and specified by	XEP-0077. It's mainly a	helper class that eases	some
       tasks such as submitting	and retrieving a form.

METHODS
       new (%args)
	   This	is the constructor for a registration object.

	   connection
	       This must be a Net::XMPP2::Connection (or some other subclass
	       of that)	object.

	       This argument is	required.

       send_registration_request ($cb)
	   This	method sends a register	form request.  $cb will	be called when
	   either the form arrived or an error occured.

	   The first argument of $cb is	always $self.  If the form arrived the
	   second argument of $cb will be a Net::XMPP2::Ext::RegisterForm
	   object.  If an error	occured	the second argument will be undef and
	   the third argument will be a	Net::XMPP2::Error::Register object.

	   For hints how Net::XMPP2::Ext::RegisterForm should be filled	out
	   look	in XEP-0077. Either you	have legacy form fields, out of	band
	   data	or a data form.

	   See also try_fillout_registration in	Net::XMPP2::Ext::RegisterForm.

       send_unregistration_request ($cb)
	   This	method sends an	unregistration request.

	   For description of the semantics of the callback in $cb plase look
	   in the description of the "submit_form" method below.

       send_password_change_request ($username,	$password, $cb)
	   This	method sends a password	change request for the user $username
	   with	the new	password $password.

	   For description of the semantics of the callback in $cb plase look
	   in the description of the "submit_form" method below.

       submit_form ($form, $cb)
	   This	method submits the $form which should be of type
	   Net::XMPP2::Ext::RegisterForm and should be an answer form.

	   $con	is the connection on which to send this	form.

	   $cb is the callback that will be called once	the form has been
	   submitted and either	an error or success was	received.  The first
	   argument to the callback will be the	Net::XMPP2::Ext::Registration
	   object, the second will be a	boolean	value that is true when	the
	   form	was successfully transmitted and everything is fine.  If the
	   second argument is false then the third argument is a
	   Net::XMPP2::Error::Register object.	If the error contained a data
	   form	which is required to successfully make the request then	the
	   fourth argument will	be a Net::XMPP2::Ext::RegisterForm which you
	   should fill out and send again with "submit_form".

	   For the semantics of	such an	error form see also XEP-0077.

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

COPYRIGHT & LICENSE
       Copyright 2007 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.

perl v5.32.0			  2007-10-16  Net::XMPP2::Ext::Registration(3)

NAME | SYNOPSIS | DESCRIPTION | METHODS | AUTHOR | COPYRIGHT & LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Net::XMPP2::Ext::Registration&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help