* Added the parkedcalltransfers option to features.conf
* Added 's' option to Page application.
* Added the srvlookup option to iax.conf
+ * Added 'E' and 'V' commands to ExternalIVR.
SIP changes
-----------
AST_LIST_INSERT_TAIL(&u->playlist, entry, list);
AST_LIST_UNLOCK(&u->playlist);
}
+ } else if (input[0] == 'E') {
+ ast_chan_log(LOG_NOTICE, chan, "Exiting: %s\n", &input[2]);
+ send_child_event(child_events, 'E', NULL, chan);
+ res = 0;
+ break;
} else if (input[0] == 'H') {
ast_chan_log(LOG_NOTICE, chan, "Hanging up: %s\n", &input[2]);
send_child_event(child_events, 'H', NULL, chan);
+ res = -1;
break;
} else if (input[0] == 'O') {
if (!strcasecmp(&input[2], "autoclear"))
u->option_autoclear = 0;
else
ast_chan_log(LOG_WARNING, chan, "Unknown option requested '%s'\n", &input[2]);
+ } else if (input[0] == 'V') {
+ char *c;
+ c = strchr(&input[2], '=');
+ if (!c) {
+ send_child_event(child_events, 'Z', NULL, chan);
+ } else {
+ *c++ = '\0';
+ pbx_builtin_setvar_helper(chan, &input[2], c);
+ }
}
} else if (ready_fd == child_errors_fd) {
char input[1024];
*: DTMF event for key *
#: DTMF event for key #
H: the channel was hung up by the connected party
+E: the script requested an exit
Z: the previous command was unable to be executed (file does not
exist, etc.)
T: the play list was interrupted (see below)
S,filename
A,filename
H,message
+E,message
O,option
+V,name=value
The 'S' command checks to see if there is a playable audio file with
the specified name, and if so, clear's the generator's playlist and
playlist. The same playability and exception rules apply as for the
'S' command.
+The 'E' command stops the generator and continues execution in the dialplan,
+and logs the supplied message to the Asterisk log.
+
The 'H' command stops the generator and hangs up the channel, and logs
the supplied message to the Asterisk log.
Automatically interrupt and clear the playlist upon reception
of DTMF input.
+The 'V' command sets the specified channel variable to the specified value.
+
Errors
------