[Asterisk-cvs] asterisk/apps app_dial.c,1.65,1.66

citats at lists.digium.com citats at lists.digium.com
Fri May 7 17:05:52 CDT 2004


Update of /usr/cvsroot/asterisk/apps
In directory mongoose.digium.com:/home/citats/cvs/asterisk/apps

Modified Files:
	app_dial.c 
Log Message:
Code cleanup


Index: app_dial.c
===================================================================
RCS file: /usr/cvsroot/asterisk/apps/app_dial.c,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -d -r1.65 -r1.66
--- app_dial.c	7 May 2004 20:39:14 -0000	1.65
+++ app_dial.c	7 May 2004 21:14:55 -0000	1.66
@@ -25,6 +25,7 @@
 #include <asterisk/musiconhold.h>
 #include <asterisk/callerid.h>
 #include <asterisk/utils.h>
+#include <asterisk/app.h>
 #include <stdlib.h>
 #include <errno.h>
 #include <unistd.h>
@@ -467,96 +468,92 @@
 
 		/* DTMF SCRIPT*/
 		if ((sdtmfptr = strstr(transfer, "D("))) {
-		  strncpy(sdtmfdata, sdtmfptr + 2, sizeof(sdtmfdata) - 1);
-		  /* Overwrite with X's what was the sdtmf info */
-		  while(*sdtmfptr && (*sdtmfptr != ')')) 
-		    *(sdtmfptr++) = 'X';
-		  if (*sdtmfptr)
-		    *sdtmfptr = 'X';
-		  /* Now find the end  */
-		  sdtmfptr = strchr(sdtmfdata, ')');
-		  if (sdtmfptr)
-		    *sdtmfptr = '\0';
-		  else {
-		    ast_log(LOG_WARNING, "D( Data lacking trailing ')'\n");
-		  }
+			strncpy(sdtmfdata, sdtmfptr + 2, sizeof(sdtmfdata) - 1);
+			/* Overwrite with X's what was the sdtmf info */
+			while (*sdtmfptr && (*sdtmfptr != ')')) 
+				*(sdtmfptr++) = 'X';
+			if (*sdtmfptr)
+				*sdtmfptr = 'X';
+			/* Now find the end  */
+			sdtmfptr = strchr(sdtmfdata, ')');
+			if (sdtmfptr)
+				*sdtmfptr = '\0';
+			else 
+				ast_log(LOG_WARNING, "D( Data lacking trailing ')'\n");
 		}
 		
 		/* XXX LIMIT SUPPORT */
 		if ((limitptr = strstr(transfer, "L("))) {
-		  strncpy(limitdata, limitptr + 2, sizeof(limitdata) - 1);
-		  /* Overwrite with X's what was the limit info */
-		  while(*limitptr && (*limitptr != ')')) 
-		    *(limitptr++) = 'X';
-		  if (*limitptr)
-		    *limitptr = 'X';
-		  /* Now find the end */
-		  limitptr = strchr(limitdata, ')');
-		  if (limitptr)
-		    *limitptr = '\0';
-		  else {
-		    ast_log(LOG_WARNING, "Limit Data lacking trailing ')'\n");
-		  }
+			strncpy(limitdata, limitptr + 2, sizeof(limitdata) - 1);
+			/* Overwrite with X's what was the limit info */
+			while(*limitptr && (*limitptr != ')')) 
+				*(limitptr++) = 'X';
+			if (*limitptr)
+				*limitptr = 'X';
+			/* Now find the end */
+			limitptr = strchr(limitdata, ')');
+			if (limitptr)
+				*limitptr = '\0';
+			else
+				ast_log(LOG_WARNING, "Limit Data lacking trailing ')'\n");
 
-		  var = pbx_builtin_getvar_helper(chan,"LIMIT_PLAYAUDIO_CALLER");
-		  play_to_caller = var ? ast_true(var) : 1;
-		  
-		  var = pbx_builtin_getvar_helper(chan,"LIMIT_PLAYAUDIO_CALLEE");
-		  play_to_callee = var ? ast_true(var) : 0;
-		  
-		  if(! play_to_caller && ! play_to_callee)
-		    play_to_caller=1;
-		  
-		  var = pbx_builtin_getvar_helper(chan,"LIMIT_WARNING_FILE");
-		  warning_sound = var ? var : "timeleft";
+			var = pbx_builtin_getvar_helper(chan,"LIMIT_PLAYAUDIO_CALLER");
+			play_to_caller = var ? ast_true(var) : 1;
 		  
-		  var = pbx_builtin_getvar_helper(chan,"LIMIT_TIMEOUT_FILE");
-		  end_sound = var ? var : NULL;
+			var = pbx_builtin_getvar_helper(chan,"LIMIT_PLAYAUDIO_CALLEE");
+			play_to_callee = var ? ast_true(var) : 0;
 		  
-		  var = pbx_builtin_getvar_helper(chan,"LIMIT_CONNECT_FILE");
-		  start_sound = var ? var : NULL;
+			if (!play_to_caller && !play_to_callee)
+				play_to_caller=1;
 		  
-		  var=stack=limitdata;
+			var = pbx_builtin_getvar_helper(chan,"LIMIT_WARNING_FILE");
+			warning_sound = var ? var : "timeleft";
 
-		  var = strsep(&stack, ":");
-		  if(var) {
-		    timelimit = atol(var);
-		    playargs++;
-		    var = strsep(&stack, ":");
-		    if(var) {
-		      play_warning = atol(var);
-		      playargs++;
-		      var = strsep(&stack, ":");
-		      if(var) {
-			warning_freq = atol(var);
-			playargs++;
-		      }
-		    }
-		  }
-		  
-		  if(! timelimit) {
-		    timelimit=play_to_caller=play_to_callee=play_warning=warning_freq=0;
-		    warning_sound=NULL;
-		  }
-		  /* undo effect of S(x) in case they are both used */
-		  calldurationlimit=0; 
-		  /* more efficient do it like S(x) does since no advanced opts*/
-		  if(! play_warning && ! start_sound && ! end_sound && timelimit) { 
-		    calldurationlimit=timelimit/1000;
-		    timelimit=play_to_caller=play_to_callee=play_warning=warning_freq=0;
-		  }
-		  else if (option_verbose > 2) {
-		    ast_verbose(VERBOSE_PREFIX_3"Limit Data:\n");
-		    ast_verbose(VERBOSE_PREFIX_3"timelimit=%ld\n",timelimit);
-		    ast_verbose(VERBOSE_PREFIX_3"play_warning=%ld\n",play_warning);
-		    ast_verbose(VERBOSE_PREFIX_3"play_to_caller=%s\n",play_to_caller ? "yes" : "no");
-		    ast_verbose(VERBOSE_PREFIX_3"play_to_callee=%s\n",play_to_callee ? "yes" : "no");
-		    ast_verbose(VERBOSE_PREFIX_3"warning_freq=%ld\n",warning_freq);
-		    ast_verbose(VERBOSE_PREFIX_3"start_sound=%s\n",start_sound ? start_sound : "UNDEF");
-		    ast_verbose(VERBOSE_PREFIX_3"warning_sound=%s\n",warning_sound ? warning_sound : "UNDEF");
-		    ast_verbose(VERBOSE_PREFIX_3"end_sound=%s\n",end_sound ? end_sound : "UNDEF");
-		  }
+			var = pbx_builtin_getvar_helper(chan,"LIMIT_TIMEOUT_FILE");
+			end_sound = var ? var : NULL;
+
+			var = pbx_builtin_getvar_helper(chan,"LIMIT_CONNECT_FILE");
+			start_sound = var ? var : NULL;
+
+			var=stack=limitdata;
+
+			var = strsep(&stack, ":");
+			if (var) {
+				timelimit = atol(var);
+				playargs++;
+				var = strsep(&stack, ":");
+				if (var) {
+					play_warning = atol(var);
+					playargs++;
+					var = strsep(&stack, ":");
+					if(var) {
+						warning_freq = atol(var);
+						playargs++;
+					}
+				}
+			}
 		  
+			if (!timelimit) {
+				timelimit=play_to_caller=play_to_callee=play_warning=warning_freq=0;
+				warning_sound=NULL;
+			}
+			/* undo effect of S(x) in case they are both used */
+			calldurationlimit=0; 
+			/* more efficient do it like S(x) does since no advanced opts*/
+			if (!play_warning && !start_sound && !end_sound && timelimit) { 
+				calldurationlimit=timelimit/1000;
+				timelimit=play_to_caller=play_to_callee=play_warning=warning_freq=0;
+			} else if (option_verbose > 2) {
+				ast_verbose(VERBOSE_PREFIX_3"Limit Data:\n");
+				ast_verbose(VERBOSE_PREFIX_3"timelimit=%ld\n",timelimit);
+				ast_verbose(VERBOSE_PREFIX_3"play_warning=%ld\n",play_warning);
+				ast_verbose(VERBOSE_PREFIX_3"play_to_caller=%s\n",play_to_caller ? "yes" : "no");
+				ast_verbose(VERBOSE_PREFIX_3"play_to_callee=%s\n",play_to_callee ? "yes" : "no");
+				ast_verbose(VERBOSE_PREFIX_3"warning_freq=%ld\n",warning_freq);
+				ast_verbose(VERBOSE_PREFIX_3"start_sound=%s\n",start_sound ? start_sound : "UNDEF");
+				ast_verbose(VERBOSE_PREFIX_3"warning_sound=%s\n",warning_sound ? warning_sound : "UNDEF");
+				ast_verbose(VERBOSE_PREFIX_3"end_sound=%s\n",end_sound ? end_sound : "UNDEF");
+			}
 		}
 		
 		/* XXX ANNOUNCE SUPPORT */
@@ -845,40 +842,37 @@
 			
 			// Ok, done. stop autoservice
 			res = ast_autoservice_stop(chan);
-		}
-		else 
-		  res = 0;
-
-		if(!res) {
-		  if (calldurationlimit > 0) {
-		    time(&now);
-		    chan->whentohangup = now + calldurationlimit;
-		  }
+		} else
+			res = 0;
 
-		  if(strlen(sdtmfdata)) 
-		    res = ast_dtmf_stream(peer,chan,sdtmfdata,0);
+		if (!res) {
+			if (calldurationlimit > 0) {
+				time(&now);
+				chan->whentohangup = now + calldurationlimit;
+			}
+			if (!ast_strlen_zero(sdtmfdata)) 
+				res = ast_dtmf_stream(peer,chan,sdtmfdata,0);
 		}
 		
-		if(!res) {
-		  memset(&config,0,sizeof(struct ast_bridge_config));
-		  config.play_to_caller=play_to_caller;
-		  config.play_to_callee=play_to_callee;
-		  config.allowredirect_in = allowredir_in;
-		  config.allowredirect_out = allowredir_out;
-		  config.allowdisconnect = allowdisconnect;
-		  config.timelimit = timelimit;
-		  config.play_warning = play_warning;
-		  config.warning_freq = warning_freq;
-		  config.warning_sound = warning_sound;
-		  config.end_sound = end_sound;
-		  config.start_sound = start_sound;
-		  res = ast_bridge_call(chan,peer,&config);
-		}
-		else 
-		  res = -1;
+		if (!res) {
+			memset(&config,0,sizeof(struct ast_bridge_config));
+			config.play_to_caller=play_to_caller;
+			config.play_to_callee=play_to_callee;
+			config.allowredirect_in = allowredir_in;
+			config.allowredirect_out = allowredir_out;
+			config.allowdisconnect = allowdisconnect;
+			config.timelimit = timelimit;
+			config.play_warning = play_warning;
+			config.warning_freq = warning_freq;
+			config.warning_sound = warning_sound;
+			config.end_sound = end_sound;
+			config.start_sound = start_sound;
+			res = ast_bridge_call(chan,peer,&config);
+		} else 
+			res = -1;
 		
 		if (res != AST_PBX_NO_HANGUP_PEER)
-		  ast_hangup(peer);
+			ast_hangup(peer);
 	}	
 out:
 	hanguptree(outgoing, NULL);




More information about the svn-commits mailing list