MM7_Deliver
Receive MMS MO submitted by end users to your platform
The system delivers messages from end users to your platform by supplying the MMS as the payload of the request message. This request is made using MM7 SOAP DeliverReq. The message includes identification of the request that is used by your platform to correlate a response to the message. Your platform must reply with a SOAP response DeliverRsp, indicating that the message was successfully received and will be processed. If you cannot identify the requested content or if the delivered content does not fulfill the conditions you’d expect, then your platform should indicate a failure in the DeliverRsp status field.
MM7_Deliver.REQ
MM7 MO deliver request elements
Element | Description | Returned |
---|---|---|
TransactionID | It is a system-generated transaction ID. Identifies the DeliverReq/DeliverRsp pair. | Always |
DeliverReq | Identifies the message as an MM7 deliver request. | Always |
MM7Version | Identifies the MM7 Version. See all supported MM7 Versions & Namespaces | Always |
Sender | 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 |
Recipients | The address of the message recipients i.e., Shortcode/Longcode | Always |
LinkedID | Identifier for the MO message. This is a system-generated ID. | Always |
TimeStamp | The date and time of the submission of the MO message. This value is in UTC. | Always |
Priority | The priority (importance) of the message. Possible values: High, Normal, Low | Only when provided by mobile operator |
Subject | Title of the whole multimedia message. | Only when provided by mobile operator |
Content | A reference to the content of the MM7 message. Contains an “href:cid” attribute that links to the content ID of the first attachment in the MM7 message. | Only when provided by mobile operator |
UACapabilities | Information about the capabilities of the MMS user agent that originated the multimedia message. In this context, the associated timestamp is not populated. | Only when provided by mobile operator |
Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<soap-env:Envelope xmlns:ns1="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>
<DeliverReq xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4">
<MM7Version>6.8.0</MM7Version>
<LinkedID>1000001</LinkedID>
<Sender>
<Number>10000000001</Number>
</Sender>
<Recipients>
<To>
<Number displayOnly="false">000000</Number>
</To>
</Recipients>
<TimeStamp>2014-04-14T16:15:23.414Z</TimeStamp>
<Priority>Normal</Priority>
<Content href="cid:default.cid" allowAdaptations="true"/>
</DeliverReq>
</soap-env:Body>
</soap-env:Envelope>
MM7_Deliver.RES
MM7 MO deliver response elements
Your system should respond to the request with a 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 DeliverReq/DeliverRsp pair. It is part of the SOAP header. You must return the same value as the one provided in the request. | No |
DeliverRsp | Identifies the message as an MM7 Deliver 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 respond with the same version as the request. | 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 will trigger a retry. | Yes |
StatusText | Human-readable description of the status. This text is informational only. | 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>
<DeliverRsp 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>
</DeliverRsp>
</soap-env:Body>
</soap-env:Envelope>
Receive MMS MO 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; start="soap-start"; type="text/xml";
boundary="----=_Part_139078_1411587550.1397492135426"
Host: {Host Base URL}
Content-Length: 2546
Connection: Keep-Alive
------=_Part_139078_1411587550.1397492135426
Content-Type: text/xml
Content-ID: <soap-start>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<soap-env:Envelope xmlns:ns1="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>
<DeliverReq xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-4">
<MM7Version>6.8.0</MM7Version>
<LinkedID>1000001</LinkedID>
<Sender>
<Number>10000000001</Number>
</Sender>
<Recipients>
<To>
<Number displayOnly="false">00000</Number>
</To>
</Recipients>
<TimeStamp>2014-04-14T16:15:23.414Z</TimeStamp>
<Priority>Normal</Priority>
<Content href="cid:default.cid" allowAdaptations="true"/>
</DeliverReq>
</soap-env:Body>
</soap-env:Envelope>
------=_Part_139078_1411587550.1397492135426
Content-Type: multipart/mixed;
boundary="----=_Part_139079_1300104441.1397492135426"
Content-ID: <default.cid>
------=_Part_139079_1300104441.1397492135426
Content-Type: image/jpeg
Content-Transfer-Encoding: binary
Content-ID: image_0.jpg
<Binary contents>
------=_Part_139079_1300104441.1397492135426
Content-Type: text/plain
Content-Transfer-Encoding: binary
Content-ID: text_0.txt
Test MO message!
------=_Part_139079_1300104441.1397492135426--
------=_Part_139078_1411587550.1397492135426--
Response
HTTP/1.1 200 OK
Server: Apache
Content-Type: application/xml; charset=utf-8
Content-Length: 715
Date: Mon, 16 Mar 2015 17:46:59 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>
<DeliverRsp 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>
</DeliverRsp>
</soap-env:Body>
</soap-env:Envelope>
Unsupported MM7 SOAP Elements
MM7_Deliver.REQ
Element | Description |
---|---|
ApplicID | The presence of this information element indicates that this abstract message shall be provided to an application residing on an MMS User Agent. It contains the identification of the destination application |
AuxApplicInfo | If present, this information element indicates additional application/implementation specific control information |
MMSRelayServerID | Identifier of the MMS Relay/Server |
RecipientSPI | The SPI of the intended MM recipient, in case the MM was delivered to VASP based on the recipient address |
ReplyApplicID | If present, this information element indicates a “reply path”, i.e. the identifier of the application to which delivery reports, read-reply reports, and reply-MMs are addressed if any |
ReplyChargingID | In case of reply-charging when the reply-MM is submitted within the MM7_deliver.REQ is the identification of the original MM that is replied to. |
SenderSPI | The SPI of the MM originator |