Esempio di configurazione della connessione di Asterisk a Zadarma.
Dati indicati nell'esempio:
- 111111 - Il tuo numero SIP dall'area personale.
- Password - La tua password dal numero SIP, nella sezione “Impostazioni-Connessione SIP” dall'area personale.
- 1234-100 - Il tuo numero interno del centralino dall'area personale
- Password - La tua password per il numero interno del centralino dall'area personale
- 101 - Numero interno Asterisk a cui si collega il softphone/telefono IP per ricevere chiamate in entrata ed effettuare chiamate in uscita.
Esempio standard di configurazione
Le chiamate in uscita dall'interno 101 vengono inoltrate alla linea esterna 111111. Le chiamate in entrata vengono ricevute tramite registrazione e inoltrate all'interno 101
Modifichiamo sip.conf
[general] srvlookup=yes [111111] host=sip.zadarma.com insecure=invite,port type=peer fromdomain=sip.zadarma.com disallow=all allow=alaw allow=ulaw dtmfmode=auto secret=password defaultuser=111111 trunkname=111111 fromuser=111111 callbackextension=111111 context=zadarma-in qualify=400 directmedia=no nat=force_rport,comedia [101] ;numero interno del tuo asterisco secret=password host=dynamic type=friend context=zadarma-out[general] srvlookup=yes [1234-100] host=pbx.zadarma.com insecure=invite,port type=peer fromdomain=pbx.zadarma.com disallow=all allow=alaw allow=ulaw dtmfmode=auto secret=password defaultuser=1234-100 trunkname=1234-100 fromuser=1234-100 callbackextension=1234-100 context=zadarma-in qualify=400 directmedia=no nat=force_rport,comedia [101] ;numero interno del tuo asterisco secret=password host=dynamic type=friend context=zadarma-out
L'instradamento in entrata e in uscita viene configurato nel file extensions.conf
[zadarma-in] exten => 111111,1, Dial(SIP/101) ; tutte le chiamate in entrata dalla linea esterna 111111 vengono inoltrate al numero interno 101 [zadarma-out] exten => _XXX,1,Dial(SIP/${EXTEN}) ; chiamate a numeri interni a tre cifre di asterisco exten => _XXX.,1,Dial(SIP/${EXTEN}@111111) ; chiamate a numeri con quattro o più cifre tramite la linea esterna 111111[zadarma-in] exten => 1234-100,1, Dial(SIP/101) ; tutte le chiamate in entrata dalla linea esterna 1234-100 vengono inoltrate al numero interno 101 [zadarma-out] exten => _XXX,1,Dial(SIP/${EXTEN}) ; chiamate a numeri interni a tre cifre di asterisco exten => _XXX.,1,Dial(SIP/${EXTEN}@1234-100) ; chiamate a numeri con quattro o più cifre tramite la linea esterna 1234-100
Configurazione standard completata.
P-Asserted-Identity (per utenti esperti).
Nelle chiamate in uscita è possibile utilizzare l'intestazione SIP P-Asserted-Identity per la selezione del Callerid dall'elenco dei numeri collegati al servizio.
Il numero dell'intestazione P-Asserted-Identity verrà utilizzato con priorità. Se l'intestazione non è selezionata o è stato configurato un numero errato/non connesso, verrà utilizzato il numero predefinito.
[zadarma-out]
exten => _XXX.,1,SIPAddHeader(P-Asserted-Identity: )
exten => _XXX.,n,Dial(SIP/${EXTEN}@111111)
Se hai collegato più numeri diretti, per comodità è possibile assegnare un "nome" a ciascun numero, ad esempio manchester e london e configurare l'instradamento in entrata in base a questo parametro. Il "nome" del numero diretto viene trasferito nel parametro CALLERID(name).
Nell'esempio seguente, le chiamate provenienti dal numero manchester vengono indirizzate al numero interno 101, quelle provenienti dal numero london vengono indirizzate al numero interno 102, mentre tutte le altre chiamate vengono rifiutate da asterisk con il segnale "Occupato"
[zadarma-in]
exten => _X.,1,GotoIf($["${CALLERID(name)}" = "manchester"]?2:3)
exten => _X.,2,Dial(SIP/101)
exten => _X.,3,GotoIf($["${CALLERID(name)}" = "london"]?4:5)
exten => _X.,4,Dial(SIP/102)
exten => _X.,5,Busy
Il tuo numero virtuale, sul quale è stata ricevuta la chiamata, viene trasmesso all'header CALLED_DID Puoi configurare l'instradamento della chiamata in entrata in base a questo parametro.
Nell'esempio seguente, le chiamate provenienti dal numero 442045770077 vengono indirizzate al numero interno 101, quelle provenienti dal numero 442037691880 vengono indirizzate al numero interno 102, mentre tutte le altre chiamate vengono rifiutate da asterisk con il segnale "Occupato"
[zadarma-in]
exten => _X.,1,GotoIf($["${SIP_HEADER(CALLED_DID)}" = "442045770077 "]?2:3)
exten => _X.,2,Dial(SIP/101)
exten => _X.,3,GotoIf($["${SIP_HEADER(CALLED_DID)}" = "442037691880"]?4:5)
exten => _X.,4,Dial(SIP/102)
exten => _X.,5,Busy
Configurazione completata.
Esempio di impostazioni №2 (SIP URI)
Se il server con Asterisk si trova su un indirizzo IP "bianco" (non sul router, ma ad esempio in un centro dati) è possibile ricevere chiamate in entrata senza registrazione in base allo schema SIP URI. Dati indicati nell'esempio:
- 15555555555 - Il tuo numero virtuale collegato a Zadarma.
- 2.20.190.41 - Indirizzo IP del tuo server con Asterisk.
Nell'area personale, nella sezione “Impostazioni - numero virtuale”, inoltra le chiamate dal numero virtuale a un server esterno (SIP URI) nel formato 15555555555@2.20.190.41
Modifichiamo sip.conf
[zadarma]
host=sipurifr.zadarma.com
type=peer
insecure=port,invite
context=zadarma-in
disallow=all
allow=alaw
allow=ulaw
dtmfmode = auto
directmedia=no
nat=force_rport,comedia
[zadarma2]
host=sipde.zadarma.com
type=peer
insecure=port,invite
context=zadarma-in
disallow=all
allow=alaw
allow=ulaw
dtmfmode = auto
directmedia=no
nat=force_rport,comedia
[zadarma3]
host=sipuriny.zadarma.com
type=peer
insecure=port,invite
context=zadarma-in
disallow=all
allow=alaw
allow=ulaw
dtmfmode = auto
directmedia=no
nat=force_rport,comedia
Instradamento in entrata nel file extensions.conf
[zadarma-in]
exten => 15555555555,1, Dial(SIP/101)
Configurazione completata.
Esempio di configurazione quando si utilizza l'autorizzazione tramite indirizzo IP.