Projecto de VoIP

Página do " Asterisk, the Open Source PBX".
Página do "  X-Lite Softphone".
Livro "Asterisk: The Future of Telephony", 2ª Edição.
Livro "Asterisk: The Definitive Guide", 3ª Edição.


FAQ do Projecto de VoIP

Pergunta: posso usar o Asterisk em Windows?
Resposta: 
É possível correr o Asterisk em Windows numa máquina virtual Linux.
No servidor do laboratório está o Ubuntu 14.04 LTS (Long Term Support) com o Asterisk v11.7.0. Nesta versão, o vídeo funciona correctamente. Basta depois instalar os pacotes adequados do Asterisk. Para na máquina virtual ter simultaneamente acesso à Internet e comunicação em rede com o PC anfitrião Windows, recomenda-se a configuração de duas placas de rede virtuais: uma com "NAT" e uma com "Host-only Adapter".

Pergunta: Qual a melhor maneira de instalar o Asterisk em Linux?

Resposta: Em Ubuntu, com o comando "sudo apt-get update; sudo apt-get install asterisk" ou com um gestor de pacotes do Linux.

Pergunta: como posso arranjar mais ficheiros de som para o Asterisk?
Resposta1: nem todas as versões de Linux têm nos seus repositórios todos os pacotes de som disponibilizados com o Asterisk. Em http://downloads.asterisk.org/pub/telephony/sounds/  estão as versões mais recentes dos diferentes pacotes, que podem ser desarquivados manualmente para a directoria /usr/share/asterisk/sounds
Resposta2: o tradutor do Google sintetiza som com grande qualidade, em muitas línguas, carregando no botão do altifalante. É possível obter o ficheiro ficheiro mp3 correspondente, por exemplo em http://soundoftext.com/
Se o som do ficheiro mp3 ficar muito baixo, pode convertê-lo para outro formato. Por exemplo, instalando o "sox" com o comando "sudo apt-get install sox libsox-fmt-mp3" e convertendo com "sox ficheiro.mp3 ficheiro.gsm"

Pergunta: como posso reproduzir os ficheiros de som e vídeo do Asterisk?
Resposta: a melhor forma é com o X-Lite e com o Asterisk. Os ficheiros de som .gsm também podem ser reproduzidos em Linux com o comando "play <ficheiro>" e em Windows com o VLC media player ou QuickTime player, por exemplo. Os ficheiros de som .wav podem ser reproduzidos com quase qualquer media player. Os ficheiros de vídeo .h263 podem ser reproduzidos com versões recentes do VLC media player (v2.x, por exemplo).

Pergunta: O Asterisk diz-me: (ficheiro) Not found (Permission denied).  Porquê? O ficheiro existe!
Resposta: Isso deve ser um problema de permissões de acesso ao ficheiro. Geralmente o Asterisk está a correr como utilizador "asterisk", pelo que o ficheiro deve ter permissão de leitura para todos os utilizadores, para que possa ser lido pelo Asterisk. As pastas devem ter permissão de leitura e execução (pesquisa de ficheiros) para todos os utilizadores. Se quiserem escrever num ficheiro, ou pasta, é necessário dar permissão de escrita a todos os utilizadores. Podem ser usados comandos do tipo:

sudo chmod 644 /path-to-file/filename.ext
sudo chmod 755 /path-to-file
sudo chmod -R a+r /path-to-file

O primeiro comando dá permissão de leitura a um ficheiro. O segundo dá permissão de leitura e pesquisa numa pasta. O terceiro dá permissão de leitura a todos os utilizadores a tudo o que estiver numa pasta e recursivamente para as subpastas dela.


Pergunta: Como manter valores de chamada para chamada? É necessário gravá-los em ficheiro ou numa base de dados?
Resposta: Pode-se assumir que o Asterisk está a correr em permanência e usar variáveis globais para manter valores de chamada para chamada. Para consultar a forma de definir e manipular variáveis globais, sugere-se consultar a secção "Using variable" p. 135 (p. 163 do pdf) e seguintes da 2a Edição do Livro do Asterisk, bem como no apêndice B a sintaxe das funções Set() (e SetGlobalVar() se necessário).

Pergunta: como posso testar a ligação entre 2 telefones só com um único PC?
Resposta: É possível ter 2 softphones diferentes no mesmo PC, havendo partilha de microfone e altifalante. Não é possível partilhar a webcam, pelo que não dá para testar chamadas de vídeo. É possível ter 2 versões diferentes do X-Lite instaladas no mesmo PC (por exemplo a v3 e a v5), desde que durante a instalação se dê nomes de directorias de instalação diferentes.


Pergunta: porque é que às vezes não se recebe som dos telefones Cisco 7905G?
Resposta: os telefones Cisco 7905G não têm alta-voz propriamente dito, mas sim monitorização de som no seu altifalante. Se for activada a monitorização de som na tecla "SoundMonitor", o seu microfone é desligado. O fluxo de som continua a ser enviado, mas sem qualquer som.

Pergunta: posso usar o servidor do laboratório fora do laboratório?
Resposta: sim, desde que o servidor esteja ligado. Recomenda-se a utilização do programa MobaXterm para login remoto.  Mas se estiver a usar uma rede doméstica com NAT, a informação de que o softphone está atrás de um NAT tem de ser indicada no ficheiro sip.conf com a linha "nat=yes", caso contrário não conseguirá receber os fluxos de áudio/vídeo.

Pergunta: configurei a informação de presença e o X-Lite indica que os utilizadores da agenda estão online/ocupados/offline, mas se alterar o estado de presença manualmente no X-Lite, não acontece nada. Porquê?
Resposta: o X-Lite subscreve informação de presença do Asterisk, mas o Asterisk não encaminha as subscrições de informação de presença para os telefones destinatários de forma a ter essa informação directamente dos telefones respectivos. Assim, basta ter a informação que o Asterisk fornece directamente.

Pergunta: quando capturo o tráfego na interface host-only adapter, não me aparece o tráfego num dos sentidos (ou não aparece tráfego nenhum). Como resolvo?
Resposta: é um bug do host-only adapter em Windows que ocorre em alguns sistemas. A solução é instalar o Wireshark na máquina Linux onde está a correr o Asterisk e capturar aí o tráfego.

Attachments