[asterisk-users] Call preemption
Jean Aunis
jean.aunis at prescom.fr
Thu Nov 9 04:02:48 CST 2017
>> The task itself sounds like a job for an AGI script to me... check
>> for amount of calls, if 10, hangup one.
>>
>> But how do you determine the priority of a call?
>>
>>
>> Am 07.11.2017 um 12:21 schrieb Jean Aunis:
>>> Hello,
>>>
>>> Has anyone already implemented some sort of call preemption in
>>> Asterisk ? I am trying to achieve something like this :
>>> [...]
>>>
>>> Does anyone have an idea ?
>
> An AGI using AMI to do 'core show channels concise', parse the output,
> pick your victim, AMI to do 'channel request hangup x'
>
> Note that there are 'race condition' opportunities.
>
Thank you for your answers. In this case the priority would be
transmitted in the SIP signalling with the SIP "Priority" header, but in
the future it could be determined by other means (for instance, by
searching the caller in a list of privileged numbers).
The problem with "core show channels concise" is that it will display
all the channels currently existing in Asterisk, whereas I want to pick
the channel to hangup in a subset of the existing channels. For example
: I don't care about the number of channels dedicated to "internal"
calls, but I want to limit the number of calls to 10 for a SIP trunk A,
and to 15 for a SIP trunk B.
I'm currently using GROUP and GROUP_COUNT to gather my channels in
groups, which already allows me to limit the amount of calls to a given
SIP trunk. Ideally, I would like to pick a channel to hangup in a
particular group. But if there is a mechanism better than groups to do
this, I'll take it.
More information about the asterisk-users
mailing list