Anrufe über Capi werden nicht an Voip weitergereicht *gelöst*

TheBadFish

Neuer User
Mitglied seit
10 Sep 2006
Beiträge
69
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen.

Ich bin gerade dabei einen Asterisk Server aufzusetzten. Das ganze ist ein Projekt an meiner Hochschule. Die Anlage hat folgende Eckdaten:

Hardware: Ein Intel P3 mit 512MB RAM und einer Fritz!PCI ISDN-Karte
OS: Debian Etch, Minimalinstallation
Asterisk: V1.4.19 Installation nach dem Buch von Stefan Wintermeyer - Asterisk 1.2 + 1.4 http://www.das-asterisk-buch.de/2.0/
ISDN: Capi-Treiber sind installiert, sauber eingebunden und funktionieren soweit. Die Karte hängt an einem S0-Bus in der FH und hat zwei interne Nummern. 2654 und 2653

Ich habe im Moment nur eine Minimalst-Konfiguration am laufen, da ich es nicht hinbekomme einen Anruf der von der ISDN-Karte reinkommt an ein VOIP-Softphone per SIP weiter zu leiten. Anrufe raus über ISDN funktionieren einwandfrei. Ins FH-Telefonnetz, wie auch ins Festnetz per vorgewählter Null. Ein eigehender Anruf wird mir auch auf der Konsole mitgeteilt, aber er wird nicht weitergeleitet.

Auf der Konsole bekomme ich folgendes zu sehen wenn ich reinrufe:
Code:
Connected to Asterisk 1.4.19 currently running on obelix (pid = 5136)
Verbosity is at least 5
  == ISDN1#02: Incoming call '007727******' -> '2654'
  == ISDN1#02: CAPI Hangingup for PLCI=0x101 in state 4
  == ISDN1#02: Incoming call '007727******' -> '2653'
  == ISDN1#02: CAPI Hangingup for PLCI=0x101 in state 4
obelix*CLI>
Das ist bestimmt ein ganz dummer Anfängerfehler, ich hoffe ihr könnt mir weiterhelfen. Vielen Dank schon mal im Vorraus.

Hier meine momentane Konfiguration:

capi.conf
Code:
;
[general]
nationalprefix=0
internationalprefix=00
rxgain=1.0       ;linear receive gain (1.0 = no change)
txgain=1.0       ;linear transmit gain (1.0 = no change)
language=de      ;set default language


; interface sections ...

[ISDN1]          ;this example interface gets name 'ISDN1' and may be any
msn = *
ntmode = no
isdnmode=msn     ;'MSN' (point-to-multipoint) or 'DID' (direct inward dial)
                 ;when using NT-mode, 'DID' should be set in any case
incomingmsn=*    ;allow incoming calls to this list of MSNs/DIDs, * = any
controller=1     ;capi controller number of this interface/port
group=1          ;dialout group
softdtmf=on      ;enable/disable software dtmf detection, recommended for AVM cards
relaxdtmf=on     ;in addition to softdtmf, you can use relaxed dtmf detection
faxdetect=off    ;enable faxdetection and redirection to EXTEN 'fax' for incoming and/or
                 ;outgoing calls. (default='off', possible values: 'incoming','outgoing','both')
accountcode=     ;PBX accountcode to use in CDRs
context=capi     ;context for incoming calls
echocancelold=yes;use facility selector 6 instead of correct 8 (necessary for older eicon drivers)
devices=2        ;number of concurrent calls (b-channels) on this controller
                 ;(2 makes sense for single BRI, 30/23 for PRI/T1)

sip.conf
Code:
[general]
bindport = 5060
bindaddr =141.28.***.*** (Hier ist die korrekte IP eingetragen)
context = sonstige
nat = no

[2001]
type = friend
context = interne-telefone
secret = 1234
host = dynamic
qualify = yes
nat=yes
canreinvite=no

[2000]
type = friend
context = interne-telefone
secret=1234
host = dynamic
canreinvite=no
nat=yes
qualify = yes

extensions.conf
Code:
[sonstige]

[interne-telefone]
exten => _.,1,Dial(CAPI/ISDN1/${EXTEN})
exten => 2000,1,Dial(SIP/2000,20)
exten => 2001,1,Dial(SIP/2001,20)



[capi]
exten => _.,1,Dial(SIP/2001)

/Ädit: Threadtext auf *gelöst* gesetzt.
 
Zuletzt bearbeitet:
Hat keiner eine Idee?

Soll ich es nochmal kurz zusammenfassen? :D
 
Ok, I'll give it a stab:

* was sagt denn "sip show peers" im Asterisk CLI? Die SIP Telefone können untereinander problemlos telefonieren?

* was sagt "show diaplan capi"?

* ein username= würde den Einträgen für 2000 und 2001 in der sip.conf nicht schaden

* ändere den Kontext [capi] in

Code:
  exten => _X.,1,NoOp(-- Eingehender ISDN Anruf von ${CALLERID(num)} auf ${EXTEN} --)
  exten => _X.,n,Dial(SIP/2001)

Hinweis: Ein _. in der extensions.conf ist niemals eine gute Idee da dies auch die h extension mit abdeckt, und das möchtest Du ganz bestimmt nicht.

* streiche die Zeile "msn=" aus der capi.conf, das ist veraltet, stattdessen ist Set(CALLERID(num)=) im dialplan bei Bedarf zu verwenden

* Du setzt chan-capi von chan-capi.org ein, richtig?
 
Zuletzt bearbeitet:
Ich habe das Problem gefunden. in der capi.conf stand isdnmode=msn. Ich habs auf did umgestellt, jetzt tut es.

Kann mir das mal jemand erklären, mit P2P und P2MP? Ich hab irgendwo gelesen dass DID nur mit aktiven Karten funktioniert? Aus dem was ich im Netz finde werde ich nicht wirklich schlau.
 
P2P = Anlagenanschluss (point-to-point)
P2MP bzw ptmp= Mehrgeräteanschluss (point-to-multipoint)

P2MP ist das was ein privater ISDN Anschluss üblicherweise hat, das ist ein Bus System auf dem merhere Geräte gleichzeitig hören und agieren dürfen. Die Rufnummern (MSNs) können beliebig vergeben werden.

P2P kommt idR für Firmen zum Einsatz, zusammen mit einem Rufnummernblock (10, 600 oder 1000 fortlaufende Rufnummern (DDI) mit normalerweise der -0 für die Vermittlung). Dies ist kein Bussystem, hier muss eine TK Anlage für die weitere Verarbeitung der Signalisierung/Gespräche sorgen.

Die TK Anlage Deiner FH kann Deinen S0 Anschluss sicherlich zwischen P2P und P2MP umschalten.
 
Schöne Erklärung. Dankeschön für die Hilfe.
 
Kostenlos!

Statistik des Forums

Themen
248,905
Beiträge
2,304,605
Mitglieder
378,606
Neuestes Mitglied
molto22