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.
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.
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>
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>
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>
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>
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>
Because EFR/AMR/HR codecs use dynamic RTP payload types, it is essential
to forward the actual media types between endpoints too. These media
types are used for negotiation of codecs. A dynamic payload type is
used as given by remote peer. Locally generated payload types are used
when offering codecs to remote peer.
Since LCR does not put hands on any RTP frame when directly bridged between
OpenBSC and SIP, it will now allow all speech codecs that are commonly supported
by MS and remote SIP endpoint.
It must be noted that OpenBSC must support forwarding the codec types that
MS and remote SIP endpoints support.
Currently LCR negotiates the following codecs for GSM:
- Full Rate
- EFR
- AMR
- Half Rate