首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

at发送短信 如何没有状态报告

2012-03-07 
at发送短信 怎么没有状态报告?我用AT指令通过手机的MODEN串口发送短信,成功,但没有状态报告。我写的指令的

at发送短信 怎么没有状态报告?
我用AT指令通过手机的MODEN串口发送短信,成功,但没有状态报告。
我写的指令的 FirstOctet字段(包含TP-MTI(2bit),TP-RD(1bit),TP-VPF(2bit),TP-RP(1bit),TP-UDHI(1bit),TP-SRR(1bit)是0X11 :二进制表示形式:0 0 0 10 0 01

也就是需要短信的状态报告的,但是当短信发送出去,被对方手机接收到后,发送的手机上并没有收到状态报告,手机也没有上报什么数据?这是为什么,请高手指教?我需要通过收到状态报告后来判断短信发送成功与否.


//---------------------------------------------------------
下面是每一位的含义和取值:
TP-MTI:01
  TP-Message-Type-Indicator(消息类型指示符)
Bit1,0:01 指示为SMS-SUBMIT类型
TP-RD:0

TP-Reject-Duplicates(是否拒绝相同重复消息)

Bit2:0 指示短消息中心接受未转发的具有相同TP-MR的消息。

TP-VPF:10

  TP-Validity-Period-Format(有效期格式)

  Bit4,3:10 指示使用相对格式。

TP-SRR:0

  TP-Status-Report-Request

  Bit5:0 指示不使用状态报告。

TP-UDHI:0
  TP-User-Data-Header-Indicator(用户数据头标示)
  Bit6:0 指示这是一个SMS消息,没有用户数据头。EMS消息需要设置。

TP-RP:0
  TP-Reply-Path(回复路径)
  Bit7:0 指示没有设置回复路径。



[解决办法]
发送成功会返回ok
但这只意味短信到了短消息中心,不能判断对方是否收到短信。
[解决办法]
我记的好像是如果发送指令中指示使用状态报告,发送完成后,会收到一条来自消息中心的短信,告知是否发送成功,所以发送完以后,再AT+CMGR读取试试。(注意应该有延时)

热点排行