php мыло проблема с форматом xml - PullRequest
0 голосов
/ 26 марта 2012

У меня есть этот XML:

<?xml version="1.0" encoding="utf-8"?>
<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">
  <soap:Header>
    <SessionIdHeader xmlns="http://www.inwise.com/webservices/v2">
      <SessionId>f554159f785d4793ab097470c7c76b2c</SessionId>
      <EndSession>false</EndSession>
    </SessionIdHeader>
  </soap:Header>
  <soap:Body>
    <Send xmlns="http://www.inwise.com/webservices/v2">
      <source xsi:type="MobileMessageSendingSource">
        <Message>
          <AccountId xsi:nil="true" />
          <Body>נסיון</Body>
          <Bounces xsi:nil="true" />
          <Charset>unicode</Charset>
          <CreateDate xsi:nil="true" />
          <EndDate xsi:nil="true" />
          <LastSent xsi:nil="true" />
          <Name>test for bt</Name>
          <NonSent xsi:nil="true" />
          <Opens xsi:nil="true" />
          <RecipientType xsi:nil="true" />
          <Sender>8858</Sender>
          <Sent xsi:nil="true" />
          <Status xsi:nil="true" />
          <TableConnectionId xsi:nil="true" />
          <Unsubscribes xsi:nil="true" />
          <UpdateDate xsi:nil="true" />
          <Validity>1440</Validity>
        </Message>
      </source>
      <target xsi:type="NewRecipientSendingTarget">
        <Recipient>
          <Id>0</Id>
          <MobileNumber>972506471313</MobileNumber>
        </Recipient>
      </target>
    </Send>
  </soap:Body>
</soap:Envelope>

, и это то, что я посылаю:

 $paramsSend = array('Message' => 
            array('Body'=>'This is a test message',
                'Name'=>'FromBlind',
                'Sender'=>'7777',
                'Charset' => 'unicode',
                'Validity'=>'1440'
                ),
        array('Recipient' => 
                array(
                    'MobileNumber'=>'7849386874'
                    )
                )
            );
    $x['SessionId'] = $SessionId;
    $x['EndSession'] = 'true';
    $header = new SoapHeader('http://www.inwise.com/webservices/v2', 
                        'SessionIdHeader',
                       $x);
    $c->__setSoapHeaders($header);
$res= $c->__soapCall($module, array($params));

, но мне сказали, что XML, который я отправляю, не тотк их XML, я не знаю, что делать дальше, кажется, что все в порядке ....

какие-нибудь советы?

1 Ответ

0 голосов
/ 26 марта 2012

Ваш код не создает XML, как вы опубликовали выше. Так что то, что выходит из запроса, не в правильном формате.

На самом деле отправленный вами XML - это SOAP-сообщение о вызове операции Send, где вы предоставляете параметры Message и получателя, но, как уже говорилось, не соблюдаете формат отправленного вами SOAP-сообщения. Например, вам не хватает поля получателя ...

Попробуйте создать свои параметры. Отправьте так:

 $paramsSend = array('source' => 
                         array('Message' =>
                                array('Body' => "body value",
                                       'Name' => "name value")
                               ),
               'target' => 
                         array('Recipient' =>
                                 array('Id' => "id value",
                                        'MobileNumber' => "mob numb value")
                               )
                );

Не забудьте добавить другие отсутствующие теги для сообщения (отправитель, срок действия и т. Д.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...