【问题标题】:Asterisk: How can I filter the Dial event only to my extension星号:如何仅将拨号事件过滤到我的分机
【发布时间】:2014-06-26 10:53:22
【问题描述】:

我正在使用 Asterisk.NET 在 C# WinForms 中制作 Asterisk 客户端。 我的客户只收听一个分机。我们可以查看呼叫、拒绝或转移等到我的分机的呼叫。我需要源通道来转移呼叫,源通道只能从拨号事件中获取。最近,我注意到每次连接到服务器的任何分机开始拨号时都会发生拨号事件。我想过滤掉它,只有呼叫只打到我的分机。

    void manager_Dial(object sender, DialEvent e)
    {

        CallingInfo.src_channel = e.Channel;
    }

e.dialString 给了我目的地分机号码;但我不知道它是否根据服务器状态变为空。此外,如果有一些外部呼叫来我,我不会得到拨号事件或源频道会发生什么,然后它就无法转移。对 ?

【问题讨论】:

    标签: c# winforms asterisk asteriskami


    【解决方案1】:

    你不能。

    Asterisk 不允许这样的功能。

    您可以阅读所有内容并按您的代码所需的扩展名进行过滤。您可以编写守护程序,它将在服务器上过滤并发送到您的应用程序只需要的守护程序。

    原因:星号是pbx,所有不是pbx的功能都是有限的。

    您还可以在拨号方案中发送 UserEvent 以及拨号前和应答后所需的任何字段,仅捕获 UserEvent。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多