Quectel GSM MMS AT Commands Manual V1.3
Quectel GSM MMS AT Commands Manual V1.3
AT Commands Manual
Rev. GSM_MMS_AT_Commands_Manual_V1.3(C)
Date: 2017-11-13
Status: Released
www.quectel.com
GSM/GPRS Module Series
GSM MMS AT Commands Manual
Our aim is to provide customers with timely and comprehensive service. For any
assistance, please contact our company headquarters:
GENERAL NOTES
QUECTEL OFFERS THE INFORMATION AS A SERVICE TO ITS CUSTOMERS. THE INFORMATION
PROVIDED IS BASED UPON CUSTOMERS‟ REQUIREMENTS. QUECTEL MAKES EVERY EFFORT
TO ENSURE THE QUALITY OF THE INFORMATION IT MAKES AVAILABLE. QUECTEL DOES NOT
MAKE ANY WARRANTY AS TO THE INFORMATION CONTAINED HEREIN, AND DOES NOT ACCEPT
ANY LIABILITY FOR ANY INJURY, LOSS OR DAMAGE OF ANY KIND INCURRED BY USE OF OR
RELIANCE UPON THE INFORMATION. ALL INFORMATION SUPPLIED HEREIN IS SUBJECT TO
CHANGE WITHOUT PRIOR NOTICE.
COPYRIGHT
THE INFORMATION CONTAINED HERE IS PROPRIETARY TECHNICAL INFORMATION OF
QUECTEL CO., LTD. TRANSMITTING, REPRODUCTION, DISSEMINATION AND EDITING OF THIS
DOCUMENT AS WELL AS UTILIZATION OF THE CONTENT ARE FORBIDDEN WITHOUT
PERMISSION. OFFENDERS WILL BE HELD LIABLE FOR PAYMENT OF DAMAGES. ALL RIGHTS
ARE RESERVED IN THE EVENT OF A PATENT GRANT OR REGISTRATION OF A UTILITY MODEL
OR DESIGN.
Copyright © Quectel Wireless Solutions Co., Ltd. 2017. All rights reserved.
GSM_MMS_AT_Commands_Manual 1 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
History
GSM_MMS_AT_Commands_Manual 2 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
Contents
1 Introduction ....................................................................................................................................... 5
1.1. General Description .................................................................................................................. 5
1.2. AT Command Syntax ................................................................................................................ 5
5 Examples ......................................................................................................................................... 22
5.1. Configure Parameters ............................................................................................................ 22
5.2. File Transmission Operation ................................................................................................... 22
5.3. Write and Send an MMS Message ......................................................................................... 23
5.4. Receive MMS Message.......................................................................................................... 24
5.5. Manage Received MMS Message .......................................................................................... 24
GSM_MMS_AT_Commands_Manual 3 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
Table Index
GSM_MMS_AT_Commands_Manual 4 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
1 Introduction
Quectel module provides MMS application interface for sending and receiving messages including
multimedia objects (image, audio, rich text, etc.). This document is a reference guide to all the AT
commands defined for MMS.
Quectel GSM module supports to transfer MMS message over HTTP protocol. The MMS service supports
the following character sets: US-ASCII, UTF8, UCS2 (Big Endian) and GBK. It is recommended to use
PDU (HEX) mode to input MMS message title if the character set is not US-ASCII.
TA will switch to data mode after executing AT+QMMRR command. To switch back to AT mode, please
input “+++” and this will terminate the current MMS AT command. The interval time between the first “+”
and the character before the first “+” must not be less than 500ms, the interval time between the last “+”
and the character next to the last “+” must not be less than 500ms and the interval time between each “+”
must be less than 1000ms.
Write Command AT+<x>=<…> This command sets the user-definable parameter values.
GSM_MMS_AT_Commands_Manual 5 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
OK
Read Command Response
AT+QMMURL? +QMMURL: <mmsc url>
OK
Write Command Response
AT+QMMURL=<mmsc url> OK
Parameter
<mmsc url> The URL of MMSC. The maximum length of the parameter is 100 bytes.
<err> Integer type. The error code of the operation. Please refer to Chapter 7.
OK
GSM_MMS_AT_Commands_Manual 6 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
OK
Write Command Response
AT+QMMPROXY OK
=<type>,<gateway>[,<port>]
If there is an error related to ME functionality:
+CME ERROR: <err>
Parameter
<type> Protocol type. The protocol type is HTTP protocol. The default value is 1.
<gateway> IP address of MMS proxy.
<port> Port of MMS proxy. The range is 0-65535, and the default value is 80.
<err> Integer type. The error code of the operation. Please refer to Chapter 7.
OK
Read Command Response
AT+QMMCFG? +QMMCFG:
<valid>,<pri>,<sendrep>,<readrep>,<visible>,<class>
OK
Write Command Response
AT+QMMCFG=<valid>[,<pri>][,<sendr OK
ep>][,<readrep>][,<visible>][,<class>]
If there is an error related to ME functionality:
+CME ERROR: <err>
GSM_MMS_AT_Commands_Manual 7 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
Parameter
OK
GSM_MMS_AT_Commands_Manual 8 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
OK
Write Command Response
AT+QMMSCS=<charset>[,<input OK
mode>]
If there is an error related to ME functionality:
+CME ERROR: <err>
Parameter
NOTE
OK
Write Command Response
1) If MMS title is written (<function>=4 If the operation is successful, response:
and <operate>=1): OK
AT+QMMSW=<function>,<operate>
After response “>”, input the data to be If there is an error related to ME functionality:
GSM_MMS_AT_Commands_Manual 9 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
sent. Tap CTRL+Z to send, and tap ESC +CME ERROR: <err>
to cancel the operation.
2)Otherwise:
AT+QMMSW=<function>[,<operate>][
,<oprstring>]
Parameter
NOTES
1. The maximum quantity of "TO address", "CC address" and "BCC address" is 6.
2. Address could be a subscriber number or an email address (e.g. [email protected]).
3. The file to be appended must have been stored in UFS. It is strongly recommended that DOS 8.3
format should be used for the file name.
4. The maximum length of MMS message title is 100.
5. The character set of the MMS message title or the contents of a text file are specified by
AT+QMMSCS. For example, If the contents of a text file uses UTF8 character set,
AT+QMMSCS="UTF8", 0 must be executed firstly.
OK
GSM_MMS_AT_Commands_Manual 10 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
Parameter
NOTES
1. The response OK means starting to send MMS message. When MMS message sending has
finished, an unsolicited result code "+QMMNOTIFY: 1,<mms index>,<error code>" will be returned.
2. If <error code> equals to 0, it means sending MMS message successfully.
OK
Write Command Response
AT+QMMRM=<operate>[,<from>][,<to If <operate>=1 is to list MMS message, response:
>] +QMMRM:<mms index>,<from address>,<ind>,<date>,
<time>,<message size>[…]
OK
Otherwise
OK
GSM_MMS_AT_Commands_Manual 11 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
Parameter
OK
Write Command Response
AT+QMMRR=<operate>[,<mms The following is the format to view "Origination address", "TO
index>][,<para>][,<file name>] address" and "CC address" (<operate>=1,2, or 3; <para> is
omitted):
+QMMRR: 1,<address>
OK
OK
GSM_MMS_AT_Commands_Manual 12 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
OK
OK
Parameter
GSM_MMS_AT_Commands_Manual 13 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
OK
Write Command Response
AT+QMMRECV=<mms OK
index >,<operate>
If there is an error related to ME functionality:
+CME ERROR: <err>
Parameter
NOTES
1. The response OK means starting to receive MMS message. When MMS message receiving has
finished, an unsolicited result code “+QMMNOTIFY: 2,<mms index>,<error code>” will be returned.
2. If <error code> equals to 0, it means receiving MMS message successfully.
OK
Read Command Response
AT+QMMSRI? +QMMSRI: <pri>
OK
Write Command Response
AT+QMMSRI=<pri> OK
GSM_MMS_AT_Commands_Manual 14 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
Parameter
<pri> Priority
0 Call has higher priority than MMS message
1 MMS message has higher priority than call
<err> Integer type. The error code of the operation. Please refer to Chapter 7.
OK
Read Command Response
AT+QMMDUR? +QMMDUR: <durattribute>
OK
Write Command Response
AT+QMMDUR=<durattribute> OK
Parameter
<durattribute> DUR attribute value. The range is 0-4294967295, and the default value is 120000.
Unit: ms.
<err> Integer type. The error code of the operation. Please refer to Chapter 7.
GSM_MMS_AT_Commands_Manual 15 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
OK
Read Command Response
AT+QMMSMS? +QMMSMS: <smstosim>
OK
Write Command Response
AT+QMMSMS=<smstosim> OK
Parameter
NOTE
When AT+QMMSMS=1, all the MMS AT commands in this document cannot be used to download and
read the MMS.
OK
Read Command Response
AT+QMMCTYP? +QMMCTYP: <enableucs2>,<bigendian>
GSM_MMS_AT_Commands_Manual 16 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
OK
Parameter
NOTE
If <enableucs2> is set as 1, when reading MMS, the following content will be outputted as UCS2 format:
1) Title with ASCII and UTF8 encoding (when MMS is read by AT+QMMRR=4,<mms index>[,<output
mode>])
2) Text file with UTF8 encoding (when MMS is read by AT+QMMRR=5,<mms index> and
AT+QMMRR=6,<index>,<fileindex>).
The following example shows the details about the NOTE above.
Example
1) Set AT+QMMCTYP=0,0
AT+QMMRR=4,1 //Read ASCII TXT MMS title.
+QMMRR: 4,"ASCII",6D7574692066696C6500
OK
AT+QMMRR=5,1 //List appended file list +QMMRR: 5,1,"s.smil","UTF8",880,13.
+QMMRR: 5,2,"cont1.txt","UTF8",5,3
+QMMRR: 5,5,"pic1.jpg","",17068,7
OK
AT+QMMRR=6,1,2 //Read UTF8 file.
test1
GSM_MMS_AT_Commands_Manual 17 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
+QMMRR: 6,5,3611
OK
2) Set AT+QMMCTYP=1,1
AT+QMMRR=4,1 //Output MMS title using UCS2 encoding.
+QMMRR: 4,"UCS2","6D007500740069002000660069006C0065000000"
OK
//List appended file list. For UTF8 file, <charset> and <file size> are changed to UCS2 attributes.
AT+QMMRR=5,1
+QMMRR: 5,1,"s.smil","UCS2",1760,13
+QMMRR: 5,2,"cont1.txt","UCS2",10,3
+QMMRR: 5,5,"pic1.jpg","",17068,7
OK
AT+QMMRR=6,1,2 //Use UCS2 format to output TXT file content.
test1
+QMMRR: 6,10,2700
OK
OK
Read Command Response
AT+QMMFTYP? +QMMFTYP: <outputstyle>
OK
Write Command Response
AT+QMMFTYP=<outputstyle> OK
GSM_MMS_AT_Commands_Manual 18 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
Parameter description:
<filetype>:
0 Unknown type
1 Text
2 Text/html
3 Text/plain
4 Text/xml
5 Image
6 Image/gif
7 Image/jpeg
8 Image/tiff
9 Image/pnp
10 Image/wbmp
11 Audio
12 Video
13 SMIL
Parameter
GSM_MMS_AT_Commands_Manual 19 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
3 Description of URC
URC Meaning
+QMMNOTIFY: 1,<mms index>,0 Sending MMS message successfully, and <mms index> is 0.
+QMMNOTIFY: 1,<mms Sending MMS message failed, and <mms index> is 0. For
index>,<error code> <error code>, please refer to Chapter 7.
+QMMNOTIFY: 2,<mms Receiving MMS message failed. For <error code>, please
index>,<error code> refer to Chapter 7.
A new MMS message has arrived, and AT+QMMRECV can be
+QMMNOTIFY: 3,<mms index>,0
used to receive it.
Received a Service Indication (SI) message. For example,
when a new MMS message has arrived, but it has not been
received via the command AT+QMMRECV, MMSC will send
+QMMNOTIFY: 4,0,<error code> an SI message to inform customers. Of course, other service
applications also send SI messages, such as push email,
stock information, news, or some advertising, etc. Customers
can ignore these messages.
GSM_MMS_AT_Commands_Manual 20 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
4 Reliable Transmission
For reliable transmission when using "AT+QMMRR=6, …" command to download the content of a file, it‟s
recommended that users turn on hardware flow control capabilities, while also open MCU hardware flow
control function. Use AT+IFC=2,2<CRLF> command to open the hardware flow control function.
Generally, serial transmission is reliable, bur for further reliability, Quectel provides additional ways to
verify the data transmission reliability by the command‟s response information.
When using "AT+QMMRR=6, …" command to download a file, the module will report "+QMMRR:
6,<download size>,<checksum>" information tips at the end of data transmission. Then MCU can judge
whether the data has been lost by comparing the value of <download size> and <checksum>.
<download size> is the data length that the module downloaded. MCU compares <download size> with
the actual length of the file that MCU has received. If the two unequal, it means the module lost data.
<checksum> is calculated by doing XOR for every 2 bytes. Similarly MCU calculates the actual file‟s
checksum as the example below, and then compares this value with <checksum> which module reports.
If the two checksums are not equal, the received data may be problematic. Users can re-download data.
Every two data form a group and do XOR with another group. If the last group is less than 2 bytes,
supplement it with 0x00.
GSM_MMS_AT_Commands_Manual 21 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
5 Examples
OK
OK
GSM_MMS_AT_Commands_Manual 22 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
CONNECT
<input file bin data>
+QFUPL: 4222,13E4
OK
OK
AT+QMMSCS="UTF8",1 //The character set is UTF8, and the input mode is Text
(BIN) mode.
OK
AT+QMMSW=5,1,"pic1.jpg" //Add the first file to MMS message, and this file is jpg
file.
OK
AT+QMMSW=5,1,"test.txt" //Add the second file to MMS message, and the character
GSM_MMS_AT_Commands_Manual 23 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
AT+QMMSW=5,1,"test2.txt" //Add the third file to MMS message, and the character
set of this file is UTF8
OK
OK
OK
OK
GSM_MMS_AT_Commands_Manual 24 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
OK
AT+QMMRR=6,1,1 //Get the data of the file 1 (defined by the second “1” in
the parameter) in the MMS 1 (defined by the first “1” in
the parameter).
CONNECT
<output file bin data>
+QMMRR: 6,3222,B3E4
OK
GSM_MMS_AT_Commands_Manual 25 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
6 Appendix A Reference
Abbreviation Description
DUR The DUR attribute defines the duration of displaying file in SMIL script
GSM_MMS_AT_Commands_Manual 26 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
XOR Exclusive OR
GSM_MMS_AT_Commands_Manual 27 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
3901 Timeout
GSM_MMS_AT_Commands_Manual 28 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
GSM_MMS_AT_Commands_Manual 29 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
3901 Timeout
GSM_MMS_AT_Commands_Manual 30 / 31
GSM/GPRS Module Series
GSM MMS AT Commands Manual
GSM_MMS_AT_Commands_Manual 31 / 31