x-Soap
- Module: x-Soap
- Version: 4.21
- Author: Simon Roberts Wishcraft
- Compatible: All Versions - 2.0.x - 2.3.x
- Download: xoops2_xsoap_4.21.zip
- Torrent: xoops2_x-soap_4.0_final.zip
- Source Forge: X-Soap
ZIP CRC
xoops2_xsoap_4.21.zip
- MD5: a406cae1685fcb075f714ffb1854ed09
- SHA1: 7e4821ee92704a4aee7402f814c7f647971ebffb
- RIPEMD160: 31a3568e7ed6ca472d44fc498b535c21da765546
- CRC32: 1ff4a781
- Date: Today, July 03, 2009, 2:44:46 AM
xoops2_xsoap_4.2.zip
- MD5: 5fe36273fb74e12ccc9e53bf5996515f
- SHA1: a10ff905b45592259566919ea3021ec93e62fd4e
- RIPEMD160: d8b598674da743aba0ec844ca1866d962c59f0bd
- CRC32: 931a7aaa
- Date: 25 - April - 2009 16:01 AEST
- Release Status: Final
xoops2_x-soap_4.0_final.zip
- MD5: bfb03b8e95527d471098dbfc6304c007
- SHA1: 0c634ad113621a84e8477c24561379e241776823
- RIPEMD160: ef5c62de5c97e7b58f80058a964a9feecfbafd60
- CRC32: 88f5825b
- Date: 18 - Sept - 2008 04:38 AEST
- Release Status: Final
xoops2_xsoap_3.9.zip
- MD5: 33a1ab66792006b8ee88177c601be97d
- SHA1: d31a950c31ae11dfce40feecdd9ce4855724aaf7
- RIPEMD160: 1b936a480e971fa5221c6238179e9d6248de9df8
- CRC32: 85661bd1
- Date: 04 - July - 2008 04:38 AEST
- Release Status: Stable
HashCalc
HashCalc is a SlavaSoft Tool for Calculating and checking file hashing and other functionalities of Textual Hashing, you can check your file hashing with this tool it is an easy-to-use hash calculator. It can compute message digests, checksums and HMACs for files, as well as for text and hex strings. It offers a choice of 13 of the most popular hash and checksum algorithms for calculations.
- MD5: 3763ce0490295b4bcbe4e4cdbc85be48
- SHA1: f262b8a580fe26c317105e30bc03857cdd6f7ecf
- RIPEMD160: 9fa9ef399437b75e0a48b91ea009622e08ad0175
- CRC32: 484d20d9
Release notes
x-Soap is an extension library for XOOPS, it is a soap server that is design to have a secure syndication method for customised crons and systems integration. You can share any part of your xoops database securely with x-soap including post, retrieve and update.
Help System will be written for this module, you can securely and safely sydnicate databases within the XOOPS environment with any soap compatible system.
X-Soap is a complete self contained API! As an application interface is comes with a basic record submission, updating and retrieving functions, but you can always add your own functions or even functions within xoops to server.php in the /include/ path.
You can syndicate with other xoops systems, by witting a cron for the system to run in soap between yours and other applications!! Even another xoops soap server. Share user Authentication with another service or forums topics, some post and comments what ever you wish to do with this api.
You can have Xoops share authentication with a .NET Application or a delphi or cobol main frame, whichever you want to connect to via XML SOAP transport layer.
Which ever you please, this is an advance module we offer limited Support!
Topics of Interest
Further References
Patches
Authentication Patches
- AuthFactory Patch + Authentication Plugin 181Kbs (09-MAY-2008) - auth-xsoap.zip - md5:1fd525217bd3f59e31ff174086fe5f44
Plugins
Writing a Plug-in
Functional Rules
- Must appear in the /modules/xsoap/plugins/ Folder path
- Additional PHP files for Script MUST appear on /modules/xsoap/plugins/Function_name/
- Key Function must be the same as filename
- Function must be tested before loading onto the API so no parsing error occur
- Function must end in .php & have the same name as the primary function
File Structure
The following example is how you would lay out a soap plug in called get_threads
Example (get_threads.php):
<?
/* This function is the one called when the soap function is spawning the XSD component of the wsdl
XML document.. must be called function_xsd and return an array as described, when an item contains
multiple levels this is embedded using an 'items' element in the array which contains data and the
element object name which must be unique.. this is the objname array element contained within an array['items']
*/
function get_threads_xsd(){
$xsd = array();
$i=0;
$data = array();
$data[] = array("name" => "username", "type" => "string");
$data[] = array("name" => "password", "type" => "string");
$xsd['request'][$i]['items']['data'] = $data;
$xsd['request'][$i]['items']['objname'] = 'var';
$xsd['request'][$i++] = array("name" => "data1", "type" => "string");
$xsd['request'][$i++] = array("name" => "data2", "type" => "string");
$i=0;
$xsd['response'][$i] = array("name" => "ERRNUM", "type" => "integer");
$data = array();
$data[] = array("name" => "element1", "type" => "integer");
$data[] = array("name" => "element2", "type" => "string");
$data[] = array("name" => "element3", "type" => "string");
$data[] = array("name" => "element4", "type" => "string");
$i++;
$xsd['response'][$i]['items']['data'] = $data;
$xsd['response'][$i]['items']['objname'] = 'RESULT';
return $xsd;
}
/* This function is now redundant and not required, over planning.
Not require any need for SOAP Transactional Layer
See: http://www.w3.org/TR/wsdl
function get_threads_wsdl(){
}
*/
/* This function is now redundant and not required, over planning.
Not require any need for SOAP Transactional Layer
See: http://www.w3.org/TR/wsdl
function get_threads_wsdl_service(){
}
*/
function get_threads($var, {$data1, $data2, ...}){
// Required 1 - This routine must appear at the top of the function otherwise you are introducing a security issue.
global $xoopsModuleConfig;
if ($xoopsModuleConfig['site_user_auth']==1){
if (!checkright(basename(__FILE__),$var['username'],$var['password']))
return array('ErrNum'=> 9, "ErrDesc" => 'No Permission for plug-in');
}
// End Required 1
// Subjective example follows here
$thread = new threadsHandler()
// Always must return in an array ie. Array("FOO" => 1, "BAR" =>2)
return $thread->foo($data1, $data2);
}
class threadsHandler {
function __construct($bar){
}
function foo($data1, $data2, ...){
// Function goes here
}
}
?>
Distributed Plugins XML wdsl Schemer
tablesforpost - Function
tablesforpost is a a SOAP function that retrieves the tables that can be inserted into on the service for new data submission to the database
tablesforpost - Request
<xsoap> <username></username> <password></password> </xsoap>
tablesforpost - Response
<xsoap> <array_object_1> <id></id> <table></table> </array_object_1> <array_object_2> <id></id> <table></table> </array_object_2> ... </xsoap>
tablesforupdate - Function
tablesforupdate is a a SOAP function that retrieves the tables that can be updated on the service for data submission to the database
tablesforupdate - Request
<xsoap> <username></username> <password></password> </xsoap>
tablesforupdate - Response
<xsoap> <array_object_1> <id></id> <table></table> </array_object_1> <array_object_2> <id></id> <table></table> </array_object_2> ... </xsoap>
tablesforretrieve - Function
tablesforretrieve is a a SOAP function that retrieves the tables that can be seen on the service for data retrieval from the database
tablesforretrieve - Request
<xsoap> <username></username> <password></password> </xsoap>
tablesforretrieve - Response
<xsoap> <array_object_1> <id></id> <table></table> </array_object_1> <array_object_2> <id></id> <table></table> </array_object_2> ... </xsoap>
tableschemer - Function
tableschemer is a a SOAP function that retrieves the a tables schemer that can be seen on the service
tableschemer - Request
<xsoap> <username></username> <password></password> <update></update> <post></post> <retrieve></retrieve> <tablename></tablename> </xsoap>
tableschemer - Response
<xsoap> <array_object_1> <table_id></table_id> <field></field> <allowpost></allowpost> <allowretrieve></allowretrieve> <allowupdate></allowupdate> <string></string> <int></int> <float></float> <text></text> <other></other> <key></key> </array_object_1> <array_object_2> <table_id></table_id> <field></field> <allowpost></allowpost> <allowretrieve></allowretrieve> <allowupdate></allowupdate> <string></string> <int></int> <float></float> <text></text> <other></other> <key></key> </array_object_2> ... </xsoap>
post - Function
post is a a SOAP function that insert a record in a tables that can be posted to on the service
post - Request
<xsoap> <username></username> <password></password> <tablename></tablename> <data> <array_object_1> <field></field> <value></value> </array_object_1> <array_object_2> <field></field> <value></value> </array_object_2> ... </data> </xsoap>
post - Response
<xsoap> <insert_id></insert_id> </xsoap>
retrieve - Function
retrieve is a a SOAP function that select a record or group of records in a tables that can be retrieved off the service
retrieve - Request
<xsoap> <username></username> <password></password> <tablename></tablename> <clause></clause> <data> <array_object_1> <field></field> </array_object_1> <array_object_2> <field></field> </array_object_2> ... </data> </xsoap>
retrieve - Response
<xsoap> <total_records></total_records> <data> <record_1> <array_object_1> <field></field> <value></value> </array_object_1> <array_object_2> <field></field> <value></value> </array_object_2> ... </record_1> <record_2> <array_object_1> <field></field> <value></value> </array_object_1> <array_object_2> <field></field> <value></value> </array_object_2> ... </record_2> ... </data> </xsoap>
update - Function
update is a a SOAP function that update a record in a tables that can be posted to on the service you must have the primary key set.
update - Request
<xsoap> <username></username> <password></password> <tablename></tablename> <data> <array_object_1> <field></field> <value></value> </array_object_1> <array_object_2> <field></field> <value></value> </array_object_2> ... </data> </xsoap>
update - Response
<xsoap> <result></result> </xsoap>
retrievekeys - Function
retrievekeys is a a SOAP function that select a record or group of records in a tables that can be retrieved off the service
retrievekeys - Request
<xsoap> <username></username> <password></password> <tablename></tablename> <clause></clause> </xsoap>
retrievekeys - Response
<xsoap> <data> <record_1> <array_object_1> <field></field> <value></value> </array_object_1> <array_object_2> <field></field> <value></value> </array_object_2> ... </record_1> <record_2> <array_object_1> <field></field> <value></value> </array_object_1> <array_object_2> <field></field> <value></value> </array_object_2> ... </record_2> ... </data> </xsoap>
retrievecrc - Function
retrievecrc is a SOAP function that select a record or group of records in a tables that can be retrieved off the service and calculates an MD5 CRC from the field selected in the admin tool for generating crc.
retrievecrc - Request
<xsoap> <username></username> <password></password> <tablename></tablename> <clause></clause> </xsoap>
retrievecrc - Response
<xsoap> <data> <record_1> <id></id> <crc></crc> <array_object_1> <field></field> <crc></crc> </array_object_1> <array_object_2> <field></field> <crc></crc> </array_object_2> ... </record_1> <record_2> <id></id> <crc></crc> <array_object_1> <field></field> <crc></crc> </array_object_1> <array_object_2> <field></field> <crc></crc> </array_object_2> ... </record_2> ... </data> </xsoap>
xoops_authentication - Function
xoops_authentication is a a SOAP function that will check an authentication condition a user on the your network for the xoops soap service via any other SOAP Complaint Network.
xoops_authentication - Request
<xsoap> <data> <username></username> <password></password> <auth> <username></username> <password></password> </auth> </data> </xsoap>
xoops_authentication - Response
<xsoap> <data> <ERRNUM></ERRNUM> <RESULT> <uid></uid> <uname></uname> <email></email> <user_from></user_from> <name></name> <user_icq></user_icq> <user_sig></user_sig> <user_viewemail></user_viewemail> <user_aim></user_aim> <user_yim></user_yim> <user_msnm></user_msnm> <attachsig></attachsig> <timezone_offset></timezone_offset> <notify_method></notify_method> <user_occ></user_occ> <bio></bio> <user_intrest></user_intrest> <user_mailok></user_mailok> </RESULT> </data> </xsoap>
xoops_check_activation - Function
xoops_check_activation is a SOAP function that will check an activation and activate a user on the your network for the xoops soap service via any other SOAP Complaint Network.
xoops_check_activation - Request
<xsoap> <data> <username></username> <password></password> <user> <uname></uname> <actkey></actkey> <siteinfo> <sitename></sitename> <adminmail></adminmail> <xoops_url></xoops_url> </siteinfo> </user> </data> </xsoap>
xoops_check_activation - Response
<xsoap> <data> <ERRNUM></ERRNUM> <RESULT> <uname></uname> <actkey></actkey> </RESULT> </data> </xsoap>
xoops_create_user - Function
xoops_create_user is a SOAP function that will create a user on the your network for the xoops soap service via any other SOAP Complaint Network.
xoops_create_user - Request
<xsoap> <data> <username></username> <password></password> <auth> <user_viewemail></user_viewemail> <uname></uname> <email></email> <url></url> <actkey></actkey> <pass></pass> <timezone_offset></timezone_offset> <user_mailok></user_mailok> <siteinfo> <sitename></sitename> <adminmail></adminmail> <xoops_url></xoops_url> </siteinfo> </auth> </data> </xsoap>
xoops_create_user - Response
<xsoap> <data> <ERRNUM></ERRNUM> <RESULT> <id></id> <user></user> <text></text> </RESULT> </data> </xsoap>
xoops_network_disclaimer - Function
xoops_network_disclaimer is a SOAP function that will retrieve the network disclaimer for the xoops soap service.
xoops_network_disclaimer - Request
<xsoap> <data> <username></username> <password></password> </data> </xsoap>
xoops_network_disclaimer - Response
<xsoap> <data> <ERRNUM></ERRNUM> <RESULT></RESULT> </data> </xsoap>
xoops_user_validate - Function
xoops_user_validate is a SOAP function that will validate the user details of a xoops user for authentication purposes.
xoops_user_validate - Request
<xsoap> <data> <username></username> <password></password> <validate> <uname></uname> <pass></pass> <vpass></vpass> <email></email> </validate> </data> </xsoap>
xoops_user_validate - Response
<xsoap> <data> <ERRNUM></ERRNUM> <RESULT></RESULT> </data> </xsoap>









![[Main Page]](/modules/mediawiki/images/mediawiki.png)