Table of Contents

Installazione drivers DAHDI su Debian Squeeze

aptitude install dahdi-source dahdi dahdi-linux
m-a a-i dahdi

Ora tocca alla configurazione, che cambia a seconda di quale hardware si usa, e delle configurazioni dello stesso. Il punto di partenza e` il file /etc/dahdi/genconf_parameters, un esempio del quale si trova in /usr/share/doc/dahdi/examples/genconf_parameters.gz

Configurazione generica e comandi utili

Se vi trovate di fronte a una scheda che non conoscete, questa e` (piu` o meno) la procedura per arrivare ad avere qualcosa di funzionante.

pci:0000:08:00.0     wctdm24xxp-  d161:8005 Wildcard TDM410P

allora significa che il driver da caricare e` wctdm24xxp. Il "meno" in fondo significa che non e` ancora stato caricato. Potete usare un "modprobe" per caricarlo a mano, cosi` potete procedere. Vale la pena di guardare l'output in dmesg o nel syslog per vedere se il driver fornisce informazioni utili o messaggi di errore.

# toni italiani
lc_country      it

# context delle chiamate entranti dalla scheda dahdi
context_lines   from-dahdi

# gruppo di default nel quale inserire le linee dahdi
group_lines     0

In questa configurazione mancano tutti i default "specifici" delle linee (analogiche, ISDN, ecc) che vanno verificati e inseriti correttamente a seconda del tipo di scheda che avete.

Questa spiegazione e` assai lacunosa, il problema e` che le parti che non sono definite in modo preciso sono dipendenti dal tipo di installazione che fate e dal tipo di scheda che usate. Qui di seguito ci sono configurazioni specifiche per determinate schede che mi e` capitato di usare.

Configurazione di Dahdi senza hardware, solo per il timing

lc_country it

Dal momento che non esistono canali dahdi in questa configurazione, possiamo ignorare i files /etc/asterisk/chan-dahdi.conf e /etc/asterisk/dahdi-channels.conf

Configurazione di Dahdi con una scheda ISDN singola BRI con chipset HFC

blacklist hfcpci
blacklist mISDN_core
# toni italiani
lc_country      it

# context delle chiamate entranti dalla isdn
context_lines   from-dahdi

# gruppo di default nel quale inserire le linee isdn dahdi
group_lines     0

# signalling delle linee (bri o bri_ptmp)
bri_sig_style   bri_ptmp
zaphfc dahdi_transcode dahdi_dummy
; chan_dahdi contenente i parametri di localizzazione delle linee
; qui metto le configurazioni che faccio io a mano e che non sono modificate dal dahdi_genconf.

[channels]
language=it
usecallerid=yes
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=yes

group=1
callgroup=1
pickupgroup=1

pridialplan=unknown
prilocaldialplan=unknown
nationalprefix=0
internationalprefix=00
; overlapdial=yes
priindication=outofband

; alla fine, dopo aver settato tutti i parametri, includo (il # all'inizio non e` un commento!)
; il file dahdi-channels.conf, che e` generato da dahdi_genconf.
; VA INCLUSO ALLA FINE altrimenti i parametri impostati sopra non funzionano, perche` la logica di Asterisk
; e` che prima imposti i parametri, poi li applichi al canale che indichi in seguito.
; e siccome i canali sono indicati nel file incluso, questo va incluso alla fine.
#include /etc/asterisk/dahdi-channels.conf
linux*CLI> dahdi show status
Description                              Alarms  IRQ    bpviol CRC4   Fra Codi Options  LBO
HFC-S PCI A ISDN card 0 [TE]             OK      0      0      0      CCS AMI  YEL      0 db (CSU)/0-133 feet (DSX-1)

linux*CLI> dahdi show channels
   Chan Extension  Context         Language   MOH Interpret        Blocked    State
 pseudo            default                    default                         In Service
      1            from-dahdi      it         default                         In Service
      2            from-dahdi      it         default                         In Service

Configurazione con una scheda Quad-BRI B400P

Questa configurazione usa una scheda Quad-BRI Openvox B400P, che usa un chipset HFC. In questa configurazione usero` alcune porte in modo PTP e altre in modo PTMP, giusto perche` le cose facili non mi piacciono. Ma procediamo:

blacklist hfcpci
blacklist mISDN_core
blacklist hfcmulti
# toni italiani
lc_country      it

# context delle chiamate entranti dalla isdn
context_lines   from-dahdi

# gruppo di default nel quale inserire le linee isdn dahdi
group_lines     0

# signalling delle linee (bri o bri_ptmp)
bri_sig_style   bri
wcb4xxp

* Modificare il file /etc/asterisk/chan_dahdi.conf, usando lo stesso che trovate nella sezione precedente, quella relativa alla scheda singolo BRI con chipset HFC.

Configurazione con una scheda analogica TDM410

Questa configurazione usa una scheda analogica TDM410 con 4 moduli. Di questi 4, tre sono di tipo FXO (quindi si connettono a linee telefoniche esterne) e uno e` di tipo FXS (quindi connette un telefono analogico interno). Il modulo FXS in questa configurazione viene inizializzato ma non utilizzato, quindi non e` detto che funzioni correttamente, magari e` necessario modificare dei parametri di configurazione per farlo funzionare.

# toni italiani
lc_country      it

# context delle chiamate entranti dalla isdn
context_lines   from-dahdi

# gruppo di default nel quale inserire le linee isdn dahdi
group_lines     0

# signalling per le linee analogiche
fxs_default_start       ks
[channels]

language=it
context=from-pstn

; timing per il flash italiano, che e` MOLTO piu` rapido di quello USA. Tempi in mS.
preflash=80
flash=100

; questo e` default? Eventualmente commentare
;usecallerid=yes
;cidsignalling=v23

; verificare se servono
echocancel=yes
echocancelwhenbridged=yes

; ricnoscimento dell'occupato
busydetect=yes
busycount=3
; potremmo anche usare il busypattern, il problema e` che abbiamo due pattern diversi
; a seconda che il segnale indichi occupato o congestione.

; non usiamo il cambio di polarita` per nulla
answeronpolarityswitch=no
hanguponpolarityswitch=no

; questo era abilitato nella vecchia configurazione, ma dubito che funzioni
; correttamente, a meno che il centralino non produca segnali compatibili con quelli USA
callprogress=yes
;progzone=us

; non includo dahi-channels.conf come dovrei, ma replico qui le sue configurazioni "significative".
; cosi` tra l'altro elimino il quarto modulo che e` un FXS che non uso.

; Queste che seguono sono le impostazioni copiate da dahdi-channels.conf
signalling=fxs_ks
callerid=asreceived
group=0
context=from-pstn
channel => 1-3

Problemi di eco su linee analogiche

Se ci sono problemi di eco sulle linee analogiche con driver dahdi, e` possibile provare a usare un tool per configurare il cancellatore dell' eco (software).