.titleBar { margin-bottom: 5px!important; }

asterisk mit bristuff und capi

Dieses Thema im Forum "Asterisk ISDN mit CAPI (chan_capi, chan_capi_cm)" wurde erstellt von forumuser-1, 29 Sep. 2005.

  1. forumuser-1

    forumuser-1 Neuer User

    Registriert seit:
    22 Juli 2005
    Beiträge:
    5
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    trotz tagelangem Durchforsten des Forums bekomme ich den Asterisk Server nicht zum Laufen.

    Asterisk ist installiert und startet korrekt auf Konsolenebene:

    Aber:

    - externe anrufe auf die SIP Telefonnummer (0180xxx) werden signalisiert aber nicht korrekt angenommen
    -> context Fehlermeldungen
    - es werden keine externen isdn anrufe auf der TE-Karte (CAPI) registriert/signalisiert
    - xlite wählversuche werden nicht erkannt
    -> context Fehlermeldungen


    Bei der asterisk Konfiguration habe ich mich an die Beispiele im Forumseingang gehalten.

    -> Ip-Phone-Forum FAQ -> Asterisk -> Asterisk ist installiert, - wie kann ich jetzt SIP-Gespräche führen?

    Später sollen dann SIP und CAPI kombiniert werden. Erst soll asterisk in der Grundkonfiguration laufen.


    Ich habe folgende Kombination im Einsatz:

    Fedora Core 2 kernel-2.6.8-1.521 / Asterisk 1.0.9-BRIstuffed-0.2.0-RC8o / chan_capi-cm0.6

    1. AVM Fritzcard PCI (TE-Modus) (chan_capi-cm-0.6)
    2. Billion HFC-PCI (NT-Modus: make loadNT)

    Der zaphfc Treiber für die HFC-PCI Karte wird offensichtlich korrekt installiert und die Karte entsprechend konfiguriert:

    "cat /proc/interrupts"
    -> 10: 53036275 XT-PIC eth2, zaphfc

    "cat /proc/zaptel/1"
    -> Span 1: ZTHFC1 "HFC-S PCI A ISDN card 0 [NT] layer 1 DEACTIVATED (G2)" AMI/CCS
    -> 1 ZTHFC1/0/1 Clear (In use)
    -> 2 ZTHFC1/0/2 Clear (In use)
    -> 3 ZTHFC1/0/3 HDLCFCS (In use)

    "ztcfg -vv"

    Zaptel Configuration
    ======================

    SPAN 1: CCS/ AMI Build-out: 399-533 feet (DSX-1)

    Channel map:

    Channel 01: Individual Clear channel (Default) (Slaves: 01)
    Channel 02: Individual Clear channel (Default) (Slaves: 02)
    Channel 03: D-channel (Default) (Slaves: 03)

    3 channels configured.


    Habe die Fritzcard mit einem ISDN (Netzwerkkabel) mit der Acror Starterbox verbunden.


    ### Asterisk CAPI Probleme:

    (Fehler)meldung beim Starten von Asterisk:
    [chan_capi.so] => (Common ISDN API for Asterisk)
    == Parsing '/etc/asterisk/capi.conf': Found
    Sep 29 09:11:08 NOTICE[3899]: chan_capi.c:4411 cc_init_capi: Unused contr1
    == Registered channel type 'CAPI' (Common ISDN API Driver (cm-0.6) )

    Habe im Internet nur eine derartige Meldung gefunden, allerdings wurde der CAPI-Treiber in diesem Fall nicht geladen.

    Hier indes scheint die Fritzcard korrekt initialisert worden zu sein:

    *CLI> capi info
    Contr1: 2 B channels total, 2 B channels free.


    Wenn ich nun von extern (handy) meine Festnetznummer (0xx)xxxxxx28 anrufe, reagiert asterisk überhaupt nicht.

    Hatte zwischenzeitlich Hylafax abgeschaltet (msn xxxxxx27), um andere Probleme ausschliessen zu können.

    Was ich ebenfalls nicht verstehe: egal wie die extensions.conf bearbeitet wird, asterisk zeigt nach Neustarts immer diesen dialplan:

    *CLI> show dialplan
    [ Context 'parkedcalls' created by 'res_features' ]
    '700' => 1. Park() [res_features]

    Ist dies normal?



    ### Asterisk SIP Probleme:

    *CLI> sip show users
    Username Secret Accountcode Def.Context ACL NAT
    1234 geheim sipgate No RFC35
    626xxxx passwort sip-out No Alway

    Der SIP-Account wird korrekt beim Provider registriert.

    *CLI> sip show registry
    Host Username Refresh State
    sipgate.de:5060 626xxxx 105 Registered


    Ein Anruf von extern auf die SIP Telefonnummer 01801xxxxxxx quittiert asterisk grundsätzlich mit dem Hinweis, dass kein context gefunden werden kann:

    *CLI> Sep 29 10:29:23 NOTICE[11968]: pbx.c:1332 pbx_extension_helper: Cannot find extension context 'sipgate'

    -> Dieser Kontext existiert allerdings in der extensions.conf

    Habe diverse Konfigurationen in der extensions.conf ausprobiert, die context Fehlermeldungen bleiben bestehen.

    Ich befürchte inzwischen etwas den Überblick in dieser Materie verloren zu haben...

    Wie gesagt, ich wäre froh, wenn ich asterisk erst einmal grundsätzlich zum Laufen bringen könnte....


    Mit der Bitte um Hilfe,
    Vielen Dank!

    VG
    Wolfgang



    Anbei meine Konfiguration:



    /etc/asterisk/capi.conf

    ; CAPI config (chan_capi-cm)

    [general]
    nationalprefix=0
    internationalprefix=00
    rxgain=0.8
    txgain=0.8

    ;; [interfaces] ; seems to be outdated from chan_capi-cm Version >= 0.6

    ; mode: ptmp (point-to-multipoint) or ptp (point-to-point)
    ; the driver from AVM for the passive Fritz card only supports PTM (Point-to-Multipoint) "Mehrgeraeteanschluss"
    isdnmode=ptmp
    ; allow incoming calls to this list of MSNs, * == any
    incomingmsn=*
    ;incomingmsn=xxxxxx28
    ; capi controller number
    controller=1
    ; dialout group
    group=1
    ; enable/disable software dtmf detection, recommended for AVM cards
    softdtmf=1
    ; accountcode to use in CDRs
    accountcode=
    context=capi-in

    devices => 2



    /etc/asterisk/modules.conf

    ;
    ; Asterisk configuration file
    ; Module Loader configuration file
    ;

    ; ----------------------------------------------------
    ; Use autoload=yes together with noload => module_name
    ; Use autoload=no together with load => module_name
    ; ----------------------------------------------------


    [modules]
    ;autoload=yes ;; disabled wsc
    autoload=no

    load => res_features.so
    load => res_musiconhold.so
    load => res_monitor.so

    ;load => chan_iax2.so
    load => chan_sip.so
    load => chan_zap.so

    ;;noload => pbx_gtkconsole.so
    ;load => pbx_gtkconsole.so
    ;;noload => pbx_kdeconsole.so

    ;noload => app_intercom.so

    ; ## wsc 07.12.04
    load => chan_capi.so
    ;load => chan_modem.so

    ;;noload => chan_alsa.so
    ;noload => chan_oss.so

    [global]
    ; ## wsc 07.12.04
    chan_capi.so=yes
    ;chan_modem.so=yes




    /etc/asterisk/zapata.conf

    ;
    ; Zapata telephony interface
    ; Configuration file
    ;

    ; p2mp TE mode (for connecting ISDN lines in point-to-multipoint mode)
    ; signalling = bri_cpe_ptmp
    ; p2mp NT mode (for connecting ISDN phones in point-to-multipoint mode)
    ; signalling = bri_net_ptmp


    [channels]
    ;----------------------------------------------------------------------------
    ;NT-Karte fuer ISDN-Telefonanlage im Mehrgeraete-Anschluss
    ;----------------------------------------------------------------------------

    ; 1. Karte
    switchtype = euroisdn
    signalling = bri_net_ptmp ; muss mit der durch modes in Makefile gemachten Einstellung übereinstimmen
    pridialplan = local
    prilocaldialplan = local
    echocancel = yes
    overlapdial = no
    echocancelwhenbridged=no
    echotraining=no
    immediate = no
    usecallerid = yes
    group = 1
    context = pbx-trunk
    channel => 1-2
    usecallingpres=yes
    nationalprefix = 0
    internationalprefix = 00

    ;-----------------------------------------------------------------------------
    ;TE-Karte fuer Anschluss an NTBA/ISDN-Telefonnetz
    ;-----------------------------------------------------------------------------

    ; nur eine HFCI Karte installiert!!
    ; wird stattdessen von der Fritzcard und dem capitreibern+chan_capi-cm übernommen

    ; 2. Karte
    ;switchtype = euroisdn
    ;signalling = bri_cpe_ptmp
    ;pridialplan = local
    ;prilocaldialplan = local
    ;echocancel = yes
    ;echocancelwhenbridged=no
    ;echotraining=no
    ;usecallerid = yes
    ;overlapdial = no
    ;immediate = no
    ;group = 2
    ;context = tcom-trunk
    ;channel => 4-5



    /etc/zaptel.conf

    # hfc-s pci a span definition
    # most of the values should be bogus because we are not really zaptel
    loadzone=nl
    defaultzone=nl

    # 1. Karte
    span=1,1,3,ccs,ami
    bchan=1-2
    dchan=3

    # 2. Karte (nicht vorhanden!)
    #span=2,1,3,ccs,ami
    #bchan=4-5
    #dchan=6



    /etc/asterisk/sip.conf

    ; Will man nun über seinen Asterisk-Server Gespräche zu einem Provider (z.B. Sipgate) führen,
    ; sind folgende Eingräge in der sip.conf nötig:

    [general]
    port = 5060
    bindaddr = 0.0.0.0
    context = sip-out
    qualify=no
    localnet = 192.168.1.0/255.255.255.0
    ;externip = 192.168.1.1
    externip = xyz.dyndns.org
    disable=all
    allow=alaw
    allow=alaw
    allow=ulaw
    allow=g729
    allow=gsm
    allow=slinear
    srvlookup=yes
    canreinvite=yes
    language=de
    ;dsc
    register => 626xxxx:passwort@sipgate.de/626xxxx

    ;; not sure:
    ;tos=0x18
    ;nat=no
    ;dtmfmode=info

    [sipgate]
    type=friend
    insecure=very
    nat=yes
    username=626xxxx
    fromuser=626xxxx
    fromdomain=sipgate.de
    secret=passwort
    host=sipgate.de
    qualify=yes

    ;; not sure:
    ;tos=0x18
    ;nat=no
    ;dtmfmode=info


    ; SIP-Benutzer als Endgerät (xlite) zur Anmeldung am Asterisk-Server:

    [1234]
    type=friend
    username=1234
    secret=geheim
    host=dynamic
    disallow=all
    allow=ulaw
    allow=alaw
    dtmfmode=rfc2833
    context=sipgate
    ;callerid="Vorname Nachname" <5555>
    qualify=yes
    nat=no


    /etc/asterisk/extensions.conf

    [general]
    static=yes
    writeprotect=no

    ; Internes Xlite Endgerät [1234]
    ; Rufnummer in der extensions.conf zuordnen:

    exten => 1234,1,Dial(SIP/${EXTEN},60)
    exten => 1234,2,Congestion
    exten => 1234,102,Busy

    ; Eingehende Anrufe von Sipgate werden somit an die Extension 1234 (das eigene lokale SIP-Telefon) vermittelt.
    ; Will man über Sipgate raustelefonieren, so wählt man die 9 mit der gewünschten Sipgate-Rufnummer dahinter.


    ; Will man nun über seinen Asterisk-Server Gespräche zu einem Provider (z.B. Sipgate) führen,
    ; sind folgende Eingräge in der extensions.conf nötig:

    [default]
    exten => ,1,Dial(SIP/${EXTEN},60)
    exten => ,2,Congestion
    exten => ,102,Busy

    [sipgate]
    include => default
    exten => _9.,1,Dial(SIP/${EXTEN:1}@sipgate,60)
    exten => _9.,2,Congestion
    exten => _9.,102,Busy

    ; ---
    ; FUTURE: (capi) calls from extern to isdn ntba
    ; ---

    ;[globals]
    ;IAXINFO=guest

    ;[default]
    ;include => calls

    ;[calls]
    ;exten => 626xxxx,1,Dial(Zap/2/xxxxxx28,60,tT)
    ;exten => 626xxxx,2,Hangup

    ;exten => _8.,1,Dial(SIP/${EXTEN:1}@sipgate,60,tT)
    ;exten => _8.,2,Congestion
    ;exten => _8.,3,Busy
    ;exten => _8.,4,Hangup
     
  2. forumuser-1

    forumuser-1 Neuer User

    Registriert seit:
    22 Juli 2005
    Beiträge:
    5
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Konnte inzwischen das "Phänomen" mit dem Dialplan selbst lösen:

    Habe in der modules.conf den Eintrag von

    autoload=no auf yes gesetzt. Allerdings musste ich folgende Module ausklammern:

    noload => chan_modem.so
    noload => chan_modem_aopen.so
    noload => chan_modem_bestdata.so
    noload => chan_modem_i4l.so
    noload => app_intercom.so

    Wo bitte gibt es eine Übersicht, welche Module asterisk grundsätzlich für einen ordnungsgemässen Betrieb benötigt? Welche Module werden eher für den europäischen als für den amerikanischen Telefonbereich verwendet, - insbesondere vor dem Hintergrund der eingesetzten Hardware?

    Zusätzlich scheint jetzt zumindest ein Anruf von Xlite zu asterisk zu funktionieren, - die Context Fehlermeldungen beim externen Anruf auf die SIP Telefonnummer bestehen jedoch weiterhin!
     
  3. kombjuder

    kombjuder IPPF-Promi

    Registriert seit:
    2 Nov. 2004
    Beiträge:
    3,086
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Weil am Rhein
    Wo ist dieser Context in deiner extensions.conf?
    Da springt dein Capi hin. Nicht da also nichts tun sagt asterisk.

    Auch hier weiss dein Asterisk nicht was tun


    Hier auch wie vor.

    Deine extensions.conf hat auch noch einen Satz Fehler drin.

    Mein Vorschlag: Nimm ein Device (z.B. SIP) und bring das zum laufen. Dann das nächste.

    Mach dir dazu eine spezielle extensions.conf zum probieren, die orginale benennst du um. Wenn ein Teil funktioniert, bau ihn dort ein.
     
  4. armincm

    armincm Aktives Mitglied

    Registriert seit:
    3 Aug. 2005
    Beiträge:
    1,006
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Fuer chan_capi-cm version 0.6 ist deine capi.conf nicht korrekt.
    Es fehlt eine Sektion, z.B.
    [ISDN1]
    Schau mal in die capi.conf, die um Paket von chan_capi-cm dabei ist.

    Armin
     
  5. forumuser-1

    forumuser-1 Neuer User

    Registriert seit:
    22 Juli 2005
    Beiträge:
    5
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    vielen Dank für die schnelle wie kompetente Hilfe.

    Hätte niemals vermutet, dass das Basteln an einer Telefonanlage unter Asterisk so viel Spass bereiten kann, - hatte früher immer dankend abgewunken, wenn es um Telefonanlagen ging, die nur unzureichend in Netzwerke einzubinden waren, - eben die teuren Black-Boxes namhafter Hersteller.

    Habe inzwischen die Konfiguration verändert, und siehe da, sogar mein ISDN-Telefon am zweiten NTBA wurde plötzlich zum Leben erweckt, welches die letzten Bedenken über das zusammengelötete X-Kabel zerstreuen konnte.

    Habe gleich ein paar mal die vorkonfigurierte Asterisk Voicebox angerufen... ...einfach genial, was sich da noch alles bewerkstelligen lässt.

    Was mir jetzt noch fehlt, ist das Wählen vom ISDN Telefon

    [capi-out]

    a) in das öffentliche ISDN Telefnnetz
    b) zu einer SIP-Nummer (666xxxx)
    c) zu einer (extern) SIP-Nummer (01801...)

    Vielleicht könnte mir noch mal jemand einen Tipp geben?

    VG
    Wolfgang


    Anbei noch einmal die Dateien:

    /etc/asterisk/capi.conf

    ; CHAN_CAPI-CM
    ;
    ; CAPI config
    ;
    ;
    [general]
    nationalprefix=0
    internationalprefix=00
    rxgain=0.8
    txgain=0.8

    ;[interfaces] ; outdated from chan_capi-cm version >= 0.6:

    [ISDN1]
    isdnmode=msn ; 'MSN' (point-to-multipoint) or 'DID' (direct inward dial)
    ; The driver from AVM for the passive Fritz card only supports PTM (Point-to-Multipoint) "Mehrgeräteanschluss"
    ; mode: ptmp (point-to-multipoint) or ptp (point-to-point) "Anlagenanschluss"
    isdnmode=ptmp
    ; allow incoming calls to this list of MSNs, * == any
    incomingmsn=*
    ;incomingmsn=xxxxxx29 ; sonja
    ;incomingmsn=xxxxxx28 ; wolfgang
    ;incomingmsn=xxxxxx27 ; fax
    ; capi controller number
    controller=1
    ; dialout group
    group=1
    ; enable/disable software dtmf detection, recommended for AVM cards
    softdtmf=on
    ; accountcode to use in CDRs
    accountcode=
    ; context for incoming calls
    context=capi-in
    ; _VERY_PRIMITIVE_ echo suppression
    ;echosquelch=1
    ; EICON DIVA SERVER echo cancelation
    ;echocancel=yes
    ;echotail=64

    ; call group
    ;callgroup=1
    ; deflect incoming calls to 12345678 if all B channels are busy
    ;deflect=12345678
    ; number of concurrent calls on this controller (2 makes sense for single BRI)
    devices => 2

    ###

    /etc/asterisk/sip.conf

    [general]
    port = 5060
    bindaddr = 0.0.0.0
    context = default
    ;context = sip-in
    ;context = sip-out
    qualify=no
    localnet = 192.168.1.0/255.255.255.0
    ;externip = 192.168.1.1
    externip = xyz.dyndns.org
    disallow=all
    allow=alaw
    allow=alaw
    allow=ulaw
    ;allow=g729
    allow=gsm
    allow=slinear
    srvlookup=yes
    canreinvite=yes
    language=de
    ;dsc
    ;register => 626yyyy:passwort@sipgate.de/626yyyy
    ;wsc
    register => 626xxxx:passwort@sipgate.de/626xxxx

    ;; not sure:
    ;tos=0x18
    ;nat=no
    dtmfmode=info

    [sip-dsc]
    type=friend
    insecure=very
    nat=yes
    username=626yyyy
    fromuser=626yyyy
    fromdomain=sipgate.de
    secret=passwort
    host=sipgate.de
    qualify=yes

    ;; not sure:
    ;tos=0x18
    ;nat=no
    ;dtmfmode=info

    [sipgate]
    type=friend
    insecure=very
    nat=yes
    username=626xxxx
    fromuser=626xxxx
    fromdomain=sipgate.de
    secret=passwort
    host=sipgate.de
    qualify=yes

    ;; not sure:
    ;tos=0x18
    ;nat=no
    ;dtmfmode=info


    ; SIP-Benutzer als Endgerät (xlite) zur Anmeldung am Asterisk-Server:

    [1234]
    type=friend
    ;insecure=NO
    username=1234
    secret=geheim
    host=dynamic
    disallow=all
    allow=ulaw
    allow=alaw
    dtmfmode=rfc2833
    context=sipgate
    ;callerid="Vorname1 Nachname1" <5555>
    qualify=yes
    nat=no

    [5678]
    type=friend
    ;insecure=NO
    username=5678
    secret=geheim
    host=dynamic
    disallow=all
    allow=ulaw
    allow=alaw
    dtmfmode=rfc2833
    context=sipgate
    ;callerid="Vorname2 Nachname2" <6666>
    qualify=yes
    nat=no

    ###

    /etc/asterisk/extensions.conf

    [general]

    static=yes
    writeprotect=no

    [globals]
    IAXINFO=guest

    [default]
    include => sip-in

    [sip-in]
    ; dsc
    ;exten => 626xxxx,1,Dial(Zap/2/xxxxxx28,60,tT)
    ;exten => 626xxxx,2,Hangup
    ; wsc
    exten => 626yyyy,1,Dial(Zap/2/xxxxxx28,60,tT)
    exten => 626yyyy,2,Hangup

    ;?????
    exten => _8.,1,Dial(SIP/${EXTEN:1}@sipgate,60,tT)
    exten => _8.,2,Congestion
    exten => _8.,3,Busy
    exten => _8.,4,Hangup


    ;[sip-out]
    ;...

    ;[from-sip-to-capi]
    ;means that the user must have (pre)paid in order to use that service
    ;...not used at the moment!


    ;[from-sip-to-sip]
    ;...

    [capi-in]
    exten => xxxxxx28,1,Dial(SIP/${EXTEN:1}@sipgate,30,tT)
    exten => xxxxxx28,2,Congestion
    exten => xxxxxx28,3,Busy
    exten => xxxxxx28,4,Hangup

    exten => xxxxxx27,1,Dial(SIP/${EXTEN:1}@sipgate,10,tT)
    exten => xxxxxx27,2,Congestion
    exten => xxxxxx27,3,Dial(Zap/2/xxxxxx28,60,tT)
    exten => xxxxxx27,4,Congestion
    exten => xxxxxx27,5,Busy
    exten => xxxxxx27,6,Hangup

    ; Create an extension, xxxxxx29, for dialing the Asterisk demo.

    exten => xxxxxx29,1,Playback(demo-abouttotry); Let them know what's going on
    exten => xxxxxx29,2,Dial(IAX2/guest@misery.digium.com/s@default) ; Call the Asterisk demo
    exten => xxxxxx29,3,Playback(demo-nogo) ; Couldn't connect to the demo site
    exten => xxxxxx29,4,Goto(s,6) ; Return to the start over message.

    ;[capi-out]
    ;exten => ...