Hey folks,

OpenBSC seems to work without errors but to connect it with asterisk I need mISDN, mISDNuser and LCR.


LCR doesn't seem to work. Here what I get as I searched for the problems:


lcradmin state
Failed to connect to socket "/var/tmp/LCR.socket".
Is LCR running?


lcr query
** LCR  Version 1.7
-> Using 'misdn_info'
Found 1 port
  Port  0 'hfc-e1.1':        TE/NT-mode PRI E1  (for phone lines & E1 devices)
                             30 B-channels: 1-15 17-31
                                B-protocols: RAW HDLC X75slp L2:DSP L2:DSPHDLC


lcr fork
** LCR  Version 1.7
000000 DEBUG (in getrulesetbyname() line 1871): ruleset main found.
root@ctdi-HP-Compaq-dc7100-CMT-PE219ET:~#
LCR: Starting daemon.
GSM is enabled, but not compiled. Use --with-gsm-bs or --with-gsm-ms while configure!


I installed LCR in the following way:
./configure --prefix=/usr/src/lcr --with-gsm-bs
make
make install


There were no errors after configure but <make> and <make install> showed following errors:

make
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 *)’
make: *** [chan_lcr.po] Error 1

I have read that with Asterisk 1.8 and LCR 1.7 and the new OpenBSC chan_lcr isn't used and there is no gsm.conf-file needed. But I'm not sure and the most manuals and HotTo's I've found in the internet are old.

(I am working with Ubuntu 11.10 and Kernel 3.0.22, mISDN is integrated with Kernel, mISDN_info works, mISDNuser is installed, OpenBSC gives no errors, Asterisk works with Twinkle since a few months without errors, I use a Cologne Chip HFC-E1 card which works with hfcmulti driver.)

It would be appreciate if someone of you can help me in this case. I also searched for a solution in this german forum: http://www.ip-phone-forum.de
(I also tried to work with Dahdi/zaphfc and Dahdi/cwain but they aren't recommended for using an HFC-E1 evalutaion board which is noch from Junghanns.)


Best regards
Ellen