来电
电话会在收到来电时为通话分配所有必要的资源(通过调制解调器网络处理代码的呼叫控制部分)。例如,您可以在AT+CLCC 命令中看到它具有以下状态值
0 active
1 held
2 dialing (MO call)
3 alerting (MO call)
4 incoming (MT call)
5 waiting (MT call)
所以即使在来电时语音路径没有完全建立好,也肯定有电话要拆。
挂断电话
是的,这两个命令应该是正确的(虽然你不需要数字参数,只要ATH 应该没问题),并且你应该能够挂断来电,即使它还没有被应答。
虽然我认为这在您的情况下不太可能,但请注意有 AT+CVHU 命令可以配置 ATH 行为,并且可以配置为忽略 ATH。但是,AT+CHUP 应该始终断开连接1。
我是aware 可能使用的另外两个命令,AT+CHCCS(挂断当前通话)和AT+CHLD。
正在浏览27.007 我还看到了可能使用的 AT+CLCK。它提到了"AI" BAIC (Barr All Incoming Calls),您可以将其关闭然后重新打开,尽管网络可能不支持此功能,或者即使支持也可能仅适用于以后的呼叫。所以这更像是一种骇人听闻的方法,但是该命令还列出了
"NT" barr incoming calls from numbers Not stored to TA memory
"NM" barr incoming calls from numbers Not stored to MT memory
"NS" barr incoming calls from numbers Not stored to SIM/UICC memory
"NA" barr incoming calls from numbers Not stored in Any memory
这听起来非常接近您想要的(TA、MT 和 SIM 内存是对电话簿存储的引用,参考 AT+CPMS(参见 27.005))。这些值是指调制解调器的本地行为,与网络无关。
因此,如果您只是将白名单存储在调制解调器的电话簿中,您可能不需要再做任何事情。
作为最后一种选择,您可能会尝试开始一个新的拨出电话(可能是一个不应答的号码(您自己的号码应该可以工作)),希望丢弃来电(或者它可能将状态更改为等着吗?不确定)。
1
除了可能被禁用之外,ATH 可能实际上不会结束通话,而只是在交替通话中改变模式,尽管这是一个相当模糊的功能,可能在今天的大多数网络中被逐步淘汰。但 AT+CHUP 保证断线。