Ciao a tutti,
spesso si scrive qui per una richiesta d'aiuto su un problema o si chiede consiglio.
Per una volta vorrei fare una piccola e semplice guida per chi volesse creare una giunzione
SIP tra 2 centralini diversi, nel caso qui esposto tra 3CX (Windows) e Asterisk (Linux).
Partiamo dal capire cosa devono fare i 2 centralini...
Un interno con numerazione 2XX configurato su centralino 3CX deve poter chiamare un interno
con numerazione 1XX su Asterisk.
Il server 3CX ha come indirizzo IP 192.168.1.4.
Il server Asterisk invece ha come indirizzo 192.168.1.3.
Iniziamo dalla configurazione di 3CX, ovviamente dobbiamo creare l'interno per prima cosa,
quindi andiamo sugli interni e aggiungiamo l'interno 200 con password 200 e cosa importante
mettiamo nel campo ID Chiamante in uscita il nome od il numero.
A questo punto clicchiamo su "aggiungi VOIP", spuntiamo la voce "generic sip trunk"
e diamo un nome al fascio, ad esempio Asterisk.
Nel nome Host o IP del Proxy mettiamo 192.168.1.3 (quello di asterisk) e ovviamente nella voce
sotto uguale, nella voce "capacità del provider" spuntiamo tutte e 2 le voci, clicchiamo su
avanti e mettiamo un numero per il fascio, io ho messo il 600, uguale anche per l'ID.
Ora passiamo alle regole di uscita, cosa molto semplice, dovremmo dire al centralino che quando
componiamo un interno che inizia con uno prenda il fascio appena creato senza eliminare cifre, quindi
aggiungiamo 1 su "chiama i numeri che iniziano con" e mettiamo 0 ad "elimina cifre".
Non ci resta che cliccare su ok ed il gioco è fatto, ora passiamo ad Asterisk.
Per prima cosa apriamo il file sip.conf e aggiungiamo l'interno 100 ed il fascio nostro (600) in questo modo.
[100]
username=100
type=friend
context=interno100
secret=100
host=dynamic
dtmfmode=rfc2833
qualify=no
canreinvite=no
nat=no
[3cx]
type=friend
secret=600
srvlookup=yes
realm=192.168.1.3
qualify=no
insecure=port,invite
username=600
host=192.168.1.4
context=3cx-incoming
fromuser=600
fromdomain=192.168.1.4
dtmfmode=rfc2833
nat=no
canreinvite=yes
disallow=all
allow=ulaw
allow=alaw
allow=gsm
Ora mettiamo la stringa di registrazione.
register => 600:600:600@192.168.1.4:5060/600
facciamo un salvataggio e passiamo a extensions.conf
creiamo il context dell'interno 100 e poi quello del fascio per le chiamate entranti.
[interno100]
exten => _1XX,1,Dial(SIP/${EXTEN},20)
exten => _1XX,2,Congestion
exten => _1XX,3,Busy
exten => _1XX,4,Hangup
exten => _2XX,1,Dial(SIP/${EXTEN:1}@3cx,20)
exten => _2XX,2,Congestion
exten => _2XX,3,Busy
exten => _2XX,4,Hangup
in questo caso abbiamo detto al centralino che quando questo context compone gli interni
con l'1 rimane su se stesso, quando si compone il 2 si deve prendere il fascio 3cx.
[3cx-incoming]
exten => _X.,1,Dial(SIP/100,20)
exten => _X.,2,Congestion
exten => _X.,3,Busy
exten => _X.,4,Hangup
In questo modo ogni chiamata entrante finisce sull'interno 100 per 20 secondi, poi il centralino
manderà il tono di dissuasione.
Facciamo un salvataggio anche a questo file e passiamo alla CLI di asterisk, gli diamo un
bel "sip reload" e poi un "dialplan reload", a questo punto controlliamo che su 3cx la linea
sia diventata verde e che su asterisk digitando "sip show registry" si veda la stringa del fascio
600 Registered.
Fate qualche chiamata di prova e...buon divertimento!!!

Rispondi quotando