mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 04:11:08 +00:00
Move application ExternalIVR static documentation to XML.
Move application ExternalIVR static documentation to the new AstXML form. (issue #15245) Reported by: eliel Patches: app_externalivr.diff uploaded by eliel (license 64) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@199514 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -48,25 +48,49 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
|
|||||||
#include "asterisk/tcptls.h"
|
#include "asterisk/tcptls.h"
|
||||||
#include "asterisk/astobj2.h"
|
#include "asterisk/astobj2.h"
|
||||||
|
|
||||||
static const char * const app = "ExternalIVR";
|
/*** DOCUMENTATION
|
||||||
|
<application name="ExternalIVR" language="en_US">
|
||||||
|
<synopsis>
|
||||||
|
Interfaces with an external IVR application.
|
||||||
|
</synopsis>
|
||||||
|
<syntax>
|
||||||
|
<parameter name="command|ivr://host" required="true" hasparams="true">
|
||||||
|
<argument name="arg1" />
|
||||||
|
<argument name="arg2" multiple="yes" />
|
||||||
|
</parameter>
|
||||||
|
<parameter name="options">
|
||||||
|
<optionlist>
|
||||||
|
<option name="n">
|
||||||
|
<para>Tells ExternalIVR() not to answer the channel.</para>
|
||||||
|
</option>
|
||||||
|
<option name="i">
|
||||||
|
<para>Tells ExternalIVR() not to send a hangup and exit when the
|
||||||
|
channel receives a hangup, instead it sends an <literal>I</literal>
|
||||||
|
informative message meaning that the external application MUST hang
|
||||||
|
up the call with an <literal>H</literal> command.</para>
|
||||||
|
</option>
|
||||||
|
<option name="d">
|
||||||
|
<para>Tells ExternalIVR() to run on a channel that has been hung up
|
||||||
|
and will not look for hangups. The external application must exit with
|
||||||
|
an <literal>E</literal> command.</para>
|
||||||
|
</option>
|
||||||
|
</optionlist>
|
||||||
|
</parameter>
|
||||||
|
</syntax>
|
||||||
|
<description>
|
||||||
|
<para>Either forks a process to run given command or makes a socket to connect
|
||||||
|
to given host and starts a generator on the channel. The generator's play list
|
||||||
|
is controlled by the external application, which can add and clear entries via
|
||||||
|
simple commands issued over its stdout. The external application will receive
|
||||||
|
all DTMF events received on the channel, and notification if the channel is
|
||||||
|
hung up. The received on the channel, and notification if the channel is hung
|
||||||
|
up. The application will not be forcibly terminated when the channel is hung up.
|
||||||
|
See <filename>doc/externalivr.txt</filename> for a protocol specification.</para>
|
||||||
|
</description>
|
||||||
|
</application>
|
||||||
|
***/
|
||||||
|
|
||||||
static const char * const synopsis = "Interfaces with an external IVR application";
|
static const char app[] = "ExternalIVR";
|
||||||
static const char * const descrip =
|
|
||||||
" ExternalIVR(command|ivr://ivrhosti([,arg[,arg...]])[,options]): Either forks a process\n"
|
|
||||||
"to run given command or makes a socket to connect to given host and starts\n"
|
|
||||||
"a generator on the channel. The generator's play list is controlled by the\n"
|
|
||||||
"external application, which can add and clear entries via simple commands\n"
|
|
||||||
"issued over its stdout. The external application will receive all DTMF events\n"
|
|
||||||
"received on the channel, and notification if the channel is hung up. The\n"
|
|
||||||
"application will not be forcibly terminated when the channel is hung up.\n"
|
|
||||||
"See doc/externalivr.txt for a protocol specification.\n"
|
|
||||||
"The 'n' option tells ExternalIVR() not to answer the channel. \n"
|
|
||||||
"The 'i' option tells ExternalIVR() not to send a hangup and exit when the\n"
|
|
||||||
" channel receives a hangup, instead it sends an 'I' informative message\n"
|
|
||||||
" meaning that the external application MUST hang up the call with an H command\n"
|
|
||||||
"The 'd' option tells ExternalIVR() to run on a channel that has been hung up\n"
|
|
||||||
" and will not look for hangups. The external application must exit with\n"
|
|
||||||
" an 'E' command.\n";
|
|
||||||
|
|
||||||
/* XXX the parser in gcc 2.95 gets confused if you don't put a space between 'name' and the comma */
|
/* XXX the parser in gcc 2.95 gets confused if you don't put a space between 'name' and the comma */
|
||||||
#define ast_chan_log(level, channel, format, ...) ast_log(level, "%s: " format, channel->name , ## __VA_ARGS__)
|
#define ast_chan_log(level, channel, format, ...) ast_log(level, "%s: " format, channel->name , ## __VA_ARGS__)
|
||||||
@@ -800,7 +824,7 @@ static int unload_module(void)
|
|||||||
|
|
||||||
static int load_module(void)
|
static int load_module(void)
|
||||||
{
|
{
|
||||||
return ast_register_application(app, app_exec, synopsis, descrip);
|
return ast_register_application_xml(app, app_exec);
|
||||||
}
|
}
|
||||||
|
|
||||||
AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "External IVR Interface Application");
|
AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "External IVR Interface Application");
|
||||||
|
Reference in New Issue
Block a user