Una vez instalado Asterisk, la parte mas importante es configurar el troncal correctamente. 

Tras varias pruebas a lo largo de un año, con Asterisk con interfaces gráficas, finalmente la conclusión es clara: La mejor forma de configurar nuestros troncales y extensiones es programando bajo comandos en Linux. Esto te permite tener un mayor control sobre tu dialplan así como las extensiones que se crean.

Por ello me puse a trabajar sobre como registrar el troncal de Asterisk sobre mi linea de VoIP de Jazztel, y tras varios intentos, versiones de Asterisk, y demás, conseguí configurarla correctamente y de forma estable.

Debemos tener en cuenta que en el caso de Jazztel, usaremos ademas de la configuración troncal en si, el registro del USER-AGENT, que en otras compañías no se esta usando.

Lo primero que debemos saber es que el archivo a configurar en este caso es el pjsip.conf, este archivo, como todos en Asterisk, ira ligado a otros, como el extensions.conf que es donde contendremos el dialplan.

También debemos entender que habrá otros archivos que nos permitirán elegir los elementos que se cargan, como el modules.conf por ejemplo.

 

Pero volviendo a nuestro pjsip.conf vamos a ver que configuramos aquí.

 

Por un lado vamos a definir las extensiones que vamos a configurar, podremos tener tantas como terminales queramos tener en nuestra red de telefonía.

Por el otro configuraremos el troncal que nos dará acceso a la linea telefónica exterior.

Aunque antes de nada tendremos una parte común de configuración general, en la cual podremos configurar también el User-Agent.

 

Vamos alla!:

Definimos primero la parte general:

[general]
language=es
allowguest=no
autodomain=yes
domain=ims.jazzztel.net ; En el caso de movistar es telefonica.net
sipdomain=ims.jazztel.net ; En el caso de movistar es telefonica.net

[general]
type=global
user_agent=ZXHN ZTEF680/V2.0.10T5_JAZZT11I ; Esta linea solo seria necesaria en Jazztel, se consigue con el modelo y version de firm del router

[endpoint]
100rel=yes
sdp_session=ZXHN ZTEF680/V2.0.10T5_JAZZT11I ; Esta linea solo seria necesaria en Jazztel, se consigue con el modelo y version de firm del router 
; ############# Transporte interno Centralita ############# 
[transport-udp]
type=transport
protocol=udp
bind=0.0.0.0
local_net=192.168.1.0/24 ; Define el rango IP de nuestra red
local_net=127.0.0.1/32 ; Define el rango IP interno de la centralita

Ahora vamos a definir las extensiones a continuación:

; ################## Extension en casa #################


; #####  100  ##### Extension que queramos


[100]
type=endpoint
transport=transport-udp
context=extensiones
disallow=all
allow=ulaw,alaw,gsm
force_rport=yes
direct_media=no
mailboxes=100@default
auth=100
aors=100

[100]
type=auth
auth_type=userpass
password=contraseña ; Contraseña que queramos poner
username=28100

[100]
type=aor
max_contacts=1 ; Maximas llamadas simultaneas en caso de llamadas en espera u otras funciones similares
qualify_frequency=30


; #####  200  ##### Extension que queramos


[200]
type=endpoint
transport=transport-udp
context=extensiones
disallow=all
allow=ulaw,alaw,gsm,g729
direct_media=no
mailboxes=200@default
auth=28200
aors=28200

[200]
type=auth
auth_type=userpass
password=contraseña ; Contraseña que queramos poner
username=200

[200]
type=aor
max_contacts=1 ; Maximas llamadas simultaneas en caso de llamadas en espera u otras funciones similares
qualify_frequency=30

Ahora vamos con la parte del troncal, la de Jazztel en si:

; ########### Registro linea telefonica de Jazztel #############

[Jazztel_registration]
type=registration
transport=transport-udp
outbound_auth=Jazztel_auth
server_uri=sip:XXX.XXX.XXX.XX:5060 ; IP usada en nuestra conexión SIP
client_uri=sip:Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. ; Nuestro número de teléfono
retry_interval=60
expiration=3600
support_path=yes

[Jazztel_auth]
type=auth
auth_type=userpass
password=XXXXXX ; Contraseña de nuestra conexión SIP, se debe sacar del router en cuestion
username=Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. ; Usuario de nuestra conexión SIP
realm=ims.jazztel.net

[Jazztel_endpoint]
type=endpoint
transport=transport-udp
context=Jazztel
disallow=all
allow=ulaw
allow=alaw
allow=gsm
allow=g729
outbound_auth=Jazztel_auth
aors=Jazztel_aor
from_user=+3491XXXXXXX ; Nuestro número de teléfono
from_domain=ims.jazztel.net

[Jazztel_aor]
type=aor
max_contacts=2
contact=sip:Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. ; Nuestro número de teléfono
qualify_frequency=60
qualify_timeout=5
support_path=yes

[Jazztel_identify]
type=identify
endpoint=Jazztel_endpoint
match=XXX.XXX.XXX.XX ; IP de nuestro servidor SIP

[acl]
type=acl
acl=internal

Si en su lugar tuviéramos la conexión de Movistar, seria del modo siguiente:

; ########### Registro linea telefonica de Movistar #############

[Telefonica_registration]
type=registration
transport=transport-udp
outbound_auth=Telefonica_auth
server_uri=sip:XX.XX.XXX.XXX:5070 ; IP de nuestro servidor SIP
client_uri=sip:Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. ; Nuestro número de teléfono
retry_interval=60
expiration=3600
support_path=yes

[Telefonica_auth]
type=auth
auth_type=userpass
password=91XXXXXXX ; Nuestro número de teléfono
username=Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. ; Nuestro número de teléfono
realm=telefonica.net

[Telefonica_endpoint]
type=endpoint
transport=transport-udp
context=Telefonica
disallow=all
allow=alaw
allow=ulaw
allow=g729
allow=g722
outbound_auth=Telefonica_auth
aors=Telefonica_aor
from_user=91XXXXXXX ; Nuestro número de teléfono
from_domain=telefonica.net

[Telefonica_aor]
type=aor
max_contacts=2
contact=sip:Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. ; Nuestro número de teléfono
qualify_frequency=60
qualify_timeout=30 ; Pondremos 30 sg. Telefonica responde en unos 7 sg aprox cada peticion
support_path=yes

[Telefonica_identify]
type=identify
endpoint=Telefonica_endpoint
match=XX.XX.XXX.XXX ; IP de nuestro servidor SIP

[acl]
type=acl
acl=internal

Debemos de tener en cuenta que el nombre que demos al troncal en sus contextos (lo que va entre corchetes) debe ser a lo que hagamos referencia el los context a los que estemos llamando a los mismos.
Por ejemplo en [Telefonica_endpoint] hacemos referencia al contexto [Telefonica_auth] en la linea outbound_auth=Telefonica_auth. O por ejemplo en nuestro dialplan las llamadas saldran por el contexto Telefonica_endpoint

Aquí podemos ver como se registra cada uno de los troncales en su compañía. Como podemos ver, en concreto el de Movistar, nos da Unavail, o Unavaible, pero esta registrado y llamando.