我已通过 USB 电缆将我的三星手机 (GT-S3350) 连接到我的电脑,并为其安装了 USB 驱动程序。我可以使用 AT 命令通过我的 PC 向任何电话号码发送短信。我也通过 Java 尝试过超级终端。

要将移动设备配置为文本模式并接收详细错误,我在超级终端中提交以下命令。

AT+CMGF=1
好的
AT+CMEE=2
好的

正如我之前所说,我完全能够使用 CMGS 命令发送短信,它工作得很好。但是,当我尝试列出消息时,我会得到一长串“OK”的列表,如下所示。

AT+CMGL=“全部”
好的

好的

好的


好的


好的


好的


好的


好的
.
.
.
错误

好的

当我给出“REC READ”、“REC UNREAD”等时,情况也是如此。而不是“全部”。
此外,当我使用 CNMI 命令收听新消息通知时,我立即收到 OK 消息。预计它会显示新收到的短信的索引,但对我来说它保持空白。

AT+CNMI=1,1,0,0,0
好的

我尝试过从我的另一部手机接收短信。消息已收到,但我在终端上没有看到任何内存索引。

我主要是从博客和浏览 API 中学到这些的。我也尝试过这个建议的方法 线. 。我做错了什么或者我错过了什么吗?

我完全愿意接受在 PC 上接收短信的替代方案。请建议。

有帮助吗?

解决方案

哎呀,这看起来不太好。AT 命令不应该1 提供多个最终结果代码,因此获得大量 OKs 后面跟着一个 ERROR 肯定是不对的。

进一步测试/调试的一些问题和建议:

  • 这也适用于 PDU 模式吗?

  • 这是否适用于所有不同的消息存储(检查 AT+CPMS)?

  • 当您没有运行以 ATD 启动的数据呼叫时,设置有什么区别吗? <mode> 至 2 为 AT+CNMI?

  • <bfr> 论点说,进入模式1到3时,未经请求的结果代码将被冲洗。收到消息(在测试时)后,将简短的模式设置为0,然后返回1(或2),从而迫使输入到应该输出所有缓冲指示的模式?

  • 您是否尝试过不同的操作系统?不同的终端程序?(这确实不应该有任何区别,但谁知道呢)

1好吧,除了一个规格错误 (见注1).


有关了解有关 AT 命令的更多信息的一般提示,请查看以下链接 at命令标签信息页面, ,特别是用于消息传递命令的 27.005(但如果您之前没有阅读过 V.250,请从该版本开始)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top