Verständnissproblem, von aussen per CAPI nach Innen auf SIP

mamue

Neuer User
Mitglied seit
4 Sep 2004
Beiträge
71
Punkte für Reaktionen
0
Punkte
0
Asterisk funktioniert so weit bei mir. Zwei SIP können sich unterhalten und wenn ich die ISDN Nummer von aussen anrufe, bekam ich auch die Demo zu hören. Die habe ich jetzt gelöscht, ich brauche sie nicht mehr.
Wenn ich jetzt über POTS meinen * anrufe, bekomme ich zweimal ein Freizeichen und dann legt * auf. Ich hatte gehofft, dort die SIP-Nummer, z.B. 1003 wählen zu können, aber das geht scheinbar nicht. Geht das gar nicht, oder was mache ich falsch? In dem Buch von Mahler finde ich keinen Hinweis, der mir weiterhilft, ich habe die sip.conf und extensions.conf im wesentlichen von ihm übernommen:
modem.conf:
[interfaces]
context=main
driver=i4l ; isdn4linux - an alternative to i4l is to use chan_capi
type=autodetect
stripmsd=0
dialtype=tone
mode=ring
group=1
msn=942110
outgoingmsn=942110
device => /dev/ttyI2 ;ja wirklich ttyI2, ich habe auch ttyI0&1
device => /dev/ttyI3

Die sip.conf in Kürze:
[general]
context=default ; Default context for incoming calls
port=5060 ; UDP Port to bind to
bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes ; Enable DNS SRV lookups on outbound calls
disallow=all ; First disallow all codecs
allow=gsm ; Allow codecs in order of preference
allow=ulaw ; Allow codecs in order of preference
allow=alaw ; Allow codecs in order of preference
allow=ilbc
[5471]
type=friend
username=5471
callerid="administrator" <5471>
host=dynamic
[1003]
type=friend
username=1003
callerid="testuser4" <1003>
host=dynamic

Die extensions.conf:
[general]
static=yes
writeprotect=yes

[globals]
CONSOLE=Console/dsp ; Console interface for demo
[main]
exten => 5471,1,Dial(SIP/5471,60)
exten => 5471,2,Voicemail2(u5471)
exten => 5471,3,Hangup
exten => 5471,102,Voicemail2(b5471)
exten => 5471,103,Hangup

exten => 1003,1,Dial(SIP/1003,60)
exten => 1003,2,Voicemail2(u1003)
exten => 1003,3,Hangup
exten => 1003,102,Voicemail2(b1003)
exten => 1003,103,Hangup

exten => _99.,1,Dial(Modem/ttyI2:${EXTEN:2},20,r)
exten => _99.,2,Playback(invalid)
exten => _99.,3,Hangup

[local]
include => main
Wieso gibt es eigentlich ein include von main in [local]? Mr. Mahler macht das so, aber ich sehe den Sinn nicht. In der sip.conf steht context=default, ist das falsch?
Kann man überhaupt von aussen einen internen SIP-client erreichen, also eine Verbindung herstellen und dann per DTMF mit dem SIP verbinden? Dieser Anschluß ist halt zum testen und wird wohl kein Anlagenanschluß werden.

Vielleicht war die Frage schon mal, aber ich weiß nicht so recht, wonach ich suchen sollte, bzw. bin mit den Begriffen, die mir einfielen, nicht fündig geworden.

Danke,
mamue
 
Du musst in der extension.conf eine extension für die eingehende MSN anlegen und darin sagen, was passieren soll, wenn ein Anruf auf der Nummer rein kommt, z.B. den SIP Anschluss anrufen.

Beispiel: eingehende MSN 41 klingelt bei SIP 2003
Code:
exten => 41,1,Wait(1)
exten => 41,2,SetLanguage(de)
exten => 41,3,Dial(sip/2003,25,r)
exten => 41,4,Voicemail,u2003
exten => 41,103,Voicemail,b2003

jo
 
Asterisk hängt immer noch nach einmal tuten :wink: auf.
Im Fenster (-vvvvc) steht:
Code:
-- started pbx on channel (callgroup=0)!
Nov 23 19:51:49 WARNING[1120988080]: pbx.c:1868 ast_pbx_run: Channel 'CAPI[contr1/942110]/0' sent into invalid extension 's' in context 'default', but no invalid handler
-- Executing Wait("Modem[i4l]/ttyI2", "1") in new stack
-- CAPI Hangingup
-- /dev/ttyI2 was hung up on before we answered
== Spawn extension (default, 942110, 1) exited non-zero on Modem[i4l]/ttyI2'
-- Hungup 'Modem[i4l]/ttyI2'

Weiso sent into extension "s"? Ich weiß nicht, wo ich anfangen soll zu suchen.
Ach ja, ich habe jetzt in der extensions.conf stehen:
Code:
[default]
exten => 942110,1,Wait(1)
exten => 942110,2,SetLanguage(de)
exten => 942110,3,Dial(SIP/1003,60,r)
exten => 942110,4,Voicemail2(u942110)
exten => 942110,5,Hangup
exten => 942110,104,Voicemail2(b942110)
exten => 942110,105,Hangup
include => main

[main]
exten => 1003,1,Dial(SIP/1003,60)
exten => 1003,2,Voicemail2(u1003)
exten => 1003,3,Hangup
exten => 1003,102,Voicemail2(b1003)
exten => 1003,103,Hangup
In der Voicemail steht:
Code:
[default]
1234 => 4242,Example Mailbox,root@localhost
1003 => 1003,testuser4,mamue@localhost
5471 => 5471,testuser4,mamue@localhost

Danke für die Hilfe,
mamue
 
Wieso postest Du eigentlich die modem.conf wen Du mit Cchan_capi arbeitest? HAb ich da was verpasst? Beides auf einmal geht doch bestimmt nicht für eine ISDN-Karte, oder?
 
@Hupe:
Arbeite ich mit chan_capi? Ich habe eine HFC-Karte (Acer) und eine Fritz-AVM. Ich habe die AVM möglicherweise konfiguriert, dachte aber ich würde die HFC nutzen, also ttyS2/3. Das Modem nimmt doch auch ab, dachte ich:
"Executing Wait("Modem[i4l]/ttyI2", "1") in new stack"
Habe ich da irgendwas verwuchselt?

Danke,
mamue
 
'CAPI[contr1/942110]/0'

Das steht doch oben in der Ausgabe, die dein Asterisk auswirft. Dann wirst Du wohl irgend etwas mit CAPI machen.
 
Uhm, ja. Ich verstehe nicht ganz, wieso die CAPI verwendet wird. Das ist ein Versehen. Ich habe jetzt beide ISDN Karten mit dem NTBA verbunden und bekomme nun die Mailboxansage.
Bleiben für mich zwei Fragen:
1.: Warum geht das jetzt, warum nicht vorher, wieso nimmt * die CAPI?
2.: Warum fällt mir jetzt die zweite nicht mehr ein? <;-)
Ich werde erst noch einmal die Konfiguration durchgehen, vielleicht komme ich ja von alleine drauf.

Danke,
mamue
 
mamue schrieb:
Uhm, ja. Ich verstehe nicht ganz, wieso die CAPI verwendet wird. Das ist ein Versehen. Ich habe jetzt beide ISDN Karten mit dem NTBA verbunden und bekomme nun die Mailboxansage.
Bleiben für mich zwei Fragen:
1.: Warum geht das jetzt, warum nicht vorher, wieso nimmt * die CAPI?

Naja, könnte es sein, dass Du die falsche ISDN-Karte an den NTBA angeschlossen hattest? Wenn Du CAPI nicht nutzen willst, dann solltest Du am besten die entsprechenden Module in der modules.conf nicht laden. An deiner Stele würde ich aber lieber mot Capi und ohne ISDN für Linux arbeiten. DAs Ergebnis ist eindeutig besser.
 
Prima, danke!
Ich habe jetzt i4l aus * rausgenommen. Wenn ich jetzt anrufe erscheint:
Everyone is busy/congested at this time
-- Executing VoiceMail2("CAPI[contr1/942110]/0", "b942110") in new stack
und capi info sagt:
Contr1: 2 B channels total, 1 B channels free.

Also scheinen diese simplen Dinge jetzt so zu funktionieren, wie ich es wollte.
Es war wohl keine gute Idee, zwei ISDN Karten zum Testen an einen NTBA zu hängen und dann die Karten noch nicht mal von aussen zu beschriften :oops:

Als nächstes muß ich erst mal rauswählen lernen, aber das geht wohl von Ferne aus nur schlecht, es sei denn, ich leite SIP per DNAT an den *-Server weiter, um mich dann von dort per CAPI hier anzurufen.. Ich glaube, ich lass so etwas erst mal. ;)

:groesste:

mamue
 
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.