问题标签 [asterisk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
308 浏览

php - 电话用户识别流程

我不知道从哪里开始,所以为可能是一个模糊的问题道歉。我想要一个像 elance.com 这样的电话验证系统,用户在接到电话时必须输入他电脑屏幕上显示的数字,或者他必须输入在电话上对他说的数字。

我需要这个,因为我希望我的应用程序验证用户在英国(并同时确认他的电话号码)。听起来很简单,我只需要一个应用程序来呼叫用户的号码并播放 mp3 文件(语音代码/数字)。但我不知道从哪里开始。我听说过一种叫做 Asterisk 的东西,并且我有一个 voip 帐户,但是我需要缺少的链接,就像如何将它们组合在一起一样。

0 投票
6 回答
2233 浏览

php - 使用星号 PHP 脚本匹配电话前缀的最快方法

并提前感谢您的帮助。

背景- 我正在编写一个 PHP 脚本,该脚本需要找出调用者试图到达的目的地。电话前缀是标识目的地的字符串。对于每次调用,程序必须找到与字符串匹配的最长前缀。例如,数字 30561234567 将与 305 匹配,但不会与 3057 或 304 匹配。如果存在 3056,它将是首选匹配。

在研究了几种数据结构之后,每个节点存储一个数字并包含指向其他 10 个可能选择的指针的树似乎是理想的。这可以实现为数组数组,脚本可以在其中检查 3,在那里找到一个数组,然后在该新数组上检查 0,找到另一个数组,依此类推,直到找到一个值而不是数组。该值将是目标 id(脚本的输出)。

要求- 性能是绝对关键的。检查这些前缀所花费的时间会延迟调用,并且每个服务器都必须处理大量调用,因此必须将数据结构存储在内存中。目前大约有 6000 个前缀。

问题- 每次服务器收到调用时都会运行脚本,因此数据必须保存在某种缓存服务器中。在检查了 memcached 和 APC(高级 PHP 缓存)之后,我决定使用 APC,因为它[更快][3](它是一个本地内存存储)

我遇到的问题是数组的数组可以变成多达 10 个数组深,并且将是一个非常复杂的数据结构,如果我将其作为对象添加到缓存中,则需要很长时间才能反序列化。

但是,如果我将每个数组分别添加到缓存中(使用一些逻辑命名结构可以轻松找到它,例如数组 3 的 3,数组 30 的 30,补丁后的数组的 305 等)我将不得不多次从缓存中获取不同的数组(每次调用最多 10 个),这使我经常访问缓存。

我会以正确的方式解决这个问题吗?也许还有另一种解决方案?还是我提出的一种方法优于另一种?

谢谢你的输入,

亚历克斯

0 投票
3 回答
1444 浏览

asterisk - Asterisk & IVR & 供应商

我正在尝试设置 IVR,或者更具体地说是使用 Asterisk 的自动接线员。除了简单的自动菜单系统之外,我不想要任何花哨的东西,而不是拨打分机(现在),如果按下 1,只需拨打同一条电话线 (POTS) 或按下 2 播放录音。运行 Asterisk 的服务器将是在一个偏远的地方。

我的问题是:

  • 这个设置可行吗?
  • 我需要注册 IAX VOIP 提供商吗?(不会拨打/接听 VOIP 电话)只会拨打普通的 POTS 电话。(其他国家可能)
  • 我需要什么硬件?远程服务器端和客户端(POTS 电话线)

任何意见将不胜感激。

谢谢

0 投票
2 回答
3000 浏览

php - 如何使用星号获取 Web 应用程序中任何呼叫的通话时长?

我已经使用 php 完成了一个网站,其中星号用作 Voip 系统。现在的问题是我想在“挂断”之后获取每个通话的通话持续时间。我搜索了很多并得到了一个名为 ${ANSWEREDTIME 的星号变量},但不知道如何从中获取价值以及如何启动它。请帮助并将我视为 PHP AGI 脚本的新手......!提前致谢。

0 投票
1 回答
746 浏览

java - 在 asterisk-java 中获取用户的活动频道

有没有办法使用 asterisk-java 获取 IAX 用户帐户的所有当前活动通道?

谢谢多米尼克

0 投票
1 回答
711 浏览

api - Asterisk Manager API - 扩展 -> ZAP 频道

有没有办法通过 Manager API 从分机号码中检索 ZAP 频道?

例如,这是我在运行“zap show channels”时看到的:

...

...

但 Manager API 仅返回以下内容(无扩展名):

0 投票
2 回答
1008 浏览

asterisk - QueuePause 中的接口名称是什么

任何人都可以告诉我 QueuePause 操作(Asterisk Manager Interface)的接口名称是什么。 http://astbook.asteriskdocs.org/en/2nd_Edition/asterisk-book-html-chunk/asterisk-APP-F-30.html

我尝试“SIP/2222”(连接的扩展),但它总是抛出“找不到接口”。我不知道如何获得正确的界面,请告诉我如何使这个动作起作用?

谢谢你。

0 投票
1 回答
1000 浏览

hook - 有没有什么办法可以让任何扩展程序的钩子闪现?

我喜欢按照此步骤进行电话会议。

  1. 2222拨打3333(电话)
  2. 3333接听电话(电话)
  3. 模拟按下闪光灯按钮到 2222 认为 AMI/?(软件)
  4. 通过 AMI(软件)发起对 4444 的呼叫
  5. 4444接听电话(电话)
  6. 模拟按下闪光灯按钮到 2222 认为 AMI/?再次(软件)
  7. 222 333 4444 同频道通话(电话)

我知道 AMI 不具备制作钩子闪光的确切功能。(一些技巧?)

是否有任何建议通过软件完成第 3 步和第 6 步,它可能是 AMI 或其他任何东西。

资源:

0 投票
3 回答
15331 浏览

asterisk - 替换 Asterisk Dialplan 中的字符

我想为 A 和 P 更改几个字符 * # 以使监视器文件名的字符更友好。我能找到的唯一解决方案是在拨号计划中自己做,但它会产生很多冗长的输出,并且不像我想要的那样高效(快速)。我会把它贴在这里,以防有人想使用它。但我正在寻找一个星号函数,我可以编译一些我可以用拨号计划调用的东西,比如 ${REPLACE(${EXTEN},*,a)} 并转换 exten **123**456***到 AA123AA456AAA。

0 投票
1 回答
3628 浏览

perl - 如何使用 Perl 在 AGI 中转发当前的 Asterisk 调用?

我有一个基于星号的 PBX,我已经能够从 PBX 的 Web 控制面板成功运行 AGI 脚本。

因为我从 Perl 调用 AGI(我都不知道)...
星号命令如下所示:

到目前为止,我不希望需要进行任何数据库查找等。我只想设置呼叫者 ID(我已经可以这样做) - 然后将呼叫转发到特定号码。

谁能告诉我如何使用上面显示的执行星号命令的 AGI/perl 样式转发当前呼叫?

仅供参考:我见过一些使用以下格式的示例:

但是,我不确定如何将其转换为 AGI/perl 格式。