Store the offset in the teletone buffer in the b-channel private data.
An NT-mode setup with ftmod_misdn showed severe (dial-)tone distortions
in a sound editor (330Hz sine wave phase errors), caused by
using a global teletone buffer offset.
Switching to a per-channel offset, that is advanced by the amount
of data actually written to the channel, removes (almost) all
distortions.
There is still a minimal phase error every ~500ms (audible) that
needs more investigating.
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
Store call CRV in caller_data.call_reference and use call private to hold the
FreeTDM channel object.
Remove isdn_data->channels_{local,remote,outbound}_crv arrays.
Allow (and force) inbound call state transition DIALTONE -> DOWN for
incoming RELEASE COMPLETE messages in NT mode.
Dialtone in NT mode works, everything else needs more testing.
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
ftmod_misdn currently returns len == 0 if the incoming message,
that triggered the read() call, does not contain any data.
Users of ftdm_channel_read() need to handle this case, or they
may possibly end up in an endless loop.
This patch reworks the ftdm_channel_read() handling in ftmod_isdn
and prevents it from entering an endless loop. The read error counter
is reset on first sucessful read w/ data.
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
ftmod_pritap: Abort before overflowing spanparameters array and initialize to all zero
ftmod_isdn: Fix overflow check, skip over parameters without name or value, initialize spanparameters array to all zero.
ftmod_libpri: Skip over parameters without name or value, initialize spanparameters array to all zero and drop "i < 10" hardcoded check.
This should fix:
2010-11-15 09:24:34.609515 [ERR] ftmod_libpri.c:1741 Unknown parameter '', aborting configuration
2010-11-15 09:24:34.609515 [ERR] mod_freetdm.c:3080 Error configuring FreeTDM span BRI_1
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Reported-by: Ingmar Schraub <is@eseco.de>
- Requires non-public development version of libisdn(!)
- Based on older patches from http://oss.axsentis.de/gitweb/?p=ftmod_isdn.git;a=summary
- Rework of ftmod_isdn related buildsystem parts (Makefile.am, configure.in and libpcap.m4)