[Asterisk-cvs] asterisk/apps app_queue.c,1.39,1.40
martinp at lists.digium.com
martinp at lists.digium.com
Wed Nov 19 15:30:28 CST 2003
Update of /usr/cvsroot/asterisk/apps
In directory mongoose.digium.com:/tmp/cvs-serv16523/apps
Modified Files:
app_queue.c
Log Message:
Add 'n' option to Queue application to fall through to the next extension after the timeout if no member picks up
Index: app_queue.c
===================================================================
RCS file: /usr/cvsroot/asterisk/apps/app_queue.c,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- app_queue.c 8 Nov 2003 04:35:57 -0000 1.39
+++ app_queue.c 19 Nov 2003 21:56:45 -0000 1.40
@@ -75,6 +75,7 @@
" 'T' -- to allow the calling user to transfer the call.\n"
" 'd' -- data-quality (modem) call (minimum delay).\n"
" 'H' -- allow caller to hang up by hitting *.\n"
+" 'n' -- no retries on the timeout; will exit this application and go to the next step.\n"
" In addition to transferring the call, a call may be parked and then picked\n"
"up by another user.\n"
" The optionnal URL will be sent to the called party if the channel supports\n"
@@ -99,7 +100,8 @@
"Example: RemoveQueueMember(techsupport|SIP/3000)\n"
"";
-
+/* whether to exit Queue application after the timeout hits */
+static int go_on = 0;
/* We define a customer "local user" structure because we
@@ -739,6 +741,8 @@
tmp->dataquality = 1;
if (strchr(options, 'H'))
tmp->allowdisconnect = 1;
+ if (strchr(options, 'n'))
+ go_on = 1;
}
if (url) {
ast_log(LOG_DEBUG, "Queue with URL=%s_\n", url);
@@ -1156,6 +1160,11 @@
res = try_calling(&qe, options, announceoverride, url);
if (res)
break;
+ /* exit after a timeout if 'n' option enabled */
+ if (go_on) {
+ res = 0;
+ break;
+ }
res = wait_a_bit(&qe);
if (res < 0) {
if (option_verbose > 2) {
More information about the svn-commits
mailing list