Artigos‎ > ‎VoIP‎ > ‎

Prompt de Voz do Asterisk em Português do Brasil


Primeiramente gostaria de salientar que não sou o autor principal do conteúdo deste artigo. A minha intenção é de mostrar o que outros autores tem realizado (referenciando links para o conteúdo original) neste blog até como um guia pessoal para uso próprio e ainda compartilhar minhas anotações e pequenas modificações que realizo no conteúdo, desejando que possa ajudar mais alguém em algum lugar.
First and foremost, I take no credit for any of this post’s content. I am really just taking what others have done (which I have links to bellow) and am putting it on my blog for a personal reference and hopefully the small changes that I made to their guides will help someone somewhere.


Link: http://www.asteriskbrasil.org/tiki/tiki-index.php?page=Patch_PTBR


Link:  http://www.voip-info.org/wiki/view/Asterisk+sound+files+international 

Installation

  • Use language= in a .conf file, or use the CHANNEL(language) function (1.4+) resp. the SetLanguage() application in extensions.conf
  • Place the voice prompts into a directory structure as follows (usually within /var/lib/asterisk/:
    • sounds/xx
    • sounds/digits/xx
    • sounds/letters/xx
    • sounds/phonetic/xx
where xx is the two letter ISO code of the language in question (nl, fr, de, it, pt, es ...) 
NOTE: This is for version 1.2, the file structure for 1.4 is different than for 1.2! 




link:   http://mestreasterisk.com.br/downloads/asterisk-prompts-de-voz-em-portugues-pt_br/ 
Toda vez que se instala o Asterisk por default o seu idioma é o Ingles!
Quando você lê nos tutoriais: Playback(hello-world) o arquivo está localizado no diretório raiz do sounds, ou seja, /var/lib/asterisk/sounds/hello-world.gsm
Caso queira que os audios do sistema utilizem o idioma português você deve configurar seguir os seguintes passos:
1 – Faça download dos audios em português.
2 – Descompacte os arquivos dentro da pasta /var/lib/asterisk/ . Agora além do inglês, frances e espanhol você tbm terá uma pasta pt_BR. Dependendo da versão do Asterisk que estiver utilizando terá que colocar todos os diretorios que você fez download abaixo da pasta pt_BR:
/var/lib/asterisk/sounds/pt_BR
/var/lib/asterisk/sounds/pt_BR/phonetics
/var/lib/asterisk/sounds/pt_BR/letter
/var/lib/asterisk/sounds/pt_BR/digits
3 – Dentro do seu arquivo sip.conf quando criar um ramal coloque o parametro language=pt_BR dessa maneira (Em vez de colocar individualmente para todos os ramais, pode colocar ‘language=pt_BR’ para o [general]) :
[6000]
username=6000
type=friend
secret=6000
qualify=yes
port=5060
nat=yes
mailbox=6000@default
host=dynamic
dtmfmode=rfc2833
context=ramais
canreinvite=no
callerid=Recepção
callgroup=1
pickupgroup=1
language=pt_BR
call-limit=10
disallow=all
allow=ulaw
Se você criar uma URA dentro do seu extensions.conf e deseja que ela tenha por padrão os audios de sistema em português você deverá fazer o seguinte:
[ura-do-luan]
exten => Menu,1,Answer()
exten => Menu,n,Wait(0.5)
exten => Menu,n,Set(CHANNEL(language)=pt_BR) ; repare que você configurou apenas essa URA para pt_BR
exten => Menu,n,Background(luan-audios/BemVindoaUradoLuan)
Para seus audios personalizados crie dentro do diretório /var/lib/asterisk/sounds/luan-audios e coloque seus arquivos la dentro, depois é só chama-los como no exemplo acima.
Poderia ser qualquer outro diretório mas para isso teria que especificar o caminho completo.
Obs: Se utilizar Wav seus arquivos devem ter a seguinte configuração: 8000hz – Mono – 16bits. Para converter seus arquivos nesse formato utilize o comando sox, ex: (sox original.wav -r 8000 -c 1 -s -w convertido.wav resample -ql )


Transformar os arquivos mp3 ou wav em arquivos gsm ou pcm que requerem menos processamento do servidor asterisk.
TODO: Não deu muito certo....

mpg123 -s --rate 44100 --mono fpm-sunshine.mp3 > fpm-sunshine.raw
sox -r 44100 -w -s -c 1 fpm-sunshine.raw -r 8000 -c 1 fpm-sunshine.wav
rm fpm-sunshine.raw

sox fpm-sunshine.wav -t gsm -r 8000 -b -c 1 fpm-sunshine.gsm
sox fpm-sunshine.wav -t ul -r 8000 -b -c 1 fpm-sunshine.pcm


FROMDIR="/root/mp3s"
TODIR="/root/transcodes"
for i in $FROMDIR/*.mp3
do
BASEFILE=$(basename $i .mp3)
echo Converting $BASEFILE
mpg123 -s --rate 44100 --mono $FROMDIR/$BASEFILE.mp3 > $TODIR/$BASEFILE.raw
sox -r 44100 -w -s -c 1 $TODIR/$BASEFILE.raw -r 8000 -c 1 $TODIR/$BASEFILE.wav
sox $TODIR/$BASEFILE.wav -t gsm -r 8000 -b -c 1 $TODIR/$BASEFILE.gsm
sox $TODIR/$BASEFILE.wav -t ul -r 8000 -b -c 1 $TODIR/$BASEFILE.pcm
rm -f $TODIR/$BASEFILE.raw
done

Please set FROMDIR and TODIR as you best see fit (they can also be the same directory).

Tentativa de corrigir o script:
#!/bin/bash

path=*.mp3
echo Analisando "$path"
#shopt -s nullglob 
for i in $path
do
BASEFILE=$(basename $i .mp3)
echo Convertendo "${BASEFILE}"
mpg123 -s --rate 44100 --mono "${BASEFILE}.mp3" > "${BASEFILE}.raw"
sox -r 44100 -2 -s -c1 "${BASEFILE}.raw" -r 8000 -c 1 "${BASEFILE}.wav"
sox "${BASEFILE}.wav" -t gsm -r 8000 -c 1 "${BASEFILE}.gsm"
sox "${BASEFILE}.wav" -t ul -r 8000 -c 1 "${BASEFILE}.pcm"
rm -f "${BASEFILE}.raw"
done

Para ter music on hold altere o arquivo musiconhold.conf:

[default]
mode=files
directory=/opt/var/lib/asterisk/moh-default
random=yes



O URL específico do gadget não foi encontrado



Comments