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.
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.
Call received on an interface can directly be forwarded to a given
destination interface, instead of routing the call through PBX
application. This way calls can be forwarded without going through
route.conf.
Currently only SIP and GSM destinations are supported. Also there
are no tones generated, if one side provides no tones, but the
other wants to receive them.
The keyword "bridge <output interface>" in interface.conf is used.
Without that keyword, incomming calls are handled as usual.
The dependency on mISDN (loopback interface) is completely removed
from GSM and SIP interfaces.
The built in bridge of LCR now forwards audio data between these
interface instances or between these instances and other instances.
Additionally both GSM BS and SIP support direct forwarding of RTP
traffic between other SIP endpoint and OpenBSC, so no traffic is
forwarded by the LCR itself. This is done by forwarding RTP peer
informations between these interface instances.
There are two modes:
The remote mode is used to route a call directly to Asterisk or route a
call from Asterisk to an ISDN interface. (the old way)
The interface mode is used to handle chan_lcr as an interface, so calls
from Asterisk can be routed and behave like they come from an ISDN
interface. (documentation for that will follow)
chan_lcr can be handled as an interface. This way it is possible to (e.g.):
- make a SIP phone become an LCR extension with all LCR features.
- make conference calls. (untested)
- perform parallel ringing. (ISDN phone and SIP phones can ring in
parallel.)
- do voice recoding.
It is still also possible to link chan_lcr directly without interface
(as before).
Documentation/howto for that will follow.
On a multipoint bus, it is required to assign a channel with no other
alternative allowed. This is required, because an individual phone on the
bus may not choose a different channel, while other phones accept the
indicated channel. Also an individual phone does not have the information
about other available channels. On a point-to-point configuration it is
possible anyway.
In this multipoint case, the channel assignment is now forced automatically,
even if the 'force' keyword is not specified in the "out-channel" of
interface.conf.
Additionally "lcradmin portinfo" shows the channel selection settings now.
You may change the path of socket and lock files.
LCR admin socket's flags can now be altered to allow access to other users.
Lock and socket files will now be removed when terminating LCR.
modified: Makefile
modified: chan_lcr.c
modified: default/options.conf
modified: lcradmin.c
modified: lcrsocket.h
modified: main.c
modified: options.c
modified: options.h
modified: socket_server.c
-> if initial caller uses pure data mode (or video), the bchannels for this call are handled in HDLC mode. (hardware/software briding is still applicable.)
modified: apppbx.cpp
modified: chan_lcr.c
modified: dss1.cpp
modified: dss1.h
modified: lcradmin.c
modified: lcrsocket.h
modified: mISDN.cpp
modified: mISDN.h
modified: message.h
modified: socket_server.c