= Asterisk = Asterisk est un autocommutateur téléphonique privé (PABX) open source et propriétaire (publié sous licence GPL et licence propriétaire) pour systèmes GNU/Linux. Il permet, entre autres, la messagerie vocale, les files d'attente, les agents d'appels, les musiques d'attente et les mises en garde d'appels, la distribution des appels. == Fichiers de configurations == Les fichiers utilisés au crans sont : * sip.conf pour tout ce qui concerne les comptes sip * voicemail.conf pour les paramètres de la messagerie * manager.conf pour les paramètres de {{{AMI}}} {{{Asterisk Manager Interface}}}. Le fichier {{{asterisk.py}}} dans {{{/usr/scripts/sip/}}} fourni, via la classe {{{Manager}}} un binding simple pour contrôler à distance asterisk. Il convient d'ajouter une fonction par action lorsque cela est nécessaire et d'éviter d'utiliser en production la fonction {{{action}}}. * extensions.conf pour le plan de numérotation. Un graphe de ce dernier est disponible à cette adresse : [[http://doc.crans.org/asterisk/]] == Les scripts AGI == {{{AGI}}} est l'acronyme de {{{Asterisk Gateway Interface}}}. Ils se trouvent dans le dossier {{{/var/lib/asterisk/agi-bin}}} et permettent de faire plein de choses compliquées (jouer ou enregistrer du son, envoyer du texte, lire les chiffre tapée au clavier, etc.) comme le montre le fichier {{{agi-test.agi}}} Les scripts agi du crans sont dans {{{/usr/scripts/sip/agi/}}} et ne font rien de bien compliqué : * {{{history}}} permet de mettre à jour le journal d'appel dans django et de vérifier les quotas d'appel * {{{sms_delay}}} de garder un message textuel en attendant que son destinataire se connecte Il est préférable d'utiliser la commande {{{AGI}}} d'asterisk plutôt que la commande {{{SHELL}}} au sens où cette première est sensée être plus sûr : il est assuré qu'asterisk attende la fin de l'exécution de la commande avant de faire quoi que ce soit (raccrocher, fermer des canaux, etc.) et ne l'interrompe pas. == Messagerie == === Mettre un message personnalisé à la main === * il suffit de mettre un fichier {{{temp.EXT}}} où {{{EXT}}} correspond au format du fichier (mp3, wav, alaw, gsm…) dans le dossier {{{/var/spool/asterisk/voicemail/666/ID/}}} où {{{ID}}} est l'identifiant asterisk.