if (chan->_state != AST_STATE_UP)
ast_answer(chan);
ast_stopstream(chan);
-
+ ast_indicate(chan, -1);
+
owriteformat = chan->writeformat;
res = ast_set_write_format(chan, AST_FORMAT_SLINEAR);
if (res < 0) {
/*! \brief Welcome message when starting a CLI interface */
#define WELCOME_MESSAGE \
- ast_verbose("Asterisk " ASTERISK_VERSION ", Copyright (C) 1999 - 2005 Digium, Inc. and others.\n"); \
+ ast_verbose("Asterisk " ASTERISK_VERSION ", Copyright (C) 1999 - 2006 Digium, Inc. and others.\n"); \
ast_verbose("Created by Mark Spencer <markster@digium.com>\n"); \
ast_verbose("Asterisk comes with ABSOLUTELY NO WARRANTY; type 'show warranty' for details.\n"); \
ast_verbose("This is free software, with components licensed under the GNU General Public\n"); \
}
}
+ if (option_console && !option_verbose)
+ ast_verbose("[ Reading Master Configuration ]");
+ ast_readconfig();
+
if (option_dumpcore) {
struct rlimit l;
memset(&l, 0, sizeof(l));
}
}
- if (option_console && !option_verbose)
- ast_verbose("[ Reading Master Configuration ]");
- ast_readconfig();
-
if ((!rungroup) && !ast_strlen_zero(ast_config_AST_RUN_GROUP))
rungroup = ast_config_AST_RUN_GROUP;
if ((!runuser) && !ast_strlen_zero(ast_config_AST_RUN_USER))
static const char descrip3[] =
" AgentMonitorOutgoing([options]):\n"
"Tries to figure out the id of the agent who is placing outgoing call based on\n"
-"comparision of the callerid of the current interface and the global variable \n"
+"comparison of the callerid of the current interface and the global variable \n"
"placed by the AgentCallbackLogin application. That's why it should be used only\n"
"with the AgentCallbackLogin app. Uses the monitoring functions in chan_agent \n"
"instead of Monitor application. That have to be configured in the agents.conf file.\n"
/** Persistent Agents astdb family */
static const char pa_family[] = "/Agents";
-/** The maximum lengh of each persistent member agent database entry */
+/** The maximum length of each persistent member agent database entry */
#define PA_MAX_LEN 2048
/** queues.conf [general] option */
static int persistent_agents = 0;
urlprefix[0] = '\0';
savecallsin[0] = '\0';
- /* Read in [general] section for persistance */
+ /* Read in [general] section for persistence */
if ((general_val = ast_variable_retrieve(cfg, "general", "persistentagents")))
persistent_agents = ast_true(general_val);
gettimeofday(&p->lastdisc, NULL);
p->lastdisc.tv_sec++;
- /* Set Channel Specific Agent Overides */
+ /* Set Channel Specific Agent Overrides */
if (pbx_builtin_getvar_helper(chan, "AGENTACKCALL") && strlen(pbx_builtin_getvar_helper(chan, "AGENTACKCALL"))) {
if (!strcasecmp(pbx_builtin_getvar_helper(chan, "AGENTACKCALL"), "always"))
p->ackcall = 2;
if (option_verbose > 2)
ast_verbose(VERBOSE_PREFIX_3 "Saw variable AGENTWRAPUPTIME=%s, setting wrapuptime to: %d for Agent '%s'.\n",tmpoptions,p->wrapuptime,p->agent);
}
- /* End Channel Specific Agent Overides */
+ /* End Channel Specific Agent Overrides */
if (!p->chan) {
char last_loginchan[80] = "";
long logintime;
}
ast_mutex_unlock(&agentlock);
if (db_tree) {
- ast_log(LOG_NOTICE, "Agents sucessfully reloaded from database.\n");
+ ast_log(LOG_NOTICE, "Agents successfully reloaded from database.\n");
ast_db_freetree(db_tree);
}
}
/**
* Initialize the Agents module.
- * This funcion is being called by Asterisk when loading the module. Among other thing it registers applications, cli commands and reads the cofiguration file.
+ * This function is being called by Asterisk when loading the module. Among other thing it registers applications, cli commands and reads the cofiguration file.
*
* @returns int Always 0.
*/
if (delim) {
varname = strsep(&delim, "|");
pbx_retrieve_variable(chan, varname, &varval, workspace, sizeof(workspace), NULL);
- while (strsep(&varval, delim))
- fieldcount++;
+ if (delim) {
+ while (strsep(&varval, delim))
+ fieldcount++;
+ } else if (!ast_strlen_zero(varval)) {
+ fieldcount = 1;
+ }
snprintf(buf, len, "%d", fieldcount);
} else {
ast_log(LOG_ERROR, "Out of memory\n");
static const char *loadorder[] =
{
"res_",
- "chan_",
"pbx_",
+ "chan_",
NULL,
};
filesize_reload_needed = 0;
- queue_log_init();
init_logger_chain();
+ queue_log_init();
if (logfiles.event_log) {
if (eventlog) {
ast_cli_register(&rotate_logger_cli);
ast_cli_register(&logger_show_channels_cli);
- /* initialize queue logger */
- queue_log_init();
-
/* create log channels */
init_logger_chain();
+ /* initialize queue logger */
+ queue_log_init();
+
/* create the eventlog */
if (logfiles.event_log) {
mkdir((char *)ast_config_AST_LOG_DIR, 0755);
if (!(monitor_app = pbx_findapp("Monitor")))
monitor_ok=0;
}
- if ((monitor_exec = pbx_builtin_getvar_helper(chan, "AUTO_MONITOR")))
- pbx_exec(chan, monitor_app, monitor_exec, 1);
- else if ((monitor_exec = pbx_builtin_getvar_helper(peer, "AUTO_MONITOR")))
- pbx_exec(peer, monitor_app, monitor_exec, 1);
+ if (monitor_app) {
+ if ((monitor_exec = pbx_builtin_getvar_helper(chan, "AUTO_MONITOR")))
+ pbx_exec(chan, monitor_app, monitor_exec, 1);
+ else if ((monitor_exec = pbx_builtin_getvar_helper(peer, "AUTO_MONITOR")))
+ pbx_exec(peer, monitor_app, monitor_exec, 1);
+ }
}
set_config_flags(chan, peer, config);