我想使用GSM调制解调器对电话号码进行语音调用,播放录制的消息,等待数字被按下然后断开调用。系统需要知道线路是否繁忙,用户是否应答以及用户按下了哪个数字(如果有)。如果在30秒内未按任何操作,则该行应下降。如果用户在问题完成前按数字,则声音应停止(用户不必等待)。同样,如果系统可以处理无效数字(播放“无效数字”消息,播放原始消息并等待输入)会很好。并行进行多个调用会很好,但是我想这不可能吗?
我发现this article很好地解释了底层接口(interface)。但是,这个问题更为实用-您会推荐哪个库和哪个GSM调制解调器?操作系统是Linux,调制解调器可以是RS232或USB。我更喜欢Python,但是C(++)也可以。
顺便说一句:这不是电话销售,它是一个通知系统。没关系...;)
编辑:我了解到该系统通过关键字“IVR”(为将来的搜索者添加)而闻名。
最佳答案
调制解调器通常用于数据传输,但听起来好像您实际上是在传输语音,尽管预先录制了语音和音调。
尽管您可以使用语音调制解调器的额外语音功能来实现此目的,但是使用GSM到VoIP网关实际上可能会更容易,除非出于某些原因实际需要调制解调器数据功能。
您可以将VoIP到GSM网关的低成本或免费开源PABX(例如Asterisk)连接起来,然后使用它来构建您的特定应用程序。
某些网关甚至支持多个SIMS,因此您可以将SIM卡定位为给所调用号码提供最低调用率的SIM卡-例如,如果您知道要调用的号码在特定运营商上,则该运营商可能会提供免费的“在SIM卡之间进行网络通话。如果您希望拨打大量电话,这可能是一个优势。
如果在网络上搜索“VoIP GSM网关”,您将找到一些示例。
以下链接也提供了概述:
http://www.voip-info.org/wiki/view/VOIP+GSM+Gateways
关于gsm - 通过GSM调制解调器进行语音通话,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7107572/