N年前做过的一个项目,在方案验证过程中做的一些总结。
1.语音拨号
ATDxxxxxxxxxxx;回车(ASCII:0x0D)
对方忙时,返回BUSY,对应16进制码:0D 0A 4E 4F 20 43 41 52 52 49 45 52 0D 0A
对方挂断或无应答时,返回NO CARRIER,对应16进制码:0D 0A 4E 4F 20 43 41 52 52 49 45 52 0D 0A
对方应答时,返回OK,对应16进制码:0D 0A 4F 4B 0D 0A ,当挂断时返回BUSY,对应16进制码:0D 0A 4E 4F 20 43 41 52 52 49 45 52 0D 0A
SIM卡无效时或连接不上时返回NO DIALTONE,对应16进制码:0D 0A 4E 4F 20 44 49 41 4C 54 4F 4E 45 0D 0A
2.挂断语音拨号
ATH回车(ASCII:0x0D)
成功,返回OK,对应16进制码:0D 0A 4F 4B 0D 0A
3.设置短消息中心
AT+CSCA="+8613800000000"回车(ASCII:0x0D),具体的号码由当地的运营商决定.
成功,返回OK,对应16进制码:0D 0A 4F 4B 0D 0A
4.设置短信发送格式
AT+CMGF=0回车(ASCII:0x0D),采用PDU格式发送,如用文本格式格式,则AT+CMGF=1
成功,返回OK,对应16进制码:0D 0A 4F 4B 0D 0A
5.PDU格式短信发送
AT+CMGS=规约数据单元长度+短消息长度(回车ASCII:0x0D)
成功,返回“>”,没有双引号,对应16进制码:0D 0A 3E 20
收到">"后,发送PDU格式的短消息
可以有两种格式(注意所有输入均为字符型,最后以“^z”为结束符,ASCII码为0x1A):
08 91 683108214365F7 11 00 0D 91 683109214365F7 00 08 00 0C 665A4E0A597D003100320033 ^z(ASCII:0x1A)
或
00 11 00 0D 91 683109214365F7 00 08 00 0C 665A4E0A597D003100320033 ^z(ASCII:0x1A)
成功,返回:
+CMGS: 50
OK
对应16进制码:0D 0A 2B 43 4D 47 53 3A 20 35 30 0D 0A 0D 0A 4F 4B 0D 0A
其中“+CMGS: 50”的“50”表示已发短信条数。
PDU格式短信条目解释:
08 SMSC地址信息的长度共8 个八位字节(包括91)
91 SMSC地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
683108214365F7 SMSC地址
11 基本参数(TP-MTI/VFP)
00 消息基准值(TP-MR):0
0D 目标地址数字个数,共13个数字(或字节)
91 目标地址格式(TON/NPI):A1国内格式,91国际格式
683109214365F7 目标地址(TP-DA)
00 协议标识(TP-PID)是普通GSM 类型,点到点方式
08 数据编码方案:00表示7-bit编码,08表示UCS2编码,04表示8-bit 编码。
00 有效期(TP-VP) 5 分钟
0C 用户信息长度(TP-UDL) 实际长度12 个字节
665A4E0A597D003100320033 用户信息(TP-UD)(“晚上好123”)
附PDU数据格式分析:
如将字符“晚上好123”字符发送到目标号码“13901234567”
PDU字符串为:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13)
08 91 683108214365F7 11 00 0D 91 683109214365F7 00 08 00 0C 665A4E0A597D003100320033
(1)08—短信息中心地址长度。指(91)+(683108214365F7)的长度。
(2)91—短信息中心号码类型。91是TON/NPI遵守International/E.164标准,指在号码前需加‘+’号;此外还有其它数值,但91最常用。
91(16进制) 1 0