使用Python / Flask访问AMI以计算呼叫持续时间并限制

时间:2016-12-07 06:19:06

标签: python flask asterisk

Hello Stackoverflowers,

目前我使用Python连接到AMI,一切正常。我可以看到实时通话,挂断电话

但我有一项任务要完成,每次拨打电话我都可以看到这些电话的持续时间。现在我必须从用户的MySQL表列中添加的余额中扣除持续时间。

所以当(balance-current_duration)< 60秒然后IVR应该告诉用户他或她还剩1分钟。

您认为这可以使用Python / Flask脚本实现吗?此外,脚本必须异步运行,无需在激活该功能之前转到页面。

1 个答案:

答案 0 :(得分:0)

您必须使用AMI界面。然后,您将可以访问用于连接呼叫支路和连接挂断的事件。此外,当需要时,您将能够使用AMI重定向将呼叫转移到IVR(这将断开当前呼叫)。

Flask不是解决此问题的好方法。最好从头开始编写自己的AMI客户端解决方案或使用一些库。图书馆可能会限制您的选择。 AMI协议很容易在TCP套接字上实现文本读/写(类似于HTTP)。