#liste_articles {display:block}

Mini étude VoIP - Architecture libre - Asterisk

vendredi 30 juillet 2004

 

Mini étude VoIP - Architecture libre - Asterisk

1. Présentation des différents modules

Les principaux protocoles de voix sur IP sont des standards, on peut citer

  SIP
  H323
  MGCP

Le protocole H323 est dérivé de l’architecture télécoms, il est largement implémenté dans les équipements.
Le protocole SIP est dérivé de l’architecture http, moins développé que H323 il est néanmoins largement utilisé par les Softphones (émulations de téléphone sur PC) et toutes les extensions logiciels.

Les téléphones et logiciels libres implémentant SIP sont légions, on peut citer :

  Xlite
  SJPhone

Pour relier tous ces équipements, il faut un IPBX, le logiciel libre implémentant cette fonctionnalité s’appelle Asterisk (www.asterisk.org).

Pour plus d’informations voir l’excellent site : http://www.voip-info.org/tiki-index.php

2. Asterisk - Principales fonctionnalités

  un logiciel PBX pour Linux développé par Digium.
  mise en relation des correspondants, échantillonnage par Codec,...
  sources disponibles (GNU Public Licence).
  Implémente un protocole propriétaire IAX pour le dialogue entre PBX Asterisk
  Protocoles implémenté : SIP , H323, MGCP

3. Asterisk - Hardware

  PRI (E1/T1)
Cartes vendues par Digium
D’autres fournisseurs existent (voir le site Web)

  ISDN BRI
  CAPI
  POTS (téléphones analogiques standards)
  FXO et FXS
  Linux Soundcard

Rappels :

  interface FX0 (Foreign eXchange Office) : reçoit le courant et le signal ring, utilisé pour connecter des lignes analogiques ou des PBX.
  Interface FXS (Foreign eXchange Station) : fournit le courant et génère le signal ring, utilisé pour connecter des téléphones (POTS)

4. Asterisk - Installation

L’installation se fait en compilant les sources, voir le site Web, elle nécessite le module CVS pour obtenir les sources. La compilation a été effectuée sans problèmes sur une Fedora Core 2.

Les librairies suivantes sont nécessaires mais elles sont généralement présentes :

  OpenSSL
  libncurses
  libpthread

5. fichiers de configuration

ces fichiers se trouvent dans le répertoire /etc/asterisk
plusieurs frontaux de configuration existent, les tests ont été menés avec ATOS (voir voip_info.org pour détails).

ATOS permet de modifier les fichiers « sip.conf », « iax.conf » et « extensions.conf »

Asterisk implémente une machine à état :

  Origine de l’appel (quel user SIP ? PSTN ? Anonymous SIP ? Local POTS ?)

= CONTEXT

  numéro appelé

= EXTENSION
  un compteur de programme pour ordonner les commandes

= PRIORITY

6. exemple d’utilisation avec SIP

  sip.conf

[mylogin]

type=friend

context=authorized  ; in which context start calls from that phone ?

username=mylogin  ; Authentication info

secret=no1knows

callerid=300  ; Set the callerID for this phone

host=dynamic  ; Dynamic Address : wait for it to REGISTER

  extensions.conf

exten => 300,1,Dial(SIP/mylogin,30)

exten => 300,2,Voicemail(u200)  ; if not answered

exten => 300,3,Hangup

exten => 300,102,Voicemail(b200)  ; if busy

exten => 300,103,Hangup

syntaxe de extensions.conf :
exten => pattern,priority,command

• pattern :

 12345  ; chaine de caractère
 _[1-4]XX.  ; expression régulière
 s  ; "start"
 i  ; "invalid"
 t  ; "timeout"

Documents :

par jrepetti