Einrichtung ISDN Karte in Gemeinchaft mit DAHDI
Asterisk 1.4 - Quick & Dirty
Freitag, den 04. Februar 2011 um 00:00 Uhr

 

Diese Kurzanleitung beschreibt die Einrichtung einer ISDN Karte mit HFC Chipsatz für Gemeinschaft 3.1.

Mit der Installation von Gemeinschaft 3.1 werden auch die DAHDI Treiber (ehemals zaptel) installiert. Auch ohne ISDN Karte wird DAHDI in Gemeinschaft als Zeitquelle für Konferenzen benötigt. Für diese Anleitung wird eine Beronet Karte von Typ BN2S0 mit zwei BRI Ports verwendet.

 

Momentan wird von DAHDI nur der TE Modus unterstützt.

 

 

Nach dem Einbau der Karte überprüft man als erstes mit lspci ob diese überhaupt von Linux erkannt wird:

# lspci
00:00.0 Host bridge: Intel Corporation 4 Series Chipset DRAM Controller (rev 03)
00:02.0 VGA compatible controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)
00:03.0 Communication controller: Intel Corporation 4 Series Chipset HECI Controller (rev 03)
00:19.0 Ethernet controller: Intel Corporation 82567LF-2 Gigabit Network Connection
00:1a.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4
00:1a.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5
00:1a.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #6
00:1a.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2
00:1d.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1
00:1d.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2
00:1d.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3
00:1d.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90)
00:1f.0 ISA bridge: Intel Corporation 82801JIR (ICH10R) LPC Interface Controller
00:1f.2 IDE interface: Intel Corporation 82801JI (ICH10 Family) 4 port SATA IDE Controller #1
00:1f.3 SMBus: Intel Corporation 82801JI (ICH10 Family) SMBus Controller
00:1f.5 IDE interface: Intel Corporation 82801JI (ICH10 Family) 2 port SATA IDE Controller #2
01:00.0 ISDN controller: Cologne Chip Designs GmbH ISDN network Controller [HFC-4S] (rev 01)

 

Der letzte Eintrag zeigt dass die Karte erfolgreich erkannt wurde.

 

Da nach dem Einbau einer ISDN Karte beim Starten des Systems auch andere ISDN Treiber wie mISDN automatisch geladen werden, sollte man diese Treiber - auch Kernelmodule genannt- blacklisten. Dadurch werden diese Module nicht mehr automatisch geladen:

 

echo blacklist hisax >> /etc/modprobe.d/blacklist.conf
echo blacklist crc_ccitt >> /etc/modprobe.d/blacklist.conf
echo blacklist capi >> /etc/modprobe.d/blacklist.conf
echo blacklist kernelcapi >> /etc/modprobe.d/blacklist.conf
echo blacklist capifs >> /etc/modprobe.d/blacklist.conf
echo blacklist mISDN_core >> /etc/modprobe.d/blacklist.conf
echo blacklist hfcmulti >> /etc/modprobe.d/blacklist.conf

 

Nach einem Neustart kann man mit lsmod prüfen dass keine "fremden" ISDN Module geladen sind. Mit folgenden Befehl kann man prüfen ob die DHADI Treiber geladen wurden:

 

# lsmod | grep dahdi
dahdi_echocan_oslec 1038 4
echo 3020 1 dahdi_echocan_oslec
dahdi 176034 10 dahdi_echocan_oslec,wcb4xxp
crc_ccitt 1039 1 dahdi

 

Für die Beronet Karte B2S0 wurde hier der DAHDI Treiber wcb4xxp automatisch geladen.

Anschließend führt man das Programm dahdi_genconf aus. Mit Hilfe des Programms wird das System nach kompatibler Hardware durchsucht und automatisch die Datei /etc/dahdi/system.conf erstellt:

 

# Autogenerated by /usr/sbin/dahdi_genconf on Fri Feb 4 13:09:32 2011
# If you edit this file and execute /usr/sbin/dahdi_genconf again,
# your manual changes will be LOST.
# Dahdi Configuration File
#
# This file is parsed by the Dahdi Configurator, dahdi_cfg
#
# Span 1: B4/0/1 "B4XXP (PCI) Card 0 Span 1" (MASTER) AMI/CCS
span=1,1,0,ccs,ami
# termtype: te
bchan=1-2
hardhdlc=3
echocanceller=oslec,1-2

# Span 2: B4/0/2 "B4XXP (PCI) Card 0 Span 2" AMI/CCS RED
span=2,2,0,ccs,ami
# termtype: te
bchan=4-5
hardhdlc=6
echocanceller=oslec,4-5

# Global data

loadzone = de
defaultzone = de

 

Wie man sieht, wurde die ISDN Karte richtig mit zwei Ports erkannt.

Die beiden Parameter loadzone und defaultzone habe ich manuell auf de angepasst.

 

Als nächstes muß die Asterisk-Konfigurationsdatei für den DAHDI Channeltreiber /opt/gemeinschaft/etc/asterisk/chan_dahdi.conf angepasst werden.

;
; Dahdi (formerly known as Zapata) telephony interface
;
; Configuration file
;
; You need to restart Asterisk to re-configure the Dahdi (/Zap) channel
; CLI> reload chan_dahdi.so
; will reload the configuration file,
; but not all configuration options are
; re-configured during a reload.



[trunkgroups]


[channels]

;language = de
#exec "/opt/gemeinschaft/etc/asterisk/gs-lang.conf.php"
context = from-gg-isdn-bri
switchtype = euroisdn
signalling = bri_cpe_ptmp
pridialplan = unknown
prilocaldialplan = unknown
internationalprefix = 00
nationalprefix = 0
;localprefix = 0
;localprefix = 02604
resetinterval = never
overlapdial = yes ; important
priindication = outofband
usecallerid = yes
cidsignalling = dtmf
hidecallerid = no
restrictcid = no
usecallingpres = yes
callwaiting = no
echocancel = yes
echocancelwhenbridged = no
rxgain = 0.0
txgain = 0.0
callgroup = 1
pickupgroup = 1
immediate = no
callerid = asreceived
amaflags = default
faxdetect = both

; p2p TE mode => bri_cpe
; p2mp TE mode => bri_cpe_ptmp
; p2p NT mode => bri_net
; p2mp NT mode => bri_net_ptmp

group = 1 ; Dial(DAHDI/g1/...)
channel => 1-2

group = 2 ; Dial(DAHDI/g2/...)
channel => 4-5

; uncomment the channels if you have Zaptel installed

 

Folgende Parameter müssen in dieser Datei manuell angepasst werden:

context = from-gg-isdn-bri (steht standardmäßig auf from-gateway)
signalling = bri_cpe_ptmp (steht standardmäßig auf pri_cpe)



Anschließend startet man das System mit shutdown -r now neu.
Nach dem Neustart prüft man auf der Asterisk CLI ob die DHADI Channeltreiber geladen wurden:


debian*CLI> dahdi show status
Description Alarms IRQ bpviol CRC4 Fra Codi Options LBO
B4XXP (PCI) Card 0 Span 1 OK 0 0 0 CCS AMI YEL 0 db (CSU)/0-133 feet (DSX-1)
B4XXP (PCI) Card 0 Span 2 RED 0 0 0 CCS AMI YEL 0 db (CSU)/0-133 feet (DSX-1)

 

Span 1 ist bereit und Span 2 zeigt einen Alarn, da der Port nicht mit dem NTBA verbunden ist.

 

Die Ausgabe dahdi show channel zeigt daß 4 Channels konfiguriert sind.

dahdi show channels
Chan Extension Context Language MOH Interpret Blocked State
pseudo default default In Service
1 from-gg-isdn-br de default In Service
2 from-gg-isdn-br de default In Service
4 from-gg-isdn-br de default In Service
5 from-gg-isdn-br de default In Service

 

Die nächsten Anpassungen werden in der Gemeinschaft GUI gemacht.

 

Als erstens wird unter ISDN-Gateways BRI Port 1 und zwei für die Verwendung von DAHDI konfiguriert:

 

dhadi_port_1 dhadi_port_2

 

Bei den anderen BRI Ports nimmt man am besten die Zuordnung zu den Gatewaygruppen heraus:

 

isdn-gateways gateway-gruppen

 

Anschließend müüsen noch die ausgehenden Routen für die Verwendung des BRI Gateways konfiguriert werden:

 

lcr