[asterisk-users] AVM Fritz! mISDN with Kernel 2.6.32 - Any experiences? - Email found in subject

DLeese at LStelcom.com DLeese at LStelcom.com
Mon Mar 1 09:39:18 CST 2010


Hi again!

> I have excellent success with the tiny "fcpci" and chan_capi, which is 
> also working great with capi4hylafax. See
> net-dialup/fcpci-0.1-r1 in gentoo (should not be difficult to use this 
> on other distros, but I have never done so). Do not confuse this with 
> the "fritzcapi"!

I managed to install fcpci and it seems to run fine (capiinfo output). Unfortunately i cant compile chan_capi against my Asterisk trunk r240716. Neither the trunk/head nor the 1.1.4 Version compiles. All fail with the following output:

srvpbx:/usr/src/chan-capi-HEAD# make
 [CC] chan_capi.c -> chan_capi.o
In file included from chan_capi.c:32:
chan_capi.h:34:26: error: asterisk/rtp.h: Datei oder Verzeichnis nicht gefunden
chan_capi.c: In function âlocal_queue_frameâ:
chan_capi.c:803: error: invalid operands to binary == (have âunion <anonymous>â and âintâ)
chan_capi.c: In function âinterface_cleanupâ:
chan_capi.c:1071: warning: implicit declaration of function âast_rtp_destroyâ
chan_capi.c: In function âsend_progressâ:
chan_capi.c:1165: error: incompatible types in assignment
chan_capi.c: In function âclear_channel_fax_loopâ:
chan_capi.c:2884: error: invalid operands to binary == (have âunion <anonymous>â and âintâ)
chan_capi.c: In function âcapidev_handle_did_digitsâ:
chan_capi.c:3548: error: incompatible types in assignment
chan_capi.c: In function âcapi_queue_cause_controlâ:
chan_capi.c:3564: warning: missing braces around initializer
chan_capi.c:3564: warning: (near initialization for âfr.subclassâ)
chan_capi.c:3569: error: incompatible types in assignment
chan_capi.c:3573: error: incompatible types in assignment
chan_capi.c: In function âcapidev_handle_info_indicationâ:
chan_capi.c:3876: error: incompatible types in assignment
chan_capi.c:3886: error: incompatible types in assignment
chan_capi.c: In function âhandle_facility_indication_dtmfâ:
chan_capi.c:4138: error: incompatible types in assignment
chan_capi.c:4149: error: incompatible types in assignment
chan_capi.c: In function âcapidev_handle_data_b3_indicationâ:
chan_capi.c:4292: error: incompatible types in assignment
chan_capi.c:4294: error: incompatible types in assignment
chan_capi.c: In function âcapi_signal_answerâ:
chan_capi.c:4316: warning: missing braces around initializer
chan_capi.c:4316: warning: (near initialization for âfr.subclassâ)
chan_capi.c: In function âcapidev_handle_disconnect_indicationâ:
chan_capi.c:4605: warning: missing braces around initializer
chan_capi.c:4605: warning: (near initialization for âfr.subclassâ)
chan_capi.c:4654: error: incompatible types in assignment
chan_capi.c: In function âcapidev_handle_connection_confâ:
chan_capi.c:5025: warning: missing braces around initializer
chan_capi.c:5025: warning: (near initialization for âfr.subclassâ)
chan_capi.c: At top level:
chan_capi.c:7746: warning: initialization from incompatible pointer type
chan_capi.c: In function âconf_interfaceâ:
chan_capi.c:8153: warning: passing argument 2 of âast_parse_allow_disallowâ from incompatible pointer type
chan_capi.c:8156: warning: passing argument 2 of âast_parse_allow_disallowâ from incompatible pointer type
make: *** [chan_capi.o] Fehler 1

Please excuse the messed up german output, i have yet to discover how to set a debian box to "german keyboard, everything else english".

I am limited to Asterisk trunk r240716 because i want to evaluate the T.38 <-> T.30 gateway function, which can only be patched into this revision. 
In my opinion there are the following alternatives in order to get the Fritz card running with Asterisk:

A)
Get chan-capi to compile:
Unfortunately my C knowledge seems insufficent for this. I have found out that there is noch rtp.h in the asterisk source dir, only a file named rtp_engine.h. Changing the include accordingly unfortunately only fixes the very first error.
I can't make any sense out of the second error (error: invalid operands to binary == (have "union <anonymous>" and "int")), as, in line 803, the left-hand operand of the == is no union, let alone a anonymous union.
I have already posted this at the chan-capi-users ML, but with no answer so far.

B)
Use a binary chan_capi.so from elsewhere?!
I run Debian 5.0.2 Kernel 2.6.26-2-686. Could i take a compiled chan_capi.so from a machine with a different Asterisk 1.6 Version?

C)
Find another way to use fcpci eith Asterisk.
Is this even possible? With mISDN? ...?

Comments or any other Ideas are very appreciated.

Sincerly 

Daniel Leese


P.s.: Philipp, many thanks fo your answers so far ;)



More information about the asterisk-users mailing list