On Thu, Jul 14, 2011 at 10:01 AM, Michal Zubáč <michal.zubac@comgate.cz> wrote:
Hi.
I've noticed that outgoing call channels in freetdm/ftmod_libpri are not selected exclusively in Q.931 SETUP messages. Channel identification "exclusive" bit is 0 so it only means "preferred". In some cases freeswitch selected channel which was not ready for dialing yet and ISDN operator answered with another channel in PROGRESS message. So actual call state messages were passed trough another channel and it resulted with lots of VETO and consecutive RESET messages, because of channel state confusion in FreeSwitch.
I think that it's better to force channel selection and in some cases choose wrong channel and get info about it. It's definitely better, then choose something, assume that it is correct although actual communication is done on another channel and such calls are "doomed"...
I've attached patch, in which we force selection of ISDN channel. Maybe better solution will be some configuration variable, which will control this behaviour. Consider.
Does anybody have similar experience and if so, how do you deal with it? Or am I mistaken in some of my conclusions?
Hello Michal, You are totally correct. FreeTDM as of now assumes exclusive requests of the channel. It seems is a bug in the libpri module not to do so. Also the last member should be nonisdn because the caller (most of the time) will be nonisdn most of the time (although idealy we should figure that out from mod_freetdm). Don't know what the implications of that are though, so I won't change that yet until I verify on the spec. I just committed your change into git, in the future please report issues like this in jira.freeswitch.org, thanks! Moises Silva Senior Software Engineer, Software Development Manager Sangoma Technologies Inc. | 100 Renfrew Drive, Suite 100, Markham ON L3R 9R6 Canada t. 1 905 474 1990 x128 | e. moy@sangoma.com