ISDN soll über Asterisk nach SIPGATE wählen.

markusw

Neuer User
Mitglied seit
4 Jan 2006
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Hallo,

erstmal danke ans Forum, Eure beiträge haben mir geholfen die Asterisk innerhalb von 2 Tagen mit meiner ISDN Anlage zu koppeln und via SIPClient über ISDN sowie SIPGATE telefonieren zu können.

Jetzt sitze ich hier und zermatere mir den Kopf, wie ich is schaffe mit der ISDN an Asterisk zu kommen und dann über SIPGATE zu telefonieren.

Ich denke das Problem liegt zu 100% zwischen den Ohren, aber vielleicht kann sich mal jemand meine extension.conf an sehen und sieht warum es nicht geht.

Wie gesagt, SIPClient nach Sipdate ohne Probleme nur wenn ich über ISDN komme gehen die verbindungen nicht an SIPGATE mit der Meldung:

Code:
 -- Executing DISA("CAPI/ISDN2/99-0", "no-password|overdsl") in new stack
    -- Executing Goto("CAPI/ISDN2/99-0", "default|905151781215") in new stack
    -- Goto (overdsl,default,2147483647)
    -- Timeout on CAPI/ISDN2/99-0
  == CDR updated on CAPI/ISDN2/99-0
    -- Executing Goto("CAPI/ISDN2/99-0", "default|9t") in new stack
    -- Goto (overdsl,default,9)
    -- Timeout on CAPI/ISDN2/99-0
  == CDR updated on CAPI/ISDN2/99-0
    -- Executing Goto("CAPI/ISDN2/99-0", "default|9t") in new stack
    -- Goto (overdsl,default,9)
    -- Timeout on CAPI/ISDN2/99-0
  == CDR updated on CAPI/ISDN2/99-0
    -- Executing Goto("CAPI/ISDN2/99-0", "default|9t") in new stack
    -- Goto (overdsl,default,9)
    -- Timeout on CAPI/ISDN2/99-0
  == CDR updated on CAPI/ISDN2/99-0
    -- Executing Goto("CAPI/ISDN2/99-0", "default|9t") in new stack
    -- Goto (overdsl,default,9)
    -- Executing Goto("CAPI/ISDN2/99-0", "default|9h") in new stack
    -- Goto (overdsl,default,9)
Die extensions.conf sieht so aus:
Code:
[general]
static=yes
writeprotect=no
TRUNK=CAPI

[default]
;SIP Teilnehmer + sip.conf
exten => 1000,1,Dial(SIP/1000,60)
exten => 1000,2,Congestion
exten => 1000,102,Busy
exten => 1001,1,Dial(SIP/1001,60)
exten => 1001,2,Congestion
exten => 1001,102,Busy

;Qualitaetstestleitung 783588 forwardet via asterisk to capi 21

exten => 80,1,Dial(CAPI/contr1/21)

;Anlagenkopplung
exten => 90,1,DISA,no-password|intern
exten => 91,1,DISA,no-password|extern
exten => 91,2,Congestion
exten => 91,102,Busy

;SIPGATE Passtrow in SIP
exten => _9.,1,Dial(SIP/${EXTEN:1}@sipgate,60)
exten => _9.,2,Congestion
exten => _9.,102,Busy

; SIPGATE Passtrow in ISDN
exten => 99,1,DISA,no-password|overdsl

;Roulset
[intern]
exten => _.,1,Dial(SIP/${EXTEN})

[extern]
exten => _.,1,Dial(Capi/contr1/${EXTEN})

[overdsl]
exten => _.,1,Goto(default,9${EXTEN})

Schon mal danke für die hilfe !
 
hallo,

danke für die Antwort. Tu ich das so bekomme ich:

Jan 5 16:59:10 NOTICE[3426] chan_sip.c: Failed to authenticate on INVITE to '"21" <sip:[email protected]>;tag=as352a332a'
Jan 5 16:59:21 NOTICE[3432] chan_local.c: No such extension/context t@default creating local channel
Jan 5 16:59:21 NOTICE[3432] app_dial.c: Unable to create local channel for call forward to 'Local/t@default' (cause = 0)
Jan 5 16:59:31 NOTICE[3432] chan_local.c: No such extension/context t@default creating local channel
Jan 5 16:59:31 NOTICE[3432] app_dial.c: Unable to create local channel for call forward to 'Local/t@default' (cause = 0)


sieht für mich aus wie ein authentifizerungs problem ... hatte ich vorher auch schon mal. wie gesagt über die sipclients geht es

grüße

Markus
 
setz mal eine CallerID als erstes, dann sollte es normaler weise intern gehen
exten => _X.,1,Set(CALLERID(number)=(${CALLERIDNUM})
exten => _.,2,Dial(SIP/${EXTEN}) ;für intern
exten => _.,2,Dial(SIP/${EXTEN}@sipgate.de,60,r);für extern über SIP
 
Kannst Du auch mal Deine capi.conf posten? Und die version von Chan_capi und Asterisk.
Es wäre übrigens sinnvoll einen extra kontext für über die ISDN-Karte eingehende Anrufe z erstellen, und nicht ein und ausgehende Anrufe im gleichen Kontext zu behandeln. Das kann schnell mal zu Fehlern führen.
Ach ja, ein aktuellen Auszug aus Deiner sip.conf bitte auchnoch! (bitte in einem Code-Block).
 
Callerid

Hi,

also CALLERID hat es auch nicht gebracht, bleibt beim gleichen output.

hier die Infos:

jetzige extensions.conf:

Code:
[general]
static=yes
writeprotect=no
TRUNK=CAPI

[default]
;SIP Teilnehmer + sip.conf
exten => 1000,1,Dial(SIP/1000,60)
exten => 1000,2,Congestion
exten => 1000,102,Busy
exten => 1001,1,Dial(SIP/1001,60)
exten => 1001,2,Congestion
exten => 1001,102,Busy

;Qualitaetstestleitung 783588 forwardet via asterisk to capi 21

exten => 80,1,Dial(CAPI/contr1/21)

;Anlagenkopplung
exten => 90,1,DISA,no-password|intern
exten => 91,1,DISA,no-password|extern
exten => 91,2,Congestion
exten => 91,102,Busy

;SIPGATE Passtrow in SIP
exten => _9.,1,Dial(SIP/${EXTEN:1}@sipgate,60)
exten => _9.,2,Congestion
exten => _9.,102,Busy

; SIPGATE Passtrow in ISDN
exten => 99,1,DISA,no-password|overdsl

;Roulset
[intern]
exten => _.,1,Dial(SIP/${EXTEN})

[extern]
exten => _.,1,Dial(Capi/contr1/${EXTEN})

[overdsl]
exten => _X.,1,Set(CALLERID(number)=(99))
exten => _.,1,Dial(SIP/${EXTEN}@sipgate.de,60,r)

die sip.conf :

Code:
[general]
port = 5060
bindaddr = 0.0.0.0
context = default
disallow=all
allow=gsm
allow=ulaw
allow=alaw
register => [user]:[passwd]@sipgate.de/80
;nat=yes

[sipgate]
type=friend
username=[user]
secret[passwd]
host=sipgate.de
fromuser=3222601
fromdomain=sipgate.de
nat=yes
context=default
canreinvite=no
qualify=yes

[1000]
type=friend
username=test
secret=test
host=dynamic
disallow=all
allow=alaw
dtmfmode=rfc2833
context=default


[1001]
type=friend
username=test
secret=test
host=dynamic
disallow=all
allow=alaw
dtmfmode=rfc2833
context=default

+ capi.conf

Code:
[general]
nationalprefix=0
internationalprefix=00
rxgain=0.9
txgain=0.9
language=de      ;set default language
ulaw=no        ;set this, if you live in u-law world instead of a-law

; interface sections ...

[ISDN1]          ;this example interface gets name 'ISDN1' and may be any
                 ;name not starting with 'g' or 'contr'.
;ntmode=yes      ;if isdn card operates in nt mode, set this to yes
isdnmode=msn     ;'MSN' (point-to-multipoint) or 'DID' (direct inward dial)
                 ;when using NT-mode, 'DID' should be set in any case
incomingmsn=90,80;allow incoming calls to this list of MSNs/DIDs, * = any
defaultcid=90  ;set a default caller id to that interface for dial-out,
                 ;this caller id will be used when dial option 'd' is set.
;controller=0    ;ISDN4BSD default
;controller=7    ;ISDN4BSD USB default
controller=1     ;capi controller number to use
group=1          ;dialout group
;prefix=0        ;set a prefix to calling number on incoming calls
softdtmf=on      ;enable/disable software dtmf detection, recommended for AVM cards
relaxdtmf=on     ;in addition to softdtmf, you can use relaxed dtmf detection
accountcode=     ;Asterisk accountcode to use in CDRs
context=default  ;context for incoming calls
holdtype=local   ;when Asterisk puts the call on hold, ISDN HOLD will be used. If
                 ;set to 'local' (default value), no hold is done and Asterisk may
                 ;play MOH.
;immediate=yes   ;DID: immediate start of pbx with extension 's' if no digits were
                 ;     received on incoming call (no destination number yet)
                 ;MSN: start pbx on CONNECT_IND and don't wait for SETUP/SENDING-COMPLETE.
                 ;     info like REDIRECTINGNUMBER may be lost, but this is necessary for
                 ;     drivers/pbx/telco which does not send SETUP or SENDING-COMPLETE.
;echosquelch=1   ;_VERY_PRIMITIVE_ echo suppression
echocancel=yes  ;EICON DIVA SERVER (CAPI) echo cancelation
                 ;(possible values: 'no', 'yes', 'force', 'g164', 'g165')
echocancelold=yes;use facility selector 6 instead of correct 8 (necessary for older eicon drivers)
;echotail=64     ;echo cancel tail setting
;bridge=yes      ;native bridging (CAPI line interconnect) if available
;callgroup=1     ;Asterisk call group
language=de     ;set language for this device (overwrites default language)
devices=2        ;number of concurrent calls on this controller
                 ;(2 makes sense for single BRI, 30 for PRI)

[ISDN2]
isdnmode=msn
incomingmsn=99
defaultcid=99
controller=1
group=1
softdtmf=on
relaxdtmf=on
context=default
holdtype=local
echocancel=yes
echocancelold=yes
language=de
devices=2

wie gesagt ich habe mit Asterisk erst vor 2 Tagen angefangen. Sicherlich ist nicht alles perfekt. Aber ich kann von den SIPClients calls nach ISDN machen und von ISDN Calls nach SIP, sowie Vermitteln zwischen den Anlagen und Konferenzen. Die Rufnummer von SIPGATE wird auch sauber an das ISDN Telefon geroutet und meine Test ISDN Nummer wird auch sauber von ISDN über Asterisk wieder an den ISDN Teilnehmer gegeben. Vom SIPClient kann ich auch bestens über SIPGATE ander Rufnummern erreichen.
Mein Letzter Wunsch ist halt das ich über die ISDN Telefone einen Ausstieg nach SIPGATE bekomme.
Ziel ist, das ich früher oder später auf die ISDN Anbindung durch die Telekom verzichten kann. Dieses hier ist alles ein Test aufbau dazu. Ist es erfolgreich wird die Telekom gekündigt und dann, nach etwas parallel Betrieb soll nur noch VOIP laufen.
Das zum Warum !

Grüße und Danke

Markus
 
Ps

ach ja,

Capi ist chan_capi-cm-0.6.2 von Souceforge und Asterisk ist 1.2.1

Das neuste was ich im Netz gefunden habe. Das ganze läuft auf einer SuSE Enterprise 9 unpatched als X86 auf einem Intel 2.8 mit 2,5 GB RAM. Soll mal irgengwann auf so eine VIA oder Transmeta mini 19" aber halt erst nach dem Test.

Markus
 
änder mal den Kontext overdsl, dass er so aussieht:
Code:
[overdsl]
exten => _X.,1,Dial(SIP/${EXTEN}@sipgate,60,r)


Außerdem bin ich mir nicht sicher, ob es OK ist, wen man einen zweiten Eintrag in der capi.conf für den gleichen Adapter macht. Ist ja auch nicht nötig. Daher mach das mal so in der capi.conf:
Code:
[general]
nationalprefix=0
internationalprefix=00
rxgain=0.9
txgain=0.9
language=de      ;set default language
ulaw=no        ;set this, if you live in u-law world instead of a-law

; interface sections ...

[ISDN1]          ;this example interface gets name 'ISDN1' and may be any
                 ;name not starting with 'g' or 'contr'.
;ntmode=yes      ;if isdn card operates in nt mode, set this to yes
isdnmode=msn     ;'MSN' (point-to-multipoint) or 'DID' (direct inward dial)
                 ;when using NT-mode, 'DID' should be set in any case
incomingmsn=90,80,99;allow incoming calls to this list of MSNs/DIDs, * = any
defaultcid=90  ;set a default caller id to that interface for dial-out,
                 ;this caller id will be used when dial option 'd' is set.
;controller=0    ;ISDN4BSD default
;controller=7    ;ISDN4BSD USB default
controller=1     ;capi controller number to use
group=1          ;dialout group
;prefix=0        ;set a prefix to calling number on incoming calls
softdtmf=on      ;enable/disable software dtmf detection, recommended for AVM cards
relaxdtmf=on     ;in addition to softdtmf, you can use relaxed dtmf detection
accountcode=     ;Asterisk accountcode to use in CDRs
context=default  ;context for incoming calls
holdtype=local   ;when Asterisk puts the call on hold, ISDN HOLD will be used. If
                 ;set to 'local' (default value), no hold is done and Asterisk may
                 ;play MOH.
;immediate=yes   ;DID: immediate start of pbx with extension 's' if no digits were
                 ;     received on incoming call (no destination number yet)
                 ;MSN: start pbx on CONNECT_IND and don't wait for SETUP/SENDING-COMPLETE.
                 ;     info like REDIRECTINGNUMBER may be lost, but this is necessary for
                 ;     drivers/pbx/telco which does not send SETUP or SENDING-COMPLETE.
;echosquelch=1   ;_VERY_PRIMITIVE_ echo suppression
echocancel=yes  ;EICON DIVA SERVER (CAPI) echo cancelation
                 ;(possible values: 'no', 'yes', 'force', 'g164', 'g165')
echocancelold=yes;use facility selector 6 instead of correct 8 (necessary for older eicon drivers)
;echotail=64     ;echo cancel tail setting
;bridge=yes      ;native bridging (CAPI line interconnect) if available
;callgroup=1     ;Asterisk call group
language=de     ;set language for this device (overwrites default language)
devices=2        ;number of concurrent calls on this controller
                 ;(2 makes sense for single BRI, 30 for PRI)

Wenn sich der Asterisk ordentlich bei Sipgate registriert, dann sollte es eigentlich gehen. Du solltest Aber trotzdem mal Deine kontexte ordnen, sonst geht irgendwann mal was total deneben.
 
Re

Hallo,

ich hab es geändert. Was bleibt ist der :

Code:
 -- Executing DISA("CAPI/ISDN2/99-0", "no-password|overdsl") in new stack
    -- Executing Dial("CAPI/ISDN2/99-0", "SIP/[email protected]|60|r") in new stack
    -- Called [email protected]
Jan  6 07:18:43 NOTICE[5681]: chan_sip.c:9516 handle_response_invite: Failed to authenticate on INVITE to '"21" <sip:[email protected]>;tag=as1e4a2be6'

Das hatte ich schon mal als ich in der sip.conf für die SIPGATE was anderes als default im context stehen hatte. Da hat es mir die SIPCLients nicht erkannt und mit dem gleichen Fehler abgebrochen.
Ich hatte jetzt auch schon in der SIP.conf unter SIPGATE den context nach overdsl geändert. Leider erfolglos.
Mir scheint, das sobald ich aus der default rausgehe er diese Einträge nicht mehr kennt. Darum hatte ich dann auch alles unter default erstellt.

gruß

Markus
 
Re

Was mich mehr als stutzig macht ist diese NOTICE Ausgabe:

Failed to authenticate : kann nicht identifizieren
to INVITE to 21 : um "21" einzubinden.

und dann !!! <sip:[email protected]>

21 ist aber gar kein SIP Teilnehmer sonder kommt vom ISDN, na klar kann die nicht in der sip.conf gefunden werden. Kommt ja auch nicht von da, sondern von der CAPI.

habe 21 jetzt auch in der extension.conf bekannt gemacht, keine Änderung ein EIntrag in der sip.conf brachte auch nichts .... alles wieder raus.

Markus
 
Könnte es sein, dass Du die extensions.conf nicht so abgeändert hast, wie ich es geschrieben habe:

Code:
[overdsl]
exten => _X.,1,Dial(SIP/${EXTEN}@sipgate,60,r)

Hinter dem @ darf nicht "sipgate.de stehen, sondern nur "sipgate", sonst versucht er einen Direct-IP-Call. Und da Du eine Festnetznummer anrufst, könnte das schon schief gehen (bei Sipgate-Nummern müsste das allerdings funzen). Also streich auch den Eintrag mit der 21 in der extensions.conf.
Außerdem würde ich vorher noch einaml sicher gehen, dass sich der Asterisk bei Sipgate richtig registriert hat (sip show registry).
 
Re:

Hallo,


danke, wer lesen kann ist klar im Vorteil. War gestern zu spät und heute zu früh.

Jetzt klapt das auch. Hätte mir auch auffallen müssen beim SIP DIAL OUT ist das ja auch so.


Also nochmals Danke und ich hoffe ich kann mich mal revangieren.


Markus
 
Kostenlos!

Statistik des Forums

Themen
248,868
Beiträge
2,303,383
Mitglieder
378,530
Neuestes Mitglied
fanboy