§ 5.4.1

Le trunk ippi.

Tout se passe dans /etc/asterisk/pjsip.conf. Quatre sections par trunk : transport, registration, auth, aor, endpoint, identify.

; pjsip.conf — trunk ippi

[transport-udp]
type=transport
protocol=udp
bind=0.0.0.0:5060

[ippi-reg]
type=registration
outbound_auth=ippi-auth
server_uri=sip:sip.ippi.com
client_uri=sip:votre_login@sip.ippi.com
retry_interval=60
expiration=3600

[ippi-auth]
type=auth
auth_type=userpass
username=votre_login
password=VOTRE_MOT_DE_PASSE

[ippi-aor]
type=aor
contact=sip:sip.ippi.com
qualify_frequency=60

[ippi]
type=endpoint
transport=transport-udp
context=from-ippi
disallow=all
allow=opus,ulaw,alaw
outbound_auth=ippi-auth
aors=ippi-aor
from_user=votre_login
from_domain=sip.ippi.com
direct_media=no

[ippi-identify]
type=identify
endpoint=ippi
match=sip.ippi.com
§ 5.4.2

Les extensions.

Une fois le trunk déclaré, on définit deux extensions internes (Alice et Bob, postes 1001 et 1002) qui peuvent s'appeler entre elles et sortir via ippi.

; pjsip.conf — extensions internes

[1001]
type=endpoint
transport=transport-udp
context=internal
disallow=all
allow=opus,ulaw,alaw
auth=1001-auth
aors=1001
callerid="Alice" <1001>

[1001-auth]
type=auth
auth_type=userpass
username=1001
password=MOT_DE_PASSE_FORT

[1001]
type=aor
max_contacts=3
remove_existing=yes

Linphone d'Alice peut alors s'enregistrer : domain 192.0.2.100 (l'IP d'Asterisk), username 1001, password MOT_DE_PASSE_FORT.

§ 5.4.3

Le dialplan.

Le routage des appels est défini dans /etc/asterisk/extensions.conf. Deux contextes : l'interne (appels poste à poste) et le sortant via ippi.

; extensions.conf

[internal]
; appel entre postes internes
exten => _10XX,1,Dial(PJSIP/${EXTEN},30)
exten => _10XX,n,Hangup()

; sortie vers ippi : numéros E.164 commençant par +
exten => _+X.,1,Set(CALLERID(num)=votre_login)
exten => _+X.,n,Dial(PJSIP/${EXTEN}@ippi,60)
exten => _+X.,n,Hangup()

[from-ippi]
; appels entrants : sonner Alice et Bob simultanément
exten => votre_login,1,Dial(PJSIP/1001&PJSIP/1002,30)
exten => votre_login,n,Voicemail(1001@default)
exten => votre_login,n,Hangup()

Le pattern _+X. attrape tous les numéros E.164. Le pattern _10XX attrape les postes internes 1000-1099.

§ 5.4.4

Vérifier.

Recharger les modules pjsip et dialplan, puis vérifier l'état du trunk :

asterisk -rx "pjsip reload"
asterisk -rx "dialplan reload"
asterisk -rx "pjsip show registrations"

==================================================
<Registration/ServerURI..............................>  <Auth>  <Status.......>
ippi-reg/sip:sip.ippi.com                              ippi-auth  Registered

Statut Registered = trunk opérationnel. Rejected = mauvais credentials. Unreachable = pas de connectivité UDP/5060 vers sip.ippi.com.

§ 5.4.5

Quand Asterisk ?

  • vous voulez un PABX maison avec plusieurs postes internes (famille, petite équipe) ;
  • vous voulez de la messagerie vocale, des files d'attente, des annonces personnalisées ;
  • vous voulez agréger plusieurs trunks SIP (ippi + OVH + Sewan) sous une même config ;
  • vous voulez logger toutes vos communications (compliance, formation).

Pour un seul utilisateur avec un seul softphone, Asterisk est surdimensionné — un Linphone bien configuré suffit.

§ 5.4.6

« Avec Asterisk, vous arrêtez de louer la téléphonie : vous la fabriquez. C'est aussi plus de travail. » — note d'expérience

Retour à : Choisir un client →