我有一个项目来编写一个应用程序来拨打电话,语音邮件与星号服务器交互。我搜索了有关Asterisk AGI的信息。我在 Asterisk 服务器和 Android 应用程序中做什么?
5 回答
AGI 与此无关。您需要一个适用于 Android的 SIP 库,例如Android 2.3 中可用的库,或第三方库。然后,您将使用该库来构建您的应用程序并连接到 SIP 服务器。
要让 Asterisk 为您发出呼叫,您所要做的就是将一个文本文件放到 Asterisk 服务器的输出假脱机目录中。Asterisk 会在您拨打电话后立即拨打电话。
将文件放在以下位置:
/var/spool/asterisk/outgoing/
Channel:SIP/Phonenukmber@YourSipProvider
Context: context in your dialplan to place this call when it is answered
Exten: extension in that context to place call on
Priority: priority to start on, normally 1
Callerid: number to use when placing the call
您可以在此处传递其他几个值以获取更多信息: http ://www.voip-info.org/wiki/view/Asterisk+auto-dial+out
到目前为止,这是一种不需要与 Asterisk 进行任何编程交互的简单方法。
如果您需要从 android 手机呼叫,请搜索 SIP 库或 sip softphone for android。
如果您需要从 android 控制星号调用,您必须检查 AMI(管理器接口)或在您的星号服务器上编写服务器端 API 并在您的应用程序中使用它。
您安装服务器,然后编写与 SIP 通信的客户端应用程序。使用这些开源项目中的任何一个来快速入门。
只需安装 Asterisk 并创建一些 SIP 对等体。要拨打 PSTN,您需要有 VOIP 中继或模拟中继或 ISDN 中继。
完成上述操作后,从 Android 应用市场为您的 Android 手机下载 3cx 软电话,并注册在 Asterisk 中创建的任何 SIP 扩展。
要拨打电话,您需要根据您的要求编写拨号方案。对于新手,您可以参考 Google 免费提供的“Trixbox Without Tears”一书。