wireless solutions for a wired world

Receiving a Delivery Report using SOAP/XML

Overview

The MX Telecom SMS Server allows SMS Delivery Reports to be received using SOAP. This page details the format of the SOAP requests which are sent by the MX Telecom SMS Server to allow the receipt of SMS delivery Reports by external software systems.

If messages are sent with delivery reports enabled (and the networks concerned support reports - ie O2 UK does not send intermediate delivery reports) then delivery reports will be added to the online billing system automatically.

Contents

Receiving a delivery report using SOAP

The MX Telecom SMS Server will HTTP POST a SOAP 1.1 compliant XML document to the required URL to indicate the receipt of a Delivery Report.

You will need to supply MX Telecom with a URI for the SOAP RPC endpoint (eg http://yourserver.com/soap/servlet/rpcrouter) and a URI for the interface (eg urn:SOAPReceive). The tables below give details of the parameters which will be passed in the calls, and examples are provided to illustrate the XML which is actually be sent to the SMS Server. Any standards-compliant SOAP toolkit should suffice at the destination - MX Telecom uses the Apache SOAP library to send messages.

Message format

Messages are sent via a call to the receiveDeliveryReport method on the target server with the following parameters:

Name Description Type
from MSISDN of sender string
dateTime When the message was received string
id ID of the report string
smsc SMSC string
sendid ID returned when message was sent string
status Delivery status of the message, defined below string

Delivery report Status codes are explained here.

An example SOAP request of this sort is shown below:
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <SOAP-ENV:Body>
      <ns1:receiveDeliveryReport xmlns:ns1="urn:SOAPReceive"
           SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
         <from xsi:type="xsd:string">447968123456</from>
         <dateTime xsi:type="xsd:string">2002-07-23 15:40:00</dateTime>
         <id xsi:type="xsd:string">123654</id>
         <smsc xsi:type="xsd:string">447968000000</smsc>
         <sendid xsi:type="xsd:string">123653</sendid>
         <status xsi:type="xsd:string">DELIVERED</status>
      </ns1:receiveDeliveryReport>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Response to the server

The MX Telecom SMS Server expects an empty SOAP response to confirm receipt of the delivery report, as shown below:

<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <SOAP-ENV:Body>
      <ns1:receiveDeliveryReportResponse xmlns:ns1="urn:SOAPReceive"
           SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
      </ns1:receiveDeliveryReportResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Security considerations

To ensure the authenticity of the SOAP requests you should only accept requests from the following MX Telecom IP addresses:

  • 83.166.68.0/23 (ie 68.0 -> 69.255)

The SOAP endpoint can be an HTTPS (SSL) URL to protect the data whilst in transit.

About MX Telecom

MX Telecom is a leader in wireless technology. MX Telecom offers an easily accessible gateway to data, voice and video messaging services including 2-way and premium SMS, multimedia messaging, interactive voice response, location-based services, video short codes, Internet and TV related solutions.

For more information, MX Telecom can be reached on 0845 666 7778, or via email at sales@mxtelecom.com.