如何知道您是否错过了 AT 命令中的来电

How to know if you missed an incoming call in AT commands

我正在使用 Putty 来模拟我的 phone 的调制解调器通过串口连接。当我的 phone 收到一个呼叫时,它会将 'RING' 输出到 putty 中,但是当呼叫者取消呼叫时,Putty 不会输出任何响应或结果。

调制解调器如何知道呼叫者disconnect/cancelled呼叫,但不在腻子中输出它?

谢谢

大多数调制解调器在收到呼叫时显示传入的 phone 号码和 RING,在取消呼叫时显示 END。要查看未接来电,您可以使用以下 AT 命令。

AT+CPBS="MC"
AT+CPBR=1,99

第一个命令告诉调制解调器查看未接来电 phone 簿,第二个命令加载从 1 到 99 的条目。请注意,此行为不是标准行为。我能够在 GSM 模块上复制它,但不能在我的 3G 调制解调器上复制。在调制解调器上试一试,看看是否有效。祝一切顺利。

要检测未接来电,您可以尝试三种方法。

检查是否有合适的 AT+CIND 指示灯可以打开。我不认为 call 会这样做,因为我假设它只会在电话被接听时转到 1。如果您的 phone 支持 callsetup 或类似的东西,那应该是您所需要的(您将必须实施逻辑来检测呼叫何时未进入活动状态)。

开启AT+CIND指标的例子详见27.007章节“8.57 Informative examples”,关注The subparameter order in the command is defined by the query command order,例如 如果 AT+CIND=? returns

+CIND: ("abc",(0-1)),("xyz",(0,1)),("call",(0,1))

然后调用是索引 3,对于

+CIND: ("abc",(0-1)),("call",(0,1)),("xyz",(0,1))

call is index 2. not 硬编码这里的任何假设,这应该被解析和检查 运行-次(一开始检查就足够了) .


或者,您可以在 RING 开始使用 AT+CLCC 轮询呼叫状态,直到呼叫不再列出。


或者您可以轮询 MC phone图书存储并检测更改。