Como Gravar Ligações no Asterisk

1. Habilitar Gravação de Ligações no Asterisk

Para começar a gravar ligações, você precisa ajustar algumas configurações no seu Asterisk. Vamos direto ao ponto.

Passo 1: Editar o arquivo de configurações do Asterisk

  • Abra o arquivo extensions.conf: sudo vi /etc/asterisk/extensions.conf
  • Encontre o contexto onde as chamadas são feitas (geralmente, isso estará em [default] ou em outro contexto de sua escolha).

Passo 2: Adicionar configurações de gravação no contexto

Dentro do seu contexto, adicione o seguinte comando para começar a gravar as ligações:

[default]
exten => _X.,1,Answer() 
exten => _X.,n,Set(MONITOR_FILENAME=/var/spool/asterisk/monitor/${UNIQUEID})
exten => _X.,n,MixMonitor(${MONITOR_FILENAME}.wav,b)
exten => _X.,n,Dial(SIP/1000)
exten => _X.,n,Hangup()

Aqui está o que cada linha faz:

  • Answer(): Atende a chamada.
  • Set(MONITOR_FILENAME=...): Define o caminho do arquivo onde a gravação será salva. Usamos ${UNIQUEID} para garantir que cada gravação tenha um nome único.
  • MixMonitor(): Inicia a gravação. O parâmetro b faz a gravação em formato .wav. Você pode mudar para .mp3 se preferir, mas o formato .wav é o mais simples.
  • Dial(SIP/1000): A linha de discagem, que pode ser ajustada para seu contexto e ramais.
  • Hangup(): Encerra a ligação.

2. Onde os Arquivos de Gravação Serão Armazenados

Por padrão, as gravações serão salvas em /var/spool/asterisk/monitor/. Você pode mudar o diretório para outro local, se preferir.

3. Configurações de Permissões

Certifique-se de que o Asterisk tenha permissão para gravar nesse diretório:

sudo chmod -R 777 /var/spool/asterisk/monitor

Se você estiver usando um servidor com várias permissões mais restritas, você pode querer ajustar isso para garantir que o usuário do Asterisk tenha permissões suficientes.

4. Verificando a Gravação

Depois que as ligações forem feitas, você pode acessar as gravações diretamente no diretório de monitoramento:

ls /var/spool/asterisk/monitor/

Cada arquivo gravado será nomeado com o UNIQUEID da ligação, seguido pela extensão .wav.

5. Customizando as Gravações

Se quiser personalizar ainda mais, como por exemplo, adicionar um prefixo ou sufixo no nome do arquivo, ou gravar apenas para determinadas extensões, você pode adicionar outras variáveis dentro da linha Set(MONITOR_FILENAME=...).

Exemplo para gravar apenas ligações de um ramal específico:

exten => 1000,1,Answer()
exten => 1000,n,Set(MONITOR_FILENAME=/var/spool/asterisk/monitor/1000_${UNIQUEID})
exten => 1000,n,MixMonitor(${MONITOR_FILENAME}.wav,b)
exten => 1000,n,Dial(SIP/1000)
exten => 1000,n,Hangup()

6. Testando e Concluindo

Agora, toda vez que a ligação for feita ou recebida no Asterisk, o áudio será gravado automaticamente. Basta testar ligando para o ramal configurado e verificar se o arquivo foi salvo corretamente.


Com isso, você tem um sistema de gravação de chamadas totalmente configurado no Asterisk de maneira direta e sem complicação. O básico está coberto, e qualquer ajuste ou personalização pode ser feito conforme sua necessidade!

Rolar para cima