短信字符限制
一条短信最多能包含 140 字节的信息。您在一条短信中可以包含的字符数取决于消息中所包含字符的类型。
如果您的消息仅使用 GSM 03.38 字符集中的字符(也称为 GSM 7 位字母),则它最多能包含 160 个字符。如果您的消息包含 GSM 03.38 字符集以外的任何字符,则它最多可以有 70 个字符。在发送短信时,AWS 终端用户消息发送 SMS 服务会自动确定使用最有效的编码。
当消息包含的字符数超过最大字符数时,消息将拆分为多个部分。将消息拆分为多个部分时,每个部分都包含有关其前面的消息部分的其他信息。当接收人的设备接收以这种方式分隔的消息部分时,它使用此附加信息来确保所有消息部分都以正确的顺序显示。根据接收人的移动运营商和设备,多条消息可能会显示为单条消息或由单独消息组成的序列。因此,对于仅包含 GSM 03.38 字符的消息,每个消息部分的字符数减少至 153 个;对于包含其他字符的消息,则减少至 67 个。您可以通过使用短信长度计算器工具来估算消息包含的消息部分数量,其中一些工具是在线提供的。任何消息支持的最大大小为 1530 个 GSM 字符或 630 个非 GSM 字符。如果消息大小大于支持的大小,消息将发送失败,AWS 终端用户消息发送 SMS 服务将返回无效消息异常。有关吞吐量和消息大小的更多信息,请参阅每秒消息部分数(MPS)限制是什么。
AWS 终端用户消息发送 SMS 服务确实支持所有语言,但是,根据收件人的移动运营商及其规定,某些符号可能会根据具体案例受到限制。使用包含 GSM 03.38 字母以外字符的语言发送消息时,每个消息部分的字符将减少至 67 个。
重要
当您发送包含多个消息部分的消息时,您需要针对消息中包含的这些数量的消息部分付费。有关吞吐量和消息大小的更多信息,请参阅每秒消息部分数(MPS)限制是什么。
GSM 03.38 字符集
下表列出了 GSM 03.38 字符集中所存在的所有字符。如果您所发送的消息只包含下表中显示的字符,那么该消息最多可以包含 160 个字符。
| GSM 03.38 标准字符 | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | B | C | D | E | F | G | H | I | J | K | L | M |
| N | O | P | Q | R | S | T | U | V | W | X 形 | Y | Z |
| a | b | c | d | e | f | g | h | i | j | k | l | m |
| n | o | p | q | r | s | t | u | v | w | x | y | z |
| à | Å | å | Ä | ä | Ç | É | é | è | ì | Ñ | ñ | ò |
| Ø | ø | Ö | ö | ù | Ü | ü | Æ | æ | ß | 0 | 1 | 2 |
| 3 | 4 | 5 | 6 | 7 | 8 | 9 | & | * | @ | : | , | ¤ |
| $ | = | ! | > | # | - | ¡ | ¿ | ( | < | % | . | + |
| £ | ? | " | ) | § | ; | ' | / | _ | ¥ | Δ | Φ | Γ |
| Λ | Ω | Π | Ψ | Σ | Θ | Ξ | ||||||
除上表中所示符号以外,GSM 03.38 字符集还包含其他几个符号。但是,这些字符中的每个字符都会算作两个字符,因为这些字符中还包含一个看不见的转义字符:
-
^
-
{
-
}
-
\
-
[
-
]
-
~
-
|
-
€
最后,GSM 03.38 字符集还包含以下非打印字符:
-
空格字符。
-
换行控制,它表示一行文本的结束和另一行文本的开始。
-
回车控制,它会移动到一行文本的开头(通常跟在换行符后面)。
-
转义控制,它会自动添加到前一列表中的字符中。
示例消息
本部分包含几个示例短信。对于每个示例,此部分显示消息的字符总数以及消息部分的数量。
示例 1:只包含 GSM 03.38 字母表中的字符的长消息
以下消息仅包含 GSM 03.38 字母中的字符。
Hello Carlos. Your Example Corp. bill of $100 is now available.
Autopay is scheduled for next Thursday, April 9. To view the details of your bill, go to
https://example.com/bill1.
上述消息包含 180 个字符,因此必须将其拆分为多个消息部分。将消息拆分为多个消息部分时,每个部分可以包含 153 个 GSM 03.38 字符。因此,此消息作为两个消息部分发送。
示例 2:包含多字节字符的消息
以下消息包含多个中文字符,所有这些字符都在 GSM 03.38 字母表之外。
亚马逊公司是一家总部位于美国西雅图的跨国电子商务企业,业务起始于线上书店,不久之后商品走向多元化。杰夫·贝佐斯于1994年7月创建了这家公司。
上述消息包含 71 个字符。但是,由于消息中的几乎所有字符都在 GSM 03.38 字母表之外,因此它作为两个消息部分发送。每个消息部分最多可包含 67 个字符。
示例 3:包含单个非 GSM 字符的消息
以下消息包含不属于 GSM 03.38 字母表的单个字符。在此示例中,该字符是一个右单引号 (’),它是与常规撇号 (') 不同的字符。文字处理应用程序(如 Microsoft Word)通常会自动将撇号替换为右单引号。如果您在 Microsoft Word 中草拟短信内容并将其粘贴到 AWS 终端用户消息发送 SMS 服务中,请删除这些特殊字符并用撇号替换。
John: Your appointment with Dr. Salazar’s office is scheduled
for next Thursday at 4:30pm. Reply YES to confirm, NO to reschedule.
上述消息包含 130 个字符。但是,由于它包含右单引号字符,而此字符不是 GSM 03.38 字母表的一部分,因此它作为两个消息部分发送。
如果您将此消息中的右单引号字符替换为撇号(该字符属于 GSM 03.38 字母的一部分),则该消息将作为单个消息部分发送。