Survey About MMS Message Via Modem GSM
Survey About MMS Message Via Modem GSM
There are two important standards that define MMS technology, one published by
the 3GPP (3GPP TS 23.140), and the other a series of MMS specifications
published by the Open Mobile Alliance (OMA). These two standard bodies
cooperate to define the MMS protocols.
When MMS is discussed, you will often hear details of different MMS related
protocols, such as MM1, MM3, MM4, MM7, as well as proprietary protocols such
as EAIF, and various vendor specific proprietary variations of MM7. (You might
also wonder about MM2, MM5, MM6, MM8, MM9, and others, but they are
beyond the scope of this document, and are defined in 3GPP TS 23.140.)
MM1 is the protocol that is used between a mobile device and the MMSC
Messaging Server. It defines how mobile phones send and receive messages
through the MMSC.
MM3 is the protocol that is used between an MMSC and other messaging systems.
It is not so much a protocol, as much as a definition of requirements for how an
MMSC must be able to interoperate with other messaging systems. In the real
world, this is primarily done via the SMTP e-mail protocol.
MM7 is the protocol that is used to allow Value Added Service Provider (VASP)
applications to send and receive MMS messages via an MMSC. The MM7
implementation defined by the 3GPP is a SOAP-based protocol which involves the
exchange of XML and MIME content over HTTP POST. Because early versions of
the 3GPP MMS specifications only defined MM7 at an abstract level, several
vendors of operator MMSCs have defined their own versions of MM7 which are
not compatible with the MM7 SOAP-based protocol defined by the 3GPP.
EAIF is a Nokia defined proprietary protocol which extends MM1 so that it can be
used by Value Added Service Providers.
The 3GP defines MMS in 3GPP TS 23.140. This specification defines the overall
architecture of MMS. However, it defines some MMS related protocols only at a
higher level architectural level, leaving out the important implementation details.
In particular, the MM1 protocol is only defined in somewhat of an abstract fashion
within this specification, while the MM4 and MM7 protocols are defined with
complete implementation details.
MMS messages are delivered using a combination of SMS and WAP technologies.
The sending phone initiates a data connection that provides TCP/IP network
connectivity, usually over GPRS.
The sending phone performs an HTTP POST to an MMSC of the MMS
message encoding in the MMS Encapsulation Format, as defined by the
Open Mobile Alliance. The encoded MMS message includes all of the
content of the MMS message, as well as header information, including a list
of intended recipients for the message. (Note: In most environments, the
HTTP POST will be routed through a proxy server. Some devices will use
wireless profiled HTTP and TCP through a WAP 2.0 proxy server, while
other devices will use the Wireless Session Protocol, WSP, through a
conventional WAP proxy server/gateway.)
The MMSC receives the MMS message submission and validates the
message sender.
The MMSC receives the MMS message submission and validates the
message sender.
The MMSC stores the content of the MMS message and makes it available
as a dynamically generated URL link.
The MMSC generates an MMS notification message, which is sent via WAP
Push over SMS to the message recipient(s). This MMS notification message
contains a URL pointer to the dynamically generated MMS content.
The recipient receives the MMS notification message. It then initiates a data
connection that provides TCP/IP network connectivity (usually over GPRS).
The recipient phone performs an HTTP (or WSP) get to retrieve the MMS
message content URL from the MMSC.
You can configure NowSMS to function as an MMSC, supporting this type of user-to-user
messaging traffic with the MM1 protocol. That is one type of use for the NowSMS MMSC.
However, many people look to use NowSMS as an MMSC for supporting application
generated MMS messages. In these situations, NowSMS might be functioning as an MMSC, or it
might be acting as a gateway for interfacing with other MMSCs. Let’s explore these two types of
configurations:
2.) MMS Gateway routing messages via an operator MMSC - NowSMS supports all of the major
MMS related protocols, including MM7, MM4, MM1 and EAIF for this purpose. NowSMS also
supports vendor specific proprietary versions of MM7, including the non-standard variations
from Ericsson, LogicaCMG, and Materna AnnyWay. NowSMS also supports a generic SMTP
interface which can be used as an MM3 implementation. Any of these protocols can be used for
connecting to an operator MMSC. Most frequently, at least as a starting point, what we see is the
use of MM1 where 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 submits the
message 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.)
The default configuration of NowSMS is to use the first approach (Direct MMS Delivery
as an MMSC). When you perform direct delivery, the receiving MMS client needs to be
able to connect to the NowSMS server in order to retrieve message content. In this case,
it is important that the MMSC HTTP Port of the NowSMS server be accessible either
over the internet or over the relevant mobile operator network(s). It is also important that
the “Local Host Name or IP Address” configuration setting of the NowSMS MMSC be
configured to a host name or IP address that is externally accessible.
The problem with the Direct MMS Delivery approach is that the MMS client on every
mobile phone is pre-configured with settings for how the phone sends and receives MMS
messages. To send or receive an MMS message, the phone makes a GPRS connection (to
a GPRS APN). It then usually connects to the MMSC for sending/receiving messages
through a WAP proxy/gateway. The pre-configured MMS settings on many mobile
operator networks are setup to connect to a special MMS-only GPRS APN which
connects to an MMS-only WAP gateway … and this GPRS APN/WAP gateway is
configured only to allow connections to the operator MMSC. If the recipient mobile
phone is subscribed to an operator that has this type of setup, and you attempt direct
MMS delivery, you can send the MMS notification to the phone over SMS, but the phone
cannot retrieve the MMS message from your MMSC server because the GPRS
APN/WAP Gateway does not allow it.
a.) Use the second approach, and configure NowSMS to route messages via an operator
MMSC. Additional information on this type of configuration can be found in the
section Connecting to an Operator MMSC.
b.) Change the settings in the receiving mobile phone so that it can receive messages
from external MMSCs. This is usually just a matter of changing the GPRS APN and
WAP Gateway IP address that is defined for the MMS client . You could change them to
match the similar settings already configured for the WAP browser, which should allow
access to external sites. Note that in doing this, you may no longer be able to send/receive
MMS through the standard operator MMSC, so this is usually only a good solution for
deployment in closed user communities.
c.) Use an alternative to MMS, such as the Multimedia WAP push function in NowSMS.
In this case, the multimedia objects are pushed to the WAP browser in the phone instead
of the MMS client. NowSMS can be configured to convert a submitted MMS into this
format for delivery. More information can be found in the section on Multimedia WAP
Push.