aboutsummaryrefslogtreecommitdiffstats
path: root/include/asterisk/pbx.h
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-07-16 14:39:29 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-07-16 14:39:29 +0000
commitd17ff1ea42571817d74962062410ca54a06b2053 (patch)
tree1236d574745c7d4d49bb3fb658e3a6bdd3e88a22 /include/asterisk/pbx.h
parent9e24ed5ccff762fa9d412d1a1321df2de1b26423 (diff)
Applications no longer need to call ast_module_user_add and ast_module_user_remove. This is now taken care of in the pbx_exec function outside of the application.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@75200 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include/asterisk/pbx.h')
-rw-r--r--include/asterisk/pbx.h24
1 files changed, 22 insertions, 2 deletions
diff --git a/include/asterisk/pbx.h b/include/asterisk/pbx.h
index da7488b45..70373999e 100644
--- a/include/asterisk/pbx.h
+++ b/include/asterisk/pbx.h
@@ -313,8 +313,28 @@ int ast_add_extension2(struct ast_context *con, int replace, const char *extensi
* \retval 0 success
* \retval -1 failure.
*/
-int ast_register_application(const char *app, int (*execute)(struct ast_channel *, void *),
- const char *synopsis, const char *description);
+#define ast_register_application(app, execute, synopsis, description) ast_register_application2(app, execute, synopsis, description, ast_module_info->self)
+
+/*!
+ * \brief Register an application.
+ *
+ * \param app Short name of the application
+ * \param execute a function callback to execute the application. It should return
+ * non-zero if the channel needs to be hung up.
+ * \param synopsis a short description (one line synopsis) of the application
+ * \param description long description with all of the details about the use of
+ * the application
+ * \param mod module this application belongs to
+ *
+ * This registers an application with Asterisk's internal application list.
+ * \note The individual applications themselves are responsible for registering and unregistering
+ * and unregistering their own CLI commands.
+ *
+ * \retval 0 success
+ * \retval -1 failure.
+ */
+int ast_register_application2(const char *app, int (*execute)(struct ast_channel *, void *),
+ const char *synopsis, const char *description, void *mod);
/*!
* \brief Unregister an application