- La téléphonie Internet libre basée sur Asterisk par Sylvain Thérien - http://www.tux89.com -

Rappels téléphoniques 4.0 en français sous Asterisk 1.4

[1]Le composant de rappels téléphonique nommé « Reminders » offert par Nerd Vittles [2] vous permet d’effectuer des rappels selon un calendrier basé sur des événements ponctuels ou futurs.

Le système est accessible par téléphone ou via un fureteur. Ainsi, lorsque la date et l’heure d’un événement calendrier arrive, Asterisk passe à l’action et effectue un appel au numéro que vous avez initialement désigné, afin de transmettre un message de rappel personnalisé. La version 4 de « Reminders » offre une interface web avec synthèse vocale afin de planifier et transmettre des rappels en utilisant soit « Flite » ou « Cepstral » comme synthétiseur de parole. Les rappels périodiques sont également pris en charge, ainsi, vous pouvez définir des rappels quotidiens, les jours de semaine, hebdomadaires, mensuels ou encore annuels. Les applications possibles peuvent donc être pour vous réveiller le matin, pour rappeler à une personne de prendre ses médicaments tous les jours, pour rappeler à votre petite équipe de la ligue les heures et les lieux d’entraînement, ou encore de vous rappeler ou à vos clients des événements réguliers et récurrents.

Vous trouverez plus d’information sur « Reminders » dans l’article original Telephone Reminders 4.0 for Asterisk 1.4 [3].

Pour ceux qui désirent la traduction française de l’article original, gracieuseté de Google Translate, utilisez plutôt ce lien [4].

Cette magnifique application n’est offerte qu’en langue anglaise. Je veux dire ici que l’interface utilisateur web, le synthétiseur vocal et les messages préenregistrés ne sont pas disponibles en français. Après avoir contacté Ward Mundy [5] afin de m’assurer qu’il m’autorisait à traduire l’application et que les droits d’utilisation (GPL) rencontraient les exigences, je me mis à la tâche de franciser l’application « Telephone Reminders 4.0 for Asterisk 1.4 » afin qu’elle devienne « Rappels téléphonique 4.0 sous Asterisk 1.4 ». En suivant les étapes de cet article, vous pourrez aussi en profiter tout à fait gratuitement.

Je ne traiterai pas dans cet article de la mise en place de « Telephone Reminders » sous votre système Asterisk. Pour cela référez-vous à l’article original [6] afin d’en faire la mise en place sous votre système Asterisk.

En fait si vous utilisez déjà PIAF [7] comme distribution et que vous avec suivi mes conseils sur l’installation des applications supplémentaires, Installation d’applications permettant d’étendre les fonctions de base d’Asterisk, [8] alors l’installation est déjà faite et vous n’avez qu’à suivre les étapes de francisation de cet article.

Pré requis :

Comme mentionné précédemment, vous devez avoir une version (anglaise) fonctionnelle de « Telephone Reminders ».

Deuxièmement, vous devez avoir la version la plus récente de liambrola, soit actuellement la version 0.3. Référez-vous à l’article Synthèse vocal en français sous Asterisk [9] afin d’en faire la mise en place sous votre système Asterisk. La version 0.3 offre maintenant l’utilisation de liambrola via une ligne de commande « shell ». Il est donc possible  de faire appel à la synthèse vocale liambrola en spécifiant un fichier d’entrée de texte et un fichier de sortie audio dans lequel liambrola produira une synthèse vocale française du texte d’entrée.

À lire si votre temps est précieux :

Assurez avant de débuter que la version anglaise de « Telephone Reminders » est fonctionnelle. Pour ce faire, prenez le combiné téléphonique, composez 123, dictez votre message ainsi que les paramètres de livraison et validez que le tout fonctionne. Faites de même via l’interface web (http://VOTRE_SERVEU_ASTERISK/menu.php?id=asterimind) et validez que la synthèse vocale fonctionne bien en anglais.

Ne passez qu’à la prochaine étape que si les deux essais précédents ont été concluants. Vous l’avais-je dit, ne passez à la prochaine étape que si les deux essais précédents ont été concluants. Ha ! Oui, je me répète, désolé d’être aussi insistant.

Francisation :

Suivez les instructions ci-dessous afin d’effectuer l’installation de la version française de « Telephone Reminders ».

Fichiers sonores

Pour l’installation des fichiers sonores dans le répertoire custom, effectuez les lignes de commandes suivantes :

cd /var/lib/asterisk/sounds/custom
wget http://www.tux89.com/wp-content/uploads/2010/07/reminders-audio-fr.tgz
tar zxvf reminders-audio-fr.tgz
cd fr
find . -print -exec chown asterisk:asterisk {} \;
cd ..
rm -f reminders-audio-fr.tgz

Fichiers scripts

Pour l’installation des fichiers scripts dans le répertoire reminders, effectuez les lignes de commandes suivantes :

cd /var/www/html/reminders
cp index.php  index.php.EN
cp reminderlist.php reminderlist.php.EN
wget http://www.tux89.com/wp-content/uploads/2010/07/reminders-scripts-fr.tgz
tar zxvf reminders-scripts-fr.tgz
find . -print -exec chown asterisk:asterisk {} \;
rm -f reminders-scripts-fr.tgz

Vous devez modifier les scripts du plan de numérotation d’Asterisk afin que les messages de rappels téléphoniques soient en français. Éditez le fichier /etc/asterisk/extensions_custom.conf et remplacer les éléments du fichier par ceux présentés ci-dessous :

[reminder]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Playback(custom/fr/reminder1)
exten => s,4,Wait(2)
exten => s,5,Set(TMPMSG=${CUT(UNIQUEID,.,-1)}${CUT(UNIQUEID,.,2-)})
exten => s,6,Record(custom/${TMPMSG}:gsm)
exten => s,7,Wait(1)
exten => s,8,Playback(custom/${TMPMSG})
exten => s,9,Wait(1)
exten => s,10,Background(custom/fr/vm-review)
exten => s,11,WaitExten()
exten => 1,1,Goto(reminder7,s,1)
exten => 2,1,Goto(s,8)
exten => 3,1,Goto(s,3)
exten => t,1,Goto(s,10)
exten => i,1,Playback(custom/fr/goodbye)
exten => i,2,Hangup
exten => h,1,Hangup

[reminder2]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Read(APPTDT,custom/fr/reminder2,8)
exten => s,4,AGI(checkdate.php|${APPTDT})
exten => s,5,GotoIf($[« foo${HOTDATE} » = « fooBAD »]?99,1)
exten => s,6,Playback(custom/fr/you-entered)
exten => s,7,GotoIf($[« foo${HOTDATE} » = « fooTODAY »]?s,10)
exten => s,8,SayUnixTime(${HOTDATE},,AdBY)
exten => s,9,Goto(s,11)
exten => s,10,Playback(custom/fr/today)
exten => s,11,Goto(reminder3,s,1)
exten => 99,1,Playback(custom/fr/conf-errormenu)
exten => 99,2,Goto(s,3)
exten => t,1,Goto(s,3)
exten => i,1,Goto(s,3)
exten => h,1,Hangup

[reminder3]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Background(custom/fr/if-correct-press)
exten => s,4,Background(custom/fr/1)
exten => s,5,Background(custom/fr/otherwise-press)
exten => s,6,Background(custom/fr/2)
exten => s,7,Background(custom/fr/press-star-cancel)
exten => s,8,WaitExten()
exten => 1,1,Goto(reminder4,s,1)
exten => 2,1,Goto(reminder2,s,1)
exten => *,1,Playback(custom/fr/goodbye)
exten => *,2,System(/bin/rm -f /var/lib/asterisk/sounds/custom/${TMPMSG}.gsm)
exten => *,3,Hangup
exten => t,1,Goto(reminder2,s,6)
exten => i,1,Goto(reminder2,s,6)
exten => h,1,Hangup

[reminder4]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Read(APPTTIME,custom/fr/reminder3,4)
exten => s,4,GotoIf($[« foo${APPTTIME} » < « foo1200 »]?reminder5,s,1)
exten => s,5,AGI(checktime.php|${APPTDT}|${APPTTIME}|0|${APPTPHONE})
exten => s,6,GotoIf($[« foo${HOTTIME} » = « fooBAD »]?99,1)
exten => s,7,Playback(custom/fr/you-entered)
exten => s,8,SayUnixTime(${HOTTIME},,AdBY)
exten => s,9,Playback(custom/fr/at)
exten => s,10,SayUnixTime(${HOTTIME},,IMP)
exten => s,11,Goto(s,18)
exten => s,12,AGI(checktime.php|${APPTDT}|${APPTTIME}|1200|${APPTPHONE})
exten => s,13,GotoIf($[« foo${HOTTIME} » = « fooBAD »]?99,1)
exten => s,14,Playback(custom/fr/you-entered)
exten => s,15,SayUnixTime(${HOTTIME},,AdBY)
exten => s,16,Playback(custom/fr/at)
exten => s,17,SayUnixTime(${HOTTIME},,IMp)
exten => s,18,Goto(reminder6,s,1)
exten => 99,1,Playback(custom/fr/conf-errormenu)
exten => 99,2,Goto(s,3)
exten => t,1,Goto(s,3)
exten => i,1,Goto(s,3)
exten => h,1,Hangup

[reminder5]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Background(custom/fr/1-for-am-2-for-pm)
exten => s,4,WaitExten()
exten => 1,1,Goto(reminder4,s,5)
exten => 2,1,Goto(reminder4,s,12)
exten => *,1,Playback(custom/fr/goodbye)
exten => *,2,System(/bin/rm -f /var/lib/asterisk/sounds/custom/${TMPMSG}.gsm)
exten => *,3,Hangup
exten => t,1,Goto(reminder4,s,1)
exten => i,1,Goto(s,1)
exten => h,1,Hangup

[reminder6]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Background(custom/fr/if-correct-press)
exten => s,4,Background(custom/fr/1)
exten => s,5,Background(custom/fr/otherwise-press)
exten => s,6,Background(custom/fr/2)
exten => s,7,Background(custom/fr/press-star-cancel)
exten => s,8,WaitExten()
exten => 1,1,Goto(reminder9,s,1)
exten => 2,1,Goto(reminder4,s,1)
exten => *,1,Playback(custom/fr/goodbye)
exten => *,2,System(/bin/rm -f /var/lib/asterisk/sounds/custom/${TMPMSG}.gsm)
exten => *,3,Hangup
exten => t,1,Goto(reminder6,s,3)
exten => i,1,Goto(reminder6,s,3)
exten => h,1,Hangup

[reminder7]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Read(APPTPHONE,custom/fr/reminder4,0)
exten => s,4,Goto(reminder8,s,1)
exten => t,1,Goto(reminder8,s,1)
exten => i,1,Goto(s,3)
exten => #,1,Goto(reminder8,s,1)
exten => h,1,Hangup

[reminder8]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,GotoIf($[« foo${APPTPHONE} » = « foo »]?4:5)
exten => s,4,Set(APPTPHONE=${CALLERID(number)})
exten => s,5,Playback(custom/fr/you-entered)
exten => s,6,SayDigits(${APPTPHONE})
exten => s,7,Background(custom/fr/if-correct-press)
exten => s,8,Background(custom/fr/1)
exten => s,9,Background(custom/fr/otherwise-press)
exten => s,10,Background(custom/fr/2)
exten => s,11,Background(custom/fr/press-star-cancel)
exten => s,12,WaitExten()
exten => 1,1,Goto(reminder2,s,1)
exten => 2,1,Goto(reminder7,s,1)
exten => *,1,Playback(custom/fr/goodbye)
exten => *,2,System(/bin/rm -f /var/lib/asterisk/sounds/custom/${TMPMSG}.gsm)
exten => *,3,Hangup
exten => t,1,Goto(reminder8,s,5)
exten => i,1,Goto(reminder8,s,5)
exten => h,1,Hangup

[reminder9]
exten => s,1,Set(TIMEOUT(digit)=7)
exten => s,2,Set(TIMEOUT(response)=10)
exten => s,3,Read(APPTRECUR,custom/fr/reminder6,1)
exten => s,4,Goto(reminder9a,s,1)
exten => t,1,Goto(s,3)
exten => i,1,Goto(s,3)
exten => #,1,Goto(reminder9a,s,1)
exten => h,1,Hangup

[reminder9a]
exten => s,1,NoOp(APPTDT: ${APPTDT})
exten => s,2,NoOp(APPTTIME: ${APPTTIME})
exten => s,3,NoOp(APPTPHONE: ${APPTPHONE})
exten => s,4,NoOp(RECURRING: ${APPTRECUR})
exten => s,5,NoOp(APPTMSG: /var/lib/asterisk/sounds/custom/${APPTTIME}.${APPTDT}.${APPTPHONE}.gsm)
exten => s,6,Playback(custom/fr/your-msg-has-been-saved)
exten => s,7,Playback(custom/fr/goodbye)
exten => s,8,Wait(2)
exten => s,9,Hangup
exten => h,1,System(/bin/mv -f /var/lib/asterisk/sounds/custom/${TMPMSG}.gsm /var/lib/asterisk/sounds/custom/${APPTTIME}.${APPTDT}.${APPTPHONE}.gsm)
exten => h,2,DeadAGI(reminder.php|${APPTDT}|${APPTTIME}|${APPTPHONE}|${APPTRECUR})
exten => h,3,Hangup

[remindem]
exten => s,1,Answer
exten => s,2,Wait(2)
exten => s,3,Set(TIMEOUT(digit)=7)
exten => s,4,Set(TIMEOUT(response)=10)
exten => s,5,Playback(custom/fr/reminder5)
exten => s,6,Wait(2)
exten => s,7,Playback(custom/${MSG})
exten => s,8,Set(TIMEOUT(digit)=6)
exten => s,9,Set(TIMEOUT(response)=7)
exten => s,10,Set(counter=1)
exten => s,11,Background(custom/fr/to-hear-msg-again)
exten => s,12,Background(custom/fr/press-1)
exten => s,13,Background(custom/fr/otherwise-press)
exten => s,14,Read(lepick,custom/fr/2,1)
exten => s,15,GotoIf($[« ${lepick} » = « 2 »]?alldone,1:onemo,1)
exten => onemo,1,NoOp(Callee Replayed Message. Dialed: ${APPTPHONE}.)
exten => onemo,2,Playback(custom/${MSG})  ; playing again by request
exten => onemo,3,Set(counter=${counter}+1)
exten => onemo,4,GotoIf($[« ${counter} » = « 1+1+1 »]?alldone,1:s,11)
exten => alldone,1,Background(custom/fr/goodbye)
exten => alldone,2,NoOp(Callee Acknowledged Call. Dialed: ${APPTPHONE}.)
exten => alldone,3,Hangup
exten => t,1,NoOp(Callee’s Answering Machine probably answered. Dialed: ${APPTPHONE}.)
exten => t,2,Background(custom/fr/restarting)
exten => t,3,Wait(1)
exten => t,4,Playback(custom/${MSG})  ; playing again for ans machine
exten => t,5,Background(custom/fr/goodbye)
exten => t,6,Hangup
exten => i,1,Goto(t,2)
exten => o,1,Goto(t,2)
exten => h,1,Set(email=${DB(EMAIL/${APPTPHONE})}) ; see if number to call has an associated email address
exten => h,2,GotoIf($[« foo${email} » = « foo »]?4)
exten => h,3,system(mime-construct –to ${email} –subject « Telephone Reminder » –file /var/lib/asterisk/sounds/custom/${APPTTIME}.${APPTDT}.${APPTPHONE}.gsm –type audio/gsm)
exten => h,4,NoOp(Callee hung up. Dialed: ${APPTPHONE}.)
exten => h,5,System(/bin/rm -f /var/lib/asterisk/sounds/custom/${APPTTIME}.${APPTDT}.${APPTPHONE}.gsm)
exten => h,6,Hangup

Finalement, rechargez la configuration d’Asterisk.

asterisk -rx reload

Essaie pratique :

Vous êtes maintenant prêt à effectuer votre premier essai en français. Cliquez sur l’icône Nerd Vittles Reminders

[10]

Si vous n’utilisez pas la distribution PIAF, alors utilisez plutôt le lien suivant :

http://VOTRE_SERVEU_ASTERISK/menu.php?id=asterimind [11]

Le menu des rappels téléphoniques vous sera alors présenté.

[12]

Dans la section Destination/Moment, entrez le numéro de destination, la date et l’heure de l’événement. Ensuite dans la section Période, choisissez la récurrence désirée

[13]

Finalement, dans la section Message à acheminer, entrez le texte à transmettre. Si le message à acheminer contient des caractères accentués, il est préférable de sélectionner l’option « iconv » afin que le texte soit converti du jeu de caractères UFT8 à ISO-8859-1.

[14]

De plus, vous pouvez aussi interagir dynamiquement sur Lia_phon ou MBROLA via les paramètres passés à même le texte à liambrola. Ainsi, vous pouvez passer plusieurs paramètres dynamiques à liambrola en les séparant par une barre verticale « | » sous Asterisk 1.4, pourvu que cela ait du sens. Veuillez noter que le séparateur de paramètres sous Asterisk 1.6 est une virgule « , » plutôt qu’une barre verticale « | » comme sous Asterisk 1.4. Pour des raisons de contraintes matérielles et de temps, je n’ai pas vérifié le fonctionnement de Reminders « version française » sous Asterisk 1.6, alors  tenez en bien compte. Si vous en faites l’essai avec succès, vous seriez gentil de m’en aviser.

L’application « Rappels téléphonique » fait appel à liambrola via un appel système, ainsi utilisant l’exécutable liambrola en ligne de commande plutôt que la fonction liambrola faisant partie du plan de numérotation d’Asterisk. Il est à noter qu’à l’opposé de la fonction liambrola faisant partie du plan de numérotation d’Asterisk,  les paramètres contenus dans le fichier /etc/asterisk/liambrola.conf ne sont pas évalués lorsque vous utilisez l’exécutable liambrola via une ligne de commande. Les paramètres à défauts sont plutôt codés dans l’application liambrola.

Les valeurs de ces paramètres sont les suivantes :

Le chemin d’accès pour l’exécutable mbrola est :

mbrolaPath = /usr/local/bin/mbrola

Traitement des erreurs sur les diaphonies de Mbrola :

ignoreError = activé

La voix utilisée pour la synthèse vocale est :

voiceSelection = fr1

La valeur du volume est :

volumeratio = 1.0

La valeur de la fréquence est :

frequencyratio = 1.0

La valeur du tempo est :

timeratio = 1.0

La valeur de la fréquence vocale est :

voicefrequency = 16000

Le chemin d’accès pour l’exécutable lia_phon est :

liaphonPath = /usr/local/bin/lia_phon

Traitement de l’ajustement des accents lors de l’analyse par Lia_phon :

reajustAccent = activé

Si vous avec besoin d’effectuer des ajustements par rapport à ces valeurs, par exemple le chemin d’accès à Lia_phon ou encore Mbrola, vous n’avec qu’à modifier les paramètres d’appels à liambrola dans le fichier suivant :

/var/www/html/reminders/index.php

La ligne d’appel à liambrola est la suivante :

$ttsengine[2] = « liambrola » ;

Ainsi pour changer le chemin d’accès à Lia_phon et/ou Mbrola, vous pourriez mettre la ligne suivante :

$ttsengine[2] = « liambrola -lp /usr/local/bin/lia_phon -mp /usr/local/bin/mbrola » ;

Pour connaître les options de liambrola, simplement effectuez la ligne de commande suivante :

liambrola –help

Vous verrez alors les options telles que présentées ci-dessous :

utilisation: liambrola
Fait appel à Lia_Phon et Mbrola afin de produire une synthèse vocale,
à partir d’un texte, et retourne le tout sous forme d’onde sonore
———————————————-
Options disponibles :
–version   Donne la version de liambrola
–help      Donne ce menu d’aide
-lp PATH Spécifie le chemin d’accès de l’exécutable Lia_Phon
-mp PATH Spécifie le chemin d’accès de l’exécutable Mbrola
-o WAVEFILE Spécifie le fichier de sortir audio
-f TEXTFILE Spécifie le fichier texte d’entrée
———————————————-
Le TEXTE est de forme libre et supporte les paramètres suivants :
intkeys – voice – ignoreError – volumeRatio – frequencyRatio
timeRatio – voiceFrequency – reajustAccent
Claudine – Audrey – Camille – Alexis – Sylvain
———————————————-
Le paramètre voix « voice » peut être fr1 à fr7 ou ca1 ou ca2.
Se référer au fichier agi-liambrola-test.agi situe dans le répertoire
/var/lib/asterisk/agi-bin afin de voir des exemples d’utilisation
de Liambrola. Veuillez prendre note que le TEXTE d’entrée doit être
exempt de « | » sous Arterisk 1.4 et doit être exempt de « , » sous
Arterisk 1.6 car ces derniers sont le séparateur d’arguments
pour les paramètres AGI sous Asterisk.

Revenons à notre interface web de « Rappels téléphonique ». Vous auriez donc pu mettre un des textes suivants dans la fenêtre « Texte à lire » afin d’interagir dynamiquement sur Lia_phon ou MBROLA :

Français un ceci est la voix F R 1.|fr1

Le volume de ce message est élevé.|volumeratio|3.0

La fréquence de ce message est basse.|frequencyratio|0.5

Le rythme de ce message est lent.|timeratio|1.5

La fréquence vocale de ce message est basse.|voicefrequency|10000

Bonjour je m’apelle Sylvain.|sylvain

Ce message est une combinaison de différentes options.|fr2|volumeratio|3.0|frequencyratio|0.5|timeratio|1.5|voicefrequency|10000

[15]

Pour plus d’information sur les possibilités, recommandez-vous à l’article  Synthèse vocal en français sous Asterisk [9].

Appuyez sur le bouton « Céduler le rappel » et vous devriez voir un écran vous indiquant que tout  a bien fonctionné. Notez que certains caractères ont été enlevés, par exemple l’apostrophe. Ceci est dû à la complexité de l’analyse contextuelle de Lia_phon et de Mbrola. La transmission du message ne devrait pas en être affectée.

[16]

Petit truc : Si vous désirez faire un test sur un poste immédiatement sans vous préoccuper de l’ajustement de l’heure, simplement mettre une heure dans le passé avec la date courante. Le système vous appellera dans la seconde suivante.

Si vous désirez voir les rappels courants, appuyez sur le bouton « Réviser les rappels courants » et vous devriez voir un écran similaire au suivant.

[17]

Enregistrements sonores :

[18]

Pour ceux qui sont intéressés, voici comment je me suis pris afin d’enregistrer les messages sonores en français.

Premièrement, j’ai dû solliciter l’aide de la charmante Audrey afin de lui emprunter sa voix. Lors de la livraison des messages de rappel, la voix de tous les messages doit être uniforme si l’on veut que le tout ait une allure plus conforme. Vous noterez que les messages ne sont pas de qualité commerciale, cependant pour une première version, c’est tout à fait acceptable. Si jamais vous avez les ressources nécessaires pour refaire les enregistrements audio, n’hésitez pas à m’en faire part.

J’ai créé les messages français en utilisant le très bon logiciel de source libre  Audacity [19].

[20]

L’enregistre du matériel audio s’est fait en utilisant un haut taux d’échantillonnage, soit au moins 44Khz à 16 bits par échantillon dans un format de compression PCM. Une fois l’enregistrement terminé, on peut appliquer des filtres et normaliser le volume.

Pour normaliser le volume, c’est-à-dire en faire un volume standard et éliminer les bruits de fond, j’ai utilisé la fonction « EffectNormalize » de Audacity avec les paramètres suivants :

Check – Remove any DC offset
Check – Normalize maximum amplitude to -0.0 dB

Par la suite, j’ai régénéré le taux d’échantillonnage via la fonction « TracksResample » de Audacity avec le paramètre suivant :

New resample rate 8000 kHz

Comme étape finale, j’ai exporté en format « WAV (Microsoft) Format signed 16 bit PCM » chaque fichier sonore. Cela a produit des fichiers avec extensions « wav ».

Finalement j’ai converti chaque fichier au format « gsm » avec Switch Sound Format Converter. [21]

[22]

Conclusion :

J’espère que cette application vous sera utile.

Un merci spécial à Ward Mundy et l’équipe de NerdVittles [23] pour l’ouverture d’esprit rendant possible la francisation de « Telephone Reminders 4.0 for Asterisk 1.4 ».

Faites en bon usage !

Références :

http://www.voip-info.org/wiki/view/Asterisk+sound+files [24] pixelstats trackingpixel
Comments Disabled (Open | Close)

Comments Disabled To "Rappels téléphoniques 4.0 en français sous Asterisk 1.4"

#1 Comment By Kamel On 24 juillet 2010 @ 1 h 49 min

Bonjour, Sylvain …

Franchement, Bravo pour ton article et depuis le temps que je l’attend !!!

Je vais l’essayer de suite et te ferai un feedback, et te remercie 1000 fois

Bonne continuation et encore merci.

Kamel

#2 Comment By Stepatchin On 8 novembre 2010 @ 3 h 48 min

Excellent sujet
je voudrai détourné un peu Telephone Reminders si c’est possible. le principe est simple :
si j’ai un probleme sur un des serveurs de d’entreprise le serveur de supervision du materiel envoi un message d’alarme a asterisk copié dans le Telephone Reminders et appel une personne compétante pour réparer (le numéro dans le message d’alarme)
Est-il possible de faire ca ??
ca m’evite de créer des scrpits et des truc que je métrise pas vraiment alors je voudrai me simplifié la vie et surtout facilité la mintenance aprés .
merci
Cordialement

#3 Comment By Stepatchin On 8 novembre 2010 @ 3 h 50 min

ah oui j’ai oublié de mettre ma config asterisk, j’utilise un asterisknow avec un asterisk 1.6 sur un freepbx 2.8

#4 Comment By Franck On 15 août 2011 @ 13 h 10 min

Bonjour,

Bravo ! Pour tout ce que vous faites et de contribuer ainsi au maintien de la langue française dans le monde informatique dominé par l’impérialisme anglosaxon.

Concernant Reminder chez moi (PIAF 1.7.2 Asterisk 1.8..) cela fonctionne bien, cependant peut-être que quelques choses m’a échappées.

1) Lorsque je compose le « 123 » un message en française me demande un mot de passe ?? Lequel est-ce ?

2) Lorsque je programme un rappel via l’interface web, les « , » (virgules) et les « ‘ » (apostrophes) dans le texte du message a synthétiser arrêtent la synthèse et raccourcissent donc le message d’autant.

Encore bravo !

#5 Comment By Sylvain Thérien On 23 août 2011 @ 21 h 57 min

Frank,

Voici les réponses aux questions.

1 – Le mot de passe devrait être 12345678. Pour vérivier, tu n’as qu’a jeter un coup d’oeil au fichier /etc/asterisk/extensions_custom.conf. Tu devrais y trouver le mot de passe sous la fonction Authenticate :

exten => 123,1,Answer
exten => 123,2,Wait(1)
exten => 123,3,Authenticate(12345678)
exten => 123,4,Goto(reminder,s,1)

2 – Pour ce qui est du séparateur de paramètres, je constate que tu utilises Asterisk 1.8. Il existe un problème avec liambrola pour la version 1.8 d’Asterisk. Je n’ai pas encore trouvé de solution et je manque de temps pour travailler à trouver la solution. Cependant, j’ai validé que tout fonctionne adéquatement sous Asterisk 1.2, 1.4 et 1.6.

En espérant que les réponses pourront t’aider.

Merci pour les commentaires positifs relativement aux rubriques.