Blog ENI : Toute la veille numérique !
-25€ dès 75€ sur les livres en ligne, vidéos... avec le code FUSEE25. J'en profite !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. VoIP et ToIP - Asterisk
  3. Asterisk
Extrait - VoIP et ToIP - Asterisk La téléphonie IP d'entreprise [2ième édition]
Extraits du livre
VoIP et ToIP - Asterisk La téléphonie IP d'entreprise [2ième édition]
2 avis
Revenir à la page d'achat du livre

Les outils complémentaires

Introduction

Nous avons vu, au cours des chapitres précédents, les bases pour construire un serveur Asterisk mais il existe encore bien d’autres outils permettant d’améliorer le service de téléphonie sur IP et permettant les fonctionnalités suivantes :

  • avoir des statistiques des appels ;

  • disposer d’interfaces graphiques de management de la configuration ;

  • gérer les fax entrants ;

  • interconnecter des applications externes au système.

Statistiques avec CDR

Un des points importants d’un cahier des charges de T-VoIP est de disposer d’outils permettant d’effectuer la taxation et donc la facturation ; autrement dit d’obtenir des rapports sur les appels émis et reçus :

numéro appelant - numéro appelé - durée de l’appel - date de l’appel - heure de l’appel

Un outil de taxation peut s’avérer très utile si le PBX est utilisé pour le compte de plusieurs sociétés et qu’un mécanisme de re-facturation interne doit être mis en œuvre. Il prend évidemment tout son sens si le PBX est un centrex à destination de clients finaux auprès desquels une facturation du service est évidente. Dans ce cas, le business model dépend fortement du contrat souscrit avec les opérateurs télécoms qui fournissent l’accès au réseau commuté. À ce jour, en France, aucun opérateur ne propose, en revente de type marque blanche et sous forme standardisée, un forfait illimité pour les appels vers les fixes en local et national.

1. Retrouver les CDR

Le système Asterisk dispose de plusieurs moyens permettant de retrouver la liste des appels passés et/ou reçus. Ces appels sont en fait des tickets ou CDR pour Call Data Records. Pour cela, il ne faut pas oublier de charger les modules correspondants.

a. Outil de base Master.csv

L’enregistrement des tickets s’effectue dans un fichier au format CSV, dans le fichier /var/log/asterisk/cdr-csv/Master.csv, qui est un journal de logs de tous les appels du système. Ce mécanisme nécessite le chargement du module cdr_cvs.so et le paramétrage du fichier /etc/asterisk/cdr.conf. Les champs à enregistrer sont présents dans le fichier /etc/asterisk/cdr_custom.csv et nécessitent de charger le module cdr_custom.so.

Contenu du fichier cdr_custom.conf

;
; Mappings for custom config file
;
; to get your csv output in a format tailored to your liking, 
uncomment the following
; and look for the output in the cdr-custom/Master.csv file (usually 
in /var/log/asterisk).
;
;
[mappings]
Master.csv => ${CSV_QUOTE(${CDR(clid)})},${CSV_QUOTE(${CDR(src)})},
${CSV_QUOTE(${CDR(dst)})},${CSV_QUOTE(${CDR(dcontex...

Outils graphiques de management

Il existe de nombreux outils tiers permettant d’administrer Asterisk de façon graphique.

1. En complément d’Asterisk

De nombreux outils plus ou moins graphiques permettent de gérer ou d’enrichir le système Asterisk, parmi lesquels, nous pouvons citer :

  • Druid ;

  • AstGUIclient / Vicidial ;

  • FreePBX (ex Asterisk@Home) ;

  • Asterisk GUI (inclus dans AsteriskNOW) ;

  • TrixBox (ex Asterisk@Home) ;

  • L’éditeur canadien ScopServ, avec sa puissante version Scoptel 2.0 distribuée par l’intégrateur belge EyePea.

a. DRUID

Druid est une plate-forme de gestion d’un serveur Asterisk, via une interface graphique (une GUI pour Graphical User Interface) permettant d’accéder à l’administration des services de téléphonie (ajout de téléphones, ajout d’utilisateurs, ajout de trunk, ajout de boîtes vocales…). C’est également un outil permettant la gestion de présence via le protocole Jabber.

Druid existe principalement en version Open Source edition : Druid OSE en date de 2009 (Druid 2.0.0)

Exemple d’interface pour Druid OSE :

N09RI01.png
Attention, la version de Druid est proposée en format ISO, autrement dit, en format « tout-en-un » et il est donc impossible d’ajouter seulement Druid comme GUI sur un serveur Asterisk existant au risque de tout casser. Nous conseillons donc de monter un serveur DRUID de test afin justement d’effectuer tout le maquettage indispensable avant la mise en production. Il est bien évidemment possible de modifier les fichiers de configurations d’Asterisk-Druid...

Gestion des faxs

Asterisk fournit un service de détection de fax entrants ; il va donc être possible, grâce à ce mécanisme, de gérer automatiquement la réception des fax :

  • détection d’un fax entrant ;

  • stockage du fax dans un fichier sur le serveur Asterisk ;

  • transformation du fichier en format TIFF ;

  • impression du fax ;

  • transformation du fichier TIFF en format PDF et transfert du fax en pièce jointe dans l’e-mail d’un utilisateur.

09RI06.PNG

Principe de réception de fax

1. Installation

Pour qu’Asterisk puisse traiter le fax reçu en le transférant à l’extension spéciale "fax", il faut que les librairies SPANDSP soient installées :

  1. Vérification que la librairie Libtiff est bien installée (voir le chapitre Installation d’un serveur Asterisk). Libtiff fournit l’applicatif tiff2ps permettant le traitement des fichiers TIFF.

  2. Téléchargement du fichier spandsp-0.0.6pre17.tgz (http://www.soft-switch.org).

  3. Décompactage du fichier et compilation.

La bibliothèque SPANDSP va fournir deux applications essentielles :

  • SendFAX pour l’envoi de fax.

  • ReceiveFAX pour la réception de fax.

# cd /usr/src
# tar zxvf /usr/src/spandsp-0.0.6pre17.tgz
# chown -R root:root spandsp-0.0.6/
# cd spandsp-0.0.2/
# ./configure
# make
# make install 
  1. Vérifier que le module app-fax est bien installé dans le make menuselect en faisant un ./configure dans le répertoire d’installation d’Asterisk

  1. Recompilation d’Asterisk (indispensable).

# cd/usr/src/asterisk-1.6.2.8
# make clean; make; make install 
Cela permet à...

Programmation AGI

AGI (Asterisk Gateway Interface) est une interface permettant de faire communiquer le plan de numérotation (extensions.conf) avec des programmes extérieurs à Asterisk, écrits avec des langages de programmation aussi divers que PHP, Perl, Python, C, shell Linux.

1. Principe

AGI est matérialisé par l’écriture de scripts qui sont exécutés dans le plan de numérotation.

À chaque lancement d’un script AGI, Asterisk envoie au script un ensemble de variables avec leurs valeurs. Lorsque toutes les variables sont émises, Asterisk envoie une ligne vide pour préciser au script qu’il peut commencer ce pourquoi il a été écrit (suite d’instructions).

Le script envoie les commandes et Asterisk renvoie au script, pour chaque commande émise, une réponse.

2. Appel du script AGI

Par défaut, les scripts sont créés et stockés dans /var/lib/asterisk/agi-bin (cela permet de ne pas mentionner le chemin complet d’appel des scripts). Il faudra toujours que les scripts disposent du droit d’exécution (chmod ugo+x monscript.agi).

Ensuite, le script se lance de la manière suivante :

exten => 777, 1, Answer()
exten => 777, 2, AGI(monscript.agi|argument1|argument2...) 
Les arguments sont optionnels.

3. Étapes dans la rédaction du script monscript.agi

La syntaxe du script...