The error is solved. This only happens if I start LCR
and then OpenBSC
because with LCR OpenBSC is also started.
Regards
Ellen
2012/6/26 Ellen Apolinar <ellen.apolinar.td(a)googlemail.com>
@Don: Thanks, yes, that was the problem. I
didn't know that the version
from linux-call-router.de is so old.
@Mailinglist:
I tried it again. And this time I installed it from git:
git clone git://git.misdn.eu/lcr.git/
cd /usr/src/lcr
./configure –without-asterisk --with-gsm-bs
make
make install
In the last installation I installed it from linux-call-router.de.
Configuration with --with-sip wasn't available.
lcr start:
** LCR Version 1.10
ERROR Cannot get device information for port 1. (ioctl IMGETDEVINFO
failed ret=-1)
LCR 1.10 started, waiting for calls...
lcradmin state
Ext(port 0: hfc-e1.1) TE ptp l2hold use:0 L2
unkn L1 unkn
Int (port 1: ) extension not loaded
Also OpenBSC worked. Now I get this error massage:
./osmo-nitb -c openbsc.cfg -C
1 device found
id: 0
Dprotocols: 00000018
Bprotocols: 0000006e
protocol: 3
nrbchan: 30
name: hfc-e1.1
could not bind l2 socket Device or resource busy
<0005> bsc_init.c:512 Error enabling E1 input driver
I don't know what is wrong and how I can solve this. Google wasn't very
helpful in this case.
And how can I connect LCR to OpenBSC?
And what can I do with lcradmin state?
Best regards
Ellen
2012/6/26 Ellen Apolinar <ellen.apolinar.td(a)googlemail.com>
Hey Andreas,
I try the way over SIP. But perhaps I make something wrong.
What I want to do:
cd /usr/src/lcr
./configure --prefix=/usr/src/lcr --without-misdn --with-sip
What I get:
configure: WARNING: unrecognized options:
--without-misdn, --with-sip
What I am able to do:
./configure --prefix=/usr/src/lcr --with
--with-asterisk --with-gsm-ms --with-PACKAGE
--with-ssl
--with-gsm-bs --without-PACKAGE --with-ss5
Makefile:
ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE = #
ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE =
ENABLE_GSM_BS_FALSE = #
ENABLE_GSM_BS_TRUE =
ENABLE_GSM_FALSE = #
ENABLE_GSM_MS_FALSE =
ENABLE_GSM_MS_TRUE = #
ENABLE_GSM_TRUE =
ENABLE_SS5_FALSE =
ENABLE_SS5_TRUE = #
I change to:
ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE = #
ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE =
ENABLE_GSM_BS_FALSE =
ENABLE_GSM_BS_TRUE = #
ENABLE_GSM_FALSE = #
ENABLE_GSM_MS_FALSE = #
ENABLE_GSM_MS_TRUE =
ENABLE_GSM_TRUE =
ENABLE_SS5_FALSE =
ENABLE_SS5_TRUE = #
make:
make all-am
make[1]: Entering directory `/usr/src/lcr'
gcc -DWITH_GSM_BS -I./openbsc/include -I./libosmocore/include
-I./openbsc -Wall -DCONFIG_DATA="\"/usr/local/lcr\""
-DSHARE_DATA="\"/usr/local/lcr\""
-DLOG_DIR="\"/usr/local/lcr\""
-DEXTENSION_DATA="\"/usr/local/lcr/extensions\"" -D_GNU_SOURCE -fPIC
-c
chan_lcr.c -o chan_lcr.po
chan_lcr.c: In function ‘send_setup_to_lcr’:
chan_lcr.c:644:12: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:655:12: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c: In function ‘lcr_in_setup’:
chan_lcr.c:858:2: warning: passing argument 9 of ‘__ast_channel_alloc’
makes integer from pointer without a cast [enabled by default]
/usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but
argument is of type ‘char *’
chan_lcr.c:883:6: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:885:6: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:887:6: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:890:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:893:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:896:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:900:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:903:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:906:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:909:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c: In function ‘handle_queue’:
chan_lcr.c:1707:18: error: incompatible types when assigning to type
‘union ast_frame_subclass’ from type ‘char’
chan_lcr.c: In function ‘lcr_request’:
chan_lcr.c:1820:2: warning: passing argument 9 of ‘__ast_channel_alloc’
makes integer from pointer without a cast [enabled by default]
/usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but
argument is of type ‘char *’
chan_lcr.c: In function ‘lcr_call’:
chan_lcr.c:1927:9: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:1927:31: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1928:29: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1931:9: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:1931:32: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1932:30: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1934:9: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:1934:33: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1935:31: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c: In function ‘lcr_write’:
chan_lcr.c:2164:6: error: wrong type argument to unary exclamation mark
chan_lcr.c:2166:20: error: invalid operands to binary & (have ‘union
ast_frame_subclass’ and ‘format_t’)
chan_lcr.c: In function ‘lcr_read’:
chan_lcr.c:2229:25: error: incompatible types when assigning to type
‘union ast_frame_subclass’ from type ‘format_t’
chan_lcr.c: In function ‘lcr_indicate’:
chan_lcr.c:2274:8: warning: assignment from incompatible pointer type
[enabled by default]
chan_lcr.c:2289:8: warning: assignment from incompatible pointer type
[enabled by default]
chan_lcr.c:2316:8: warning: assignment from incompatible pointer type
[enabled by default]
chan_lcr.c:2381:14: error: dereferencing pointer to incomplete type
chan_lcr.c:2382:33: error: dereferencing pointer to incomplete type
chan_lcr.c: At top level:
chan_lcr.c:2602:2: warning: initialization from incompatible pointer
type [enabled by default]
chan_lcr.c:2602:2: warning: (near initialization for
‘lcr_tech.requester’) [enabled by default]
chan_lcr.c: In function ‘load_module’:
chan_lcr.c:2818:2: warning: passing argument 2 of
‘ast_register_application2’ from incompatible pointer type [enabled by
default]
/usr/include/asterisk/module.h:458:5: note: expected ‘int (*)(struct
ast_channel *, const char *)’ but argument is of type ‘int (*)(struct
ast_channel *, void *)’
make[1]: *** [chan_lcr.po] Error 1
make[1]: Leaving directory `/usr/src/lcr'
make: *** [all] Error 2
make install:
gcc -DWITH_GSM_BS -I./openbsc/include
-I./libosmocore/include
-I./openbsc -Wall -DCONFIG_DATA="\"/usr/local/lcr\""
-DSHARE_DATA="\"/usr/local/lcr\""
-DLOG_DIR="\"/usr/local/lcr\""
-DEXTENSION_DATA="\"/usr/local/lcr/extensions\"" -D_GNU_SOURCE -fPIC
-c
chan_lcr.c -o chan_lcr.po
chan_lcr.c: In function ‘send_setup_to_lcr’:
chan_lcr.c:644:12: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:655:12: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c: In function ‘lcr_in_setup’:
chan_lcr.c:858:2: warning: passing argument 9 of ‘__ast_channel_alloc’
makes integer from pointer without a cast [enabled by default]
/usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but
argument is of type ‘char *’
chan_lcr.c:883:6: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:885:6: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:887:6: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:890:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:893:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:896:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:900:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:903:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:906:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:909:7: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c: In function ‘handle_queue’:
chan_lcr.c:1707:18: error: incompatible types when assigning to type
‘union ast_frame_subclass’ from type ‘char’
chan_lcr.c: In function ‘lcr_request’:
chan_lcr.c:1820:2: warning: passing argument 9 of ‘__ast_channel_alloc’
makes integer from pointer without a cast [enabled by default]
/usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but
argument is of type ‘char *’
chan_lcr.c: In function ‘lcr_call’:
chan_lcr.c:1927:9: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:1927:31: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1928:29: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1931:9: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:1931:32: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1932:30: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1934:9: error: ‘struct ast_channel’ has no member named ‘cid’
chan_lcr.c:1934:33: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c:1935:31: error: ‘struct ast_channel’ has no member named
‘cid’
chan_lcr.c: In function ‘lcr_write’:
chan_lcr.c:2164:6: error: wrong type argument to unary exclamation mark
chan_lcr.c:2166:20: error: invalid operands to binary & (have ‘union
ast_frame_subclass’ and ‘format_t’)
chan_lcr.c: In function ‘lcr_read’:
chan_lcr.c:2229:25: error: incompatible types when assigning to type
‘union ast_frame_subclass’ from type ‘format_t’
chan_lcr.c: In function ‘lcr_indicate’:
chan_lcr.c:2274:8: warning: assignment from incompatible pointer type
[enabled by default]
chan_lcr.c:2289:8: warning: assignment from incompatible pointer type
[enabled by default]
chan_lcr.c:2316:8: warning: assignment from incompatible pointer type
[enabled by default]
chan_lcr.c:2381:14: error: dereferencing pointer to incomplete type
chan_lcr.c:2382:33: error: dereferencing pointer to incomplete type
chan_lcr.c: At top level:
chan_lcr.c:2602:2: warning: initialization from incompatible pointer
type [enabled by default]
chan_lcr.c:2602:2: warning: (near initialization for
‘lcr_tech.requester’) [enabled by default]
chan_lcr.c: In function ‘load_module’:
chan_lcr.c:2818:2: warning: passing argument 2 of
‘ast_register_application2’ from incompatible pointer type [enabled by
default]
/usr/include/asterisk/module.h:458:5: note: expected ‘int (*)(struct
ast_channel *, const char *)’ but argument is of type ‘int (*)(struct
ast_channel *, void *)’
lcr start:
** LCR Version 1.7
000000 DEBUG (in getrulesetbyname() line 1871): ruleset main found.
GSM is enabled, but not compiled. Use --with-gsm-bs or --with-gsm-ms
while configure!
--------------------- 2012.06.26 10:35:27 000001
000001 DEBUG (in join_free() line 99): no more pending join(s), done!
Sofiasip is installed. Is there anything I forget so I can't configure
LCR with sip?
Best regards.
Ellen
2012/6/24 Andreas Eversberg <andreas(a)eversberg.eu>
Ellen Apolinar wrote:
>
> OpenBSC seems to work without errors but to connect it with asterisk I
> need mISDN, mISDNuser and LCR.
>
> hi,
if you like to use lcr with gsm (bs or ms), then you cannot use
asterisk channel driver. it only works with isdn. but you can use sip. in
order to do that you may:
- disable mISDN (--without-misdn)
- enable sip (--with-sip), you also need to have sipsofia installed
- add a sip interface (see default/interface.conf). then everything is
possible without mISDN, but you cannot use isdn phones/lines in this setup.
example to just connect GSM and SIP interface without routing:
[GSM]
gsm-bs
tones yes
earlyb no
#rtp-bridge
bridge SIP
[SIP]
sip <local ip>[:local sip port] <asterisk sip ip>[:asterisk sip port]
tones no
earlyb yes
#rtp-bridge
bridge GSM
if asterisk and lcr run on the same machine, you need to change the sip
port on asterisk or lcr side.
if you like to use GSM codec on asterisk side, you may enable
rtp-bridge. then the asterisk directly negotiates the codec with the phone.
in this case GSM codec must be supported by asterisk. tested codecs are
FR(standard) and EFR.
regards,
andreas