Can't see text in MMS, it show broken icon instead

Can't see text in MMS, it show broken icon instead SearchSearch
Author Message
Watchara S.
New member
Username: Watcharas

Post Number: 3
Registered: 03-2009
Posted on Friday, June 12, 2009 - 08:51 am:   

Dear sir,

My NowSMS Serial Number is 2564

When I send MMS using NowSMS web interface, the receiver's mobile phone can see only Image, but can't see Text.
It shows a broken icon instead of text message, but the image show correctly.
The message I tried to send is very short english word.
But if I try send only text message (no image) using MMS web interface, the text message can show correctly.

Then, I tried send MMS manually (using the same mobile phone which I've connected with NowSMS).
It shows everything, text and images correctly.

Before this month, there is no problem I can send lot of messages via Web Interface and Command-line.

Please help fix this problem, if you want more detail of error, please don't wait.

Best Regards,
Watchara
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 938
Registered: 08-2008
Posted on Friday, June 12, 2009 - 01:59 pm:   

Hi Watchara,

That is very odd.

How do you send MMS messages out? Is it via a GSM modem?

If it worked before, and doesn't work now, I am suspecting that your operator has installed an update to their MMSC that has broken something.

We are seeing more operator MMSCs that make modifications to the SMIL files associated with an MMS message ... and that is dangerous.

SMIL is the presentation language that is used for telling the receiving client how to display the objects in the MMS message.

You can either create your own SMIL, or NowSMS will generate some very simple SMIL automatically for you.

Auto-generated SMIL for a message containing both text and an image would look something like this:

<smil>
<head>
<layout>
<region id="Image" height="70%" width="100%" fit="meet"/>
<region id="Text" top="70%" height="30%" width="100%" fit="scroll"/>
</layout>
</head>
<body>
<par>
<img src="image.jpg" region="Image"/>
</par>
<par>
<text src="text.txt" region="Text"/>
</par>
</body>
</smil>

A "<par>" section would be created for each block of text and for each image.

If you use the "Text:" field in the NowSMS Web form (or the "MMSTEXT=" parameter in a submission), then NowSMS automatically generates a filename for the text.

If I send an MMS message through my local provider, the received message has its SMIL changed to this:

<smil>
<head>
<layout>
<region fit="meet" height="100%" id="Image" width="100%"/>
<region fit="scroll" height="100%" id="Text" width="100%"/>
</layout>
</head>
<body>
<par dur="3000ms">
<text region="Text" src="cid:773"/>
</par>
<par dur="5000ms">
<img region="Image" src="cid:772"/>
</par>
</body>
</smil>

The "cid:" references were dynamically generated by the operator MMSC. Objects like images and text parts can be referenced in SMIL by either "Content-id:" (cid:-) or "Content-Location:" (filename). When NowSMS generates an MMS message from a web or command line submission, it assigns the same filename and "Content-ID:" value. But some operator MMSCs like to regenerate the "Content-ID:" when they process the message.

There's nothing wrong with an operator MMSC making these kinds of changes ... as long as the operator MMSC doesn't screw something up in the process. Sadly, many of those systems are full of bugs and "quirks".

Unfortunately, whatever is going on at your system is likely very operator specific ... not a general problem. So all we can do is try to figure out a work-around.

Here's what I'd try first ... edit MMSC.INI, and under the [MMSC] header, add EMailAutoSmilOldFormat=Yes.

Restart the NowSMS MMSC service.

Try another test message. This setting will cause NowSMS to generate SMIL with no <head> section, and no <region> references.

If that doesn't make a difference, edit MMSC.INI again. Remove the configuration parameter that you just added. Under the [MMSC] header add EMailAutoSmil=No.

Restart the NowSMS MMSC service.

Try another test message.

In this case, NowSMS won't generate any SMIL ... but it is likely that your mobile operator will generate their own SMIL.

Keeping NowSMS from automatically generating any SMIL may be a temporary work-around ... but it's probably not a good long term solution.

Longer term, it would be helpful to figure out what the "quirk" or bug is in the operator MMSC that is preventing the original SMIL from working properly.

Unfortunately, since the problem is likely specific to your operator, we can't figure this out without your help.

Refer back to the first SMIL example above. That is the default SMIL that NowSMS will generate for a message that contains one image and one text part. Only the filenames in the "src" references will vary.

Save that file as "test.smil".

Save some other test image as "image.jpg".

Create a simple text file named "text.txt".

Send an MMS message through NowSMS including "test.smil", "image.jpg" and "text.txt".

NowSMS won't automatically generate a SMIL file if you already have one attached.

Now we need to make edits to "test.smil" to make the operator MMSC happy.

Unfortunately, I'm not really sure where to start.

My first suggestion would be to change:

<img src="image.jpg" region="Image"/>

to:

<img src="cid:image.jpg" region="Image"/>

And:

<text src="text.txt" region="Text"/>

to:

<text src="cid:text.txt" region="Text"/>


It's just a guess ... but based upon what we're seeing, it seems that many operator MMSCs are happier with SMIL that references by "Content-ID:" instead of "Content-Location:", even though the specs allow both (and examples in the specs prefer the latter).

Let us know what you find.

Oh ... one other thing that might be helpful. If you are sending out via a GSM modem, does your modem also support receiving MMS messages? If it does, it would be nice if you could send an MMS message via the modem to its own phone number. If received MMS messages are just being stored in the MMS-IN directory, then it would be helpful to see what the SMIL looks like in the received message. Then we could see what changes the operator makes to SMIL when they process a message ... and that might provide a clue as to a work-around.

--
Des
NowSMS Support