For information on sending MMS messages from PHP, Java or a command line interface, please see Now SMS/MMS API Information
To send an MMS message via a menu driven interface, please see the help section titled "Web Menu Interface". This section describes how to send an MMS message programmatically via URL parameters.
It is also possible to send an MMS message by sending MMS content to an e-mail address on the gateway MMSC, which will be routed to a mobile phone recipient. Please refer to the section titled "MMSC Messaging Server" for information on configuring the MMSC to send and receive e-mail messages.
MMS (Multimedia Messaging Service) messages are sent using a combination of SMS and WAP technologies. When an MMS message is sent, a mobile device receives an MMS notification message via SMS. When this MMS notification message is received by the mobile device, the mobile device automatically initiates a WAP gateway connection to download the content of the MMS message.
To send an MMS message, you must first create an MMS message file. The format of an MMS message file is documented in the MMS Encapsulation Protocol specification published by the Open Mobile Association (http://www.openmobileassociation.org) and/or the WAP Forum (http://www.wapforum.org). The MMS message file format consists of an MMS message binary header, followed by a multipart MIME message where the multipart message is encoded in a binary multipart format as defined by the WAP Wireless Session Protocol (WSP) specification. This binary MMS message file is stored on a web server using a MIME type of application/vnd.wap.mms-message and an MMS message type of m-retrieve-conf. A subset of the binary MMS header is sent as an MMS notification message (MMS message type m-notification-ind) via SMS to the mobile device together with a URL pointer to the location of the complete message.
The gateway includes an MMS message compiler to assist in the creation of the MMS message files, which will be described shortly. It is also possible to create MMS message files by uploading the individual MMS message components via the gateway web menu interface. This section of the document focuses more on the programmatic creation of MMS message files.
Once an MMS message file has been built and published via a web server, the MMS notification message can be sent by the gateway using the following URL format:
http://127.0.0.1:8800/?PhoneNumber=xxxxxxxx&MMSURL=name.domain/path/filename.mms
For 127.0.0.1, please substitute the IP address or host name assigned to your gateway PC. (Note: 127.0.0.1 is a local loopback address that can be utilized when you are connecting to the gateway from the same computer.)
For 8800, please substitute the port number that the gateway is configured to use.
Substitute the phone number that you wish to send the SMS message to for the "xxxxxxxx" in the "PhoneNumber" parameter. Use either the local phone number format, or the international phone number format (your network provider may or may not allow you to send to international phone numbers). If the international phone number format is used, note that you must substitute "%2B" for the "+" character, because of URL escaping restrictions. For example, to send an SMS to +447778001210, use %2B447778001210 instead.
The URL that contains the MMS message file is specified in the "MMSURL" parameter. Note that the "http://" portion of the URL is not necessary and is assumed. Also note that it may be necessary to escape some URL characters, please refer to the table in the "Sending Text Messages" section for common characters that must be escaped. Before sending the MMS notification message, the gateway will validate that the MMS message file is of the MIME type application/vnd.wap.mms-message, and is of the MMS message type m-retrieve-conf.
Additional parameters supported for the MMS notification message include "MMSFROM" and "MMSSUBJECT", which can be used to override the message sender and subject in the MMS message file.
As the MMS message file format is a binary file format, special tools are required to create MMS message files. The MMSCOMP utility is provided to assist in the creation of MMS message files. The MMSCOMP utility accepts text input files to create a binary MMS Message file.
A standard format is not defined for a text version of an MMS message file, however a format can easily be derived based upon the MMS Encapsulation Protocol Specification. The MMSCOMP utility accepts as input a file that contains text representations of the MMS header, and one or more files (image, sound, text, etc.) to comprise the multipart message content.
MMSCOMP is a command-line utility that accepts the following command-line format:
MMSCOMP [-ccharset]
header.file [data1.file [data2.file [data3.file …]]]
-ccharset is used to specify a character set for the text components of the input files. This parameter is not required. The default character set is iso-8859-1. Other supported character sets include big5, iso-10646-ucs-2, iso-8859-1, iso-8859-2, iso-8859-3, iso-8859-4, iso-8859-5, iso-8859-6, iso-8859-7, iso-8859-8, iso-8859-9, shift_JIS, us-ascii, and utf-8.
header.file is a text file that contains text representations of the MMS message header. Supported MMS message headers include:
X-Mms-Message-Type:
m-retrieve-conf (required)
X-Mms-Transaction-Id:
text-string
X-Mms-Version:
1.0
Message-Id:
text-string (usually x@x format)
Date:
HTTP-date-format
From:
address@domain or +InternationalPhoneNumber/TYPE=PLMN (Address-present-token is
assumed)
To:
address@domain or +InternationalPhoneNumber/TYPE=PLMN (use multiple headers for multiple
recipients)
Cc:
(same format as To)
Bcc:
(same format as To)
Subject:
text-string
X-Mms-Message-Class:
Personal, Advertisement, Informational or Auto (default is Personal)
X-Mms-Priority:
Low, Normal or High (default is
X-Mms-Delivery-Report:
Yes or No (default is No)
X-Mms-Read-Reply:
Yes or No (default is No)
Content-type:
MIME-Type (default is application/vnd.wap.multipart.related, override default
with caution!)
X-NowMMS-Content-Location:
filename;content-type (optional, use multiple headers for multiple files)
Only the X-Mms-Message-Type header is required, other headers are optional. It is recommended that From and Subject headers always be included.
Note that while the message may contain multiple recipients in the To, Cc and Bcc headers, the gateway itself will only send the MMS notification message to one recipient at a time, as specified in the PhoneNumber parameter passed in a URL request.
At least one data file must be specified to provide the content of the MMS message. This data file can be specified on the command line (e.g., data1.file, data2.file, data3.file, …), or it may be specified in the MMS header file with one or more X-NowMMS-Content-Location headers.
If the first data file is a SMIL (Synchronized Multimedia Integration Language) file, then MMSCOMP will automatically parse all "src" references in the SMIL file and include any referenced files in the MMS multipart message file automatically.
If a SMIL file is to be included for presentation of the MMS message, it is recommended that the SMIL file always be specified as the first data file to the MMSCOMP command.
MMSCOMP determines the MIME type of each file based on the file extension, or when using the "X-NowMMS-Content-Type" header, the content type can be specified following the file name. File extensions of .jpg, .jpeg (image/jpeg), .gif (image/gif), .txt (text/plain), .wbmp (image/vnd.wap.wbmp) and .smil (application/smil) are recognized automatically. Other file extensions are read from the MMSCTYPE.INI file, or the Windows registry, under the registry key HKEY_CLASSES_ROOT\.extension, where ".extension" is the extension of the file. For best results, please ensure that any file types that you are using with MMSCOMP are defined in the MMSCTYPE.INI file.
The output of the MMSCOMP command will be stored in a file that matches the name of the input header file, but with ".MMS" as the file extension.
Example:
Assume that:
1.) You have created an MMS message header file named "test.hdr".
2.) You
have created a SMIL file named "testfile.smil".
The "testfile.smil" file references three external files through the
following references in the SMIL file:
<img
src="image.jpg" region="Image"/>
<audio src="sound.amr"/>
<text src="text.txt" region="region1_1"/>
3.) The "image.jpg", "sound.amr" and "text.txt" files referenced by the "testfile.smil" file are located in the same directory as the "testfile.smil" file.
To create a binary MMS file, run:
MMSCOMP test.hdr
testfile.smil
or
MMSCOMP test.hdr
testfile.smil image.jpg sound.amr text.txt
If you want to specify a character set for the text file, include the -cCHARSET parameter:
MMSCOMP -cUTF-8
test.hdr testfile.smil
The output of the MMSCOMP file will be "test.mms" (e.g., the same filename as "test.hdr", but with a ".mms" file extension).
To send the compiled MMS file, you can either:
1.) Submit it as a content file to the "Send MMS Message" option in the "Web Menu Interface".
2.) Store the file on a web server using a MIME content type of "application/vnd.wap.mms-message", and use the gateway to send an "MMS Notification Message".
3.) If the message recipient is defined to the MMSC built into the gateway, attach the file to an e-mail message and send the message to username@mmsdomainname, where "username" is the alias name defined for the user on the "MMSC Users" dialog, and "mmsdomainname" is the "Domain Name for MMS E-Mail" defined on the "MMSC" dialog. Please refer to the section titled "MMSC Messaging Server" for information on configuring the MMSC to send and receive e-mail messages.
The MMSCOMP utility works well in conjunction with tools such as the SonyEricsson MMS Composer. The SonyEricsson MMS Composer creates SMIL (Synchronized Multimedia Integration Language) files, which are often used in MMS messages, but it does not create the complete binary MMS message file. To use the output of the SonyEricsson MMS Composer, use File/Export to export your MMS message to a specified directory. The composer will output a SMIL file and any included MMS message components to the directory specified. Create an MMS message header file, and then run MMSCOMP passing the name of the MMS message header file and the name of the SMIL file output by the SonyEricsson MMS Composer.
The gateway also includes a powerful MMSC Messaging Server. We used to refer to this messaging server as being "simple", and even went so far as calling it "MMSLite". However, as the product has evolved, the built-in MMSC messaging server has become a world-class MMSC with content adaptation and conversion services not found on many higher end products.
Normally an MMSC is only utilized when a mobile phone user sends/originates an MMS message. The mobile phone sends the message to the MMSC for delivery. However, phones may also assume that the MMSC is responsible for the delivery of all MMS messages, and this may cause phones to disregard or get confused over MMS messages that are sent via the gateway instead of the operator's MMSC.
The MMSC Messaging Server built into the Now SMS/MMS Gateway implements the MMS protocols, and allows you to bypass the operator MMSC.
The MMSC supports sending MMS messages between mobile phones, and also supports sending and receiving MMS messages between mobile phones and standard internet e-mail systems.
While extremely powerful, the MMSC integrated into the gateway is a lightweight version of the Now MMSC product which is designed for operator environments (and includes user provisioning systems to integrate into the operator network).
Configuration for the MMSC can be found under the "MMSC" and "MMSC Users" configuration tabs of the gateway.
The "MMSC" configuration tab specifies general configuration information for the MMSC:

The MMSC runs as a separate service process from the gateway. To activate the MMSC service, check the box next to the prompt "Activate MMSC Service".
When a mobile phone sends or receives an MMS message, it
makes an HTTP connection to an MMSC (usually through a WAP gateway). The MMSC contains an integrated HTTP server
to process these connections. Please
specify an available "
MMS messages can be sent to and received from, standard
internet e-mail accounts. To support
this functionality, the MMSC provides message format conversions between MMS
and SMTP. To accept messages from
internet e-mail accounts, the MMSC contains an integrated SMTP server. Please specify an available "
The PC that is running the gateway might have other web and mail services installed. For this reason, the gateway allows you to specify which of the available IP addresses on the current PC should be used by the gateway. The "IP Address" prompt displays the available IP addresses on the current PC. To make the gateway service available via any address on the current PC, select "(all available)", otherwise select a specific IP address.
"Local Host Name or IP Address" specifies the local host name or IP address of the computer that is running the MMSC service. The name or address specified here will be used to construct URLs when sending MMS messages to mobile phones. If a host name is used, this host name must be defined in DNS and resolve back to the computer running the MMSC service.
"Domain Name for MMS E-Mail" specifies the SMTP domain name that is associated with users defined to the MMSC. When MMS users exchange e-mail messages with internet recipients, this is the SMTP domain name associated with the MMSC users. Note that the MMSC acts as an e-mail server, and you will need to configure DNS for this domain name so that internet mail sent to this domain name is properly routed to the PC running the gateway.
When an MMS user sends a message to an SMTP recipient, the MMSC requires an "SMTP Relay Host" to transfer the message to the correct internet mail server for the intended recipient. Please define an appropriate SMTP mail server in your network that will perform this SMTP message relay capability.
Checking "Enable Dynamic Image and Audio Conversion" enables the dynamic content adaptation and conversion services of the MMSC. The MMSC uses WAP/MMS "User Agent Profile" capabilities to determine the MIME formats that a device supports, as well as the maximum size of images supported by the device. Where required, the MMSC converts between common image formats (including, but not limited to GIF, JPG, PNG, BMP and WBMP) to deliver an image supported by the device. For images larger than the maximum size supported by the device, the MMSC will automatically scale the image to fit the device, speeding up download times. For audio formats, conversion between WAV and AMR is provided in the e-mail gateway interface. MIME types not supported by the receiving device, which cannot be supported, will be removed prior to delivery to the receiving device to prevent compatibility issues and unnecessary download delays.
Checking "Enable E-Mail WAV to AMR Conversion" enables conversion between WAV (audio/wav) and AMR (audio/AMR) formats when messages are exchanged between e-mail and MMS recipients. For audio recordings, the WAV format is more commonly supported for e-mail recipients, while the AMR format is more commonly supported for MMS recipients. When this setting is enabled, AMR sound files going from MMS to e-mail are converted to WAV format, and WAV sound files going from e-mail to MMS are converted to AMR format.
Checking "Enable E-Mail BMP to JPEG Conversion" enables conversion of files from BMP (image/bmp) to JPEG (image/jpeg) format when messages are sent from an e-mail sender to an MMS recipient. The BMP format is somewhat common in PC environment, but is not frequently supported in MMS environments. Even when supported in MMS environments, BMP files are very large, which makes them awkward and inconvenient to transmit to MMS devices.
The "Enable E-Mail to SMS Support" checkbox enables the SMTP interface to be used to send SMS messages. This setting is used primarily in conjunction with bulk e-mail delivery via SMTP Authentication, as described in the help file. Gateway user accounts can be allowed to login via SMTP with an e-mail account to perform bulk delivery of SMS messages. If this configuration setting looks out of place, it is because this SMS gateway capability is provided through the MMSC's SMTP server. When enabled, specify a "Domain Name for SMS E-Mail", so that the gateway can identify by the domain name of the message recipient whether to route the message via SMS or MMS. Additionally, specify the "Maximum number of SMS messages per e-mail" to be used when converting from SMTP to SMS. When set to a value greater than 1, the gateway will use long (concatenated) SMS messages to support messages longer than 160 characters.
An administrative interface for adding, deleting and modifying users is available via the HTTP port of the MMSC if an "Admin User" is defined on the MMSC dialog. If an administrative user is defined, then the administrative interface is available by connecting via a web browser to "/ADMIN" on the MMSC HTTP port (e.g., http://127.0.0.1/ADMIN), and supplying the defined administrative user name and password. The administrative interface provides functionality similar to that described for the "MMSC Users" tab dialog, defined in the following section.
The "MMSC Users" tab defines users that are allowed to utilize the MMSC.

To define a user to use the MMSC, you must define a phone number using international format, and an alias name for the user account. (The alias name will be used as the user name when sending and receiving SMTP e-mail.)
Note that for a mobile phone user to use the simple MMSC integrated with this gateway, the mobile phone user must configure their MMSC (MMS Messaging Server) to point to the address of the MMSC, and include their user name and password in the MMSC URL. Example:
http://x.x.x.x:81/username=password
or
http://host.domain:81/username=password
The username can be either the user's alias name or phone number.
The MMSC built into the gateway supports the bi-directional exchange of MMS messages between mobile phone users and internet e-mail accounts.
To enable this capability, the MMSC must be able to send and receive SMTP internet e-mail. The configuration screens for the built-in MMSC, define the required settings for sending and receiving SMTP internet e-mail.
When a mobile phone user sends a message to an e-mail recipient, the gateway will convert the message to SMTP e-mail format. Individual components of the MMS message will be sent as file attachments to the e-mail message.
To send an MMS message to a mobile phone from an e-mail client, address the message to username@mmsdomainname, where "username" is the alias name defined for the user on the "MMSC Users" dialog, and "mmsdomainname" is the "Domain Name for MMS E-Mail" defined on the "MMSC" dialog. E-mail attachments that are supported MMS content types (included in the MMSCTYPE.INI file) will be packaged and included in the MMS message sent to the mobile phone.
By default, the e-mail to MMS gateway will only accept inbound e-mail messages addressed to one of the users defined to the MMSC. It is also possible to use the SMTP interface for the bulk sending of MMS (and SMS) messages by logging into the SMTP server using an e-mail client that supports SMTP Authentication. When logged in via SMTP authentication, it is possible to send an MMS (or SMS) message to any recipient, by sending to addressing the message to "phonenumber@mms.domain.name", where "mms.domain.name" is the "Domain Name for MMS E-Mail" defined on the MMSC configuration dialog. An authenticated SMTP user can send an SMS message by addressing the message to "phonenumber@sms.domain.name", where "sms.domain.name" is the "Domain Name for SMS E-Mail" defined on the MMS configuration dialog. To define a user account that is allowed to login with SMTP Authentication, refer to the "SMS Users" configuration dialog.