WebService::AngelXML::Auth - Generates XML Authentication Document for Angel Web service
use WebService::AngelXML::Auth; my $ws = WebService::AngelXML::Auth->new(); $ws->allow(1) if "test"; print $ws->header, $ws->response;
WebService::AngelXML::Auth is a Perl object oriented interface that allows for the creation of the XML response required for AngleXML Authentication.
use WebService::AngelXML::Auth; my $ws=WebService::AngelXML::Auth->new(); if ("Some test here") { $ws->allow(1); } else { $ws->deny(1); #default } print $ws->header, $ws->response;
my $ws=WebService::AngelXML::Auth->new( cgi => $query, #pass this if already constructed else will construct allow => 0, #allow and deny are both stored in $ws->{'deny'}; deny => 1, #default is deny=1 only set deny=0 if you are permissive mimetype => "text/xml", #default is application/vnd.angle-xml.xml+xml page => "/1000", #default next page is "/1000" );
Set or returns the current allow state. Allow and deny methods are inversly related.
You may set the allow and deny methods with any value that Perl evaluates to true or false. However, they will always return "-1" for true and "0" for false.
if ($ws->allow) { "Do something!" } print $ws->allow; #will always return "-1" for true and "0" for false $ws->allow(0); #will set the allow to "0" and the deny to "-1" $ws->allow(1); #will set the allow to "-1" and the deny to "0"
Set or returns the current deny state. Allow and deny methods are inversly related.
You may set the allow and deny methods with any value that Perl evaluates to true or false. However, they will always return -1 for true and 0 for false.
if ($ws->deny) { "Do something!" } print $ws->deny; #will always return -1 for true and 0 for false $ws->deny(0); #will set the deny to "0" and the allow to "-1" $ws->deny(1); #will set the deny to "-1" and the allow to "0"
Returns an XML document with an XML declaration and a root name of "ANGELXML"
print $ws->response;
Example (Deny):
<ANGELXML> <MESSAGE> <PLAY> <PROMPT type="text">.</PROMPT> </PLAY> <GOTO destination="/1000" /> </MESSAGE> <VARIABLES> <VAR name="status_code" value="-1" /> </VARIABLES> </ANGELXML>
print $document->header;
Example:
Content-Type: application/vnd.angle-xml.xml+xml
Sets or returns mime type the default is application/vnd.angle-xml.xml+xml
$ws->mimetype('text/xml'); #This works better when testing with MSIE my $mt=$ws->mimetype;
Sets or returns the cgi object which must be CGI from cpan. Default is to construct a new CGI object. If you already have a CGI object, you MUST pass it on construction.
$cgi=CGI->new("id=9999;pin=0000;page=/1000"); $ws=WebService::AngelXML::Auth->new(cgi=>$cgi);
DO NOT do this as we would have already created two CGI objects.
$cgi=CGI->new("id=9999;pin=0000;page=/1000"); #a new CGI object is created $ws=WebService::AngelXML::Auth->new(); #a new CGI object is created on initialization $ws->cgi($cgi); #this CGI object may not be iniatialized correctly
CGI object is fully functional
print $ws->cgi->p("Hello World!"); #All CGI methods are available
Returns the user id which is passed from the CGI parameter. The default CGI parameter is "id" but can be overriden by the param_id method.
print $ws->id; $ws->id("0000"); #if you want to set it for testing.
The value of the CGI parameter holding the value of the user id.
$ws->param_id("id"); #default
Returns the user pin which is passed from the CGI parameter. The default CGI parameter is "pin" but can be overriden by the param_pin method.
print $ws->pin; $ws->pin("0000"); #if you want to set it for testing.
The value of the CGI parameter holding the value of the user pin.
$ws->param_pin("pin"); #default
Returns the authentication next page which can be passed from the POST parameter. See param_page method.
Three ways to set next page.
$ws=WebService::AngelXML::Auth->new(page=>"/1000"); #during construction $ws->page("/1000"); #after constructing script.cgi?page=/1000 #as cgi parameter
The value of the CGI parameter holding the value of the next page.
$ws->param_page("page"); #default
Sets or returns the prompt text.
print $ws->prompt; $ws->prompt("."); #default
Try Angel first then the author of this package who is not an Angel employee
Michael R. Davis (mrdvt92) CPAN ID: MRDVT
Copyright 2008 - STOP, LLC Copyright 2008 - Michael R. Davis (mrdvt92)
This program is free software licensed under the...
The BSD License
The full text of the license can be found in the LICENSE file included with this module.
XML::Writer is used by this package to generate XML.
CGI is used by this package to handle HTTP POST/GET parameters.
To install WebService::AngelXML::Auth, copy and paste the appropriate command in to your terminal.
cpanm
cpanm WebService::AngelXML::Auth
CPAN shell
perl -MCPAN -e shell install WebService::AngelXML::Auth
For more information on module installation, please visit the detailed CPAN module installation guide.