tmp->echocancel = conf.chan.echocancel;
tmp->echotraining = conf.chan.echotraining;
tmp->pulse = conf.chan.pulse;
- tmp->echocanbridged = conf.chan.echocanbridged;
+ if (tmp->echocancel)
+ tmp->echocanbridged = conf.chan.echocanbridged;
+ else {
+ if (conf.chan.echocanbridged)
+ ast_log(LOG_NOTICE, "echocancelwhenbridged requires echocancel to be enabled; ignoring\n");
+ tmp->echocanbridged = 0;
+ }
tmp->busydetect = conf.chan.busydetect;
tmp->busycount = conf.chan.busycount;
tmp->busy_tonelength = conf.chan.busy_tonelength;
ast_cli(fd, "Default law: %s\n", tmp->law == ZT_LAW_MULAW ? "ulaw" : tmp->law == ZT_LAW_ALAW ? "alaw" : "unknown");
ast_cli(fd, "Fax Handled: %s\n", tmp->faxhandled ? "yes" : "no");
ast_cli(fd, "Pulse phone: %s\n", tmp->pulsedial ? "yes" : "no");
- ast_cli(fd, "Echo Cancellation: %d taps%s, currently %s\n", tmp->echocancel, (!tmp->echocancel || tmp->echocanbridged) ? "" : " unless TDM bridged", tmp->echocanon ? "ON" : "OFF");
+ ast_cli(fd, "Echo Cancellation: %d taps%s, currently %s\n", tmp->echocancel, tmp->echocanbridged ? "" : " unless TDM bridged", tmp->echocanon ? "ON" : "OFF");
if (tmp->master)
ast_cli(fd, "Master Channel: %d\n", tmp->master->channel);
for (x = 0; x < MAX_SLAVES; x++) {