如何从一个GSM调制解调器拨打语音电话到另一个调制解调器

3
我想使用GSM调制解调器从一个号码拨打另一个带有号码的GSM调制解调器。这是否可行,我应该使用哪个软件?
1个回答

1

是的,如果你只想发起和接收语音电话,这是可能的。但是你将无法使用软件处理音频。


最简单的方法是使用AT指令。假设终止调制解调器的电话号码为1234,则在起始端运行ATD1234;(请注意,分号是必需的,以便进行语音呼叫。如果没有它,调制解调器将进行电路交换数据呼叫)。
然后,在终止端有几种方法。最简单的方法是将S0寄存器设置为非零值,例如ATS0=2,这将在两个铃声后自动接听来电(有关详细信息,请参见V.250第6.3.8章“自动应答”)。
请注意,S0适用于所有类型的呼叫,因此可能会尝试回答数据呼叫。如果您想更加复杂一些,可以使用AT+CRC=1启用+CRING主动通知结果代码(有关详细信息,请参见27.007),然后编写一个程序来监视UR代码,并在收到+CRING: VOICE时手动接听电话,使用ATA命令。
除了对UR代码的监控外,所有AT命令都可以使用atinout程序轻松发送。采用最简单的方法是在终止端运行。
$ echo ATS0=1 | atinout - /dev/your_modem_device -
ATS0=1

OK
$

在编程方面,原始端运行。
$ echo 'AT1234;' | atinout - /dev/your_modem_device -
ATD123;

OK
$

如果我的目的是尽可能模拟更多的电话,我可以连接多少个USB调制解调器到一台计算机? - Herokiller
在Linux上,有256个/dev/ttyACM*设备的空间,每个手机分配两个设备应该可以提供128个调制解调器,尽管可能存在我不知道的其他内部限制。在Windows上,如果你运气不好,驱动程序非常不灵活,答案可能只有一个。 - hlovdal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接