Progetto

Generale

Profilo

AsteriskConfig » Cronologia » Versione 10

Amministratore Truelite, 25-07-2008 16:03

1 1 Amministratore Truelite
[[TracNav(TOC)]]
2
3
== Configurare Asterisk & C su Debian Etch ==
4
5 8 Amministratore Truelite
Questo documento copre la configurazione di Asterisk (nella versione 1.4) e di tutte le applicazione correlate su una Debian Etch, e dà per scontato che si sia già effettuata l'installazione di tutto il software necessario, con una procedura equivalente a quella già illustrata in dettaglio in [wiki:AsteriskDebian qui]. Salvo diversa indicazione esplicita, quando faremo riferimento a nomi di file si intenderanno indicati a partire dalla directory {{{/etc/asterisk}}} che contiene tutte le configurazioni del programma.
6 2 Amministratore Truelite
7
Il primo passo per la realizzazione di un centralino telefonico basato su Asterisk è quello che riguarda la configurazione del supporto delle schede di telefonia (che questa sia un PSTN tradizionale, ISDN o un flusso primario) con cui il programma si interfaccia. Questo ovviamente dipende dal tipo di hardware che si utilizza, ed in molti casi esistono anche diversi supporti alternativi per lo stesso hardware. 
8
9
Tratteremo qui due diversi supporti, quello per le schede ISDN fornite da [http://www.misdn.org mISDN] e quello delle varie schede telefoniche supportate direttamente da Asterisk stesso tramite il modulo {{{zaptel}}}. L'installazione dei relativi supporti è [wiki:AsteriskDebian già stata trattata], qui prenderemo in esame solo la relativa configurazione. In entrambi i casi occorrerà prima configurare il supporto stesso, e poi istruire Asterisk per l'uso dello stesso.
10
11 6 Amministratore Truelite
=== Configurazione per l'uso di [http://www.misdn.org mISDN] ===
12
13 3 Amministratore Truelite
Nel caso di [http://www.misdn.org mISDN] abbiamo visto come uno scheletro di configurazione (che in genere può essere utilizzato senza modifiche) viene generato direttamente con il comando {{{mISDN config}}}, ma alternativamente si può usare anche il comando {{{misdn-init config}}} che utilizza la vecchia sintassi. In questo caso vengono creati rispettivamete i due file {{{/etc/mISDN.conf}}} e {{{/etc/misdn-init.conf}}} che poi verranno riutilizzati anche dalla configurazione di Asterisk per l'uso del canale {{{chan_misdn}}}. I due file sono equivalenti e mantengono la stessa informazione, il vecchio {{{/etc/misdn-init.conf}}} è un semplice file di testo con assegnazione di variabili, nel caso di una semplice scheda ISDN questo ha la forma:
14 1 Amministratore Truelite
{{{
15 3 Amministratore Truelite
card=1,hfcpci
16
te_ptmp=1
17
poll=128
18
dsp_poll=128
19
dsp_options=0
20
dtmfthreshold=100
21
debug=0
22
}}}
23
mentre nel caso di due schede multiporta è:
24
{{{
25
card=1,0x8
26
card=2,0x8
27
te_ptmp=1,2,3,4,5,6,7,8
28
nt_ptp=9,10,11,12,13,14,15,16
29
poll=128
30
dsp_poll=128
31
dsp_options=0
32
dtmfthreshold=100
33
debug=0
34
}}}
35
in particolare sono fondamentali le indicazioni delle schede con la direttiva {{{card}}}, nella forma di un numero progressivo seguito dall'indicazione del tipo di scheda, che prevede o l'indicazione in esadecimale del numero di porte o quella dal driver da usare; seguite dalle direttive {{{te_ptmp}}} e {{{nt_ptp}}} che indicano (per le schede che lo supportano) quali porte, che vengono numerate progressivamente nella sequenza delle schede, sono da porre rispettivamente in modalità TE (da  ''TErminal mode''), in modalità NT (da ''Network Terminator mode''). 
36 1 Amministratore Truelite
37 6 Amministratore Truelite
Quello della modalità di uso delle porte è uno dei passi fondamentali per la configurazione di un centralino, specie nel caso si usino schede multiporta. Si deve tenere presente che una porta in modalità TE consente di collegarsi ad un terminale di rete (vale a dire ad una borchia ISDN), mentre una porta in modalità NT consente il collegamento ad essa di un terminale, come un centralino telefonico classico o un telefono ISDN. L'uso delle modalità PTP (''point to point'') o PTMP (''point to multi point'') dipende anche questo da come si esegue il collegamento (vedi XXX).
38 3 Amministratore Truelite
39
Nelle ultime versioni di [http://www.misdn.org mISDN] {{{/etc/misdn-init.conf}}} può essere sostituito da {{{/etc/mISDN.conf}}}, che è in formato XML e pertanto, almeno per quanto riguarda i miei gusti personali, praticamente illeggibile, in questo caso i due esempi precedenti vengono tradotti in qualcosa del tipo:
40
{{{
41
<?xml version="1.0"?>
42 2 Amministratore Truelite
<mISDNconf>
43
	<module poll="128" debug="0" timer="no">hfcmulti</module>
44
	<module debug="0" options="0">mISDN_dsp</module>
45
	<devnode user="root" group="root" mode="644">mISDN</devnode>
46
	<card type="hfcpci">
47 1 Amministratore Truelite
		<port mode="te" link="ptmp">1</port>
48 3 Amministratore Truelite
	</card>
49
</mISDNconf>
50
}}}
51 5 Amministratore Truelite
per il primo caso, mentre per il secondo:
52 3 Amministratore Truelite
{{{
53
<?xml version="1.0"?>
54
<mISDNconf>
55
	<module poll="128" debug="0" timer="no">hfcmulti</module>
56
	<module debug="0" options="0">mISDN_dsp</module>
57
	<devnode user="root" group="root" mode="644">mISDN</devnode>
58
	<card type="BN8S0">
59
		<port mode="te" link="ptmp">1</port>
60
		<port mode="te" link="ptmp">2</port>
61
		<port mode="te" link="ptmp">3</port>
62
		<port mode="te" link="ptmp">4</port>
63
		<port mode="te" link="ptmp">5</port>
64
		<port mode="te" link="ptmp">6</port>
65
		<port mode="te" link="ptmp">7</port>
66
		<port mode="te" link="ptmp">8</port>
67
	</card>
68
	<card type="BN8S0">
69
		<port mode="nt" link="ptm">1</port>
70
		<port mode="nt" link="ptm">2</port>
71
		<port mode="nt" link="ptm">3</port>
72
		<port mode="nt" link="ptm">4</port>
73
		<port mode="nt" link="ptm">5</port>
74
		<port mode="nt" link="ptm">6</port>
75
		<port mode="nt" link="ptm">7</port>
76
		<port mode="nt" link="ptm">8</port>
77 2 Amministratore Truelite
	</card>
78
</mISDNconf>
79 1 Amministratore Truelite
}}}
80 5 Amministratore Truelite
81
Si noti però come in questa seconda forma diventa possibile specificare, oltre alle impostazioni della scheda, quelle relative a permessi e proprietari del file di dispositivo {{{/dev/mISDN}}} con cui Asterisk accede alla scheda (si dovrà aver cura che il programma possa leggere e scrivere su di esso). 
82 1 Amministratore Truelite
83 8 Amministratore Truelite
Il passo successivo è quello della configurazione di Asterisk per l'uso di {{{chan_misdn}}}, che viene effettuata tramite il file {{{misdn.conf}}}, che come tutti i file di configurazione di Asterisk ha il formato dei file {{{.ini}}} di windows. Il file prevede una sezione {{{[general]}}} dove impostare le configurazioni generali del sistema, in cui le due chiavi da  modificare eventualmente possono essere {{{misdn_init}}} per indicare quale file contiene le configurazioni di [http://www.misdn.org mISDN] e {{{debug}}} che può essere impostata ad un valore più alto del default di zero per ottenere maggiori informazioni in caso di problemi. 
84 1 Amministratore Truelite
85 8 Amministratore Truelite
Una seconda sezione {{{[default]}}} consente di impostare una serie di valori di default da applicare a tutte le porte che si utilizzano, qui si può impostare {{{language}}} per indicare il proprio paese o {{{context}}} per impostare il contesto di default. Due chiavi importanti sono {{{nationalprefix}}} e {{{internationalprefix}}} che prendono rispettivamente il prefisso per i numeri nazionali e per quelli internazionali. A parte questi eventuali cambiamenti, si possono lasciare tutti gli altri valori al default impostato dall'installazione di Asterisk.
86
87 9 Amministratore Truelite
Per ogni porta o gruppo di porte per cui si vogliono mantenere configurazioni separate si dovrà poi aprire una sezione separata, in tal caso si dovrà indicare con {{{ports}}} l'elenco, separate da virgole, delle porte, con gli stessi numeri usati nei file {{{/etc/mISDN.conf}}} e {{{/etc/misdn-init.conf}}}. Qui di nuovo si dovrà impostare un contesto (da riutilizzare in {{{extensions.conf}}}) con {{{context}}}. Per le chiamate entranti è inoltre necessario impostare {{{always_immediate=yes}}} altrimenti non si potrà usare l'estensione {{{s}}} nel relativo contesto all'interno di {{{extensions.conf}}}. Infine essendo possibile avere più numeri sulla stessa porta ISDN, si può usare la chiave {{{msns}}} per indicare per quali dei possibili numeri si intende operare, da specificare con una lista separata da virgole o un {{{*}}} (il default) per indicarli tutti. 
88 1 Amministratore Truelite
89 9 Amministratore Truelite
Si tenga presente che detti numeri normalmente non riportano lo 0 iniziale rispetto al numero telefonico attestato sulla linea; si possono comunque vedere quali sono i numeri che vengono visti da Asterisk abilitando il debug (con {{{debug=1}}}) e verificando nella console di Asterisk (da accedere con {{{asterisk -rvvv}}}) il contenuto di messaggi del tipo:
90
{{{
91
P[ 1] channel with stid:0 for one second still in use!
92
P[ 1] I IND :NEW_CHANNEL oad:3471032433 dad:557879597 pid:2 state:none
93
}}}
94
dove il campo {{{dad}}} indica il numero come deve essere indicato per {{{msns}}}.
95 1 Amministratore Truelite
96 9 Amministratore Truelite
Un esempio del contenuto del file, in cui si sono mostrate solo le parti modificate rispetto all'installazione standard, potrebbe essere il seguente:
97
{{{
98
[general] 
99
misdn_init=/etc/misdn-init.conf
100
debug=1
101
...
102
[default]
103
context=default
104
language=it
105
...
106
[isdn]
107
ports=1
108
context=misdn
109
always_immediate=yes
110
msns=557879597
111
}}}
112 7 Amministratore Truelite
113
=== Configurazione per l'uso di {{{zaptel}}} ===
114
115 1 Amministratore Truelite
Da fare ...
116 10 Amministratore Truelite
117
=== Configurazione dei telefoni SIP ===
118
119
Questa configurazione prevede due parti; la prima è relativa al supporto SIP di Asterisk, che si effettua tramite il file {{{sip.conf}}}. In questo caso occorre prima configurare la sezione {{{[general]}}} per i valori generici e poi impostare i vari account SIP usati dai telefoni, di nuovo si possono mantenere i valori di default, le chiavi che eventualmente si possono modificare sono:
120
||chiave|significato||