Regarde dans le fichier say.conf![]()
Regarde dans le fichier say.conf![]()
Merci. Après avoir copié le fichier say.conf dans le /etc/asterisk de ma 1.4.21.2, j'utilise la fonction SayNumber() dans extensions.conf, mais il lit les chiffres comm un numéro "normal" plutôt qu'un numéro de téléphone:
Voici mon say.conf:Code:;"142.928.100" exten => 3333,1,SayNumber(0142928100) exten => 3333,n,Hangup
www.pastebin.com/gCYYt0he
FWIW, j'ai bien "language=fr" dans zapata.conf et sip.conf.
Dois-je faire quelque chose de particulier pour qu'il lise les numéros à la française?
Merci.
Je viens de voir mentionné cette section, que j'ai ajoutée à say.conf même s'il semble que c'est le choix par défaut:
Mais ça donne toujours "142 millions, etc." :-/Code:;/etc/asterisk/say.conf [general] ; method for playing numbers and dates ; old - using asterisk core function ; new - using this configuration file mode=new ...
Bizaremment, très peu d'information sur le Net sur le fonctionnement de say.conf.
Asterisk -vvvvvvvggc indique que say.conf est bien chargé.
Je suis le premier à avoir besoin d'utiliser la fonction SayNumber() pour répéter un numéro à la française?
Il n'y était pas déjà ?Après avoir copié le fichier say.conf dans le /etc/asterisk
Il ne suffit pas d'activer le nouveau mode de fonctionnement dans say.conf, il faut faire comprendre à Asterisk que les chiffres du numéro doivent être lus "deux par deux"
Dans say.conf il y'a cette partie intéressante:
Il faut que tu réussisse à utiliser cela.Code:_pho[n]e:XXXX => num:${SAY:0:2}, num:${SAY:2:2} _pho[n]e:0[1-9]XXXXXXXX => num:${SAY:0:1}, num:${SAY:1:1}, num:${SAY:2:2}, num:${SAY:4:2}, num:${SAY:6:2}, num:${SAY:8:2} _pho[n]e:. => digit:${SAY}
L'exemple de cette page devrait t'aider:
http://www.voip-info.org/wiki/view/A...onfig+say.conf
Code:Set(CHANNEL(language)=hu); Playback(num:5|say); Wait(0.5); Playback(num:510|say); Wait(0.5);
Merci pour ton aide
Non parce que c'est un Linux/Asterisk embarqué, donc nécessité de n'installer que les fichiers vraiment indispensables.
C'est là que ça coince : je n'arrive pas à piger l'interaction entre extensions.conf et say.conf, et la logique de say.conf.
Tu veux dire que l'on n'utilise pas SayNumber() mais Playback() pour relire un numéro de téléphone à l'appelant?Code:Set(CHANNEL(language)=hu); Playback(num:5|say); Wait(0.5); Playback(num:510|say); Wait(0.5);
Merci.
Marche toujours pas :-/
extensions.conf:
CLI:Code:exten => 2222,1,NoOp(Pseudo LANGUAGE is ${LANGUAGE}) exten => 2222,n,Set(CHANNEL(language)=fr) exten => 2222,n,Set(NBR2CALL=0142928100) ;exten => 2222,n,SayNumber(${NBR2CALL}) exten => 2222,n,Playback(num:${NBR2CALL},say) exten => 2222,n,Hangup
Soit "142 millions, 928 mille, cent".Code:-- Executing [2222@internal:1] NoOp("SIP/xlite-02b20004", "Pseudo LANGUAGE is ") in new stack -- Executing [2222@internal:2] Set("SIP/xlite-02b20004", "CHANNEL(language)=fr") in new stack -- Executing [2222@internal:3] Set("SIP/xlite-02b20004", "NBR2CALL=0142928100") in new stack -- Executing [2222@internal:4] Playback("SIP/xlite-02b20004", "num:0142928100|say") in new stack -- <SIP/xlite-02b20004> Playing 'digits/hundred' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/40' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/2' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/million' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/9' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/hundred' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/20' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/8' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/thousand' (language 'fr') -- <SIP/xlite-02b20004> Playing 'digits/hundred' (language 'fr') -- Executing [2222@internal:5] Hangup("SIP/xlite-02b20004", "") in new stack == Spawn extension (internal, 2222, 5) exited non-zero on 'SIP/xlite-02b20004'