Commit Graph

2601 Commits

Author SHA1 Message Date
Michael Jerris
2513388d8a clean up some bootstrap warnings 2014-03-07 18:36:26 -05:00
Ken Rice
6e7d5d0897 update copyright header for 2014 2014-02-12 12:08:56 -06:00
Moises Silva
b6133ecc95 OPENZAP-226 --resolve Hunting direction is reversed in the API
Minor modifications on the original patch to use ftdm_hunting_direction_t
everywhere instead of ftdm_direction_t or int

Patched-by: Marc Olivier Chouinard
2014-01-10 21:22:14 -05:00
Jeff Lenk
e75497c98d revert accidental change in last commit for freetdm sang isdn 2014-01-01 12:08:40 -06:00
Jeff Lenk
153f66d739 add freetdm vs2012 build support 2013-12-31 16:45:44 -06:00
Moises Silva
c62db1a600 freetdm: ftmod_wanpipe: Remove chatty debug msg, not really useful anyways 2013-11-27 09:51:33 -05:00
Moises Silva
8469e83835 freetdm: ftmod_analog_em: Remove constant CAS debug log 2013-11-08 19:12:44 -05:00
Moises Silva
7542c5877c freetdm: E&M: Set the line offhook when suspended 2013-11-08 02:22:36 -05:00
Moises Silva
3b0e8d9e2d freetdm: ftmod_zt: Refactor event processing to store OOB events that arrive during read/write operations 2013-11-08 02:22:05 -05:00
Moises Silva
774784fbee mod_freetdm: Handle read errors gracefully when the device is dead already 2013-11-08 02:21:42 -05:00
Moises Silva
545d1e5079 freetdm: Fix hangup supervision on inbound calls for Analog E&M 2013-11-08 02:19:41 -05:00
Anthony Minessale
460b8014b9 add channel to logline 2013-10-31 11:21:34 -05:00
Moises Silva
271eda310e freetdm: Added CAS hangup bit checking to the E&M signaling module 2013-10-24 19:05:35 -04:00
Moises Silva
2b3c98b069 ftmod_analog_em: Block/unblock signaling when a span is stopped/started 2013-10-24 19:05:12 -04:00
Moises Silva
21b129e940 Allow setting/getting signaling status from E&M channels 2013-10-06 19:08:45 -04:00
Moises Silva
bb67ff5e0b OPENZAP-219 --resolve
Calling ton and caller ton is not parsed at all in libpri signaling module
Patched-by: Markus Schräder
2013-10-04 12:12:47 -04:00
Moises Silva
a48bfafddd Fix log line in ftmod_analog.c 2013-09-09 02:06:17 -04:00
Moises Silva
d8a9da2044 mod_freetdm: E&M Analog fixes
* Rename option ringback-during-collect to immediate-ringback
* Allow regular ringback tone with immediate-ringback, not just a wav file
* Do not request full frame of data, just packet_len which is what we receive per IO interval
* Ignore user data when playing ringback tone
2013-08-21 18:21:02 -04:00
Moises Silva
10908a0a8d Merge remote-tracking branch 'origin/master' into ftdm_em_playback 2013-08-14 15:57:15 -04:00
Moises Silva
9d5f14a15d freetdm: Fix longstanding minor bug in ftdm_span_send_signal causing dial-regex in Analog modules to not work
The return status of the signal callback was not being passed to the signaling module delivering the signal
2013-08-14 15:53:51 -04:00
Travis Cross
6a5595b049 Improve our .gitignore files
Avoid ignoring files actually in our tree, and ignore some generated
files that were not being ignored previously.
2013-07-27 03:41:11 +00:00
Anthony Minessale
d2a2e4ce15 FS-5568 --resolve the real problem is that L=-1 is not valid because the L param is about how many times to generate the output while generating the tone so -1 is impossible because it can never end to let you hear it. The real fix is to not allow -1 loops=-1 is the correct way to do this because that is parsed after the tone is generated and repeats the entire thing. Doing something like L=100 actually generates the whole slinear audio 100 times into memore where loops=100 only generates the little snippet and repeats it after it was generated. 2013-07-02 08:44:47 -05:00
Moises Silva
f9007fb2b6 freetdm: Added E & M logic for routing success and fail regex parameters 2013-06-26 00:16:11 -04:00
Moises Silva
bd4a5914dc freetdm: Override regular media with ringback in E&M when a ringback file is specified 2013-06-26 00:10:04 -04:00
Moises Silva
626dd2551a mod_freetdm: Expose new ringback E&M parameters in the XML config 2013-06-25 23:41:59 -04:00
Moises Silva
cc6ee0322e Added ability to play a wav file as ringback tone during the COLLECT state of E&M signaling module
This is configured through 2 new parameters:
ringback-during-collect=yes|no
ringback-file=<wav file path>

You may not want to use this if your E&M lines are connected to traditional phones, otherwise
you will hear ringback tone while pressing digits. This is mostly useful with old switches that do
not provide ringback tone but the user is already done dialing (perhaps the signaling was converted from
ISDN to E&M and the full number was received in a single SETUP message)
2013-06-25 22:19:24 -04:00
Nathan Neulinger
32adc789f6 make noexpandtab explicit in all vim modelines other than xml files 2013-06-25 11:50:17 -05:00
Moises Silva
e5f2282fe1 OPENZAP-215 --resolve
The state FTDM_CHANNEL_STATE_RINGING is not used when there is media available. We have
FTDM_CHANNEL_PROGRESS_MEDIA for that, therefore the pri_acknowledge() call should not set
the info argument to avoid sending an indication of media to the other end, as that may cause
the other end to not generate any ringing tone and at that moment we will not be generating
any ringing tone either and the caller will hear only silence
2013-06-23 21:52:31 -04:00
Brian West
b4ed2f55bf Up this buffer to prevent boxes from locking up if they receive more than 1000 bytes. 2013-06-04 17:10:05 -05:00
Jeff Lenk
6739889f65 OPENZAP-214 --resolve 2013-06-03 17:27:04 -05:00
Stefan Knoblich
6ca5a02656 FreeTDM: handle_core_command() clean up
Use uint64_t and FTDM_UINT64_FMT for flagval and "%u" for unsigned int.
Extend invalid channel id check to cover chan_id == 0 case.

Use ftdm_strlen_zero() and ftdm_array_len() instead of open-coding them.
Move some variables from global scope into local subcommand scope.

Various other little format string and variable naming fixes.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-06-02 03:02:14 +02:00
Stefan Knoblich
23c2c751bd FreeTDM: Move I/O interface lookup code into common ftdm_global_get_io_interface()
Auto-loading can be toggled by setting the new autoload parameter
to FTDM_FALSE/FTDM_TRUE.

Update ftdm_span_create() and ftdm_api_execute() to use the new code.

NOTE: Auto-loading of missing I/O interfaces remains enabled in both cases,
      but I guess we should disable it for ftdm_api_execute().

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-06-02 02:56:44 +02:00
Stefan Knoblich
85e2eaaf58 FreeTDM: Fix "ftdm core flags/spanflags" with flag names
"x >> 1" is _NOT_ the reverse of "1 << x"...

Use code from Sean Eron Andersen's "Bit Twiddling Hacks"
(=> http://graphics.stanford.edu/~seander/bithacks.html#IntegerLog)
to compute the log2 value (= position in the enum) of the bitflag.

This preserves the current behaviour, which is rather odd because
it is based on the position of the value in the enum, not its
actual (bit flag) value.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-06-01 22:30:45 +02:00
Stefan Knoblich
e857527a3b FreeTDM: Rewrite "ftdm core" print_* functions (to use new span iterator)
Simplify code by using shared string constants using bool (0/1) index,
!!-operator and negation-via-XOR.

Future optimization: Preallocate and re-use of iterators, to avoid
repeatedly allocating and freeing of memory.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-06-01 22:19:16 +02:00
Stefan Knoblich
5154bd847b ftmod_libpri: Fix channel iterator memory leak
Keep the original iterator around to be able to actually free it
after use.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-06-01 21:09:48 +02:00
Stefan Knoblich
4bc05eae68 FreeTDM: Add span iterator
Part of my ongoing effort to split ftdm_io.c into more manageable pieces.

This change (along with others in the future) allows decoupling of the
span registry and its users, in preparation of moving all span related
functions and data structures into ftdm_span.c.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-06-01 15:20:51 +02:00
Stefan Knoblich
9da0183352 FreeTDM: Remove unused local 'interfaces' variable
Zero-filled, but never used otherwise (and static), drop it.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2013-05-31 19:26:36 +02:00
Stefan Knoblich
8019af49a4 ftmod_libpri: Fix possible NULL-ptr dereference crash in on_restart(_ack)()
Catch single channel RESTART/RESTART ACK events for non-B-channels,
that would lead to a NULL pointer dereference, because those do not have
per-channel private data (chan->call_data = chan_priv == NULL).

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-05-21 17:50:54 +02:00
Stefan Knoblich
39fb4544dd FreeTDM: ftmod_misdn uses clock_gettime() which is in librt, add a check
Fixes -Wl,-z,now / -Wl,-z,defs errors about undefined symbols.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-05-10 19:04:10 +02:00
Stefan Knoblich
80a2b76620 FreeTDM: Make libpri pri_version() check -Wunused-but-set-variable safe
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-05-10 19:04:10 +02:00
Stefan Knoblich
284ce5407b FreeTDM: Move external ftmod_* library dependencies to _LIBADD
Making the build -Wl,--as-needed safe.
Tested on Centos 5.x + Gentoo.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-05-10 19:04:10 +02:00
Stefan Knoblich
b793ccbe43 FreeTDM: Fix implicit conversion between enumeration types error
Full clang error message:

  error: implicit conversion from enumeration type 'ftdm_bool_t' to
  different enumeration type 'ftdm_status_t' [-Werror,-Wconversion]

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-05-10 19:04:10 +02:00
Stefan Knoblich
cbf22d8a32 FreeTDM: Silence -Wtautological-compare warnings emitted by clang
Fixes "warning: comparison of unsigned expression >= 0 is always true".

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-05-10 19:04:09 +02:00
Stefan Knoblich
ae58a4c1ba FreeTDM: Use ftdm_unused_arg() to silence -Wunused-argument warnings
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-05-10 19:04:09 +02:00
Stefan Knoblich
81702d18fb FreeTDM: Add ftdm_unused_arg() macro to silence "unused parameter" compiler warnings
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-05-06 17:50:10 +02:00
Moises Silva
4ff826c27d OPENZAP-200 --resolve
Patch provided by: Spencer Thomason

Implement appropiate caller/called TON in ftmod_libpri
2013-04-09 12:29:47 -04:00
David Yat Sin
fb9163fe5a Fix for not flushing DTMF buffer at end of call 2013-03-21 10:41:16 -04:00
David Yat Sin
20110f4569 Freetdm - ISDN:Fix for race condition where we receive a new call, and did not finish clearing existing call internally. 2013-03-19 14:32:03 -04:00
Moises Silva
5f876497bc freetdm: - Added ftdm_usage command to check if a channel has calls (ie, is busy)
- Refactored ftdm CLI management to allow standalone APIs to be registered
         - Minor logging changes here and there
2013-03-08 15:15:07 -05:00
Brian West
e0066b68d7 don't use : in the file name, makes it somewhat problematic to scp these files even when quoted 2013-03-07 09:41:51 -06:00