[asterisk-commits] irroot: trunk r337262 - in /trunk: ./ CHANGES apps/app_originate.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Sep 21 05:46:15 CDT 2011


Author: irroot
Date: Wed Sep 21 05:46:09 2011
New Revision: 337262

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=337262
Log:
Merged revisions 337261 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/10

........
  r337261 | irroot | 2011-09-21 12:42:06 +0200 (Wed, 21 Sep 2011) | 10 lines
  
  Adds a timeout argument to app_originate
  
  the default is 30s this will be used if the timout supplied is invalid or
  no timeout is supplied.
  
  Contributed by: jacco (thank you for the work)
  
  Review: https://reviewboard.asterisk.org/r/1310/
........

Modified:
    trunk/   (props changed)
    trunk/CHANGES
    trunk/apps/app_originate.c

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-10-merged' - no diff available.

Modified: trunk/CHANGES
URL: http://svnview.digium.com/svn/asterisk/trunk/CHANGES?view=diff&rev=337262&r1=337261&r2=337262
==============================================================================
--- trunk/CHANGES (original)
+++ trunk/CHANGES Wed Sep 21 05:46:09 2011
@@ -233,6 +233,7 @@
    a MeetMe conference
  * Added 'k' option to MeetMe to automatically kill the conference when there's only
    one participant left (much like a normal call bridge)
+ * Added extra argument to Originate to set timeout.
 
 Asterisk Database
 -----------------

Modified: trunk/apps/app_originate.c
URL: http://svnview.digium.com/svn/asterisk/trunk/apps/app_originate.c?view=diff&rev=337262&r1=337261&r2=337262
==============================================================================
--- trunk/apps/app_originate.c (original)
+++ trunk/apps/app_originate.c Wed Sep 21 05:46:09 2011
@@ -69,6 +69,9 @@
 			</parameter>
 			<parameter name="arg3" required="false">
 				<para>If the type is <literal>exten</literal>, then this is the priority that the channel is sent to.  If the type is <literal>app</literal>, then this parameter is ignored.</para>
+			</parameter>
+			<parameter name="timeout" required="false">
+				<para>Timeout in seconds. Default is 30 seconds.</para>
 			</parameter>
 		</syntax>
 		<description>
@@ -101,12 +104,13 @@
 		AST_APP_ARG(arg1);
 		AST_APP_ARG(arg2);
 		AST_APP_ARG(arg3);
+		AST_APP_ARG(timeout);
 	);
 	char *parse;
 	char *chantech, *chandata;
 	int res = -1;
 	int outgoing_status = 0;
-	static const unsigned int timeout = 30;
+	unsigned int timeout = 30;
 	static const char default_exten[] = "s";
 	struct ast_format tmpfmt;
 	struct ast_format_cap *cap_slin = ast_format_cap_alloc_nolock();
@@ -129,6 +133,13 @@
 	if (args.argc < 3) {
 		ast_log(LOG_ERROR, "Incorrect number of arguments\n");
 		goto return_cleanup;
+	}
+
+	if (!ast_strlen_zero(args.timeout)) {
+		if(sscanf(args.timeout, "%u", &timeout) != 1) {
+			ast_log(LOG_NOTICE, "Invalid timeout: '%s'. Setting timeout to 30 seconds\n", args.timeout);
+			timeout = 30;
+		}
 	}
 
 	chandata = ast_strdupa(args.tech_data);




More information about the asterisk-commits mailing list