«

»

Nov 10 2012

[Tuto] Asterisk: Enregistrer sa voix pour créer un IVR personnalisé

Bonjour à tous,

Dans ce nouveau tutoriel consacré à Asterisk, nous allons voir comment enregistrer sa voix pour par exemple créer un IVR sans utiliser un moteur de synthèse vocale.

L’intérêt de ce tuto est que vous pourrez enregistrer votre voix directement depuis votre SoftPhone, vous n’aurez donc pas besoins d’utiliser de logiciel spécifique.

Enregistrement de votre voix

Dans votre fichier extensions.conf d’Asetrisk rajoutez les deux lignes suivantes dans votre contexte:

exten => _5XXX,1,Record(IVR-${EXTEN:1}:ulaw)
exten => _5XXX,2,Playback(IVR-${EXTEN:1})

Explication de ces lignes:
La première ligne crée une extension 5XXX qui permet d’appeler les numéros de 5000 à 5999.
Si vous appelez par exemple le 5001, vous entendrez un BIP, après ce bip enregistrez votre message et terminez en appuyant sur #.
Un fichier son au format ulaw sera alors crée dans le dossier /var/lib/asterisk/sounds avec comme nom IVR-001 (si vous appelez le 5002 le fichier s’appellera IVR-002 etc..).

La seconde ligne permet de jouer le son que vous venez d’enregistrer.

Si vous souhaitez ré-enregistrer un son rappelez juste le même numéro, l’ancien sera effacé par la nouvelle version.

Création de l’IVR

Nous avons vu dans le tuto sur la création des IVR comment mettre en place un IVR avec googleTTS comme moteur de synthèse vocale, vous alons donc créer le même mais en jouant un son que vous aurez enregistré.

Imaginons donc que vous créer un fichier son portant le nom IVR-001 avec le texte suivant:

« Bienvenus chez test.com!
Qui souhaitez vous joindre?
Pour John Doe tapez 1
Pour Albert Dupont tapez 2
Appuyez sur dièse si vous souhaitez réécouter ce message »

Voici donc comment se crée l’IVR an jouant ce son:

;On crée un extension pour appeler l'IVR
exten => 8002,1,Goto(ivr-voice,s,1)

;Contexte ivr-voice
[ivr-voice]
exten => s,1,Answer()
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Background(IVR-001)
exten => s,4,WaitExten()

exten => 1,1,Goto(home,6001,1)
exten => 2,1,Goto(home,6002,1)
exten => _[3-9#],1,Goto(ivr-voice,s,3)
exten => t,1,Goto(ivr-voice,s,3)

Comme l’application « Playback » l’application « Background » permet de jouer un son mais celle-ci permet aussi de donner à l’utilisateur la possibilité d’appuyer sur une touche pendant que le son est joué.

(6 commentaires)

Passer au formulaire de commentaire

  1. frank feukeu

    Merci pour ce tuto
    mais jai un petit pb..svp kel es le numero ke je dois composer popur avoir l’ivr parceke jai deja enregiste mn message audio et jai verifie dans le repertooire il es bien la…metnan auand j’appel le 8002 ces asterisk ki parle me disant felicitation et autre choaoz mais ce nes en aucun cas ce que jai enregister…
    please i need help

  2. Xavier B.

    Merci beaucoup, j’ai cet article en favori (comme ça je n’encombre pas mon cerveau), en deux lignes on peut enregistrer, c’est parfait.

  3. as

    avez vous svp une idée sur l’utilisation de Monitor pour l’enregistrement des appels ?

  4. mathieu

    Bonsoir,

    un très grand merci pour ton partage de connaissance :) il m’a énormément aidé !

    @Sidoine : avec un peu de retard mais on sait jamais si tu coinces encore, vérifie les droits d’asterisk sur le répertoire /usr/share/asterisk/sounds/

    ls -ld /usr/share/asterisk/sounds/

    normalement il devrait appartenir à Asterisk, si ce n’est pas le cas, change le :

    chown asterisk:asterisk /usr/share/asterisk/sounds

    ainsi que tout les fichiers et sous-répetoire :

    chown -R asterisk:asterisk /usr/share/asterisk/sounds/*

    (il me semble que l’* est facultatif)

    Et reessaye, si ça ne fonctionne pas, vérifie aussi les droits sur les fichiers et modifie les:

    chmod 755 /usr/share/asterisk/sounds/*

    bonne soirée

  5. sidoine

    Bonjour,
    merci pour cette présentation, seulement, lorsque je compose le 5001 par exemple je reçois bien le bip puis juste après 02 messages d’erreurs, sans avoir même le temps d’enregistrer mon message.

    1er message :unable to open file /usr/share/asterisk/sounds/IVR-001.ulaw:permission refusée. Pourtant le fichier n’est pas créer dans le repertoire /sounds pour lever les restriction.j’utilise la version 1.6 d’asterisk pour la création de mon IVR.

    2e message: could no create file IVR-001

    Pouvez vous me dire ce qui cloche dans ma config?

  6. Erwan

    Merci.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Lire les articles précédents :
smalllogo7nagios
[Tuto] Nagios: Installer Nagios 3.4.1 sur Debian 6 ou Ubuntu via ses sources

Bonjour à tous, Dans ce premier tutoriel consacré à Nagios, nous allons voir comment l'installer avec ses plugins et NRPE...

Fermer