Andreas Eversberg [Mon, 24 Dec 2018 13:10:46 +0000 (14:10 +0100)]
SIP: Add DTMF support (receive INFO only)
Andreas Eversberg [Mon, 24 Dec 2018 12:39:58 +0000 (13:39 +0100)]
more sip fixes
Andreas Eversberg [Sat, 3 Nov 2018 15:00:39 +0000 (16:00 +0100)]
some sip fixes
Andreas Eversberg [Sat, 29 Sep 2018 19:22:21 +0000 (21:22 +0200)]
SIP: Fix incoming re-invite
Andreas Eversberg [Wed, 1 Nov 2017 19:43:13 +0000 (20:43 +0100)]
SIP: Register, STUN and authentication support...
- Register works in both ways
- STUN works as client
- Authentication to remote endpoints only
- Early audio (183) works in both directions
- Caller ID works in both directions
Note: The implementation is only a small subset of many SIP features.
Andreas Eversberg [Sun, 5 Nov 2017 08:19:11 +0000 (09:19 +0100)]
GSM: Minor unused variable fix
Andreas Eversberg [Sun, 5 Nov 2017 08:15:51 +0000 (09:15 +0100)]
Add -lncurses to LDD flags
Andreas Eversberg [Sun, 5 Nov 2017 07:20:29 +0000 (08:20 +0100)]
Lowered volume level of tones and announcements
Andreas Eversberg [Sat, 4 Nov 2017 14:32:48 +0000 (15:32 +0100)]
Make tones-dir option available for all interface (interface.conf)
Andreas Eversberg [Tue, 31 Oct 2017 06:24:53 +0000 (07:24 +0100)]
Added patch to fix sofia-sip compiler issue
Andreas Eversberg [Tue, 31 Oct 2017 05:16:09 +0000 (06:16 +0100)]
Fixed usage of uninitialized memory, thax to valgrind
Andreas Eversberg [Sun, 4 Jun 2017 09:22:51 +0000 (11:22 +0200)]
GSM: Fixes to GSM interface (multiple networks)
* Multiple network instances are now possible to attach multiple networks
* Early audio handling fixed
* Number type can be given from base station (setup / setup confirm)
* Equal callref for different GSM-MS instances are handled correctly
Andreas Eversberg [Sat, 30 Jan 2016 14:38:02 +0000 (15:38 +0100)]
GSM: Add audio frame type for uncompressed 16 bit frame
It is usefull for connecting MNCC to other networks than GSM.
Andreas Eversberg [Sat, 30 Jan 2016 14:36:50 +0000 (15:36 +0100)]
GSM: A breakdown of MNCC socket causes all calls to be released correctly
Andreas Eversberg [Tue, 15 Dec 2015 19:49:18 +0000 (20:49 +0100)]
Fixed compiler warnings
Andreas Eversberg [Sat, 28 Jun 2014 07:24:14 +0000 (09:24 +0200)]
Data-Over-Voice
An experimental feature to send and receive an identification over
voice channel.
If a party answers, the ID is transmitted some seconds afterwards.
The calling party listens 30 seconds after receiving an answer message
for the ID.
Add to your extension's settings file:
dov_ident <id string without white spaces>
dov_log /path/to/log/file
dov_type pwm|pcm
dov_level 0|level
'pwm' survives analog transcoding.
'pcm' is fast and will almost not be recognised.
'level' can be used to alter default signal amplitude (100..30000).
Andreas Eversberg [Sat, 28 Jun 2014 07:16:51 +0000 (09:16 +0200)]
For DOV: Cast input of some string macros
Andreas Eversberg [Sat, 28 Jun 2014 07:14:44 +0000 (09:14 +0200)]
For DOV: LCR random number generator
Generate random number from jitter of all messages inside LCR.
Andreas Eversberg [Sun, 23 Dec 2012 05:45:43 +0000 (06:45 +0100)]
Experimental crypto feature: Support for libvootp
Andreas Eversberg [Sun, 13 Dec 2015 07:20:39 +0000 (08:20 +0100)]
SS5: Special feature to mute only when also respoinding with a tone
This is quite useful for breaking and seizing line in backward
direction. (breaking an incomming call)
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.