Capi Treiber für AVM Fritz Card bei *

D

Darkstar23483

Guest
Hallo,

ich habe Asterisk@home aufgesetzt und hatte bisher mit X-Lite Clienten gearbeitet. Im Nachhinein habe ich nun 2 AVM Fritz ISDN Karten eingebaut und weis nun nicht ob ich dort noch irgendwas an treiber installieren muss. in der sys info im amp werden mir die beiden karten angezeigt aber ich hab jetzt mal weiter recherchiert bezüglich der konfiguration und dann taucht in erster linie die capi.conf auf welche ich gar nicht habe, also denk ich mal das ich dort noch was installieren muss. allerdings weiss ich gar nicht wie ich das anstellen könnte da ich mich mit dem redhat system gar nicht auskenne. das ich mich da mit root anmelde war bisher quasi alles :) den rest habe ich dann im amp konfiguriert. Ich müsste dann auch irgendwie die treiber auf den Rechner bekommen uns sowas und ich bekomme nichtmal das Mounten vom cd-rom oder sowas hin :)

Würde mich auf jede Hilfe freuen
 
Hi Darkstar,

Hab deine PM erhalten... kein Problem - fühle mich auch nicht belästigt ;) Werde morgen mal schauen, dass ich dir ein paar Zeilen schreiben kann.

Vorab kannst du dich aber auch gerne schon einmal hier im Forum unter:

asterisk-> Asterisk ISDN mit CAPI
und
asterisk -> Asterisk ISDN mit HFC

ein wenig schlau machen. Das ist nämlich genau das was du brauchst. Ich glaube sogar schon einmal über ein Thread gestolpert zu sein, der genau das, was du machen willst beschrieben hat.

Also keine Panik - das kriegen wir schon hin ;)

Gruß und erstmal gute Nacht *gähhhn*

Holg
 
Hallo Holg,

ich habe mich auch vorher schon ein bisschen durchgelesen, wobei ich mir nicht ganz sicher war zunächst welche Treiber ich explizit benutzen muss, da ich verschiedene aussagen gelesen habe war. Ich habe folgende Treiber schon einmal herunter geladen und mit Mühe auf den Asterisk geschmissen was für mich schon schwer war als alter Linux Noob, von wegen Mounten und entpacken. Aber der Installation hörte es schon auf :) Also diese treiber befinden siche nun in der entpackten Version auf dem Asterisk Rechner.

1) chan_capi-cm-0.5.4.tar (Beitrag ausm Forum)
2) fcpci-suse93-3-11-07 (von der avm Seite die Linuxtreiber, allerdings gabs nur SUSE)

Weis jetz nicht so ganz welche ich davon installieren soll und vor allem wie ich das mache. :) (Install Befehle etc.)

Gruß, Darkstar
 
Hi Darkstar,

Unter Linux gibt es leider fast keinen Windows-like Install-Befehl. Es gibt zwar div. Packet-Verwaltungen, aber das alles hilft dir im Falle von A@H nicht wirklich. Hier muss man den Quell-Code (in diesem Falle für das Zusammenspiel von ISDN-Karte und asterisk) frisch kompilieren (übersetzen). Das bedeutet, dass der Quellcode (sehr oft in der Programmiersprache c geschrieben) von einem Programm in eine Sprache übersetzt werden muss, die der PC (Linux) versteht. Dieser Vorgang nennt sich kompilieren.
Wenn du die notwendigen Pakete installiert hast (das ist im Falle von A@H, soweit ich weiss gegeben) musst du lediglich mit make den ganzen Quellcode übersetzten und anschließend mit make install die kompilierten Dateien in dein Dateisystem einbinden. Soweit zur Theorie kompilieren ;)

Treiber:
Im Falle von ISDN und asterisk interessieren die Hersteller-Treiber der Karte nicht wirklich (ausser du hast eine besondere Karte -> aktive ISDN-Karten). Meistens will man die Karte entweder mit Hilfe des CAPI oder bristuff Pakets im asterisk ansprechen.

Du musst also auf deinem asterisk@home PC ein asterisk kompilieren, das entweder mit Hilfe von einer HFC (bristuff) oder herkömmliche ISDN Karte (CAPI) sprechen kann. (Oder aber mit Hilfe einer aktiven Karte - da kenn ich mich aber nicht allzu gut aus)

bristuff:
Dieses Packet nimmt man, um im Prinzip mit asterisk einen NTBA zu simulieren. Du kannst dann hinter dein asterisk normale ISDN-Telefone und/oder eine komplette ISDN-Anlage dran klemmen und mit diesen dann über dein asterisk Telefonieren. Hierfür benötigst du eine ISDN-Karte die im sogenannten NT-Mode betrieben werden kann. Die sind an dem Köllner Dom auf dem Chipsatz zu erkennen. Bei ebay gibt es die so um die 30 ¤ glaub ich, im schlimmsten Fall im T-Punkt für 49,95 ¤

Ein guter Blog zum Einsteigen ist http://de.bach-online.de/blog/index.php?p=18

CAPI:
mit Passiven ISDN-Karten:
Damit kannst du dein asterisk an eine bestehende Telefonanlage anschliesen (so zu sagen wie ein Telefon). Hier benötigt man keine zusätzlichen Treiber und nur das CAPI Paket.

mit aktiven ISDN-Karten:
Hier kenn ich mich nicht allzu gut aus... werde es aber demnächst selber ausprobieren müssen, da ich für eine Firma so ein Teil zum Laufen bringen muss.
Ich glaube aber, dass hier so ein Treiber, wie du ihn beschrieben hast (ffpc-schlag-mich-tod) notwendig ist. Des weiteren muss man noch die Kernel-unterstützung für eine solche Karte aktiviert haben. Aber wie gesagt, da wird es bei mir ziehmlich schnell sehr dünn...

So wie ich dich verstanden habe, hättest du gerne ungefähr so ein System:


TELEKOM --------_________---------------- SIP - Telefone (Softphones)
.........................| .asterisk. |
SIP ---------------|________|------------[ ELMEG] ----------- ISDN / Analoge Tel

Mein Vorschlag wäre, du besorgst dir 2 HFC - ISDN Karten und hängst die an die beiden externen S0-Ports deiner TK-Anlage.

Um im Falle eines SIP-Ausfalls trotzdem noch erreichbar zu sein richtest du eine normale CAPI-Verbindung ins Telekom-Amt ein (eine oder zwei passive ISDN-Karten). Somit bist du weiter unter der bisherigen Nummer erreichbar und hast eine sogenannte Fall-Back Lösung.

Du kannst es aber auch nach der FAQ-Variante wie hier ( http://www.ip-phone-forum.de/spip/article.php3?id_article=10 ) berschrieben ausprobieren

Gruß
Holg
 
Hallo Holg,

da ich nun die 2 ISDN Karten käuflich erworben werde ich diese auch zunächst benutzen. Also brauche ich demnach, wenn ich es richtig verstanden habe das passende CAPI Packet. (welches wäre das jetzt genau)?

Den Link den du mir geschickt hast, beinhaltet ja unter anderem schon die Konfiguration der capi.conf, welche ich ja noch nicht habe. Also muss ich wahrscheinlich noch irgendwas Installieren, doch ich weis immer noch nicht genau was und wie :)

bezüglich deiner Skizze:

Du hast meine Vorstellung schon richtig verstanden. Es geht mir in erster Linie darum das ich mit den herkömlichen ISDN Telefon die Möglichkeit habe über VoIP rauszugehn. Ich möchte halt kein 2tes Telefon am Arbeitsplatz. Und mein nächster Schritt soll halt erstmal nur die Verbindung über capi zwischen asterisk und telefonanlage sein.

Gruß Darkstar
 
Hi Darkstar,

Du kannst dein asterisk wie ein normales Telefon an deine TK-Anlage hängen (interner S0-Bus) dann musst du aber asterisk eine Nummer (MSN) zuweisen und über diese kannst du dann asterisk anrufen und von dort aus dann weiter. Hierfür gibt es in den FAQs und hier im Forum bereits einige Beispiele...

Die capi.conf bekommst du, indem du das capi - Paket von junghanns.net auf deinen Rechner lädst, es entpackst (mit tar xvfz chan_capi.<Capi-Version>.tar.gz) und kompilierst.

Hierfür öffnest du das gerade entpackte Verzeichnis. cd chan_capi.<CApi-Version> und gibst den Befehl make ein.

Jetzt sollte dein REchner damit beschäftigt sein, das Capi-Paket zu kompilieren... das kann je nachdem was für ein Rechner du hast, ne Weile dauern.

anschliesend noch ein make install (das kopiert die nötigen Dateien, an die Stelle, wo sie im System hingehören) und zum Schluss ein make config (das kopiert u.a. die capi.conf nach /etc/asterisk)

Die ganze Vorgehensweise steht auch in dem entpackten Verzeichnis in der Datei INSTALL. mit cat INSTALL oder vi INSTALL kannst du dir deren Inhalt einmal genau anschauen.

Jetzt musst du alles, so wie du es willst anpassen. Hilfe findest du dafür in hier im Forum unter asterisk-> asterisk CAPI (oder so ähnlich) Dort sind viele Beispiele, wie man CAPI richtig konfiguriert.

Die richtige Version von chan_capi ist eigentlich immer die neuste ;o), da hier Bug-Fixes und Neuerungen drinne sind. Vor allem mit Standard-Karten sollte es da eigentlich keine Probleme geben. Wenn es beim kompilieren Probleme gibt (make chan_capi.<>) dann liegt es meist daran, das etwas auf deinem System fehlt, sollte aber im Falle von asterisk@home nicht der Fall sein.

Gruß
Holg
 
Hab noch was vergessen, du musst auch noch die modules.conf in /etc/asterisk anpassen. Und zwar so:

in /etc/asterisk/modules.conf insert the line:
load => chan_capi.so

and in the [global] section:
chan_capi.so=yes
 
Also erstmal vorweg bevor ich weitermache, wenn ich "make" passiert folgendes...(sieht nich gesund aus oder?)

Code:
chan_capi.c:2307: warning: implicit declaration of function `CONNECT_IND_CALLINGPARTYNUMBER'
chan_capi.c:2307: subscripted value is neither array nor pointer
chan_capi.c:2308: warning: passing arg 1 of `capi_number' makes pointer from integer without a cast
chan_capi.c:2312: warning: implicit declaration of function `CONNECT_IND_CIPVALUE'
chan_capi.c:2314: warning: implicit declaration of function `CONNECT_IND_BCHANNELINFORMATION'
chan_capi.c:2315: subscripted value is neither array nor pointer
chan_capi.c:2330: dereferencing pointer to incomplete type
chan_capi.c:2331: dereferencing pointer to incomplete type
chan_capi.c:2331: dereferencing pointer to incomplete type
chan_capi.c:2335: dereferencing pointer to incomplete type
chan_capi.c:2338: dereferencing pointer to incomplete type
chan_capi.c:2338: dereferencing pointer to incomplete type
chan_capi.c:2338: dereferencing pointer to incomplete type
chan_capi.c:2338: dereferencing pointer to incomplete type
chan_capi.c:2338: dereferencing pointer to incomplete type
chan_capi.c:2345: dereferencing pointer to incomplete type
chan_capi.c:2345: dereferencing pointer to incomplete type
chan_capi.c:2345: dereferencing pointer to incomplete type
chan_capi.c:2345: dereferencing pointer to incomplete type
chan_capi.c:2345: dereferencing pointer to incomplete type
chan_capi.c:2345: dereferencing pointer to incomplete type
chan_capi.c:2345: dereferencing pointer to incomplete type
chan_capi.c:2345: dereferencing pointer to incomplete type
chan_capi.c:2349: dereferencing pointer to incomplete type
chan_capi.c:2355: dereferencing pointer to incomplete type
chan_capi.c:2355: dereferencing pointer to incomplete type
chan_capi.c:2355: dereferencing pointer to incomplete type
chan_capi.c:2355: dereferencing pointer to incomplete type
chan_capi.c:2355: dereferencing pointer to incomplete type
chan_capi.c:2355: dereferencing pointer to incomplete type
chan_capi.c:2355: dereferencing pointer to incomplete type
chan_capi.c:2355: dereferencing pointer to incomplete type
chan_capi.c:2359: dereferencing pointer to incomplete type
chan_capi.c:2359: dereferencing pointer to incomplete type
chan_capi.c:2360: dereferencing pointer to incomplete type
chan_capi.c:2362: dereferencing pointer to incomplete type
chan_capi.c:2362: dereferencing pointer to incomplete type
chan_capi.c:2363: dereferencing pointer to incomplete type
chan_capi.c:2365: dereferencing pointer to incomplete type
chan_capi.c:2365: dereferencing pointer to incomplete type
chan_capi.c:2366: dereferencing pointer to incomplete type
chan_capi.c:2368: dereferencing pointer to incomplete type
chan_capi.c:2368: dereferencing pointer to incomplete type
chan_capi.c:2368: dereferencing pointer to incomplete type
chan_capi.c:2368: dereferencing pointer to incomplete type
chan_capi.c:2368: dereferencing pointer to incomplete type
chan_capi.c:2368: dereferencing pointer to incomplete type
chan_capi.c:2368: dereferencing pointer to incomplete type
chan_capi.c:2368: dereferencing pointer to incomplete type
chan_capi.c:2370: dereferencing pointer to incomplete type
chan_capi.c:2371: dereferencing pointer to incomplete type
chan_capi.c:2372: dereferencing pointer to incomplete type
chan_capi.c:2373: dereferencing pointer to incomplete type
chan_capi.c:2386: dereferencing pointer to incomplete type
chan_capi.c:2388: dereferencing pointer to incomplete type
chan_capi.c:2390: dereferencing pointer to incomplete type
chan_capi.c:2394: dereferencing pointer to incomplete type
chan_capi.c:2404: dereferencing pointer to incomplete type
chan_capi.c:2405: dereferencing pointer to incomplete type
chan_capi.c:2420: `CMSG2' undeclared (first use in this function)
chan_capi.c:2421: warning: implicit declaration of function `CONNECT_IND_PLCI'
chan_capi.c:2421: invalid lvalue in assignment
chan_capi.c:2422: invalid lvalue in assignment
chan_capi.c: At top level:
chan_capi.c:2429: syntax error before '*' token
chan_capi.c: In function `capi_handle_indication':
chan_capi.c:2433: `CMSG' undeclared (first use in this function)
chan_capi.c:2433: `CAPI_CONNECT' undeclared (first use in this function)
chan_capi.c:2441: `CAPI_DATA_B3' undeclared (first use in this function)
chan_capi.c:2444: `CAPI_CONNECT_B3' undeclared (first use in this function)
chan_capi.c:2447: `CAPI_CONNECT_B3_ACTIVE' undeclared (first use in this function)
chan_capi.c:2450: `CAPI_DISCONNECT_B3' undeclared (first use in this function)
chan_capi.c:2453: `CAPI_DISCONNECT' undeclared (first use in this function)
chan_capi.c:2456: `CAPI_FACILITY' undeclared (first use in this function)
chan_capi.c:2459: `CAPI_INFO' undeclared (first use in this function)
chan_capi.c:2462: `CAPI_CONNECT_ACTIVE' undeclared (first use in this function)
chan_capi.c: At top level:
chan_capi.c:2474: syntax error before '*' token
chan_capi.c: In function `capi_handle_facility_confirmation':
chan_capi.c:2476: warning: implicit declaration of function `FACILITY_CONF_FACILITYSELECTOR'
chan_capi.c:2476: `CMSG' undeclared (first use in this function)
chan_capi.c:2482: warning: implicit declaration of function `FACILITY_CONF_INFO'
chan_capi.c:2487: warning: implicit declaration of function `FACILITY_CONF_FACILITYCONFIRMATIONPARAMETE                       R'
chan_capi.c:2487: subscripted value is neither array nor pointer
chan_capi.c:2498: subscripted value is neither array nor pointer
chan_capi.c:2499: subscripted value is neither array nor pointer
chan_capi.c:2500: subscripted value is neither array nor pointer
chan_capi.c:2501: subscripted value is neither array nor pointer
chan_capi.c:2502: `p' undeclared (first use in this function)
chan_capi.c: At top level:
chan_capi.c:2516: syntax error before '*' token
chan_capi.c: In function `capi_handle_confirmation':
chan_capi.c:2520: `CMSG' undeclared (first use in this function)
chan_capi.c:2523: `CAPI_FACILITY' undeclared (first use in this function)
chan_capi.c:2526: `CAPI_CONNECT' undeclared (first use in this function)
chan_capi.c:2528: warning: implicit declaration of function `CONNECT_CONF_INFO'
chan_capi.c:2532: dereferencing pointer to incomplete type
chan_capi.c:2544: `CAPI_CONNECT_B3' undeclared (first use in this function)
chan_capi.c:2547: warning: implicit declaration of function `CONNECT_B3_CONF_INFO'
chan_capi.c:2548: dereferencing pointer to incomplete type
chan_capi.c:2550: dereferencing pointer to incomplete type
chan_capi.c:2551: dereferencing pointer to incomplete type
chan_capi.c:2554: `CAPI_ALERT' undeclared (first use in this function)
chan_capi.c:2557: warning: implicit declaration of function `ALERT_CONF_INFO'
chan_capi.c:2558: dereferencing pointer to incomplete type
chan_capi.c:2559: dereferencing pointer to incomplete type
chan_capi.c:2569: `CAPI_SELECT_B_PROTOCOL' undeclared (first use in this function)
chan_capi.c:2574: dereferencing pointer to incomplete type
chan_capi.c:2580: `CAPI_DATA_B3' undeclared (first use in this function)
chan_capi.c:2586: `CAPI_DISCONNECT' undeclared (first use in this function)
chan_capi.c:2587: `CAPI_DISCONNECT_B3' undeclared (first use in this function)
chan_capi.c:2588: `CAPI_LISTEN' undeclared (first use in this function)
chan_capi.c:2589: `CAPI_INFO' undeclared (first use in this function)
chan_capi.c: At top level:
chan_capi.c:2604: syntax error before '*' token
chan_capi.c: In function `capi_handle_msg':
chan_capi.c:2606: `CMSG' undeclared (first use in this function)
chan_capi.c:2609: `CAPI_IND' undeclared (first use in this function)
chan_capi.c:2610: `CAPI_CONF' undeclared (first use in this function)
chan_capi.c:2616: `CAPI_DATA_B3' undeclared (first use in this function)
chan_capi.c:2617: warning: format argument is not a pointer (arg 2)
chan_capi.c:2619: warning: format argument is not a pointer (arg 2)
chan_capi.c: In function `do_monitor':
chan_capi.c:2640: `_cmsg' undeclared (first use in this function)
chan_capi.c:2640: syntax error before "monCMSG"
chan_capi.c:2653: `monCMSG' undeclared (first use in this function)
chan_capi.c: In function `mkif':
chan_capi.c:2755: sizeof applied to an incomplete type
chan_capi.c:2759: sizeof applied to an incomplete type
chan_capi.c:2759: sizeof applied to an incomplete type
chan_capi.c:2759: sizeof applied to an incomplete type
chan_capi.c:2759: sizeof applied to an incomplete type
chan_capi.c:2759: sizeof applied to an incomplete type
chan_capi.c:2759: sizeof applied to an incomplete type
chan_capi.c:2761: dereferencing pointer to incomplete type
chan_capi.c:2763: dereferencing pointer to incomplete type
chan_capi.c:2763: dereferencing pointer to incomplete type
chan_capi.c:2763: dereferencing pointer to incomplete type
chan_capi.c:2763: dereferencing pointer to incomplete type
chan_capi.c:2763: dereferencing pointer to incomplete type
chan_capi.c:2763: dereferencing pointer to incomplete type
chan_capi.c:2763: dereferencing pointer to incomplete type
chan_capi.c:2763: dereferencing pointer to incomplete type
chan_capi.c:2764: dereferencing pointer to incomplete type
chan_capi.c:2764: dereferencing pointer to incomplete type
chan_capi.c:2764: dereferencing pointer to incomplete type
chan_capi.c:2764: dereferencing pointer to incomplete type
chan_capi.c:2764: dereferencing pointer to incomplete type
chan_capi.c:2764: dereferencing pointer to incomplete type
chan_capi.c:2764: dereferencing pointer to incomplete type
chan_capi.c:2764: dereferencing pointer to incomplete type
chan_capi.c:2765: dereferencing pointer to incomplete type
chan_capi.c:2765: dereferencing pointer to incomplete type
chan_capi.c:2765: dereferencing pointer to incomplete type
chan_capi.c:2765: dereferencing pointer to incomplete type
chan_capi.c:2765: dereferencing pointer to incomplete type
chan_capi.c:2765: dereferencing pointer to incomplete type
chan_capi.c:2765: dereferencing pointer to incomplete type
chan_capi.c:2765: dereferencing pointer to incomplete type
chan_capi.c:2766: dereferencing pointer to incomplete type
chan_capi.c:2766: dereferencing pointer to incomplete type
chan_capi.c:2766: dereferencing pointer to incomplete type
chan_capi.c:2766: dereferencing pointer to incomplete type
chan_capi.c:2766: dereferencing pointer to incomplete type
chan_capi.c:2766: dereferencing pointer to incomplete type
chan_capi.c:2766: dereferencing pointer to incomplete type
chan_capi.c:2766: dereferencing pointer to incomplete type
chan_capi.c:2780: dereferencing pointer to incomplete type
chan_capi.c:2782: dereferencing pointer to incomplete type
chan_capi.c:2783: dereferencing pointer to incomplete type
chan_capi.c:2784: dereferencing pointer to incomplete type
chan_capi.c:2785: dereferencing pointer to incomplete type
chan_capi.c:2786: dereferencing pointer to incomplete type
chan_capi.c:2787: dereferencing pointer to incomplete type
chan_capi.c:2788: dereferencing pointer to incomplete type
chan_capi.c:2789: dereferencing pointer to incomplete type
chan_capi.c:2790: dereferencing pointer to incomplete type
chan_capi.c:2791: dereferencing pointer to incomplete type
chan_capi.c:2793: dereferencing pointer to incomplete type
chan_capi.c:2795: dereferencing pointer to incomplete type
chan_capi.c:2796: dereferencing pointer to incomplete type
chan_capi.c:2797: dereferencing pointer to incomplete type
chan_capi.c:2799: dereferencing pointer to incomplete type
chan_capi.c:2799: dereferencing pointer to incomplete type
chan_capi.c:2799: dereferencing pointer to incomplete type
chan_capi.c:2799: dereferencing pointer to incomplete type
chan_capi.c:2799: dereferencing pointer to incomplete type
chan_capi.c:2799: dereferencing pointer to incomplete type
chan_capi.c:2799: dereferencing pointer to incomplete type
chan_capi.c:2799: dereferencing pointer to incomplete type
chan_capi.c:2802: dereferencing pointer to incomplete type
chan_capi.c:2804: dereferencing pointer to incomplete type
chan_capi.c:2807: dereferencing pointer to incomplete type
chan_capi.c:2817: dereferencing pointer to incomplete type
chan_capi.c:2817: dereferencing pointer to incomplete type
chan_capi.c:2817: dereferencing pointer to incomplete type
chan_capi.c:2817: dereferencing pointer to incomplete type
chan_capi.c:2817: dereferencing pointer to incomplete type
chan_capi.c:2817: dereferencing pointer to incomplete type
chan_capi.c: In function `supported_sservices':
chan_capi.c:2827: `MESSAGE_EXCHANGE_ERROR' undeclared (first use in this function)
chan_capi.c:2827: syntax error before "error"
chan_capi.c:2828: `_cmsg' undeclared (first use in this function)
chan_capi.c:2833: `CMSG' undeclared (first use in this function)
chan_capi.c:2834: warning: implicit declaration of function `FACILITY_REQ_CONTROLLER'
chan_capi.c:2834: invalid lvalue in assignment
chan_capi.c:2835: invalid lvalue in assignment
chan_capi.c:2837: invalid lvalue in assignment
chan_capi.c:2844: `error' undeclared (first use in this function)
chan_capi.c:2845: `CMSG2' undeclared (first use in this function)
chan_capi.c:2847: warning: implicit declaration of function `IS_FACILITY_CONF'
chan_capi.c:2875: subscripted value is neither array nor pointer
chan_capi.c:2877: subscripted value is neither array nor pointer
chan_capi.c:2882: subscripted value is neither array nor pointer
chan_capi.c:2886: subscripted value is neither array nor pointer
chan_capi.c:2890: subscripted value is neither array nor pointer
chan_capi.c:2894: subscripted value is neither array nor pointer
chan_capi.c:2898: subscripted value is neither array nor pointer
chan_capi.c:2902: subscripted value is neither array nor pointer
chan_capi.c:2906: subscripted value is neither array nor pointer
chan_capi.c:2910: subscripted value is neither array nor pointer
chan_capi.c:2914: subscripted value is neither array nor pointer
chan_capi.c:2918: subscripted value is neither array nor pointer
chan_capi.c:2922: subscripted value is neither array nor pointer
chan_capi.c: In function `load_module':
chan_capi.c:3088: warning: implicit declaration of function `capi20_isinstalled'
chan_capi.c:3094: warning: implicit declaration of function `capi20_register'
chan_capi.c:3104: warning: implicit declaration of function `capi20_get_profile'
chan_capi.c: In function `unload_module':
chan_capi.c:3301: warning: implicit declaration of function `capi20_release'
make: *** [chan_capi.o] Error 1
[root@asterisk1 chan_capi-0.5.4]


das sind die zeilen die ich noch sehe....

MFG, Darkstar
 
Du hast glaub ich keinen CAPI-Kernel Support:

Hab mal gegoogled und unter >asterisk@home capi< folgendes gefunden:

#!/bin/sh

echo -------------------------------------------
echo installing chan_capi.so
echo -------------------------------------------

yum install isdn4k-utils-devel
rpm -i /var/build_aah/disk1/RedHat/RPMS/kernel-unsupported-<Deine Kernel Version>.c0.i686.rpm
rpm -i /var/build_aah/disk1/RedHat/RPMS/kernel-smp-unsupported-<Deine Kernel Version>.c0.i686.rpm

wget http://www.junghanns.net/asterisk/downloads/chan_capi.<neuste Version>.tar.gz
tar xvfz chan_capi.<neuste Version>.tar.gz
cd chan_capi-<neuste Version>

make
make config
make install
cd ..


# was jetzt kommt muss glaub ich nicht sein, da es sich
# hierbei um die Firmware einer AVM b1 Karte handelt
# hängt aber von deiner Karte ab...
echo "b1pci b1.t4 DSS1 - - - - P2P" > /etc/capi.conf
wget ftp://ftp.in-berlin.de/pub/capi4linux/firmware/b1/3-11-03/b1.t4
cp b1.t4 /usr/lib/isdn

# das hier wieder übernehmen
echo "capiinit start" >> /etc/rc.d/rc.local
echo "chan_capi.so=yes" >> /etc/asterisk/modules.conf

Du musst die entsprechden Stellen natürlich anpassen.

schreib das mal in eine Datei rein.
Am besten du du loggst dich per putty (ssh) auf deine asterisk Kiste. editierst eine neue Datei beipsw.:

vi capi_install.sh

makierst den in dem Quote-Feld angegebenen Text, kopierst in mit STRG+C oder was auch immer in deine Zwischenablage, gehst wieder zu putty (in dem du vi capi_install.sh ausgeführt hast) drückst die Taste i (kleines i für insert) und machst dann ein rechtsklich in das putty fenster. Andere Möglichkeit ist alles abtippen.

DAnn das script ausführbar machen mit

chmod 777 capi_install.sh

dann ausführen mit

./capi_install.sh

nach dem ausführen würde ich ein reboot durchführen.

Deine Kernelversion bekommst du mit

uname -a

du kannst natürlich auch einfach die Befehle einzeln ausführen, die in dem Script stehen, je nachdem wie du magst...

Mal schauen ob das hilft...

Gruß
Holg
 
Also,

folgendes habe ich durchgeführt und fürs erste hab ich jetz schonmal eine capi.conf :) ob alles jetz richtig is weis ich noch nicht ganz.

1) Ich habe zuerst "yum install isdn4k-utils-devel " ausgeführt was er auch gemacht hat.

2) Die nächsten beiden Befehlszeilen mit den "rpm" konnte ich nicht ausführen, da er den pfad angeblich nicht öffnen konnte. meldung: "no such file or direktory"

3) Habe dann Initiative ergriffen und einfach mal weiter gemacht :)

make
make install
make config

hat soweit ich es beurteilen konnte geklappt und ich habe jetzt schonmal eine capi.conf

4) Ebenso habe ich in den modules.conf die beiden sachen eingetragen...jetzt müsste ich zunächst mal nach den einstellungen in der capi.conf nachsehn.


(waren die rpm befehle sehr wichtig?)

Gruß Darkstar
 
wechsel doch mal mit

cd /var/build_aah/disk1/RedHat/RPMS/

in das rpm Verzeichnis von aah und schau mal ob es dort die beiden rpm Pakete (kernel-unsupported-irgendwas und kernel-smp-unsupported-irgendwas) dort drin liegen, wenn ja dann installier sie mal mit

rpm -i kernel-unsupported-blabla
und
rpm -i kernel-smp-unsupported-blabla

Was die zwei rpm Pakete genau machen weiss ich auch nicht, da ich mich selber noch nicht mit CAPI und AAH beschäftigt habe.
Probiers einfach mal aus.
WEnn du chan_capi kompilieren konntest, dann sollte es eigentlich klappen. Wie gesagt, probieren geht über studieren...

Gruß
holg
 
Also ich habe mal nachgesehen aber ich habe die dateien nur ohne das "unsupported" sprich wenn dann müsste es so aussehen

rpm -i /var/build_aah/disk1/RedHat/RPMS/kernel-<Deine Kernel Version>.c0.i686.rpm
rpm -i /var/build_aah/disk1/RedHat/RPMS/kernel-smp-<Deine Kernel Version>.c0.i686.rpm

und das c0 steht bei den dateien ebenfalls nich...bin also nicht sicher ob ich das dann mit diesen dateien machen muss...ich frag lieber vorsichtshalber erneut...mach jetz eh feierabend...bin morgen ab 8:00 Uhr wieder back.

Aber danke schonmal für den heutigen support.

MFG, Sascha Preuth
 
Hast du schon mal versucht capi unter asterisk zu nutzen?


Gruß
holg
 
Also ausser das ich jetzt eine capi.conf habe, wie finde ich es heraus ob es geht? Ich wolte jetz mal sehen ob ich die capi.conf eingerichtet bekomme aber wenn ich das zunächst einfacher herausfinden kann sollte ich das vielleicht mal ausprobieren, wüsste halt nur nich wie
 
Naja, die capi.conf solltest du schon richtig einrichten. Sollte aber nicht ein sonderlich großer Aufwand sein. Dann einfach mal in aah ein Custom-Trunk einrichten und als Outgoing settings Capi/irgendwas benutzen... Musst dich mal genauer in die Syntax von Dial in bezug auf Capi/ einlesen.
(Wenn du mit der Maus über "Custom Dial String" gehst, dann bekommst du einen kleinen Anhaltspunkt, wie as aussehen könnte)

Gruß
Holg
 
Hi Darkstar!

Ich war dankbar in einem Forum das zu finden was ich benötigte, doch es stellte sich heraus, dass *@home 1.5 und diese Anleitung nicht wirklich zusammenpassen. Meine Frage an dich: Welche *@home version hast du verwendet?

Gruß Daniela
 
Hi an Alle,

um die benötigten rpm's zu kriegen, einfach folgendes machen:

yum install kernel-unsupported kernel-smp-unsupported


Dann müssten die passenden für den aktuellen Kernel kommen.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.