NodeJS Asterisk ARI客户端接听所有来电[已关闭]

pdkcd3nj  于 2022-12-03  发布在  Node.js
关注(0)|答案(3)|浏览(174)

**已关闭。**此问题为not about programming or software development。目前不接受答案。

此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site相关,您可以留下评论,说明在何处可以找到此问题的答案。
昨天关门了。
Improve this question
如何在使用Asterisk节点ARI客户端应答呼叫后立即检测来电。Asterisk ARI是否有事件来检测来电,或者我们是否必须每隔几秒钟就发出请求来查看频道的应答状态?

mcdcgff0

mcdcgff01#

是的,ARI有“ARI事件”,您可以查找“NEW_CHANNEL”事件。之后进行重定向
但是,无论如何您都需要拨号计划支持,否则系统将在很短的时间内变得不受支持。

iyfamqjs

iyfamqjs2#

您不需要ARI,但需要AMI(Asterisk Manager Interface)。您不需要修改拨号计划,只需打开一个到AMI端口(默认为5038)的套接字,并侦听那里的事件。您可以找到一个列表,列出official documentation上所有发出的事件。
如果需要在应答事件之后检查呼叫,则可能需要侦听NewState event,使ChannelStateDesc属性等于Up
如果您使用Queues,则会更容易,因为您只需侦听AgentConnect事件。

cxfofazt

cxfofazt3#

只需简单地使用channelStateChange函数,有3种状态,其中一个频道可以是1-振铃2-向上(您可以在这里检测哪些已应答)3-向下

相关问题