Ich bekomme einfach nix hin.... :(

Elme

Neuer User
Mitglied seit
20 Mrz 2006
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Hallo,

auch auf die Gefahr hin, dass das hier schon in Themen besprochen wurde und mir hier nur links um die Ohren geknallt werden, muss ich das ganze doch mal posten. Habe hier auch schon in x Threads gelesen, aber entweder bin ich einfach zu dumm, oder ich habe einfach nicht die passenden gefunden.

Also, ich habe ein SuSE 10.0 als Betriebssystem (installiert von den CD's, habe dabei darauf geachtet, dass ich die Pakete capi4linux, avmfritzcapi, capisuite, kisdnwatch und km_fritzcapi mitinstalliere). Der Kernel ist der 2.6.13-15-default - Kernel, der beim Betriebssystem dabei war. Habe mir Asterisk 1.2.5 installiert, libpri 1.2.2 und chan_capi-cm0.6.4.

Mein Rechner hat eine AVM Fritz Card PCI eingebaut, die über ein normales ISDN - Kabel direkt an den S0 - Bus geht. Da hinter ist eine Siemens HiCom-Anlage.

Dann habe ich auf einem zweiten Rechner ein kPhone installiert, dass sich auch mit dem Server registrieren kann.

Meine sip.conf ist die Standard Datei mit dem Zusatz für das Telefon:
[elme]
type=friend
username=elme
host=dynamic
dtmfmode=inband
secret=test

In modules.conf habe ich die Zeilen:
[modules]
load => res_features.so
load => chan_capi.so

[global]
chan_capi.so=yes

eingefügt.

Meine extensions.conf ist auch ganz klein:
[general]
static=yes

[default]
exten => _X.,1,Set(CALLERID(number)=1081)
exten => _X.,2,Dial(CAPI/ISDN1/${Exten})

exten => elme,1,Dial(SIP/elme)

[capi-in] ;steht in der capi.conf als context für incomming calls
exten => _X.,1, Dial(SIP/elme) ;anstelle von dem _X. hatte ich auch schon die Telefonnummer 1081 ausprobiert

Und an der capi.conf habe ich eigentlich noch nichts geändert. Habe da mal ausprobiert, was passiert, wenn ich hinter 'incomingmsn' anstelle des * auch die Telefonnummer des Anschlusses (1081) schreibe, aber das hat nichts geändert.

Also, das Problem ist, dass wenn ich von einem Telefon aus, dass auch an der TK - Anlage hängt, die Nummer 1081 anrufe, bekomme ich ein Besetztzeichen. Und auf meiner Asteriskkonsole sehe ich nur die Mitteilungen:

== ISDN1: Incoming call '2236' -> '1081'
== ISDN1: CAPI Hangingup

Wenn ich von meinem Handy anrufe, bekomme ich die selbe Meldung auf der Asteriskconsole, höre aber nur die Mitteilung, dass der gewünschte Gesprächspartner zur Zeit nicht zu erreichen wäre.

Versuche ich von meinem SIP Phone aus mein Telefon anzurufen, bekomme ich die Mitteilung:

-- Saved useragent "kphone/4.0.2" for peer elme
-- Executing Set("SIP/elme-a3b5", "CALLERID(number)=1081") in new stack
-- Executing Dial("SIP/elme-a3b5", "CAPI/ISDN1/") in new stack
Mar 20 13:30:49 ERROR[14601]: chan_capi.c:980 capi_call: No destination or dialtone requested in 'ISDN1/'
-- Couldn't call ISDN1/
== ISDN1: CAPI Hangingup
== Everyone is busy/congested at this time (0:0/0/0)
Mar 20 13:30:59 WARNING[14601]: pbx.c:2403 __ast_pbx_run: Timeout, but no rule 't' in context 'default'

Wenn ich auf der Asteriskconsole ein capi info ausführe, bekomme ich die Mitteilung:

Contr1: 2 B channels total, 2 B channels free.

Ich starte asterisk mit dem Befehl: asterisk -vvvvvvgc und die einzige Meldung die beim Start noch interessant sein könnte ist:

Mar 20 13:43:19 NOTICE[14779]: cdr.c:1187 do_reload: CDR simple logging enabled.
== Parsing '/etc/asterisk/rtp.conf': Found
== RTP Allocating from port range 10000 -> 20000
Asterisk PBX Core Initializing

So, hoffe ihr könnt mir helfen, wäre euch auf jedenfall sehr dankbar.

Liebe Grüße an alle,

Elme
 
Nun ja, ich habe jetzt mal ein capi debug gemacht und mich dann nochmal versucht anzurufen. Darauf hin bekam ich folgende Meldung:

*CLI> capi debug
CAPI Debugging Enabled
*CLI> CONNECT_IND ID=003 #0x00a4 LEN=0039
Controller/PLCI/NCCI = 0x101
CIPValue = 0x10
CalledPartyNumber = <81>1081
CallingPartyNumber = <01 83>2236
CalledPartySubaddress = default
CallingPartySubaddress = default
BC = <80 90 a3>
LLC = default
HLC = <91 81>
AdditionalInfo = default

-- CONNECT_IND (PLCI=0x101,DID=1081,CID=2236,CIP=0x10,CONTROLLER=0x1)
> ISDN1: msn='*' DNID='1081' MSN
== ISDN1: Incoming call '2236' -> '1081'
INFO_IND ID=003 #0x00a5 LEN=0019
Controller/PLCI/NCCI = 0x101
InfoNumber = 0x28
InfoElement = 2236

INFO_RESP ID=003 #0x00a5 LEN=0012
Controller/PLCI/NCCI = 0x101

-- ISDN1: info element DSP
INFO_IND ID=003 #0x00a6 LEN=0020
Controller/PLCI/NCCI = 0x101
InfoNumber = 0x70
InfoElement = <81>1081

INFO_RESP ID=003 #0x00a6 LEN=0012
Controller/PLCI/NCCI = 0x101

-- ISDN1: info element CALLED PARTY NUMBER
> ISDN1: INFO_IND DID digits not used in this state.
INFO_IND ID=003 #0x00a7 LEN=0016
Controller/PLCI/NCCI = 0x101
InfoNumber = 0x18
InfoElement = <89>

INFO_RESP ID=003 #0x00a7 LEN=0012
Controller/PLCI/NCCI = 0x101

-- ISDN1: info element CHANNEL IDENTIFICATION 89
INFO_IND ID=003 #0x00aa LEN=0019
Controller/PLCI/NCCI = 0x101
InfoNumber = 0x28
InfoElement = 2236

INFO_RESP ID=003 #0x00aa LEN=0012
Controller/PLCI/NCCI = 0x101

-- ISDN1: info element DSP
INFO_IND ID=003 #0x00ab LEN=0020
Controller/PLCI/NCCI = 0x101
InfoNumber = 0x70
InfoElement = <81>1081

INFO_RESP ID=003 #0x00ab LEN=0012
Controller/PLCI/NCCI = 0x101

-- ISDN1: info element CALLED PARTY NUMBER
> ISDN1: INFO_IND DID digits not used in this state.
INFO_IND ID=003 #0x00ac LEN=0016
Controller/PLCI/NCCI = 0x101
InfoNumber = 0x18
InfoElement = <89>

INFO_RESP ID=003 #0x00ac LEN=0012
Controller/PLCI/NCCI = 0x101

-- ISDN1: info element CHANNEL IDENTIFICATION 89
DISCONNECT_IND ID=003 #0x00ad LEN=0014
Controller/PLCI/NCCI = 0x101
Reason = 0x0

DISCONNECT_RESP ID=003 #0x00ad LEN=0012
Controller/PLCI/NCCI = 0x101

-- ISDN1: DISCONNECT_IND on incoming without pbx, doing hangup.
== ISDN1: CAPI Hangingup
== ISDN1: Interface cleanup PLCI=0x101
> CAPI devicestate requested for ISDN1/1081

Womit ich so gar nichts anfangen kann...

Wie gesagt, Danke für jede Hilfe...

Elme
 
Also die Meldung beim abgehenden Gespraech zeigt, dass dein Dial() kein Ziel enthaelt. Dial(CAPI/ISDN1/) reicht nicht, da muss noch eine Nummer rein, oder die Option /b um den Waehlton zu bekommen (steht in der README).

Ankommend scheint kein SENDING-COMPLETE zu kommen, versuch mal
immediate=yes
in der capi.conf

Armin
 
Hallo,

vielen, vielen Dank, dass mit dem immediate=yes hat Wunder gewirkt. :) Jetzt muss ich nur noch das raustelefonieren hinbekommen.

Danke, danke, danke...

Viele Grüße,

Elme
 
:) Das raustelefonieren hat auch gerade funktioniert, danke, danke, danke für eure Hilfe... bekomme zwar noch einen Haufen Fehlermeldungen, aber wenigstens klingelts überall.... :)

Lieben Gruß,

Elme
 
Nun ja :(

Das mit dem raustelefonieren hat nur Ansatzweise funktioniert.... Telefone haben geklingelt und ich war erstmal glücklich.... und dann stellte ich mit entsetzen fest, dass man mich nicht hören kann... und ich höre auch nichts.

Nun ja, hier sind mal wieder die Fehlermeldungen....

dial 2236
-- Executing Dial("ALSA/default", "CAPI/ISDN1/2236/b/30") in new stack
Mar 24 09:15:30 WARNING[1057]: chan_capi.c:901 parse_dialstring: Too many parts in dialstring 'ISDN1'
Mar 24 09:15:30 WARNING[1057]: chan_capi.c:901 parse_dialstring: Too many parts in dialstring 'ISDN1'
-- Called ISDN1/2236/b/30
-- CAPI/ISDN1/2236-f is proceeding passing it to ALSA/default
Mar 24 09:15:32 WARNING[1057]: chan_alsa.c:769 alsa_indicate: Don't know how to display condition 15 on ALSA/default
Mar 24 09:15:32 WARNING[11554]: chan_capi.c:3456 show_capi_conf_error: ISDN1: conf_error 0x2001 PLCI=0x101 Command=CONNECT_B3_CONF,0x8487
-- CAPI/ISDN1/2236-f is ringing
-- CAPI/ISDN1/2236-f is making progress passing it to ALSA/default
Mar 24 09:15:32 WARNING[1057]: chan_alsa.c:769 alsa_indicate: Don't know how to display condition 14 on ALSA/default
-- CAPI/ISDN1/2236-f answered ALSA/default
<< Console call has been answered >>
== Spawn extension (local, 2236, 1) exited non-zero on 'ALSA/default'
<< Hangup on console >>

Wenn ich vorher ein capi debug mache, kommt auch nicht mehr bei raus.

Nochmal ein Danke für eure Hilfe....

Ach ja, wenn ich reintelefoniere, lenke ich den Anruf erstmal auf diese Demo von den Beispielen. Die kann ich mir auch wunderbar anhören und dann legt capi halt auf, sobald diese abgelaufen ist.
 
So, habe jetzt mal meine Tests von dem Server auch auf Softphones erweitert. Dabei konnte ich mit einem X-Lite unter Windows ohne Probleme nach draussen telefonieren, auch haben sich beide Gesprächspartner wunderbar verstanden.
Unter Linux mit kPhone habe ich das Problem, dass die Person, die am Softphone sitzt, nicht verstanden wird.
Konfigurationsmäßig habe ich nur geändert, dass ein von aussen eintreffender Anruf direkt an das entsprechende Softphone weitergeleitet wird.

Warum das nicht funktioniert, wenn ich den Server als Softphone nutze... :noidea:

Viele Grüße,

Elme
 
Kostenlos!

Statistik des Forums

Themen
249,052
Beiträge
2,309,534
Mitglieder
378,850
Neuestes Mitglied
IchBinEsDoch