[asterisk-commits] russell: branch russell/sla_updates r54440 - in
/team/russell/sla_updates: ap...
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Wed Feb 14 11:58:31 MST 2007
Author: russell
Date: Wed Feb 14 12:58:31 2007
New Revision: 54440
URL: http://svn.digium.com/view/asterisk?view=rev&rev=54440
Log:
Parse the "ringtimeout" option from the config, print it out in the
"sla show trunks" cli command, and tweak the output of the commands to be
more .... pretty.
Modified:
team/russell/sla_updates/apps/app_meetme.c
team/russell/sla_updates/configs/sla.conf.sample
Modified: team/russell/sla_updates/apps/app_meetme.c
URL: http://svn.digium.com/view/asterisk/team/russell/sla_updates/apps/app_meetme.c?view=diff&rev=54440&r1=54439&r2=54440
==============================================================================
--- team/russell/sla_updates/apps/app_meetme.c (original)
+++ team/russell/sla_updates/apps/app_meetme.c Wed Feb 14 12:58:31 2007
@@ -393,7 +393,7 @@
/*! Number of stations that have this trunk on hold. */
unsigned int hold_stations;
struct ast_channel *chan;
- pthread_t station_thread;
+ unsigned int ringtimeout;
};
struct sla_trunk_ref {
@@ -953,25 +953,33 @@
{
const struct sla_trunk *trunk;
- ast_cli(fd, "--- Configured SLA Trunks -----------------------------------\n"
- "-------------------------------------------------------------\n\n");
+ ast_cli(fd, "\n"
+ "--- Configured SLA Trunks -----------------------------------\n"
+ "-------------------------------------------------------------\n"
+ "---\n");
AST_RWLIST_RDLOCK(&sla_trunks);
AST_RWLIST_TRAVERSE(&sla_trunks, trunk, entry) {
struct sla_station_ref *station_ref;
+ char ringtimeout[16] = "(none)";
+ if (trunk->ringtimeout)
+ snprintf(ringtimeout, sizeof(ringtimeout), "%u Seconds", trunk->ringtimeout);
ast_cli(fd, "--- Trunk Name: %s\n"
"--- ==> Device: %s\n"
"--- ==> AutoContext: %s\n"
+ "--- ==> RingTimeout: %s\n"
"--- ==> Stations ...\n",
trunk->name, trunk->device,
- S_OR(trunk->autocontext, "(none)"));
+ S_OR(trunk->autocontext, "(none)"),
+ ringtimeout);
AST_RWLIST_RDLOCK(&sla_stations);
AST_LIST_TRAVERSE(&trunk->stations, station_ref, entry)
ast_cli(fd, "--- =====> Station name: %s\n", station_ref->station->name);
AST_RWLIST_UNLOCK(&sla_stations);
- ast_cli(fd, "\n");
+ ast_cli(fd, "---\n");
}
AST_RWLIST_UNLOCK(&sla_trunks);
- ast_cli(fd, "-------------------------------------------------------------\n");
+ ast_cli(fd, "-------------------------------------------------------------\n"
+ "\n");
return RESULT_SUCCESS;
}
@@ -997,8 +1005,10 @@
{
const struct sla_station *station;
- ast_cli(fd, "--- Configured SLA Stations ---------------------------------\n"
- "-------------------------------------------------------------\n\n");
+ ast_cli(fd, "\n"
+ "--- Configured SLA Stations ---------------------------------\n"
+ "-------------------------------------------------------------\n"
+ "---\n");
AST_RWLIST_RDLOCK(&sla_stations);
AST_RWLIST_TRAVERSE(&sla_stations, station, entry) {
struct sla_trunk_ref *trunk_ref;
@@ -1013,10 +1023,11 @@
ast_cli(fd, "--- =====> Trunk Name: %s State: %s\n",
trunk_ref->trunk->name, trunkstate2str(trunk_ref->state));
AST_RWLIST_UNLOCK(&sla_trunks);
- ast_cli(fd, "\n");
+ ast_cli(fd, "---\n");
}
AST_RWLIST_UNLOCK(&sla_stations);
- ast_cli(fd, "-------------------------------------------------------------\n");
+ ast_cli(fd, "-------------------------------------------------------------\n"
+ "\n");
return RESULT_SUCCESS;
}
@@ -3749,7 +3760,13 @@
for (var = ast_variable_browse(cfg, cat); var; var = var->next) {
if (!strcasecmp(var->name, "autocontext"))
ast_string_field_set(trunk, autocontext, var->value);
- else if (strcasecmp(var->name, "type") && strcasecmp(var->name, "device")) {
+ else if (!strcasecmp(var->name, "ringtimeout")) {
+ if (sscanf(var->value, "%u", &trunk->ringtimeout) != 1) {
+ ast_log(LOG_WARNING, "Invalid ringtimeout '%s' specified for trunk '%s'\n",
+ var->value, trunk->name);
+ trunk->ringtimeout = 0;
+ }
+ } else if (strcasecmp(var->name, "type") && strcasecmp(var->name, "device")) {
ast_log(LOG_ERROR, "Invalid option '%s' specified at line %d of %s!\n",
var->name, var->lineno, SLA_CONFIG_FILE);
}
Modified: team/russell/sla_updates/configs/sla.conf.sample
URL: http://svn.digium.com/view/asterisk/team/russell/sla_updates/configs/sla.conf.sample?view=diff&rev=54440&r1=54439&r2=54440
==============================================================================
--- team/russell/sla_updates/configs/sla.conf.sample (original)
+++ team/russell/sla_updates/configs/sla.conf.sample Wed Feb 14 12:58:31 2007
@@ -23,6 +23,9 @@
; zapata.conf, this device should be configured to have incoming calls go to
; this context.
autocontext=line1
+; Set how long to allow this trunk to ring before hanging it up as an
+; unanswered call. The value is in seconds.
+ringtimeout=30
[line2]
type=trunk
More information about the asterisk-commits
mailing list