Cascade dialplan for dialing emergency engineers as quick as possible

Building on the excellent ideas presented already, you could create a feature code you can prefix extension numbers with that inserts the delay. Add this to extensions_custom.conf:

[from-internal-custom]
exten => _**XXX*XXXX,1,Noop(Entering user defined context from-internal-custom in extensions_custom.conf)
exten => _**XXX*XXXX,n,Noop(ext: ${EXTEN:-4} delay: ${EXTEN:2:3})
exten => _**XXX*XXXX,n,Wait(${EXTEN:2:3})
exten => _**XXX*XXXX,n,goto(from-internal,${EXTEN:-4},1)

If you want to dial extension 5002 with a leading 10 second delay, you would dial **010*5002

-- Executing [**010*5002@from-internal:1] NoOp("SIP/5002-00000004", "Entering user defined context from-internal-custom in extensions_custom.conf") in new stack
-- Executing [**010*5002@from-internal:2] NoOp("SIP/5002-00000004", "ext: 5002 delay: 010") in new stack
-- Executing [**010*5002@from-internal:3] Wait("SIP/5002-00000004", "010") in new stack
-- Executing [**010*5002@from-internal:4] Goto("SIP/5002-00000004", "from-internal,5002,1") in new stack

**snip**

Now add the above dial string to your queues instead of a plain ext number. Delay must be 3 digits exactly in seconds, extension number must be 4 exactly. Edit to suit.

edit - Thinking further, you probably need a line to block local extension VM from picking up the call. Should prob have a line like this before the goto:

 exten => _**XXX*XXXX,n,Macro(blkvm-setifempty,)
1 Like