В общем был такой код (который отлично пахал на локальном серваке):
$client = new SoapClient("https://llu.webservices.opalonline.co.uk/LineAvailabilityCheckerServiceV1200/InGroup/LineAvailabilityCheckerService.asmx?WSDL");<br/>
$params = new stdClass();<br/>
$params->Username = 'username';<br/>
$params->Password = 'pass';<br/>
$params->ResellerID = 6;<br/>
$params->consent = 'Yes';<br/>
$params->characteristics->TelephoneNumber = $phone;<br/>
$params->characteristics->AccessLineStatus = 'NotSet';<br/>
$params->characteristics->ExchangeState = 'NotSet';<br/>
$params->characteristics->ExchangeCapacityFlag = 'NotSet';<br/>
$params->characteristics->ForecastDate = '2010-01-01+01:01';<br/>
$params->characteristics->DirectPortabilityFlag = 'NotSet';<br/>
$params->characteristics->CeaseDate = '2010-01-01+01:01';<br/>
$params->characteristics->CeaseType = 'NotSet';<br/>
$params->characteristics->ServiceType = $technology;<br/>
<br/>
$TTAC_result = $client->GetLineCharacteristicsForTelephoneNumber($params);
Но у клиента на сервере расширение soap не включено и включить его нельзя и я переписал код с использованием библиотеки nusoap.php:
require_once(BASE_PATH . '/libex/soap/nusoap.php');<br/>
$client = new nusoapclient('https://llu.webservices.opalonline.co.uk/LineAvailabilityCheckerServiceV1200/InGroup/LineAvailabilityCheckerService.asmx?WSDL', true);<br/>
<br/>
$params = array();<br/>
$params['Username'] = 'ttb_provisioning@opaltelecom.co.uk';<br/>
$params['Password'] = 'username';<br/>
$params['ResellerID'] = pass;<br/>
$params['consent'] = 'Yes';<br/>
$params['characteristics']['TelephoneNumber'] = $phone;<br/>
$params['characteristics']['AccessLineStatus'] = 'NotSet';<br/>
$params['characteristics']['ExchangeState'] = 'NotSet';<br/>
$params['characteristics']['ExchangeCapacityFlag'] = 'NotSet';<br/>
$params['characteristics']['ForecastDate'] = '2010-01-01+01:01';<br/>
$params['characteristics']['DirectPortabilityFlag'] = 'NotSet';<br/>
$params['characteristics']['CeaseDate'] = '2010-01-01+01:01';<br/>
$params['characteristics']['CeaseType'] = 'NotSet';<br/>
$params['characteristics']['ServiceType'] = $technology;<br/>
<br/>
$result = $client->call('GetLineCharacteristicsForTelephoneNumber', $params);<br/>
<br/>
echo '<pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>';
последняя строчка возвращает:
<?xml version="1.0" encoding="utf-8"?><br/>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><br/>
<soap:Body><br/>
ServiceErrorMPFNotSet<br/>
NotSet<br/>
NotSet<br/>
0001-01-01T00:00:00<br/>
NotSet<br/>
NotSet<br/>
0001-01-01T00:00:00<br/>
<LastBandwidthCalculationDate xsi:nil="true" /><br/>
<br/>
<br/>
</soap:Body><br/>
</soap:Envelope>
а запрос выглядит так:
<?xml version="1.0" encoding="ISO-8859-1"?><br/>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2620="http://tempuri.org"><br/>
<SOAP-ENV:Body><br/>
/><br/>
</SOAP-ENV:Body></SOAP-ENV:Envelope>
Я думаю что проблема в передаче параметров запросу($params). Помогите, плз, пока я себе мозг окончательно не сломал.