Skip to main content

Queue Timeout to IVR

Posted by Drew on Wed, 11/18/2009

Currently, all calls into the following queue if not answered or if there are no agents logged in, the caller hears MOH indefinitely. How to I create these two scenarios in the following queue?
1- When a call comes into this queue and is not answered in 45 seconds, it goes to an IVR
2- If there are no agents logged in, the call goes straight to an IVR
(I thought these would be TL options not * options but maybe I am missing something)

* 1.4.18/TL 6.0.1.75

queues.conf
[Queue-Customer]
maxlen=10
reportholdtime=no
periodic-announce-frequency=60
strategy=ringall
joinempty=no
announce-round-seconds=10
retry=30
announce-holdtime=no
announce-frequency=10
timeout=10
musicclass=default-Customer
autofill=yes
ringinuse=no
member => Agent/1901
member => Agent/1902
member => Agent/1903
member => Agent/1904
member => Agent/1905
member => Agent/1906
member => Agent/1907
member => Agent/1908
member => Agent/1909
member => Agent/1910

extensions.conf
;version=5.0
[general]
static=yes
writeprotect=yes
priorityjumping=no
autofallthrough=no

[globals]
OFFICE_OPEN_OVERRIDE=
#include trunks.include
DIALOUT=9
INTERNATIONAL-PREFIX=011
RINGTIME=30
TL_DASH=-
TL_MULTI=1
OPERATOR=0
RECORDING_FORMAT=wav

[from-outside]
exten => _X.,1,Wait(1)
exten => _X.,n,Set(__INCOMINGCLI=${CALLERID(num)})
exten => _X.,n,Goto(from-outside-redir,${EXTEN},1)
exten => _+X.,1,Wait(1)
exten => _+X.,n,Set(__INCOMINGCLI=${CALLERID(num)})
exten => _+X.,n,Goto(from-outside-redir,${EXTEN},1)
exten => s,1,Wait(1)
exten => s,n,Set(__INCOMINGCLI=${CALLERID(num)})
exten => s,n,Goto(from-outside-redir,${EXTEN},1)

[from-outside-redir]
#include inbound.include
#include inbound_actions.include
#include extensions.include
#include outbound.include
#include scripts.include
#include user_scripts.include
#include menus.include
#include huntlists.include
#include user_extensions.include
#include special_features.include


Submitted by Drew on Wed, 11/18/2009 Permalink

I found the 'tl-queue-timeout-voicemail' script in inbound routes and I have sent the caller to a voicemail box in 45sec rather than an IVR for now. What I do require though, is that if no agents are logged in, that the calls go straight to this voicemail box.

By default these calls join the queue even though joinempty=no but I would think that somewhere I have to tell the calls where to go??

tl-queue-timeout-voicemail
exten => s,1,Set(CALLERID(name)=${ARG5}${CALLERID(name)})
exten => s,n,Answer
exten => s,n,Set(__MONITOR_FILENAME=queue-${ARG1}-${STRFTIME(,,%F-%T)}-${CALLERID(num)}${TL_DASH}${tenant})
exten => s,n,Queue(${ARG1},${ARG4},,,${ARG2})
exten => s,n,VoiceMail(${ARG3},u)

ARG1 Queue name, Queue
ARG2 Timeout, Text
ARG3 Maibox to leave message on Timeout, Mailbox(es)
ARG4 Options, Text
ARG5 Text to prepend to caller id name, Text

Submitted by eeman on Thu, 11/19/2009 Permalink

also your asterisk version is one of those that had documented queue problems. look at all the bug fixes with app_queue.c in the ChangeLog since your version.