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
On Tue, Jun 19, 2012 at 1:58 AM, Ellen Apolinar < ellen.apolinar.td@googlemail.com> wrote:
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
Which mISDN are you using?
I compiled my LCR with ./configure --prefix=xxxxxxxxx --with-gsm-bs --with-asterisk
Typically this would fail but I went to an earlier mISDN version and it worked perfectly.
Hey Don,
thanks for your help.
I use mISDN.v2, it was already integrated in the kernel (3.0.22).
The matter is that the module mISDN_l1loop isn't in the kernel-integrated mISDN-folder integrated so I installed the newest version from mISDN (.v2) to copy the mISDN_l1loop-files in the mISDN-directory from the kernel. But that didn't work and since them I get an error everytime I want to load the hfcmulti-module:
modprobe hfcmulti FATAL: Error inserting hfcmulti (/lib/modules/3.0.22/kernel/drivers/isdn/mISDN/hfcmulti.ko): Invalid argument
I deleted the copied mISDN_l1loop-files but the error is still there.
With lcpci -v I see that the module isn't loaded for the hfc-e1 card and with lsmod I can see that hfcmulti doesn't appear there.
Before I copied the mISDN_l1loop-files mISDN worked without errors and mISDN_info showed me the card and was loaded. What didn't work was the mISDN_l1loop and lcr.
Now I don't know what to do. Google is not a great help in this case and the only thing I changed was the copying from the mISDN_l1loop-files. Also depmod -a and a reboot doesn't change anything.
Best regards Ellen
2012/6/19 Don Fanning don@00100100.net
On Tue, Jun 19, 2012 at 1:58 AM, Ellen Apolinar < ellen.apolinar.td@googlemail.com> wrote:
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
Which mISDN are you using?
I compiled my LCR with ./configure --prefix=xxxxxxxxx --with-gsm-bs --with-asterisk
Typically this would fail but I went to an earlier mISDN version and it worked perfectly.
dmesg shows:
[ 2840.213250] base_sock_release(c50fd980) sk=eb58a000 [ 2913.933158] hfcpci: disagrees about version of symbol confirm_Bsend [ 2913.933169] hfcpci: Unknown symbol confirm_Bsend (err -22) [ 2913.933194] hfcpci: disagrees about version of symbol l1_event [ 2913.933200] hfcpci: Unknown symbol l1_event (err -22) [ 2913.933232] hfcpci: disagrees about version of symbol mISDN_freebchannel [ 2913.933236] hfcpci: Unknown symbol mISDN_freebchannel (err -22) [ 2913.933277] hfcpci: disagrees about version of symbol bchannel_senddata [ 2913.933280] hfcpci: Unknown symbol bchannel_senddata (err -22) [ 2913.933292] hfcpci: disagrees about version of symbol mISDN_initbchannel [ 2913.933295] hfcpci: Unknown symbol mISDN_initbchannel (err -22) [ 2913.933361] hfcpci: disagrees about version of symbol mISDN_clear_bchannel [ 2913.933365] hfcpci: Unknown symbol mISDN_clear_bchannel (err -22) [ 2913.933408] hfcpci: disagrees about version of symbol recv_Bchannel [ 2913.933411] hfcpci: Unknown symbol recv_Bchannel (err -22) [ 2913.933430] hfcpci: disagrees about version of symbol get_next_bframe [ 2913.933433] hfcpci: Unknown symbol get_next_bframe (err -22) [ 2918.580253] hfcmulti: disagrees about version of symbol l1_event [ 2918.580260] hfcmulti: Unknown symbol l1_event (err -22) [ 2918.580281] hfcmulti: disagrees about version of symbol mISDN_freebchannel [ 2918.580285] hfcmulti: Unknown symbol mISDN_freebchannel (err -22) [ 2918.580334] hfcmulti: disagrees about version of symbol bchannel_senddata [ 2918.580337] hfcmulti: Unknown symbol bchannel_senddata (err -22) [ 2918.580348] hfcmulti: disagrees about version of symbol mISDN_initbchannel [ 2918.580352] hfcmulti: Unknown symbol mISDN_initbchannel (err -22) [ 2918.580403] hfcmulti: disagrees about version of symbol recv_Bchannel_skb [ 2918.580406] hfcmulti: Unknown symbol recv_Bchannel_skb (err -22) [ 2918.580422] hfcmulti: disagrees about version of symbol mISDN_clear_bchannel [ 2918.580425] hfcmulti: Unknown symbol mISDN_clear_bchannel (err -22) [ 2918.580460] hfcmulti: disagrees about version of symbol recv_Bchannel [ 2918.580464] hfcmulti: Unknown symbol recv_Bchannel (err -22) [ 2918.580480] hfcmulti: disagrees about version of symbol get_next_bframe [ 2918.580483] hfcmulti: Unknown symbol get_next_bframe (err -22)
Okay, it seems that there is still a problem because I installed mISDN.v2. But I removed all files from the installed mISDN version so this shouldn't be the reason. But it is.
So perhaps somebody knows how to solve this problem. Is it a good idea to build a new kernel or to remove the kernel-integrated mISDN and install it new?
Best regards Ellen
2012/6/22 Peter Stuge peter@stuge.se
Ellen Apolinar wrote:
modprobe hfcmulti FATAL: Error inserting hfcmulti (/lib/modules/3.0.22/kernel/drivers/isdn/mISDN/hfcmulti.ko): Invalid argument
Try look at the end of dmesg output at this point. It may say what exactly is invalid and in which argument.
//Peter
Ellen Apolinar wrote:
[ 2918.580480] hfcmulti: disagrees about version of symbol get_next_bframe [ 2918.580483] hfcmulti: Unknown symbol get_next_bframe (err -22)
Okay, it seems that there is still a problem because I installed mISDN.v2. But I removed all files from the installed mISDN version so this shouldn't be the reason. But it is.
So perhaps somebody knows how to solve this problem.
Out-of-tree kernel drivers have to be built against the particular kernel source tree that also built the kernel that the drivers will be loaded into. I prefer doing all these steps manually, rather than relying on any scripts if there are some. It's a bit more work but instead quite deterministic.
Is it a good idea to build a new kernel
If you didn't build the kernel yourself already then I think that's a good idea.
or to remove the kernel-integrated mISDN and install it new?
This doesn't seem to me like it would make a difference.
In general I suggest looking for kernel development resources, maybe there's a mailing list for mISDN? This building an out-of-tree driver against an in-tree version of an externally maintained subsystem is a fairly unusual operation.
//Peter
On Fri, Jun 22, 2012 at 3:12 AM, Peter Stuge peter@stuge.se wrote:
Ellen Apolinar wrote:
[ 2918.580480] hfcmulti: disagrees about version of symbol
get_next_bframe
[ 2918.580483] hfcmulti: Unknown symbol get_next_bframe (err -22)
Okay, it seems that there is still a problem because I installed
mISDN.v2.
But I removed all files from the installed mISDN version so this
shouldn't
be the reason. But it is.
So perhaps somebody knows how to solve this problem.
I remember running into this as well.
Again, I would wipe out everything in /lib/modules/`uname -r`/extra and /lib/modules/`uname -r`/kernel/drivers/isdn/hardware/mISDN, reinstall from source then ldconfig and depmod -a. Make sure you don't have the old drivers loaded onto the stack either by doing a lsmod/rmmod.
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
Hey Don,
you are great! Thanks for your help, it worked. I can load hfcmulti and it is list under <lspci -v> for the HFC-E1 card and also <misdn_info> founds the card. I'm very happy that it is working again after it broke. :-)
But the problem with lcr is still there:
<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.25 13:45:11 000001 000001 DEBUG (in join_free() line 99): no more pending join(s), done!
And <lcradmin state> shows:
Failed to connect to socket "/var/tmp/LCR.socket". Is LCR running?
@Andreas: Thanks, I didn't know that. I prefer to work with mISDN & LCR & Asterisk because I have these installed and if it is possible to run OpenBSC with mISDN, mISDNuser, lcr and Asterisk I want to try this. Do you know if it is required to use lcr with gsm for connect OpenBSC and Asterisk if I don't use sip?
Regards and thank you for your help. Ellen
2012/6/24 Andreas Eversberg andreas@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
On Mon, Jun 25, 2012 at 4:50 AM, Ellen Apolinar < ellen.apolinar.td@googlemail.com> wrote:
GSM is enabled, but not compiled. Use --with-gsm-bs or --with-gsm-ms while
configure!
It's telling you what to do... You need to recompile LCR with the option
"--with-gsm-bs" and if you want to interface with asterisk "--with-asterisk"
Hi Andreas,
Do we still have to check out from jolly-rtp branch or the rtp-bridge now work with main openbsc repo ?
Rgds Nik
On Sun, Jun 24, 2012 at 12:13 PM, Andreas Eversberg andreas@eversberg.euwrote:
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
Hi Don,
Thanks for your answer but please, don't think that I didn't try it with ./configure --with-asterisk --with-gsm-bs. I tried it. But if I want to do <make> it failes. Everytime. This is what I get:
/usr/src/lcr# 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
I deinstalled and reinstalled LCR. I get LCR 1.7 from here: http://www.linux-call-router.de/ I haven't found the reason for this yet and I have read that <--with-asterisk> isn't needed, also in this E-Mail communication Andreas said that it is not possible to have mISDN with LCR and with gsm. An alternatively way is to use sip instead of mISDN what I want to do if there is no chance to have it with mISDN.
I have read the HowTos for installing LCR with Asterisk, but the most of them are old. And I have read that chan_lcr isn't needed anymore with the newest OpenBSC.
Regards Ellen
2012/6/26 Nik Pakar nikpakar@gmail.com
Hi Andreas,
Do we still have to check out from jolly-rtp branch or the rtp-bridge now work with main openbsc repo ?
Rgds Nik
On Sun, Jun 24, 2012 at 12:13 PM, Andreas Eversberg andreas@eversberg.euwrote:
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
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@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
@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@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@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
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@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@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@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
Hello all,
I have cloned the lcr from the below link.
Development git
git clone git://git.misdn.eu/lcr.git/ -b master lcr-master
Cloning from this git url i am able to get all the sip.cpp and sip.h header files. This gives me to do the configure along with sip.
./configure --without-asterisk --with-gsm-ms --with-sip
But i loose when doing the make.
When I do 'make' it it produces following error.
mISDN.cpp:61: error: aggregate ‘mi_ext_fn_s myfn’ has incomplete type and cannot be defined mISDN.cpp: In function ‘int mISDN_initialize()’: mISDN.cpp:88: error: ‘mISDN_set_debug_level’ was not declared in this scope mISDN.cpp:90: error: ‘mISDN_set_debug_level’ was not declared in this scope make[1]: *** [mISDN.o] Error 1 make[1]: Leaving directory `/root/catchercatcher/lcr-master' make: *** [all] Error 2
Can someone kindly help me at this stage.
Many thanks
Regards,
Altaf On Tue, Jun 26, 2012 at 4:42 PM, Ellen Apolinar < ellen.apolinar.td@googlemail.com> wrote:
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@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@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@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
Hello everybody,
I tried it again with mISDN and chan_lcr.
You can see the state here: http://www.ip-phone-forum.de/showthread.php?t=247932&p=1842689&viewf...
lcradmin state shows:
GSM(port 1: mISDN_l1loop.1) TE ptp l2hold use:0 L2 unkn L1 down GSM(port 2: mISDN_l1loop.2) NT ptp use:0 L2 UP L1 UP Remote: asterisk
I loaded mISDN_l1loop with
pri=1 nchannel=20
The connection between OpenBSC and LCR seems to work and with the help from chan_lcr it seems that there is a connection between LCR and Asterisk (lcradmin state -> "Remote: asterisk").
But I expected to see the hfc-e1 card in "lcradmin state" and not only mISDN_l1loop. I have tried to change the interface.conf-file but that makes thinks more confusion. Either I did it wrong or this was the wrong way.
Aside on that, is there a way to test OpenBSC + mISDN + LCR + Asterisk without an ISDN phone or a hardware BTS? Actually there is no way to test it with hardware except the HFC-E1 card.
Asterisk, OpenBSC and Telnet are working, also LCR. But I don't know if all configurations are right and if it really would work if I connect a ISDN phone or a BTS.
Thanks for your help. Best regards Ellen
P.S.: If someone could explain what exactly to do to work with sip + chan_lcr it would be very appreciated because I also like to test it this way.
2012/6/26 altaf sk altaf329@gmail.com
Hello all,
I have cloned the lcr from the below link.
Development git
git clone git://git.misdn.eu/lcr.git/ -b master lcr-master
Cloning from this git url i am able to get all the sip.cpp and sip.h header files. This gives me to do the configure along with sip.
./configure --without-asterisk --with-gsm-ms --with-sip
But i loose when doing the make.
When I do 'make' it it produces following error.
mISDN.cpp:61: error: aggregate ‘mi_ext_fn_s myfn’ has incomplete type and cannot be defined mISDN.cpp: In function ‘int mISDN_initialize()’: mISDN.cpp:88: error: ‘mISDN_set_debug_level’ was not declared in this scope mISDN.cpp:90: error: ‘mISDN_set_debug_level’ was not declared in this scope make[1]: *** [mISDN.o] Error 1 make[1]: Leaving directory `/root/catchercatcher/lcr-master'
make: *** [all] Error 2
Can someone kindly help me at this stage.
Many thanks
Regards,
Altaf On Tue, Jun 26, 2012 at 4:42 PM, Ellen Apolinar < ellen.apolinar.td@googlemail.com> wrote:
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@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@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@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