我需要在asterisk + adhearsion中实现以下用例,并且不确定如何做到这一点
当客户来电时。如果代理忙,我检查可用代理列表我需要将呼叫置于超时队列中。如果代理在指定的超时时间内没有空闲,则呼叫会挂断,否则呼叫将被路由到代理。
有关如何实施此流程的任何想法吗?
答案 0 :(得分:2)
有几种方法可以实现这一点,您的方法在很大程度上取决于您如何知道代理是否可用?我建议的是:
为了确定哪些代理可用,您需要某种代理列表及其关联状态,您在接听电话时会更新这些代理。或者,您可以尝试直接从asterisk extensions.conf文件中获取部分信息,如果您使用的是PIAF,则可以尝试从数据库中获取。
Adhearsion网站上提供了您需要编写类似内容的大多数代码示例。 http://www.adhearsion.com/docs
现在更好的方法是使用ElectricSlide呼叫队列模块。最近已经做了很多工作,现在它已经是一个非常可靠的呼叫队列了。
https://github.com/adhearsion/electric_slide/