提交 2f1b12fd authored 作者: Moises Silva's avatar Moises Silva

OPENZAP-232 #resolve

Patched-By: Florian Richter

Check for digits received on sangoma isdn stack to avoid delaying
moving to the ring state if all digits are received at once in
overlap dialing mode
上级 d9d9510c
......@@ -203,8 +203,17 @@ void sngisdn_process_con_ind (sngisdn_event_data_t *sngisdn_event)
}
}
#endif
if (signal_data->overlap_dial == SNGISDN_OPT_TRUE && !conEvnt->sndCmplt.eh.pres) {
ftdm_set_state(ftdmchan, FTDM_CHANNEL_STATE_COLLECT);
if (signal_data->overlap_dial == SNGISDN_OPT_TRUE) {
ftdm_size_t min_digits = ((sngisdn_span_data_t*)ftdmchan->span->signal_data)->min_digits;
ftdm_size_t num_digits;
num_digits = strlen(ftdmchan->caller_data.dnis.digits);
if (conEvnt->sndCmplt.eh.pres || num_digits >= min_digits) {
ftdm_set_state(ftdmchan, FTDM_CHANNEL_STATE_RING);
} else {
ftdm_set_state(ftdmchan, FTDM_CHANNEL_STATE_COLLECT);
}
} else {
ftdm_set_state(ftdmchan, FTDM_CHANNEL_STATE_RING);
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论