我最近一直在研究AT命令。当没有订购短信和语音通话时,我很难找到自己的号码(在某些特殊情况下,sim用于实验室试验)。有没有办法用AT命令知道自己的电话号码。 对于airtel(印度)来说,自己的msisdn号码的ussd代码是* 121 * 9#。因此,如果我拨打ATD * 121 * 9#,我是否会在AT命令用户界面上显示该消息。或者是否有其他方式来了解自己的电话号码?非常感谢。
答案 0 :(得分:9)
AT+CNUM
应该返回您自己的电话号码。
答案 1 :(得分:5)
AT+CNUM
会返回与订阅者相关的MSISDN。
但在很多情况下,它只会返回确定。这是因为+ CNUM命令读取为SIM自己的电话号码保留的特殊电话簿存储区域。服务提供商可能会也可能不会为您存储电话号码。
如果您想使用+ CNUM命令读取MSISDN并且当前未编程,请按照以下步骤操作(但请注意,几乎所有其他设备都有自己的AT命令规则,因此它可能因设备而异,但概念将相同): 在+ CNUM?
+ CME错误:未知
在+ CPBS? - 显示活动的电话簿存储
+ CPBS:" SM",250,250
行
at + cpbs = ON - 选择活动电话簿存储到MSISDN列表
行
在+ CPBS? - 显示活动的电话簿存储,
+ CPBS:" ON",0,3 - MSISDN列表为空
行
在+ CPBW =,&#34 + 918723976327" - 输入您自己的MSISDN
行
在+ CPBS? - 显示活动的电话簿存储,
+ CPBS:" ON",1,3 - MSISDN列表有一个项目
行
at + cpbr = 1 - 读取MSISDN列表,位置1
+ CPBR:1," + 918723976327",145,"" - 拥有MSISDN
行
在+ CNUM
+ CNUM:," + 918723976327",145 - 拥有MSISDN
希望这有帮助!
答案 2 :(得分:2)
如果其他一切都失败了,另一种选择是尝试向自己发送短信。就我而言,它完美无瑕。
AT+CMGF=1
OK
AT+CMGS="my mobile number"
> This is a test.
>
+CMGS: 119
您应该以 CTRL Z 结束短信。
答案 3 :(得分:1)
来自标准AT命令集的信息,可从3GPP
获得AT + CNUM返回订户号码 - 但此AT命令的实现是可选的。
您也可以使用AT命令进行USSD交易,例如: + CUSD TS 27.007的第7.15节及相关命令,以获取用户号码。
答案 4 :(得分:0)
AT + CUSD = 1
设置命令允许控制非结构化补充服务数据(USSD> 3GPP TS 22.090)。
0 - 禁用DTA中的结果代码显示
1 - 在DTA中启用结果代码显示
2 - 取消正在进行的USSD会话(不适用于读取命令
AT + CPBS =" ON"
设置命令选择电话簿存储器存储,将由其他电话簿命令使用。
" ON" - SIM自己的号码(MSISDN)电话簿(+ CPBF不适用于此存储)。
AT + CPBR = 1
执行命令从使用+ CPBS选择的当前电话簿存储器中返回位置编号范围内的电话簿条目。如果省略,则仅返回位置。
AT * 101#
的回复:
+ CUSD:2,"",15
+ CUSD:2," 05551234567",15