<?php
// The sample code described herein is provided on an "as is" basis, without warranty of any kind.
// MailUp shall not be liable for any direct, indirect or consequential damages or costs of any type arising out of any action taken by you or others related to the sample code.
class MailUpWsSend {
protected $WSDLUrl = "http://services.mailupnet.it/MailupSend.asmx?WSDL";
private $soapClient;
private $xmlResponse;
protected $domResult;
function __construct() {
$this->soapClient = new SoapClient($this->WSDLUrl, array("trace" => 1, "exceptions" => 0));
}
function __destruct() {
unset($this->soapClient);
}
public function getFunctions() {
print_r($this->soapClient->__getFunctions());
}
public function loginFromId() {
try {
$loginData = array("user" => "user",
"pwd" => "password",
"consoleId" => "idconsole");
$this->soapClient->loginFromId($loginData);
if ($this->readReturnCode("LoginFromId","errorCode") != 0) {
echo "<br /><br />Error in LoginFromId: ". $this->readReturnCode("LoginFromId","errorDescription");
die();
}
else $this->accessKey = $this->readReturnCode("LoginFromId","accessKey");
echo "<br>AccesKey: ". $this->accessKey;
} catch (SoapFault $soapFault) {
var_dump($soapFault);
}
}
public function logout() {
try {
$this->soapClient->Logout(array("accessKey" => $this->accessKey));
if ($this->readReturnCode("Logout","errorCode") != 0)
echo "<br /><br />Error in Logout". $this->readReturnCode("Logout","errorDescription");
} catch (SoapFault $soapFault) {
var_dump($soapFault);
}
}
private function readReturnCode($func, $param) {
$this->xmlResponse = $this->soapClient->__getLastResponse();
$dom = new DomDocument();
$dom->loadXML($this->xmlResponse) or die("(1)XML file is not valid!");
$xmlResult = $dom->getElementsByTagName($func."Result");
$this->domResult = new DomDocument();
$this->domResult->LoadXML(html_entity_decode($xmlResult->item(0)->nodeValue)) or die("(2)XML file is not valid!");
$rCode = $this->domResult->getElementsByTagName($param);
return $rCode->item(0)->nodeValue;
}
//... other functions...
// public function functionName(...) {...}
}
?>
<html>
<head></head>
<body>
<?php
$WsSend = new MailUpWsSend();
$WsSend->loginFromId();
// use $WsSend->functionName(...) to call other methods
$WsSend->logout();
?>
</body>
</html> |