问题标签 [asterisk-ari]

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

twilio - Asterisk 在超过 2 分钟后无法挂断

我正在使用 Asterisk AGI 来控制来自 Twilio 的来电

执行 STREAM FILE 命令后(播放一些音频文件),我想挂断频道。

我尝试执行 HANGUP 命令,如果通话持续时间 < 2 分钟,它就可以工作。

通话 2 分钟后挂断命令未唤醒。

有什么办法可以解决我的问题吗?

0 投票
1 回答
901 浏览

c# - SignalR, Push notification to connected clients based on event happening makes Hub disposed

I'm trying to push notifications to clients who have connected to SignalR Hub based on related events are happening in Asterisk PBX VOIP server using AsterNet ARI.

I can get events using DeviceStateChangedEvent class from AsterNet using an event handler and want to push notification to clients related to their devices' state changes.

Also, SignalR connection is working as well and welcome message is showing on client web page.

But the problem is while sending notification by SendAsync method to caller client, my Hub goes to be disposed and below exception raised:

System.ObjectDisposedException: 'Cannot access a disposed object. Object name: 'AgentHub'.'

Here is my Hub class which I've overridden the OnConnectedAsync() method to send welcome message and put event handler for listening events from PBX.

0 投票
1 回答
518 浏览

python - 如何使用 ari-py 从端点获取 sip 对等方列表

目前尚不清楚如何使用此库从 ari/endpoints 获取 sip peer 列表。

存储库中的示例显示了具有通道和桥接但不具有端点的操作。

JSON 响应可通过 localhost:8088/ari/endpoints/SIP 使用浏览器或 wscat 获得。

如何通过 ari 客户端获取?

0 投票
1 回答
509 浏览

asterisk - 如何将通道处理到 ARI 队列应用程序中?

我正在尝试使用 ARI 来创建一个能够为多个星号实例提供服务的队列。在一些基本文档之后,似乎 ARI 是这样做的方法。

我现在所取得的成就是一个简单的拨号计划,可以将来电发送到我的 stasis 应用程序。一旦呼叫进入停滞状态,就会触发 STASIS_START 事件,我认为这是我的队列的入口点(这是我的第一个问题)。接到电话后,我将一些记录放入 H2 数据库并开始在该频道上播放 moh。

只是为了演示,我立即尝试为自由代理创建另一个频道来处理呼叫。

问题是,当我创建频道时,我必须设置应用程序,如果我设置相同的应用程序,我将触发一个新的 STASIS_START 事件(H2 DB 中的另一个条目 - 这是不需要的),但在这种情况下,这是一个假的,因为我认为只有在新呼叫进入我的“队列”时才应该触发 STASIS_START。我想在进入 stasis 应用程序的“真正的外部调用”上放置一些变量,然后检查到达的调用是否有这些变量......但我担心我做错了可能从架构的角度来看.

这里最好的方法是什么?

另外两个奖励问题:

  1. 当我可以直接在那个频道上播放一些 moh 时,为什么我要使用桥接器为等待的呼叫者播放 MOH?是因为桥使我能够记录或捕获 DTMF 事件吗?

  2. 我的假设是否正确,当我m trying to call for queue agents (in order to match these with the waiting call in the queue) I should usePOST /channels/create combined withPOST /channels/{channelId}/dial instead of usingPOST /channels` 会使用起源?

0 投票
1 回答
188 浏览

asterisk - 在被叫方使用 Asterisk 中的 ARI 接听电话后 x 秒后挂断电话

我们使用 Asterisk 的 Dial 计划已经有一段时间了,现在我们决定改用ARI. 我想知道有没有办法在被叫方使用资源中的originate任何其他方法或任何其他方法接听电话后 x 秒后挂断电话。请注意,我可以使用带有或功能的拨号计划来做到这一点,但遗憾的是找不到在模式下使用此功能的方法。这是我的拨号计划的一部分/channelsARIL(x:y:z)S(duration)Stasisextensions.conf

0 投票
2 回答
103 浏览

asterisk - Asterisk 与自定义 ERP 的集成

我们的一位客户拥有一个 Asterisk 电话中心,并希望将其与我们的 ERP 集成。这个想法是,当电话转移到分机时,Asterisk 会调用 Oracle 数据库过程。这个 Oracle 过程有 2 个参数,传入电话号码和目标分机。

是否可以使用 Asterisk API 做到这一点?我在哪里可以找到文档或示例来做到这一点?

我已经阅读了官方的 Asterisk API 文档,但不明白它是如何工作的以及我可以从哪里开始搜索......

0 投票
1 回答
491 浏览

asterisk - 使用 AsterNET.ARI 执行 Asterisk 语音识别应用程序

我有一个示例拨号方案:

我需要使用 ARI stasis 应用程序执行语音识别,并使用 AsterNET.ARI 库在此应用程序中获得识别结果。

目前一切都已配置好,stasis 应用程序连接并接收事件:

但我不知道如何调用扩展应用程序。例如这个拨号方案字符串:exten => 1,n,SpeechBackground(beep)

我试过这样的事情:

但这会导致异常:Response status code does not indicate success: 400 (Bad Request).

我怎样才能正确地做到这一点?

0 投票
1 回答
581 浏览

asterisk - 如何在 Stasis 应用程序中获取已拨号码

我试图围绕 ARI 和 Asterisk,我的目标是从一个分机拨号到另一个。我从分机 5002 拨打了 5001。现在在 stasisStart 功能中,我想创建一个新频道,并使用拨打的号码 (5001) 并将“PJSIP/5001”传递给端点。如何获得拨打的号码?

拨号方案:

测试app.js

0 投票
1 回答
95 浏览

asterisk - Stasis 应用程序未激活 - 拨打分机时出现星号错误

收到此错误。

星号停滞应用程序未激活

拨号方案:

我的应用程序名称是 example.js,我检查以确保它正在调用该应用程序:

0 投票
1 回答
37 浏览

go - Google-speech-api 抛出 EOF 错误而不是执行音频转录

在我的项目中,我正在使用 golang 开发一个 websocket 服务器,它通过 ARI 控制星号通道,并使用 google-speech-api 在同一通道上执行实时音频转录。在连接时,我想将来自星号通道的音频保存到文件中,同时将音频发送到谷歌并获取成绩单。音频由星号 audiofork 应用程序发送,以便我可以在音频在另一个线程上流式传输时使用 ARI 操作通道。

问题是,当我向谷歌发送帧时,我从服务器发送的第一个和每个连续帧都会出现 EOF 错误,但是当我使用 sox 将保存帧的二进制文件转换为 wav 时,我会在通道上录制音频,所以帧通过 audiofork 发送没有损坏。谁能给我任何建议如何让 google-speech-api 与我合作?