Como configurar Asterisk PJSIP con Megacall.
- 111111 - Su número SIP desde el https://my.megacall.es/mysip/.
- Contraseña - La contraseña SIP que se puede encontrar en la sección "Ajustes SIP" en su interfaz https://my.megacall.es
- 101 - Número de extensión de Asterisk al que se conecta desde una ip de softphone/teléfono para recibir llamadas entrantes y realizar llamadas salientes.
Ejemplo estándar de configuración
Las llamadas salientes desde el número de extensión 101 se envían a la línea externa 111111- Las llamadas entrantes se reciben mediante registro y se envían al número interno 101.
Editamos el pjsip.conf con la siguiente información:
[udp-transport] type=transport protocol=udp bind=0.0.0.0 [111111] type=registration transport=udp-transport outbound_auth=111111_auth server_uri=sip:sip.megacall.es client_uri=sip:111111@sip.megacall.es retry_interval=60 expiration=120 contact_user=111111 [111111_auth] type=auth auth_type=userpass password=Password username=111111 [111111] type=aor contact=sip:sip.megacall.es [111111] type=endpoint transport=udp-transport context=megacall-in disallow=all allow=alaw allow=ulaw outbound_auth=111111_auth aors=111111 from_user=111111 direct_media=no [111111] type=identify endpoint=111111 match=sip.megacall.es
El número de extensión 101 al que va a conectarse a la IP del softphone/teléfono para recibir llamadas entrantes y relaizar llamada salientes. Un ejemplo seria:
[101] type=endpoint transport=udp-transport context=megacall-out disallow=all allow=alaw allow=ulaw auth=101 aors=101 [101] type=auth auth_type=userpass password=101 username=101 [101] type=aor max_contacts=10
El enrutamiento saliente y entrante se puede configurar en el fichero extensions.conf con el siguiente ejemplo:
[megacall-in]
exten => 111111,1, Dial(PJSIP/101) ; todas las llamadas entrantes desde la línea externa 111111 se envían al número de extensión 101
[megacall-out]
exten => _XXX,1,Dial(PJSIP/${EXTEN}) ; llamadas a número de 3 y 4 cifras de asterisco
exten => _XXX.,1,Dial(PJSIP/${EXTEN}@111111) ; llamadas a números con cuatro o más cifras a través de la línea externa 111111P-Asserted-Identity (para usuarios avanzados).
En las llamadas salientes se puede usar el encabezado SIP P-Asserted-Identity para la selección del CallerID del listado de números conectados al servicio de Megacall.
El número del encabezado P-Asserted-Identity será usado con prioridad. Si en encabezado no ha sido seleccionado o se ha configurado un número incorrecto, se utilizará el número predeterminado para la cuenta.
[megacall-out]
exten => _XXX.,1,Set(_SET_PAI=)
exten => _XXX.,n,Dial(PJSIP/${EXTEN}@111111,,b(add_header_pai^add^1))
[add_header_pai]
exten => add,1,Set(PJSIP_HEADER(add,P-Asserted-Identity)=${SET_PAI})
exten => add,n,Return()Si tienes conectado unas cuantas extensiones, para mayor comodidad, se puede definir cada número con un "nombre", por ejemplo Madrid y Málaga y luego configurar el enrutamiento entrante basandose en este pará metro. El "nombre" de número directo se transfiere en el pará metro CallerID(name).
En el siguiente ejemplo, las llamadas con destino a Madrid están dirigidas al número de extension 101, las llamadas desde el número Málaga están dirigidas al número de extensión 102, y todas las otras llamadas las va a rechazar asterisk por medio de la señal "Ocupado"
[megacall-in]
exten => _X.,1,GotoIf($["${CALLERID(name)}" = "Madrid"]?2:3)
exten => _X.,2,Dial(PJSIP/101)
exten => _X.,3,GotoIf($["${CALLERID(name)}" = "Málaga"]?4:5)
exten => _X.,4,Dial(PJSIP/102)
exten => _X.,5,BusyTu número directo en el que entra la llamada se transfiere al header CALLED_DID. Puedes configurar el enrutamiento de la llamada entrante basandose en este parámetro.
En el siguiente ejemplo las llamadas desde el telefono 34916123456 están dirigidas al número de extensión 101, las llamadas desde el número 34952123456 están dirigidas al número de extensión 102, y las demás llamadas las va a rechazar Asterisk con una señal/tono de "Ocupado".
[megacall-in]
exten => _X.,1,GotoIf($["${PJSIP_HEADER(read,CALLED_DID)}" = "34916123456"]?2:3)
exten => _X.,2,Dial(PJSIP/101)
exten => _X.,3,GotoIf($["${PJSIP_HEADER(read,CALLED_DID)}" = "34952123456"]?4:5)
exten => _X.,4,Dial(PJSIP/102)
exten => _X.,5,BusyWas this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article