MM7 Interface

MM7 Interface SearchSearch

SMS & MMS Technical Forum » NowSMS Support - MMS & Advanced Issues (Product Support Only) » Archive through July 14, 2004 » MM7 Interface « Previous || Next »
Author Message
Nick Whitehouse
Unregistered guest
Posted on Tuesday, March 02, 2004 - 05:22 pm:   

Hi Bryce,

Long time lurker, first time poster.

I'm writing an application (mostly in asp), and have generated a .smil file and various associated files, gifs, txt etc. How can I now pass this smil file on to the Now gateway using MM7?

From the documentation on your site and reading around the subject, I realise I need to generate an XML SOAP file as well as the .smil and other files. So if I have, for example,

message.smil
image.gif
text.txt

do I also create

mm7.xml, which would reference message.smil, which in turn references the other files?

Do I then MIME encode all four files into one file (message.mme) and http post that file to the gateway? If thats correct, then I've done it all correctly and get a 4003 error 'Unsupported MM7 transaction'.

Do you have an example (other than the one on the nowsms site) of a fully working, mime encoded document that I can throw at the gateway to see exactly where I'm going wrong?

FYI, I know a little XML, but I've only played with SOAP for a couple of days and I've never MIME encoded anything before, So please assume I'm stupid!

Cheers.
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 1970
Registered: 10-2002
Posted on Thursday, March 04, 2004 - 07:39 pm:   

Hi Nick,

It is a little more difficult than it should be.

If you look at the example on the following page:

http://www.nowsms.com/documentation/ProductDocumentation/mms_notifications_and_c ontent/Submitting_MMS_Messages_MM7.htm

One of the things that you will notice is that it has multiple levels of MIME encoding. There is an outer MIME object, and then one of the parts of that multipart message is another multipart message, which I'll refer to as the inner MIME object.

So first you see the HTTP POST and the header for the outer MIME object. It specifies that there is "multipart/related" content, and defines the boundary text "NextPart_000_0028_01C19839.84698430" that is used to separate the parts.

The first part of this outer MIME object is the MM7 XML.

The second part of the outer MIME object is the content of the MMS message, which is usually another multipart.

Conventionally, the MIME type for the inner object is "multipart/mixed" if there is no SMIL file, and "multipart/related" if there is a SMIL file. You'll see that this inner object has its own boundary, and separate parts.

So in your case, your post would look something like this:

POST /mm7 HTTP/1.1
Host: xxxxxx
Content-Type: multipart/related; boundary="outerObject"; type="text/xml"; start="<mm7>"
Content-Length: nnnn
SOAPAction: ""

--outerObject
Content-Type:text/xml; charset="utf-8"
Content-ID: <mm7>

mm7.xml here

--outerObject
Content-Type: multipart/related; boundary="innerObject"; type="application/smil"; start=<message.smil>
Content-ID:<match content href in mm7.xml>

--innerObject
Content-Type: application/smil
Content-location: message.smil
Content-id: <message.smil>

message.smil here

--innerObject
Content-Type: image/gif
Content-Location: image.gif
Content-Transfer-Encoding: base64

image.gif here base64 encoded

--innerObject
Content-Type: text/plain
Content-Location: text.txt

test.txt here

--innerObject--
--outerObject--


This is just a quick look at it, I might have missed something.

Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 1971
Registered: 10-2002
Posted on Thursday, March 04, 2004 - 07:42 pm:   

I rambled a bit in my other reply, but I probably should have focused on the error message that you are receiving, as that can tell us something.

4003 error 'Unsupported MM7 transaction'

This would occur if the Content-type of the post (outer object) was not one of the "multipart/*" types.

Further, this would only occur if the Content-type of the POST was "text/xml", and we did not find a "DeliveryReportReq" transaction in the XML. (The "DeliveryReportReq" is the only transaction that we would accept that is not multipart.)

Hope that helps!

-bn
Nick Whitehouse
Unregistered guest
Posted on Friday, March 05, 2004 - 10:32 am:   

Thanks Bryce.

Your explaination has helped me a lot. I'll get onto it now.

Cheers,
Nick.

Login Login / Register Logout Logout Search Last 30 Days Topics Topics