(PHP) Как SOAP клиент, сайт работает под PHP, MySQL
Montrex
Дата: 03.07.2006 22:08:09
Помогите. Есть сайт, на подобе, адрессной книги, пользователь может зарегистрироватся, войти в систему, и добавлять контакты в созданные ним группы адрессной книги. (работа, друзья, и т.д.) Надо написать отправку СМС группам пользователей, используя SOAP.
Для SOAP есть такая инфа:
URL: http://xxxxxx.xxx/SimpleSMS
PROXY: http://xxxxxx.xxx/cgi-bin/access/sms.pl
функция: send_message(логин, пароль, телефон, текст_сообщения)
Подскажите, пожалуйста, как мне написать такой SOAP клиент,
на PHP, который брал бы данные из таблицы, и составлял такой запрос.
Montrex
Дата: 04.07.2006 00:26:07
up
maXmo
Дата: 04.07.2006 13:53:01
начни с "hello world!"
1024byte
Дата: 04.07.2006 17:28:54
что такое SOAP уже прочитали ?
Montrex
Дата: 04.07.2006 22:29:00
да.. прочитал..
в тех данных что я получил, указано только:
URL, PROXY
Клиент создается подобным образом:
//создаем клиента с указанием прокси и юзера
$client = new SoapClient("some.wsdl", array('proxy_host' => "localhost",
'proxy_port' => 8080,
'proxy_login' => "some_name",
'proxy_password' => "some_password"));
//посылаем запрос и получаем в респонзе ответ
$response=$client->__doRequest($doc->SaveXML(),"http://operaweb.xanterra.com/ows_ws_51/Reservation.asmx","http://webservices.micros.com/ows/5.1/Reservation.wsdl#ModifyBooking",1.2);
Но, тут надо знать wsld-пространство, которого у меня нет.
тогда создавать клиент просто как
$client = new SoapClient(""); ????
функцию вызываю как
$response = $client->__call("send_message", array($a, $b, $c));
и теперь мне это надо это дело хмл парсить, насколько я понимаю тут надо подключать DomXML, и действовать в таком роде:
$doc =& new DomDocument();
$doc->loadXML($response);
$result=$doc->getElementsByTagName("Result")
тут я хочу выбрать результат, успешно отправлено смс или нет.
maXmo
Дата: 05.07.2006 14:54:43
на сам Result глянуть можно?
Montrex
Дата: 06.07.2006 09:22:32
У меня есть такие данные:
URL: http://axonsoftware.biz/SimpleSMS
PROXY: http://axonsoftware.biz/cgi-bin/access/sms.pl
Функция: send_message(логин, пароль, телефон, текст_сообщения)
Пишу все это дело таким образом, пишет что невозможно или открыть страницу, или что то в этом роде. Все должно работать, прокси и урл правильные. Буду благодарен за помощь.
-------------------------
$client = new SoapClient(null, array('proxy_host' => "http://axonsoftware.biz/SimpleSMS",
'proxy_port' => 80,
'uri'=> "http://axonsoftware.biz/cgi-bin/access/sms.pl",
'location'=>"http://axonsoftware.biz/cgi-bin/access/sms.pl"));
$response=$client->__call("send_message", array("xxx", "xxx", "xxxxxxxxxxx","as"));
echo htmlspecialchars($response);
maXmo
Дата: 06.07.2006 12:03:37
а без прокси может подконнектиться?
Montrex
Дата: 06.07.2006 18:42:10
Есть рабочий скрипт на перле, как его переделать на nuSOAP???
#!/usr/bin/perl
use SOAP::Lite;
my $soap = SOAP::Lite
-> uri('http://xxxxx/SimpleSMS')
-> proxy('http://xxxxxxx/cgi-bin/access/sms.pl');
my $res = $soap->send_message("xxx", "xxx", "xxxxxxxxxx", "Hello from SOAP SMS API")->result();
print $res->{message};