MM7_DeliveryReport
Receive Delivery Reports for MMS messages you send
The system sends delivery reports using the MM7 Delivery Report message type DeliveryReportReq. The delivery report indicates the current state of the original submit request message. We will send a delivery report to your platform only when the appropriate information is available. If the delivery report message is accepted or rejected then respond with a DeliveryReportRsp including a status that indicates why the delivery report was accepted/rejected. For information about the status codes returned for Delivery Reports, see delivery report status.
Multiple Delivery Reports per MMS messages
Multiple DeliveryReportReq may be sent for each MMS message you send. The number and type of delivery reports will depend on whether the number is a Toll Free Number (TFN), Short Code or 10 Digit Long Code (10DLC). The type of delivery report will also depend on the country and mobile network the subscriber is on. We will return a “Forwarded” status when the message has been accepted for delivery by the network. If the message is not accepted we will relay a “Rejected” status. If the network accepts the message and supports handset delivery reports, we will then relay the “Delivered” status when it is delivered to the handset or a “Rejected” status along with the rejection reason in the status details. If the message is not able to be delivered timely, it may receive an “Expired” status after 24-72 hours depending on the network.
MM7_DeliveryReport.REQ
MM7 delivery report request elements
Element | Description | Returned |
---|---|---|
TransactionID | This identifies the DeliveryReportReq/DeliveryReportRsp pair. It is a system-generated ID. | Always |
DeliveryReportReq | Identifies the message as an MM7 Delivery Report. | Always |
MM7Version | Identifies the MM7 Version. See all supported MM7 Versions & Namespaces | Always |
Recipient | The mobile phone number of the end user. This must be a valid mobile number in international format without a leading + symbol; for example 12515550123 (US) and 447700900750 (UK). | Always |
Sender | Your shortcode/longcode. This should match the same information that is linked in the MT configuration and generally to the service you are providing. | Always |
MessageID | The system-generated ID linked to the submitted message. This ID was returned to your system in the initial response (SubmitRsp) to your MT MMS request. The MessageID (transaction ID) will be the same in the DLR for each unique transaction. | Always |
Date | The date and time of the submission of the multimedia message (timestamp). Value is in UTC. | Always |
MMStatus | A code that indicates whether the MT message was delivered successfully or failed. For information about the status codes returned for Delivery Reports, please see delivery report status. | Always |
StatusText | Human-readable description of the status. It may include the failure reasons for Rejected status. | Always |
UACapabilities | Also known as MMS User Agent capabilities. This describes the capabilities of the MMS User-agent of the mobile handset. | Only when provided by mobile operator |
Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<TransactionID xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4" soap-env:mustUnderstand="1">10000001</TransactionID>
</soap-env:Header>
<soap-env:Body>
<DeliveryReportReq xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4">
<MM7Version>6.8.0</MM7Version>
<MessageID>xxxxxxxxxxxx</MessageID>
<Recipient>
<Number>10000000001</Number>
</Recipient>
<Sender>
<ShortCode>00000</ShortCode>
</Sender>
<Date>2015-03-16T14:03:51.749Z</Date>
<MMStatus>Retrieved</MMStatus>
<StatusText>Success</StatusText>
<UACapabilities UAProf="Samsung Galaxy" />
</DeliveryReportReq>
</soap-env:Body>
</soap-env:Envelope>
MM7_DeliveryReport.RES
MM7 delivery report response elements
Your system should respond to the delivery report request with a delivery report response containing the elements described in the following table. Returning any HTTP response other than HTTP 200 will trigger a retry.
Element | Description | Required |
---|---|---|
TransactionID | Identifies the DeliveryReportReq/DeliveryReportRsp pair. It is part of the SOAP header. You must return the same transaction that was passed in the request or the transaction will not be accepted. | No |
DeliveryReportRsp | Identifies the message as an MM7 Delivery Report Response. If you do not provide this element it will not be considered a valid response. | Yes |
MM7Version | Identifies the MM7 Version. Typically you would return the MM7 Version passed in the request. See all supported MM7 Versions & Namespaces | No |
StatusCode | A code that indicates whether you received the MO message request successfully. The status code for success is 1000. Any other status code other than 1000 will trigger a retry. | Yes |
StatusText | Your human-readable description of the status. This is informational only and not required. | No |
Example
<?xml version="1.0" encoding="UTF-8" ?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<TransactionID xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4" soap-env:mustUnderstand="1">1000001</TransactionID>
</soap-env:Header>
<soap-env:Body>
<DeliveryReportRsp xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4">
<MM7Version>6.8.0</MM7Version>
<Status>
<StatusCode>1000</StatusCode>
<StatusText>Successfully Received MMS.</StatusText>
</Status>
</DeliveryReportRsp>
</soap-env:Body>
</soap-env:Envelope>
Delivery Report Full Example
Request
POST / HTTP/1.1
SOAPAction: "http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4"
Content-Type: multipart/related; type="text/xml";
Host: {Host Base URL}
Content-Length: 2546
Connection: Keep-Alive
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<TransactionID xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4" soap-env:mustUnderstand="1">10000001</TransactionID>
</soap-env:Header>
<soap-env:Body>
<DeliveryReportReq xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4">
<MM7Version>6.8.0</MM7Version>
<MessageID>xxxxxxxxxxxx</MessageID>
<Recipient>
<Number>10000000001</Number>
</Recipient>
<Sender>
<ShortCode>00000</ShortCode>
</Sender>
<Date>2015-03-16T14:03:51.749Z</Date>
<MMStatus>Retrieved</MMStatus>
<StatusText>Success</StatusText>
<UACapabilities UAProf="Samsung Galaxy" />
</DeliveryReportReq>
</soap-env:Body>
</soap-env:Envelope>
Response
HTTP/1.1 200 OK
Server: Apache
Content-Type: text/xml; charset=utf-8
Content-Length: 539
Date: Mon, 16 Mar 2015 14:03:32 GMT
<?xml version="1.0" encoding="UTF-8" ?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<TransactionID xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4" soap-env:mustUnderstand="1">1000001</TransactionID>
</soap-env:Header>
<soap-env:Body>
<DeliveryReportRsp xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4">
<MM7Version>6.8.0</MM7Version>
<Status>
<StatusCode>1000</StatusCode>
<StatusText>Successfully Received MMS.</StatusText>
</Status>
</DeliveryReportRsp>
</soap-env:Body>
</soap-env:Envelope>
Unsupported MM7 SOAP Elements
MM7_DeliveryReport.REQ
Element | Description |
---|---|
ApplicID | This information element indicates the identification of the application that the delivery report is intended for. If a Reply-Applic-ID was indicated in the corresponding original MM, the recipient MMS Relay/Server shall set its value to that Reply-Applic-ID value. Otherwise, the recipient MMS Relay/Server shall set its value to the Applic-ID value that was indicated in the corresponding original MM |
AuxApplicInfo | If present, this information element indicates additional application/implementation-specific control information. The recipient MMS Relay/Server shall insert it if Aux-Applic-Info was indicated in the corresponding original MM, in which case its value shall equal that Aux-Applic-Info value |
MMSRelayServerID | Identifier of the MMS Relay/Server |
ReplyApplicID | If present, this information element indicates a “reply path” to this delivery report, i.e. the identification of an application to which reply-MMs are addressed. The recipient MMS Relay/Server shall insert it into the MM1_DeliveryReport.REQ if the values of Applic-ID and Reply-Applic-ID in the corresponding original MM differ, in which case its value shall equal the Applic-ID value that was indicated in the corresponding original MM |