我有一个运行在Chrome上的Web应用程序。现在,我需要与Asterisk PBX / FreePBX通信,以便在web应用程序中获取在PBX中呼叫者的呼叫者I。PBX位于一台独立的计算机中,与运行我的web应用程序的其他计算机连接在同一网络中。
这怎麽可能?我是否应该创建一个Java小程序来通过SIP以某种方式获取呼叫者ids?或者我应该使用Javascript来查询SIP数据?
我需要知道如何和如果这是可能的,以便我将能够雇用正确的开发人员。谢谢
发布于 2014-10-16 23:00:28
您应该了解一下使用Asterisk Manager Interface (AMI)。它可以生成事件,也可以响应命令。
http://www.voip-info.org/wiki/view/Asterisk+manager+API
有许多编程语言的包装库: PHP、Node、ASP.NET等等。由于您没有详细说明您的需求,这就是我所能回答的!
虽然从技术上讲,您可以在Javascript中执行此操作,但您将在网页上暴露您的PBX地址和Manager用户/密码。通常情况下,您需要开发一个代理:一个运行在服务器上的应用程序,它充当您的PBX和web用户之间的代理。
PBX <--管理器API -->服务器端代理<-> Web应用
发布于 2014-10-24 09:38:24
如果你使用的是asterisk 12或更新版本,你也可以使用ARI (asterisk restful interface)。这里有一个Java包装器:https://github.com/l3nz/ari4java
有关API文档,请参阅:https://wiki.asterisk.org/wiki/display/AST/Getting+Started+with+ARI
https://stackoverflow.com/questions/26404277
复制相似问题