I can't fetch objects sent as part of the MMS

I can't fetch objects sent as part of the MMS SearchSearch
Author Message
Anonymous
 
Posted on Thursday, March 04, 2004 - 02:02 pm:   

I have configured the NowSMS server to use port 81 for the MMSC. I get the notifications of the message but when I try to fetch the message I get an error saying connection failed.

I have tried to use port 80 and that didn't help either.

When I configure my phone to work with the MMS configuration of my service provider I can send MMS messages but when I change the HOMPAGE URLS to that of the NowSMS MMSC sending MMS messages fail.

-j
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 1959
Registered: 10-2002
Posted on Thursday, March 04, 2004 - 02:58 pm:   

Hi j,

There are a few other discussion threads out here that discuss this issue, but it is probably a good idea for me to try to update my explanations.

Sending an MMS message to a mobile phone is a two-step process.

When a mobile phone receives an MMS message, the first step is to receive an MMS notification message, which is usually sent over SMS. This MMS notification message contains header information about the MMS message, and a URL pointer that the recipient must fetch in order to retrieve the content of the MMS message.

The second step of the process is that the receiving phone makes a network connection (usually over GPRS) using the MMS profile settings that have been configured in the phone. It then attempts to retrieve the URL that is referenced in the MMS notification.

There are two ways to configure NowSMS to send MMS messages:

1.) Direct MMS delivery. The MMS message content is stored on the Now SMS/MMS Gateway, and the gateway publishes a dynamic URL for access to the MMS message content. The gateway generates an MMS notification message to the recipient device which is sent over SMS, and this notification includes a URL pointer back to the MMS message content.

2.) Send the message through the operator MMSC. In this case, NowSMS makes a GPRS connection over a GSM/GPRS modem, connects to the operator WAP gateway that is designated for MMS usage by the operator, and the message is submitted to the operator MMSC via the WAP gateway over the GPRS connection. (The operator MMS gateway then generates the dynamic URL and MMS notification message that is ultimately received by the recipient device.)

NowSMS can send MMS messages via either of these approaches.

The default mode for NowSMS is to use Direct Delivery ... in which case NowSMS is the MMSC. (To configure the other mode, see http://www.nowsms.com/documentation/ProductDocumentation/mms_notifications_and_content/Connecting_to_operator_MMSC.htm).

Back to MMS direct delivery with NowSMS as the MMSC ...

When you send an MMS, the MMS message content gets stored on the NowSMS server. NowSMS then sends an MMS notification to the recipient device with a URL pointer back to the MMS message content residing on the NowSMS server. The recipient device needs to initiate a data (usually GPRS) connection to retrieve the MMS message content.

In order to build this dynamic URL, NowSMS uses the "Local Host Name or IP Address" setting on the "MMSC" page of the configuration dialog, which specifies the host name portion of this URL. This must be a valid host name or IP address that an external device can access to connect back to the PC running NowSMS.

Some phones will let you know that they have received the MMS notification, and will display an error if the URL for the MMS message cannot be retrieved. But there are many other phones that will silently try to process the MMS notification in the background, and will never let you know that an MMS notification was received (and it is much harder to know that you have even properly received the MMS notification with this latter group of phones).

In this case, your phone tells you that the "connection failed", which is good. You know that the phone did receive the MMS notification, but it is unable to retrieve the MMS message content.

Why does this happen? This could occur for several different reasons:

1.) The "Local Host Name or IP Address" setting does not specify a host name or IP address that is accessible externally from your network.

Try putting a simple text file in the NowSMS\MMSCDATA subdirectory. From a site external to your network, use a browser to try to fetch http://host.name.or.ip.address:port/filename.txt (where host.name.or.ip.address = "Local Host Name or IP Address"; port = "HTTP Port Number" on "MMSC" page; filename.txt is the name of the file in the NowSMS\MMSCDATA subdirectory). If you are unable to retrieve that text file from a browser, then this suggests that there is a TCP/IP networking issue that is preventing inbound connections from getting to the PC running NowSMS.

If you can retrieve this file from a PC browser, you might also want to try fetching it from the browser in a phone. (Some phones might not like text files, you could put a WML file in that directory just as well. I've attached a simple "test.wml" as an example.)

2.) Some mobile operators configure firewalls around their WAP gateways which prevent phones from connecting to non-standard ports. Try configuring the "HTTP Port Number" that is used by the MMSC to be "80", and see if this makes a difference. (Many of these operators who employ this type of blocking will allow "8080" as an alternative as well.)

3.) Many mobile operators use MMS settings that block access to external MMSCs. This is because the model in most of the world (outside of the USA), is that the sender pays for sending SMS or MMS, and it is free for the receiver. (In the USA, both sender and receiver pay.)

Because a GPRS connection must be initiated to retrieve the MMS message content, many mobile operators have created a separate GPRS APN for MMS traffic. This GPRS APN that is used for this MMS traffic is different from the GPRS APN that is used for WAP browser traffic, and it uses a different WAP gateway.

In these cases, the mobile operator restricts traffic through the MMS GPRS APN so that connections can only be made to the mobile operator's MMSC.

In this type of situation, the only options are:

a.) Change the MMS profile settings on the mobile phone to use the same GPRS APN and WAP gateway IP for MMS as for the WAP browser (only practical for a limited audience).

b.) Configure NowSMS to send messages through the operator MMSC (reference the link above that explains how to configure NowSMS to send MMS messages through an operator MMSC).

c.) Use the "Multimedia WAP Push" function in NowSMS instead. NowSMS will convert MMS messages into pages that can be viewed in a WAP browser instead of the MMS client. The message content and multimedia objects are sent via WAP push and viewed in the WAP browser instead of MMS. (On the "MMSC Routing" page, you can create a default route for NowSMS to convert MMS messages to Multimedia WAP Push.)

4.) If you are using your own WAP gateway, you might be using an older WAP gateway which does not support segmentation-and-reassembly (SAR), which is required by MMS clients in order to download larger objects. If a text-only MMS works, but a larger MMS that includes images does not, then it is likely an issue that you need a newer WAP gateway that supports SAR.

---

This is probably too much information for your specific question, but better to have too much than not enough.


-bn

text/xmltest.wml
test.wml (0.3 k)