summaryrefslogtreecommitdiff
path: root/include/asterisk
diff options
context:
space:
mode:
authorMark Murawki <markm@intellasoft.net>2012-03-15 18:58:25 +0000
committerMark Murawki <markm@intellasoft.net>2012-03-15 18:58:25 +0000
commitc65b41f57af918f7c6f5bb18c23347d7727a7fbc (patch)
tree702017b489118a6f009c2bd3423e123052398c2e /include/asterisk
parentc61d49d5cc592e07208fb6d85ba6e6edae455aff (diff)
Add options PreDial options 'b' and 'B' to app_dial
* Added 'b' and 'B' options to Dial. These options will allow you to run last-minute dialplan on the caller and callee channels while the Dial application is executing, but before the call is started. For example you can use the 'b' option to run dialplan on the callee channel to get the name of the newly created channel right away. Review: https://reviewboard.asterisk.org/r/1229/ (closes issue: ASTERISK-19548) Reported by: Mark Murawski Tested by: Mark Murawski, Stefan Schmidt git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@359705 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include/asterisk')
-rw-r--r--include/asterisk/pbx.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/asterisk/pbx.h b/include/asterisk/pbx.h
index f7dc7b919..2b10cc84f 100644
--- a/include/asterisk/pbx.h
+++ b/include/asterisk/pbx.h
@@ -331,6 +331,8 @@ struct ast_pbx_args {
struct {
/*! Do not hangup the channel when the PBX is complete. */
unsigned int no_hangup_chan:1;
+ /*! Reuse existing pbx on the channel (used for arbitrarily jumping into dialplan) */
+ unsigned int use_existing_pbx:1;
};
};
};
@@ -1112,6 +1114,23 @@ void pbx_set_overrideswitch(const char *newval);
int ast_goto_if_exists(struct ast_channel *chan, const char *context, const char *exten, int priority);
/*!
+ * \note This function will check the validity of a goto target, see
+ * if it's reachable given the current channel state, and save the
+ * parsed tokens to the given buffers.
+ */
+int ast_pbx_exten_parse(struct ast_channel *chan, const char *goto_target, struct ast_str *context, struct ast_str *exten, struct ast_str *priority, struct varshead *varshead);
+
+/*!
+ * \note This function will run dialplan on a channel at context,exten,priority
+ */
+enum ast_pbx_result ast_pbx_exten_run_parseargs(struct ast_channel *chan, const char *gosub_args, int restore_dialplan_location);
+
+/*!
+ * \note This function will run dialplan on a channel at context,exten,priority and set also ARG
+ */
+enum ast_pbx_result ast_pbx_exten_run(struct ast_channel *chan, const char *context, const char *exten, int priority, struct varshead *varshead, int restore_dialplan_location);
+
+/*!
* \note This function will handle locking the channel as needed.
*/
int ast_parseable_goto(struct ast_channel *chan, const char *goto_string);