From 9cb185e126e9b085b7e7f895a868c88812616612 Mon Sep 17 00:00:00 2001
From: Mark Spencer <markster@digium.com>
Date: Tue, 22 Jun 2004 03:51:34 +0000
Subject: [PATCH] Add "Progress" application

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 pbx.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/pbx.c b/pbx.c
index d88c265c58..05f3dd20c3 100755
--- a/pbx.c
+++ b/pbx.c
@@ -167,6 +167,7 @@ static int pbx_builtin_setlanguage(struct ast_channel *, void *);
 static int pbx_builtin_resetcdr(struct ast_channel *, void *);
 static int pbx_builtin_setaccount(struct ast_channel *, void *);
 static int pbx_builtin_ringing(struct ast_channel *, void *);
+static int pbx_builtin_progress(struct ast_channel *, void *);
 static int pbx_builtin_congestion(struct ast_channel *, void *);
 static int pbx_builtin_busy(struct ast_channel *, void *);
 static int pbx_builtin_setglobalvar(struct ast_channel *, void *);
@@ -274,6 +275,11 @@ static struct pbx_builtin {
 "which has no first step, the PBX will treat it as though the user dialed an\n"
 "invalid extension.\n" },
 
+	{ "Progress", pbx_builtin_progress,
+"Indicate progress",
+"  Progress(): Request that the channel indicate in-band progress is available to the user.\n"
+"Always returns 0.\n" },
+
 	{ "ResetCDR", pbx_builtin_resetcdr,
 "Resets the Call Data Record",
 "  ResetCDR([options]):  Causes the Call Data Record to be reset, optionally\n"
@@ -4203,6 +4209,12 @@ static void wait_for_hangup(struct ast_channel *chan)
 	} while(f);
 }
 
+static int pbx_builtin_progress(struct ast_channel *chan, void *data)
+{
+	ast_indicate(chan, AST_CONTROL_PROGRESS);
+	return 0;
+}
+
 static int pbx_builtin_ringing(struct ast_channel *chan, void *data)
 {
 	ast_indicate(chan, AST_CONTROL_RINGING);
-- 
GitLab