Samuel Tardieu @ rfc1149.net

Free, SIP et Asterisk

,

Comme je l’avais expliqué dans Asterisk - build your own PBX, la prise téléphonique de ma Freebox était connectée à mon PC par une interface analogique de type FXO. Sur le PC, qui tourne sous GNU/Linux, l’autocommutateur libre Asterisk gère mes communications et mes services. Tout fonctionnait correctement, même si la reconnaissance du raccroché du correspondant était parfois (mais très rarement) un peu aléatoire.

Aujourd’hui, Free a ouvert l’accès en SIP à son service de téléphonie. Cela signifie que j’ai pu connecter Asterisk au service téléphonique de Free (appelé freephonie) en IP, sans passer par la ligne de téléphone analogique. Cela a instantanément supprimé l’écho qui survenait en début de conversation (avant le réglage automatique de l’annulateur), et les détections d’état pendant la communication sont parfaites.

Pour aider ceux qui voudraient faire la même chose, voici un extrait de mon fichier sip.conf :

[general]
defaultexpirey=1800
dtmfmode=auto
qualify=yes

register => NuméroDeTéléphoneFreebox:MotDePasseSIPFree@freephonie.net

[freephonie_outbound]
type=peer
allow=all
host=freephonie.net
secret=MotDePasseSIPFree
fromuser=NuméroDeTéléphoneFreebox
username=NuméroDeTéléphoneFreebox
qualify=yes
fromdomain=freephonie.net

[freephonie.net]
type=peer
context=fromfree
host=freephonie.net
qualify=yes
allow=all
deny=0.0.0.0/0.0.0.0
permit=212.27.52.5/255.255.255.255

Quelques remarques :

  • Vous obtiendrez votre mot de passe SIP Free dans l’interface de gestion de votre compte sur http://adsl.free.fr/.

  • Il est possible que, dans le futur, je doive changer le numéro IP du serveur de Free ou en autoriser plusieurs. En attendant, cela limite les possibilités d’appels intempestifs.

  • Il faut augmenter l’expiration à 1800 secondes. Asterisk ne semble pas comprendre le serveur SIP de Free lorsque celui-ci lui indique, et il tente de s’enregistrer avec la durée d’expiration par défaut qui est de 120 secondes.

  • Le contexte freephonie_outbound est celui utilisé pour les appels sortants, freephonie.net celui pour les appels entrants. Dans mon cas, les appels entrants sont aiguillés vers le contexte fromfree, extension s. Le contexte doit être défini dans le fichier extensions.conf.

  • L’ordre de déclaration des deux entrées SIP est important, la dernière correspondant à un host donné l’emportant lors d’un appel entrant.

blog comments powered by Disqus