O Asterisk permite configurar um autoatendimento (IVR) de forma simples e eficiente, direcionando as chamadas conforme as escolhas do usuário. Neste post, vamos mostrar como criar um menu onde o chamador pode pressionar 1 para um ramal e 2 para outro.
1. Configuração do Autoatendimento
O primeiro passo é editar o extensions.conf, que fica em /etc/asterisk/extensions.conf
. Se o contexto de entrada das ligações for default
, basta adicionar ou modificar:
[default]
exten => s,1,Answer()
exten => s,2,Background(custom/entrada) ; Mensagem com instruções
exten => s,3,WaitExten(5) ; Aguarda entrada do usuário
; Opção 1 - Direciona para o ramal 100
exten => 1,1,Dial(SIP/100,20)
exten => 1,2,Hangup()
; Opção 2 - Direciona para o ramal 200
exten => 2,1,Dial(SIP/200,20)
exten => 2,2,Hangup()
; Timeout - Se o usuário não digitar nada
exten => t,1,Playback(por-favor-tente-novamente)
exten => t,2,Goto(default,s,2)
; Opção inválida
exten => i,1,Playback(opcao-invalida)
exten => i,2,Goto(default,s,2)
2. Adicionar o Arquivo de Áudio
A mensagem de atendimento precisa estar no formato correto. Salve o arquivo em:
/var/lib/asterisk/sounds/custom/entrada.wav
Se precisar converter um arquivo de áudio, use:
sox entrada-origem.wav -r 8000 -c 1 -e signed-integer /var/lib/asterisk/sounds/custom/entrada.wav
Ajuste as permissões para evitar problemas:
chown asterisk:asterisk /var/lib/asterisk/sounds/custom/entrada.wav
chmod 644 /var/lib/asterisk/sounds/custom/entrada.wav
3. Aplicar as Configurações
Depois de configurar tudo, recarregue o dialplan:
asterisk -rx "dialplan reload"
Agora, quando uma chamada entrar, o Asterisk tocará a mensagem e permitirá que o usuário digite 1 para o ramal 100 ou 2 para o ramal 200.
Com essa configuração simples, você já pode criar um autoatendimento funcional no Asterisk. Se precisar de mais opções, como transferência para URA mais avançadas, personalização de mensagens ou integração com banco de dados, é só expandir essa base!