External Queue Agents

On FreePBX 15/Asterisk 16

I have been trying to host a call center queue that exclusively uses PSTN+mobile phones.
I need it to:

  • Call Confirm for the agent answering the call.
  • Allow for attended and blind transfers.
  • Allow the next queue call to come to the agent when they transfer the queue call onwards.

I have been successful for 2 out of the 3 using a custom extension and modifying the Advanced>Dial string to:
local/${MobileNumber}@from-internal

The only challenge left is that call confirm will not work this way since it is dialing the extension. I have tried to enable call confirm on the queue and while that does add call confirm to the flow, it breaks transfers.

When trying to attended or blind transfer to the next number, the call rings and the transfer to party answers, but they receive the call confirm prompt to press 1. When they do press one it says the call has been answered elsewhere.

I feel like if there could be call confirm on the custom extension globally, this might work. Any ideas or alternate approaches?

I’m not sure if the dial options are honored when using a custom dial string. If it is, then you can send the channel to a custom context before answered to prompt the agent to press 1.

Thinking about how I’d want to start to approach this, and the only thing I can think of would not scale.

If the call is transferred from an extension to another extension and that extension is not available, make CC an option for all calls to the FMFM component. This would mean changing your current model to add a level of “real extension” on top of the custom extension. If you did that and everyone was “trained” to only use extensions, you could probably get pretty close.

The hard part is the transfer. If Asterisk is staying in the call path, you’re OK, but if the transfer to the cell/PSTN number drops the call out of Asterisk. no amount of holding your tongue just right is going to make transfers work right…

Unfortunately in this use case 99%+ of the transfers will be external (outside of Asterisk to Avaya). I am thinking we can do something on the Avaya side, based on the number it is coming from, but I am trying to keep the solution self-contained into Asterisk/FreePBX. I am thinking this needs a bug report (which I will file), but thanks for the ideas. Always helps to toss things around.

The Asterisk agent (extension) has the call, but needs to transfer to a non Asterisk number, how would I get the context in between the Asterisk agent dialing ## or *2 and the far end answering the call?

I don’t see how this will be an issue. Your dial string is:

local/${MobileNumber}@from-internal,,U(context^exten^pri^args) 

and when you transfer, it’ll call from-internal,${NumToTransferTo},1

1 Like

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.