MM7_Deliver

Receive MMS MO submitted by end users to your platform

Skycore delivers messages from end users to your platform by supplying the MMS as the payload of the request message. The deliver request is made using MM7 SOAP “DeliverReq”. Message include 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

1. HTTP header elements

Header Name Description Returned
X-Skycore-Carrier-Id Skycore Mobile Operator ID.
Examples: AT&T=0001470, Verizon=0001890.
See all Skycore Operator IDs.
Only when provided by mobile operator


2. Elements in the SOAP header and body

Element Description Returned
TransactionID It is a Skycore 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 Skycore 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

See Unsupported elements

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>1617423433</Number>
      </Sender>
      <Recipients>
         <To>
         <Number displayOnly="false">111122</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 deliver request with a deliver 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 a 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: api.skycore.com
Content-Length: 2546
X-Skycore-Carrier-Id: 0001890
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>1617423433</Number>
      </Sender>
      <Recipients>
         <To>
         <Number displayOnly="false">111122</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>

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 this is the identification of the original MM that is replied to.
SenderSPI The SPI of the MM originator