- //将短信转化为待发送编码
- //AT+CMGS=021
- //0011000D91683176116125F0000801064F60597DFF01
- //021 TPDU长度
- //PDU:SMSC地址+TPDU
- //00 服务中心号码(SMSC地址)
- //11
- //00 TP-MR(TP-Message-Reference)
- //0D91683176116125F0 TP-DA 收信人手机号码
- //00 TP-PID(TP-Protocol-Identifier)
- //08 TP-DCS(TP-Data-Coding-Scheme)
- //01 TP-VP(TP-Validy-Period)
- //06 TP-UDL 短信长度
- //4F60597DFF01 TP-UD 你好!
- //服务中心号码、收信人手机号码格式
- //0D Address-Length 地址长度
- //91 Type-of-Address 地址类型
- // Bits 7
- // 1
- // Bits 6 5 4
- // 0 0 0 Unknown1
- // 0 0 1 International number2
- // 0 1 0 National number3
- // 1 1 1 Reserved for extension
- // Bits 3 2 1 0
- // 0 0 0 0 Unknown
- // 0 0 0 1 ISDN/telephone numbering plan (E.164/E.163)
- // 1 1 1 1 Reserved for extension
- //683176116125F0 号码
- bool CMobile::EncodeSMS(CSMS sms, CPDUSMS & pdu)
- {
- try
- {
- //收信人手机号码============
- CString sTo = sms.m_sNumber;
- CString sTA; //类型:国际/国内
- sTo.TrimLeft("+");
- //国际号码
- if(sTo.Left(2) == "86")
- {
- sTA = "91";
- }
- else if((sTo.GetLength() == 11) && sTo.Left(2) == "13")
- {
- sTo = "86" + sTo;
- sTA = "91";
- }
- //国内号码
- else
- {
- sTA = "A1";
- }
手机短信PDU编码与解码
最新推荐文章于 2024-04-01 09:23:30 发布