Andreas Eversberg [Sat, 28 Nov 2015 12:03:48 +0000 (13:03 +0100)]
SS5: improvements
- sending clear forward is now forced at any state
- sending signals are queued until last signal has vanished
- timeout while seized/dialing, as well as after busy/clear back
- release of party clears the line (after timeout)
- several minor features and fixes
it is now possible to break the outgoing exchange with:
2600+2400 140ms
0 ms delay
2400 200ms
manually acknowledgement of the answer signal is required then. therefore
the mute feature must be disabled. the delay feature should be used.
Andreas Eversberg [Sat, 28 Nov 2015 09:54:10 +0000 (10:54 +0100)]
perform default/timeout action when sending is complete
Andreas Eversberg [Fri, 27 Nov 2015 08:01:27 +0000 (09:01 +0100)]
SS5: removed star-release-feature
Andreas Eversberg [Thu, 26 Nov 2015 17:39:48 +0000 (18:39 +0100)]
Fixed several compiler warnings
Karsten Keil [Fri, 18 Sep 2015 15:15:52 +0000 (17:15 +0200)]
Add a dummy distdir and distclean targets in libgsmfr/Makefile
Karsten Keil [Fri, 18 Sep 2015 15:14:03 +0000 (17:14 +0200)]
Put fxs.h into noinst_HEADERS to have it in the make dist* tar balls
Jan Engelhardt [Sun, 7 Sep 2014 13:45:40 +0000 (15:45 +0200)]
build: remove doubly-defined SUBDIRS variable
Jan Engelhardt [Sun, 7 Sep 2014 13:23:30 +0000 (15:23 +0200)]
build: remove and ignore autogenerated files
Autogenerated files should not be part of the repository,
because they may change everytime.
Jan Engelhardt [Sun, 7 Sep 2014 13:19:06 +0000 (15:19 +0200)]
build: change outdated automake syntax by new
The two argument form for AM_INIT_AUTOMAKE is obsolete and
redundant.
Makefile.am:171: warning: 'INCLUDES' is the old name for
'AM_CPPFLAGS' (or '*_CPPFLAGS')
Andreas Eversberg [Fri, 13 Dec 2013 14:51:50 +0000 (15:51 +0100)]
GSM HR reference codec download location has changed
Andreas Eversberg [Sat, 1 Feb 2014 11:18:01 +0000 (12:18 +0100)]
Update MNCC_SOCK_VERSION to 5 (current jolly/testing branch of OpenBSC)
Peter Holik [Wed, 6 Nov 2013 06:57:09 +0000 (07:57 +0100)]
Add missing braces to chan_lcr.c
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Peter Holik [Wed, 6 Nov 2013 06:52:39 +0000 (07:52 +0100)]
Enable debugging of chan_lcr via ast_log
With this patches i see loggings in asterisk cli by enable debugging with
core set debug 1
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
This feature was disabled due to locking issues with older Asterisk versions.
Peter Holik [Wed, 6 Nov 2013 06:47:35 +0000 (07:47 +0100)]
Make LCR compile, even if POTS/FXS is not supported by mISDN
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Peter Stuge [Wed, 2 Oct 2013 16:02:17 +0000 (18:02 +0200)]
interface.conf: Verify that an rtp-bridge interface is also bridged
RTP bridging only works when interfaces are bridged so we now check
that the interface has been configured as bridge upon seeing rtp-bridge
during parsing of interface.conf.
Note: This change requires that rtp-bridge appears after bridge for
the interface. If this makes your existing configuration fail because
rtp-bridge appears before the bridge parameter then please move the
rtp-bridge line below the bridge line.
Holger Hans Peter Freyther [Tue, 12 Apr 2011 20:11:20 +0000 (22:11 +0200)]
autogen: Use autoreconf --install --force
Holger Hans Peter Freyther [Sun, 15 Jan 2012 09:49:43 +0000 (10:49 +0100)]
gsm: Implement the size checking of the hello packet
Holger Hans Peter Freyther [Sun, 15 Jan 2012 09:35:45 +0000 (10:35 +0100)]
mncc: Use stdint.h from C++, copy newer version of OpenBSC's mncc.h
* Use stdint.h... with the latest C++ spec there should even be a
cstdint include
* Update... including the version number and extended hello packet
Holger Hans Peter Freyther [Fri, 21 Oct 2011 12:11:04 +0000 (14:11 +0200)]
gsm: Verify the MNCC_VERSION of the BSC/MS and close the socket on mismatch
The BSC/MS will send a Hello packet that includes the version number,
make LCR verify this version number and close the socket in case it
does not match a supported version.
Andreas Eversberg [Thu, 6 Jun 2013 08:29:27 +0000 (10:29 +0200)]
Fixed linker flags for chan LCR
Thanx to Nick Vervelakis for pointing to this bug.
Andreas Eversberg [Sun, 31 Mar 2013 10:52:55 +0000 (12:52 +0200)]
Store states of HR codec
This is required, if multiple HR calls are made, because HR codec
uses global variables. These global variables are stored after
encoding/decoding and recalled before coding/decoding.
Andreas Eversberg [Sun, 31 Mar 2013 10:52:04 +0000 (12:52 +0200)]
Add essential option to enable and prefer half rate calls to mobile
Without it might not be possible to use TCH/H, unless OpenBSC would
support late assignment.
Andreas Eversberg [Sun, 31 Mar 2013 10:50:04 +0000 (12:50 +0200)]
Add support for TCH/H and half rate codec
Andreas Eversberg [Sun, 31 Mar 2013 10:47:31 +0000 (12:47 +0200)]
Fix: libtool is not part of repository
Andreas Eversberg [Sun, 31 Mar 2013 10:35:00 +0000 (12:35 +0200)]
Add GSM HR reference codec that is automatically downloaded from 3gpp.org
Andreas Eversberg [Tue, 26 Mar 2013 08:01:00 +0000 (09:01 +0100)]
Andreas Eversberg [Tue, 26 Mar 2013 07:57:58 +0000 (08:57 +0100)]
AMR codec support
Andreas Eversberg [Thu, 14 Mar 2013 08:58:31 +0000 (09:58 +0100)]
Add AMR codec, for supporting EFR transcoding
The AMR codec is added, but at this point only EFR payload is
supported.
Nick Vervelakis [Mon, 11 Mar 2013 16:02:50 +0000 (17:02 +0100)]
Fix missing includes for GSM BS support
Andreas Eversberg [Sat, 9 Mar 2013 17:15:33 +0000 (18:15 +0100)]
Add GSM full rate codec to LCR's source repository
There is no more need to download a seperate version of GSM full rate
(06.10) codec anymore.
Andreas Eversberg [Sun, 6 Jan 2013 07:58:16 +0000 (08:58 +0100)]
SIP: Extract IMSI from SIP URI
OpenBTS forwards IMSI via SIP name. In order to allow routing decision
by IMSI, the IMSI must be extracted from SIP name.
Andreas Eversberg [Sun, 6 Jan 2013 05:33:56 +0000 (06:33 +0100)]
Fix: Correctly forward facility IE content
Andreas Eversberg [Wed, 26 Dec 2012 23:40:28 +0000 (00:40 +0100)]
Fix: Make action.cpp compile without mISDN/FXS support
Andreas Eversberg [Mon, 17 Dec 2012 05:12:39 +0000 (06:12 +0100)]
Fix: Only screen caller ID 2 and redir ID when existing
Thanx to Wimpy for pointing to this bug.
Andreas Eversberg [Sun, 16 Dec 2012 08:54:44 +0000 (09:54 +0100)]
Change Version to 1.14
Andreas Eversberg [Sun, 16 Dec 2012 07:57:57 +0000 (08:57 +0100)]
Added option to change DTMF decoding threshold level
If not given, the DSP modules' default value is used, rather than setting
it to 0. This was a bug.
Andreas Eversberg [Thu, 22 Nov 2012 13:48:44 +0000 (14:48 +0100)]
Fix: Disable DTMF dialing after first received KP (pulse) digit
Once a pulse digit is detected, it makes no sense to detect DTMF.
Pulses will create distortion with some phones, causing false
detection of DTMF tones.
Andreas Eversberg [Sun, 16 Dec 2012 08:31:36 +0000 (09:31 +0100)]
Add FXS support
This requires FXS support to mISDN too.
Andreas Eversberg [Sat, 8 Dec 2012 09:58:47 +0000 (10:58 +0100)]
Fix: 3PTY bridge must check, if other 3PTY member is mISDN or not
To make decision for mISDN bridge or lcr bridge, it it is required to
check both joins that share same 3PTY bridge.
Andreas Eversberg [Tue, 4 Dec 2012 15:43:12 +0000 (16:43 +0100)]
chan_lcr: Replaced 'n' (no DTMF) option with 'D' (DTMF)
The option 'n' was actually broken. Now it is replaced, because
generated DTMF tones may cause delay to SIP connections.
Andreas Eversberg [Tue, 4 Dec 2012 14:41:23 +0000 (15:41 +0100)]
Fixed early audio with chan_lcr (Asterisk)
If progress message is received, go into proceeding state.
Send audio, if proceeding/alerting state, so RTP stream is sent in both
directions. This is essential when using NAT.
Andreas Eversberg [Tue, 4 Dec 2012 14:38:25 +0000 (15:38 +0100)]
Fixed version issue of chan_lcr
Andreas Eversberg [Wed, 14 Nov 2012 09:42:55 +0000 (10:42 +0100)]
Updated MNCC interface
The structure of BEARER CAPABILITY has been expanded.
Andreas Eversberg [Tue, 13 Nov 2012 07:42:31 +0000 (08:42 +0100)]
SIP: Allow early audio on incomming connections at SIP interface
In order to provide internal tones, a clock is used to generate
chunks of 160 samples. If no tones are provided and if audio is
bridged, it is forwarded as usual.
In order to provide early audio on SIP trunk, "tones yes" must be set
at interface.conf.
In order to receive early audio from SIP trunk, "earlyb yes" must be
set at interface.conf.
Andreas Eversberg [Mon, 12 Nov 2012 11:20:27 +0000 (12:20 +0100)]
Fix: Set correct local RTP port
Andreas Eversberg [Tue, 21 Aug 2012 08:34:15 +0000 (10:34 +0200)]
Fix: Allow recording of audio for SIP/remote/GSM interfaces too
Andreas Eversberg [Tue, 21 Aug 2012 07:44:33 +0000 (09:44 +0200)]
Fix: Track notification messages at partyline too
This is required, so inactive parties will be marked as beeing "on hold".
These parties will be removed from the bridge, so the partyline is not
disturbed by hold music comming from inactive parties.
Thanx to Atul for pointing to this bug.
Andreas Eversberg [Tue, 21 Aug 2012 07:43:50 +0000 (09:43 +0200)]
Removed obsolete logging code
Andreas Eversberg [Tue, 21 Aug 2012 06:50:35 +0000 (08:50 +0200)]
Fix: Don't forward MESSAGE_TRAFFIC to endpoint instance
Thanx to Atul for catching this bug
Birger Harzenetter [Tue, 21 Aug 2012 06:44:34 +0000 (08:44 +0200)]
Fix: Append information (overlap dialing) to Asterisk's extension string
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Andreas Eversberg [Tue, 21 Aug 2012 06:36:33 +0000 (08:36 +0200)]
Store caller/dialing info for calls via remote interfaces (chan_lcr)
Andreas Eversberg [Tue, 21 Aug 2012 06:23:19 +0000 (08:23 +0200)]
Fix: Polling of file descriptors
It is only done when enabled by config or when any SIP interface is
created.
Thanx to Wimpy for catching this bug.
Andreas Eversberg [Tue, 21 Aug 2012 06:07:45 +0000 (08:07 +0200)]
Fix: chan_lcr must use right context attribute for Asterisk version >= 11
Andreas Eversberg [Mon, 20 Aug 2012 06:56:39 +0000 (08:56 +0200)]
Fix: Bind RTP/RTCP socket pairs correctly
Andreas Eversberg [Sun, 19 Aug 2012 15:06:45 +0000 (17:06 +0200)]
Fix: Always keep transmit timer on when mISDN channel is open
This way the buffer load is always calculated correctly.
Andreas Eversberg [Sun, 19 Aug 2012 10:33:54 +0000 (12:33 +0200)]
Fix: Encoding of 3PTY result facility IE
Andreas Eversberg [Sun, 19 Aug 2012 09:11:59 +0000 (11:11 +0200)]
Fix: Send tones/patterns/announcements for remote connections
Andreas Eversberg [Sun, 19 Aug 2012 08:24:39 +0000 (10:24 +0200)]
Add screening of caller ID for remote (asterisk) connections
Andreas Eversberg [Sun, 19 Aug 2012 07:42:43 +0000 (09:42 +0200)]
Cleanup: Make interface name be part of Port class
Andreas Eversberg [Sun, 19 Aug 2012 06:36:45 +0000 (08:36 +0200)]
chan_lcr: Select remote interface by chan_lcr
Usage: Dial(LCR/<interface>/<digits>/<options>)
The interface must match the interface name in interface.conf. If omitted,
the first remote interface is used.
Example:
Dial(LCR/ast/123) will send a call to LCR and select remote interface
'ast'.
Dial(LCR//123) will send a call to LCR and select the first remote
interface.
Now it is possible to have multiple remote interfaces.
Andreas Eversberg [Sun, 19 Aug 2012 06:35:55 +0000 (08:35 +0200)]
Fix: Match complete string when filtering for interface
Andreas Eversberg [Sun, 19 Aug 2012 06:34:32 +0000 (08:34 +0200)]
Display source and destination interface at endpoint logging
Andreas Eversberg [Sat, 18 Aug 2012 08:10:08 +0000 (10:10 +0200)]
Fix: Prevent Asterisk from aborting when delivering ast_frames
Andreas Eversberg [Sat, 18 Aug 2012 06:55:01 +0000 (08:55 +0200)]
Fix: LCR's DTMF detection will be enabled and used by default
Using 'n' option will disable it
Using 'a' option will disable it and use Asterisk's DTMF detection instead.
Andreas Eversberg [Sat, 18 Aug 2012 06:19:42 +0000 (08:19 +0200)]
Fix: Asterisk DTMF detection works now
To enable, use option "a".
-> for calls from LCR use lcr_config(a) in extensions.conf
-> for calls to LCR use Dial(LCR/pbx/<number>/a)
Andreas Eversberg [Thu, 16 Aug 2012 06:22:32 +0000 (08:22 +0200)]
Fix: chan_lcr will suppress audio traffic until ref is received
If no ref is received from LCR, the traffic may not be sent to LCR.
Andreas Eversberg [Thu, 16 Aug 2012 06:21:43 +0000 (08:21 +0200)]
chan_lcr: Disabled bridge, because there is no concept right now.
Andreas Eversberg [Fri, 10 Aug 2012 07:58:36 +0000 (09:58 +0200)]
Removed obsolete definition of media_type2name() from sip.h
Andreas Eversberg [Wed, 8 Aug 2012 15:55:27 +0000 (17:55 +0200)]
Fixed broken chan_lcr of last commit
Andreas Eversberg [Wed, 8 Aug 2012 07:20:02 +0000 (09:20 +0200)]
Fixed compiling of chan_lcr with Asterisk 1.6.2.2
Andreas Eversberg [Wed, 8 Aug 2012 07:19:00 +0000 (09:19 +0200)]
Fix: Process tx-load when briding with jitter buffer disabled
Andreas Eversberg [Thu, 2 Aug 2012 12:44:19 +0000 (14:44 +0200)]
Updated default config examples
Andreas Eversberg [Mon, 30 Jul 2012 20:17:39 +0000 (22:17 +0200)]
Fixed parsing capability conditions
Andreas Eversberg [Sun, 29 Jul 2012 12:33:15 +0000 (14:33 +0200)]
Define prload of mISDN buffer by chan_lcr (required for fax)
Use q<ms> option to peload.
Andreas Eversberg [Sun, 29 Jul 2012 10:49:08 +0000 (12:49 +0200)]
Bump version to 1.13
Andreas Eversberg [Sun, 29 Jul 2012 10:39:09 +0000 (12:39 +0200)]
Maintain states for remote socket connections
Andreas Eversberg [Sun, 29 Jul 2012 10:18:02 +0000 (12:18 +0200)]
Implement 3PTY bridge of two 'join's.
Andreas Eversberg [Sat, 28 Jul 2012 14:24:06 +0000 (16:24 +0200)]
Add 3PTY facility to invoke conference call via functional protocol
Andreas Eversberg [Sat, 28 Jul 2012 14:04:58 +0000 (16:04 +0200)]
Don't remove lock, if other LCR is using it
Andreas Eversberg [Sat, 28 Jul 2012 09:16:42 +0000 (11:16 +0200)]
Add conference mixing to LCR's internal bridge
Bride allow now to forward between two paries or mix between three to N
parties.
Andreas Eversberg [Sat, 28 Jul 2012 09:15:30 +0000 (11:15 +0200)]
Add global variable for Law encoded silence
Andreas Eversberg [Sat, 28 Jul 2012 06:21:47 +0000 (08:21 +0200)]
Changed bridge structure to hold 1..n members instead of only 1..2
Andreas Eversberg [Fri, 27 Jul 2012 15:20:43 +0000 (17:20 +0200)]
Removed complete bchannel handling from chan_lcr
The remote application interface does not allow any bchannel to be
exported or imported. Audio traffic via socket interface is used instead.
The joinremote instance became obsolete and is removed.
The remote action (routing) became obsolete, use interface.conf instead.
The handling of loopback device became obsolete and was removed
The chan_lcr does not rely on mISDN anymore, that means:
- can be used with GSM and without mISDN at all.
- chan_lcr can be used as internal extension of LCR (e.g. SIP phone)
(chan_lcr can be handled as any other interface)
- no loopback device to be used anymore.
Andreas Eversberg [Sun, 19 Aug 2012 18:50:10 +0000 (20:50 +0200)]
Allow calls to multiple interfaces simultaniosuly
For external calls, the list of interfaces is used to select the first
available/not busy interface. If the interface list is stated with +,
the call is forked to all interfaces.
Andreas Eversberg [Fri, 27 Jul 2012 07:07:35 +0000 (09:07 +0200)]
Fix: Make GSM BS compile without SIP support
Janis Ruksans [Sat, 30 Jun 2012 12:04:23 +0000 (14:04 +0200)]
List files for dist that are not picked up automatically from build
rules; and filter out unnecessary ones for distuninstallcheck.
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Janis Ruksans [Sat, 30 Jun 2012 12:03:32 +0000 (14:03 +0200)]
Reference the sources via $< for chan_lcr, and prefixing with $(srcdir)
otherwise. Note: Autoconf manual says that using $< in ordinary make
rules is not portable, but LCR is Linux specific anyway.
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Janis Ruksans [Sat, 30 Jun 2012 12:02:19 +0000 (14:02 +0200)]
Use variables set by configure script instead of installing files to a
hardcoded location. This is practically the same as the reverted part of
commit
51655a18 except that $(DESTDIR) *is not* prepended to CC defines;
doing so would break staged installs.
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Janis Ruksans [Thu, 28 Jun 2012 06:11:57 +0000 (08:11 +0200)]
On many systems /var/run is not world-writeable, and writing PID fails
if LCR is not being run as root. The lock directory, on the contrary,
must be writable by the lcr process, and can be configured by the user.
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Janis Ruksans [Thu, 28 Jun 2012 06:06:15 +0000 (08:06 +0200)]
Use loops for str* checks and to install configuration and tone files,
with the actual files listed in make variables.
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Janis Ruksans [Thu, 28 Jun 2012 06:02:55 +0000 (08:02 +0200)]
The third parameter to ast_channel_tech.requester is const qualified,
causing GCC to emit a warning about incompatible pointer types when
initializing lcr_tech. Fix this by adding necessary const's to lcr_request.
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Janis Ruksans [Thu, 28 Jun 2012 06:01:25 +0000 (08:01 +0200)]
If ast_channel struct is not declared before ast_register_application2,
gcc thinks that the implicit declaration in module.h is different from
the one in channel.h, and issues a warning about incompatible pointer
types. A forward declaration before including module.h fixes this.
Due to some brain-deadness in Ast, including channel.h before module.h
causes the compilation fail altogether.
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Janis Ruksans [Thu, 28 Jun 2012 05:59:48 +0000 (07:59 +0200)]
Use AC_CHECK_TYPE and correct quoting for Asterisk struct checks, and add
case for ind_tone_zone_sound (Asterisk 1.6.0).
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
Birger Harzenetter [Sun, 24 Jun 2012 06:33:59 +0000 (08:33 +0200)]
Changes needed for Asterisk TRUNK 357721
Birger Harzenetter [Sun, 17 Jun 2012 07:35:30 +0000 (09:35 +0200)]
Fixed typo
Birger Harzenetter [Sat, 16 Jun 2012 07:52:48 +0000 (09:52 +0200)]
Adds screening of redirecting number
Andreas Eversberg [Sun, 20 May 2012 15:45:56 +0000 (17:45 +0200)]
[SIP] Allow setting local port for SIP interface
Andreas Eversberg [Sun, 20 May 2012 14:37:27 +0000 (16:37 +0200)]
Only receive RTP audio data, if connected to remote.
Andreas Eversberg [Sun, 20 May 2012 14:36:06 +0000 (16:36 +0200)]
Fixed reloading of interfaces with SIP support
SIP instance is now moved to new interface list at is should be.
Birger Harzenetter [Tue, 17 Apr 2012 10:56:49 +0000 (12:56 +0200)]
Changes for Asterisk TRUNK r357721
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>