Asterisk est un serveur pour remplacer un PBX (standard téléphonique). Comme OVH propose un numero de téléphone qui peut être redirigé vers une IP via le protocole SIP (port udp 5060), je vais enfin pouvoir tester Asterisk.
Le site officiel d'Asterisk est le suivant: http://www.asterisk.org
La configuration d'Asterisk est eclatée en plusieurs fichiers:
L'installation sous Fedora 8 se fait avec la commande suivante:
yum install asterisk
Les fichiers sons ne sont pas packagés faute de license, il faut donc les telecharger manuellement à l'adresse suivante: http://downloads.digium.com/pub/telephony/sounds/
On commence par renommer les fichiers de configuration originaux qui sont pollués d'exemples:
# cd /etc/asterisk # mv sip.conf sip.conf.orig # mv extensions.conf extensions.conf.orig
Dans le fichier extensions.conf on peut commencer avec ceci:
[globals] [general] autofallthrough=yes [default] [incoming_calls] [internal] [phones] include => internal
On démarre le service asterisk:
# service asterisk start
On se connecter à la console d'administration avec la commande suivante:
# asterisk -r
Dans la console on peut recharger ce fichier de configuration en cas de modification avec la commande suivante:
CLI> dialplan reload
Et pour voir notre dialplan (nos règles de gestion issus du fichier extensions.conf), on utilise la commande:
CLI> dialplan show
A noter que la console gère l'auto-complètement avec la touche tab.
Dans le fichier /etc/asterisk/sip.conf on change dans la section générale le context: context=beta-ovh
En fin de fichier, on ajoute 2 contextes:
[ovh] type=friend username=0979948988 secret=password callerid="ovh" <0979948988> host=dynamic context=ovh-sip language=fr insecure=very nat=yes canreinvite=no dtmfmode=auto video=yes restrictcid=no amaflags=default [beta-ovh] type=peer host=sip.ovh.net context=ovh-sip language=fr insecure=very nat=yes canreinvite=no dtmfmode=auto video=yes restrictcid=no amaflags=default
Dans le fichier /etc/asterisk/extensions.conf, dans la section [local] on ajoute la ligne suivante:
include => ovh-sip
En fin de fichier, on ajoute:
[ovh-sip] exten => 0979948988,1,Ringing exten => 0979948988,2,Wait exten => 0979948988,3,Answer exten => 0979948988,n,Dial(SIP/ovh) exten => 0979948988,n,Hangup() exten => _X.,1,Dial(SIP/${EXTEN}@beta-ovh)
Les lignes qui comprennent l'instruction Dial vers SIP semblent poser problème, on les commente avec ; c'est pas cool .