我们有一个门户,客户可以在其中设置一个号码的最大并发呼叫转移。首先呼叫到达我们的 IP,然后我们将呼叫转发到一些号码(由客户端为其设置)。我们必须确保,转发的呼叫小于或等于一个号码上设置的最大并发呼叫限制。我们使用星号作为电话软件,使用 phpagi 作为 agi 库。
在通过我的 agi 脚本转发新呼叫之前,如何在某个号码上找到已经存在的并发呼叫计数。
请提出一个正确的方法来做到这一点。
是否有任何内置方式,当已经达到特定数量的并发呼叫(已经为其设置)时,它会自动限制进一步转发?
我们有一个门户,客户可以在其中设置一个号码的最大并发呼叫转移。首先呼叫到达我们的 IP,然后我们将呼叫转发到一些号码(由客户端为其设置)。我们必须确保,转发的呼叫小于或等于一个号码上设置的最大并发呼叫限制。我们使用星号作为电话软件,使用 phpagi 作为 agi 库。
在通过我的 agi 脚本转发新呼叫之前,如何在某个号码上找到已经存在的并发呼叫计数。
请提出一个正确的方法来做到这一点。
是否有任何内置方式,当已经达到特定数量的并发呼叫(已经为其设置)时,它会自动限制进一步转发?
您可以使用 GROUP 和 GROUP_COUNT 拨号方案功能。
在 AGI 中,您可以通过
$agi->set_full_variable("new_var",'${GROUP_COUNT(group_name)}')
pro-sip*CLI> core show function GROUP
-= Info about function 'GROUP' =-
[Synopsis]
Gets or sets the channel group.
[Description]
<category> can be employed for more fine grained group management. Each channel
can only be member of exactly one group per <category>.
[Syntax]
GROUP([category])
[Arguments]
category
Category name.
[See Also]
Not available
pro-sip*CLI> core show function GROUP_COUNT
-= Info about function 'GROUP_COUNT' =-
[Synopsis]
Counts the number of channels in the specified group.
[Description]
Calculates the group count for the specified group, or uses the channel's
current group if not specifed (and non-empty).
[Syntax]
GROUP_COUNT([groupname][@category])
[Arguments]
groupname
Group name.
category
Category name
[See Also]
Not available