[Freeswitch-users] fifo callers when > call limit until limit no longer exceeded

Royce Mitchell III royce3 at gmail.com
Wed Dec 6 16:23:26 UTC 2017


How do I configure fifo to transfer a call out whenever a channel opens up.

I'm sending the calls through an Adtran which has a limited number of
channels available and we don't want this one DID to use all the channels
but we don't just want to USER_BUSY the calls either. We want to leave them
in a fifo listening to music until a channel becomes available to allow the
next call through. How do I configure the fifo to allow the next call
through once there are no longer 5 calls (for example) already sent to the
Adtran for that DID?

I was thinking I could execute something on orbit, but then it won't be a
fifo any more. We want them exiting the fifo in the order they enter. Also,
the orbit could mean they wait in the fifo longer than they should, so I
think that's definitely not the right approach.

I know I could write a lua script that monitors the fifo and transfers out
the next available caller, but I was hoping for a built-in way to do this.



Royce Mitchell, IT Consultant
ITAS Solutions
royce3 at itas-solutions.com

On Wed, Dec 6, 2017 at 5:07 AM, Vallimamod Abdullah <vma at vallimamod.org>
wrote:

> Hi,
>
> With the limit app, you can also send the call to a different extension
> instead of rejecting it with user_busy:
>
> <action application="limit" data="hash inbound ${destination_number}
> ${call_limit} queue_ext XML queue_context"/>
>
> The over limit calls will be transferred to the queue_context context with
> queue_ext extension.
>
> But for your use case, I think the limit is no more necessary, you can
> directly use mod_fifo.
>
> Best Regards,
> --
> Vallimamod Abdullah
> SIP Solutions
> vma at sipsolutions.fr
> .
>
>
> > On 6 Dec 2017, at 04:22, Royce Mitchell III <royce3 at gmail.com> wrote:
> >
> > I am currently using hash to limit the number of calls that can get
> through on a specific destination_number and giving any excess a USER_BUSY,
> something like this:
> >
> > <action application="limit" data="hash inbound ${destination_number}
> ${call_limit} !USER_BUSY"/>
> >
> > However, now they're asking me to queue those calls with a recording and
> let them through in order as the call_limit reduces back down and then send
> the call to a different destination if it stays in that queue for a minute.
> >
> > In other words, if call_limit is 5, the 6th call would get queued until
> one of those first 5 calls clears. If none of the 5 calls clears before a
> minute has elapsed, I want to transfer that 6th call to a different
> destination. If a 7th call enters the queue, the 6th call should be the
> next to get a channel because it has been in the queue longer.
> >
> > I'm digging through the documentation and I haven't been able to figure
> out a way to do this so far. It seems like maybe using fifo in combination
> with limit would be in order, but I can't think of how to make them work
> together to accomplish this.
> >
> >
> >
> >
> > Royce Mitchell, IT Consultant
> > ITAS Solutions
> > royce3 at itas-solutions.com
>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://confluence.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20171206/c397573a/attachment.html>


More information about the FreeSWITCH-users mailing list