quinta-feira, 19 de março de 2015

Criação de URA – Parte 1

O que é URA?


URA é a abreviatura de Unidade de Resposta Audível. Trate-se de um aparelho utilizado por empresas de call center (atendimento) para que possam ser digitadas opções no atendimento eletrônico.

De uma forma geral, uma URA é um microcomputador convencional, ao qual se agrega um hardware específico para realizar as tarefas de telefonia (tais como atender, discar, desligar, reconhecer dígitos, falar, etc), e um software que controle este hardware de forma a atender a objetivos específicos.

As placas variam de acordo com a quantidade de canais que se deseja atender simultaneamente, o tipo de linha telefônica a que se destina (analógicas ou digitais) e à funcionalidades específicas, tais como fax, reconhecimento de fala, reconhecimento de pulsos decádicos, e outros.

Reconhecimento de fala


A partir do final da década de 90, a tecnologia de reconhecimento de fala passou a ser confiável e comercialmente alcançável por muitas organizações. Ainda que permaneça um recurso que implica custos altos, muitas vezes o retorno obtido com o investimento indica o seu uso.

A tecnologia consiste em reconhecer na fala do usuário palavras-chave que funcionam como marcadores de desvio no fluxo seguido pela URA. O caso mais simples é o reconhecimento de dígitos isolados, quando um cliente ao invés de digitar ou discar os dígitos no telefone pode-se falar estes dígitos (“um”, “sete”, “nove”, “quatro” por exemplo).

Um caso intermediário é o reconhecimento de números compostos, letras e certas palavras chaves tais como “setecentos e quatorze”, “L”, “Z”, “SIM”, “NÃO”. O caso mais complexo é o reconhecimento de “fala natural”, quando se pode extrair dados a partir de um discurso mais complexo, tal como “aplicar mil e duzentos dólares na minha conta de previdência privada”. Como “fala natural” entenda-se discursos limitados de gramática conhecida em determinado contexto do fluxo da URA.

Configuração da URA


Neste artigo iremos aprender a criar uma URA em nossa central Asterisk.

Na primeira parte do artigo iremos aprender a customizar os audios para utilizarmos na criação da URA. Na segunda parte iremos ver como trabalhar com nosso Dialplan.

Para criar audios customizados utilizaremos a aplicação Record do Asterisk.

No contexto interno do nosso arquivo de configuração iremos inserir as seguintes linhas:

vi /etc/asterisk/extensions.conf

exten => _55XX,1,Answer()
exten => _55XX,n,Wait(2)
exten => _55XX,n,Record(/tmp/prompt${EXTEN:2}:wav)
exten => _55XX,n,Wait(2)
exten => _55XX,n,Playback(/tmp/prompt${EXTEN:2})
exten => _55XX,n,Wait(2)
exten => _55XX,n,Hangup()


Linha 1: Atende a chamada

Linha 2: Espera dois segundos

Linha 3: Emite um beep e inicia a gravação do arquivo de áudio no diretório tmp com nome promptXX.wav onde XX é os últimos dois números da extensão que acabamos de discar a partir do nosso softphone ou hardphone. Exemplo: se chamarmos a extensão 5590 o arquivo de áudio será gravado com o nome prompt90.wav. Para finalizar a gravação pressione o botão quadrado #.

Linha 4: Espera dois segundos

Linha 5: Reproduz o arquivo de áudio que acabamos de gravar

Linha 6: Espera dois segundos

Linha 7: Finaliza a chamada

Se não estiver satisfeito com a qualidade da gravação poderá regrava-la ligando para a mesma extensão. A gravação nova irá substituir automaticamente a antiga.

Com todos os arquivos de áudio que precisamos preparados basta agora copia-los para o diretório do Asterisk:

mkdir /var/lib/astersik/sounds/custom

cd /tmp

mv prompt* /var/lib/asterisk/sounds/custom

Finalizo a primeira parte do artigo com a sinopse da aplicação Record

asterisk –rvvv

CLI> core show application record

-= Info about application ‘Record’ =-

[Synopsis]
Record to a file


[Description]
Record(filename.format,silence[,maxduration][,options])


Records from the channel into a given filename. If the file exists it will
be overwritten.
- ‘format’ is the format of the file type to be recorded (wav, gsm, etc).
- ‘silence’ is the number of seconds of silence to allow before returning.
- ‘maxduration’ is the maximum recording duration in seconds. If missing
or 0 there is no maximum.
- ‘options’ may contain any of the following letters:
‘a’ : append to existing recording rather than replacing
‘n’ : do not answer, but record anyway if line not yet answered
‘q’ : quiet (do not play a beep tone)
‘s’ : skip recording if the line is not yet answered
‘t’ : use alternate ‘*’ terminator key (DTMF) instead of default ‘#’
‘x’ : ignore all terminator keys (DTMF) and keep recording until hangup


If filename contains ‘%d’, these characters will be replaced with a number
incremented by one each time the file is recorded. A channel variable
named RECORDED_FILE will also be set, which contains the final filemname.


Use ‘core show file formats’ to see the available formats on your system

User can press ‘#’ to terminate the recording and continue to the next priority.

If the user should hangup during a recording, all data will be lost and the
application will teminate.


 

fonte: http://mestreasterisk.com.br/artigos-mestre-asterisk/criacao-de-ura-parte-1/

Repliquei essas informações porque ela é funcional ainda mesmo sendo de 2010, talvez tenha que ver algo pois a versão do asterisk já está na 13 então, deste modo informo que as informações acima contidas não foram criadas por minha pessoa porém boa parte ainda serve como consulta.

Nenhum comentário: