问题标签 [asteriskami]

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 回答
1250 浏览

asterisk - Asterisk AMI:确定通道是否持有

我试图找出一种方法来可靠地检测通道是否通过 AMI 保持。我有两个问题:

  1. 在 Asterisk 1.8 上,当频道被保持时,我会收到 MusicOnHold 事件。这是一个可靠的事件吗?可以以不发送此事件的方式配置 Asterisk 吗?

  2. 早期版本的 Asterisk (1.6.0) 不会为 MusicOnHold 发送事件。事实上,当我保持通话时,我得到的只是一个 ExtensionStatus 事件。是否有另一个我可以启用的事件或我可以发送的命令来确定频道是否处于暂停状态?

我知道这些是旧版本的 Asterisk,但我们的客户仍在使用它们。

0 投票
3 回答
2172 浏览

php - 用于使用星号的 php 编程

我在 AMI 中编写了一些 php 代码来使用星号命令。

我不知道Asterisk Manager Interface (AMI)Asterisk Gateway Interface (AGI)之间有什么区别,而女巫一个更适合我的计划。

我打算打电话给聚会用户,他们的号码是我的网络面板。我们有一些接线员,他们可以通过客户端软电话通过点击他们的号码呼叫当事人用户,因此他们仅限于拨打列出的号码(并且不能拨打其他号码)。

如何设置这些权限?以及如何通过 php 将调用的记录存储在星号(IVR 录制的语音)中。我应该使用Asterisk Manager Interface (AMI)还是Asterisk Gateway Interface (AGI)

0 投票
2 回答
3405 浏览

php - 星号起源不起作用

我正在尝试使 vtiger 与星号 1.6(freepbx 服务器)一起工作。我已经设法连接到星号管理器接口 (AMI) 并对其进行写入。但由于某些奇怪的原因,origin 不起作用。我在用 -

我在拨打直接电话后尝试阅读来自 AMI 的响应,并且它在频道之后总是有一个随机数。例如 -

这可能是一个问题还是我在这里遗漏了什么?任何指针都是最有帮助的。很乐意提供任何细节。

0 投票
1 回答
6414 浏览

php - 使用星号 queue_log 表或 AMI 检索/制作星号队列的统计信息

使用 PHP 星号管理器界面,我可以通过发出 QueueStatusAction 来查询星号以获取当前队列状态。这为我提供了有用的统计数据,例如:

  1. 保持时间
  2. 已放弃通话
  3. 通话完成
  4. 平均通话时间。

据我了解,这些统计信息仅针对服务器上星号进程的生命周期计算,并且一旦进程停止就会丢失。

在我的应用程序中,我想显示关于最近 {day|week|month|year} 队列的上述统计信息。有没有办法通过星号管理器接口或在其之上的一些抽象来检索历史静态数据,还是由我来编写一种方法来从星号 queue_log 表中的数据中生成这些统计数据?

如果有人这样做或对如何解决这个问题有一些想法,请分享。

0 投票
1 回答
622 浏览

asterisk - freepbx 和 java 服务器交互

我想做freepbx和java web server的集成。

  1. 将有一个 IVR。
  2. IVR 会询问来电者年龄
  3. 这个年龄应该通过一些网络服务器输入到数据库中。

1和2可以在freepbx中完成。不确定数据(在键盘上按下的年龄)将如何重定向到其他服务器。

我需要通过 admin ui 在 freepbx 中进行哪些配置?获取年龄信息后,我是否需要任何特定类型的服务器来处理来自 freepbx 的请求?

asterisk-java 对此有何帮助?

0 投票
1 回答
9301 浏览

android - 如何在 HttpURLConnection 中为 ANDROID 使用 Cookie?

我正在尝试为 Asterisk 接口创建一个应用程序,配置设置已经正确完成,因为我已经仔细检查了它。

我无法从 Asterisk 服务器访问配置文件的原因似乎与连接有关。我需要使用 cookie 连接到登录会话的同一实例。

但到目前为止我无法正确使用 Cookie 需要一点帮助。

我应该通过按button1(bt1)登录并通过按button2(btn2)获取配置文件。

我可以确定我正在连接到以前的登录会话。但是现在如何发出新的命令呢?

03-28 10:02:15.861: V/Execute(4261): 执行 url: http://192.168.8.x:8088/asterisk/rawman?action=login&username=admin&secret=admin123 03-28 10:02:18.871 :V/异常执行后台(4261):异常:已连接 03-28 10:02:23.651:V/执行(4261):执行 url:http://192.168.8.x:8088/asterisk/rawman ?action=getconfig&filename=sip.conf 03-28 10:02:26.691:V/异常执行做后台(4261):异常:已连接 03-28 10:02:26.721:D/dalvikvm(4261):GC_CONCURRENT 已释放226K,8%免费7430K/8007K,暂停24ms+3ms,共61ms

0 投票
1 回答
2580 浏览

asterisk - 如何使用 WireShark 以文本格式捕获 Asterisk 的 AMI 和 AGI 流量?

我正在开发一个基于 Asterisk(最流行的开源 PBX 解决方案)的电话解决方案,我使用 AMI 协议将我的逻辑注入到它的拨号计划中,并使用 AGI 监听 Asterisk 的事件。

现在我需要在我的应用程序中管理参与转移(而不是盲转移),为此,我确实需要在某处以文本格式记录 AMI 和 AGI 的流量,以便我可以看到后面发生了什么场景。

我想到了 WireShark,因为它是目前最强大的流量捕获工具,但我无法让它发挥作用。我不知道要捕获哪个端口(AMI 在星号端的端口 5038 上工作,但我需要在我的 C# 应用程序服务器中使用 WireShark,而且我不知道这端哪个端口忙)。我无法创建过滤器来捕获仅与 Asterisk 相关的事件。

我也不知道如何使 WireShark 以文本格式记录流量,而不是显示那些根本不可读的二进制数据(可能是十六进制数据)。

我知道 AMI 协议非常简单,就像 HTTP 一样,它是一个基于文本的消息传递协议。因此,我想我应该能够看到它的文本日志。

有人对此有任何想法吗?

0 投票
1 回答
973 浏览

asterisk - Asterisk AMI - UpdateConfig 不工作

我们正在使用 Asterisk (8.1.11)/FreePBX (2.10.1.9)。我正在尝试使用 AMI 修改 voicemail.conf。

我尝试修改的 voicemail.conf 中的行如下所示:

我正在尝试修改通知电子邮件地址。
使用 telnet 到端口 5038 我输入以下内容:

这导致:

这具有创建文件“vmtest.conf”的效果,但不会发生更新。我尝试添加新类别、删除变量、附加新变量——所有报告都成功了,但没有真正改变。

在这一点上,我没有多少头发可以拔了!有什么建议么?

0 投票
1 回答
4215 浏览

node.js - AMI 上的 Asterisk 11 活动呼叫事件

我想拥有的数据:Num From、Num To、Duration、Codec、Context、Hold status

ofc 实时更新

我使用 node.js + nami

获取此信息的最佳方式是什么?

尝试使用动作状态(),但这给了我关于调用的不完整信息,如果我每隔一秒就运行一次浏览器死机。

这是我所拥有的:

服务器端

0 投票
1 回答
2181 浏览

asterisk - 通过 AMI 通话期间的通话时长

如何在通过 AMI 通话期间获取通话时长?类似 Status() 或 CoreShowChannels() 但需要在接听电话后几秒钟