U - Execute via Gosub the routine x for the called channel beforeĬonnecting to the calling channel. Luckily for us, we can use Asterisk Pre Dial Handlers or Hooks for the Dial Application, more specifically the U option, that issues a GOSUB to a specific context right before bridging the channels (i.e: the call is answered, and we get to execute a custom dialplan code before the channels get connected to each other): What about knowing when to exactly pause and unpause members? How can we actually detect that a call is in the ringing or answer state? UnPauseQueueMember (that will restore the original behavior and allow incoming calls to the queue member).PauseQueueMember (that will temporarily disable all calls from queues that an agent is member of).So the objective here is to somehow manipulate this dial command and block incoming calls (from a queue) to this agent only when the outbound call is answered, but not while the call is ringing.īlocking or allowing calls to an agent that is a member of a queue can be done in Asterisk by using the dialplan commands: This is a standard procedure and while your mileage may vary, your dialplan would look pretty much like this: So let's say that when an agent places call, the extension is handled in a Context defined in a specific part of the Asterisk Dialplan and then the Dial Application is used to actually tell asterisk to create the outbound call. When an agent places a call, they can still receive incoming calls, but ONLY if the outbound call hasn't been answered yet (i.e: RINGING state) This one doesn't need anything special other than setup the queue and agents as a queue member as usual. When an agent is free (i.e: no outbound/inbound calls), they can either place calls or receive incoming calls from the queue In this article we're going to see how to fulfill these particular requirements right from the Asterisk Dialplan with no If an agent places a call and this call is answered, they can't receive inbound calls from the queue until the other call finishes.If an agent receives a call from the queue while his/her placed call is ringing, this outbound call MUST be hangup automatically.When an agent places a call, they can still receive incoming calls, but ONLY if the outbound call hasn't been answered yet (i.e: RINGING state).When an agent is free (i.e: no outbound/inbound calls), they can either place calls or receive incoming calls from the queue.Nothing new there, but there are some corner cases that are very Take calls that come from an Asterisk Queue. Their agents can place calls and they can also One of our clients has a call center with a particular business logic. Use case: Having simultaneous inbound and outbound calls with Asterisk Queues
0 Comments
Leave a Reply. |