O Asterisk é um software específico para implementação de servidores de comunicação telefônica, como VoIP (Voice over Internet Protocol), PBX (Private Branch eXchange) e PABX (Private Automatic Branch eXchange) virtual, distribuído sob licença GPL (General Public License).
A solução foi criada em 1999 por Mark Spencer, engenheiro da computação americano, e originalmente designada ao sistema Linux. Hoje, o Asterisk é uma ferramenta bastante popular no mundo todo — fator importante para sua adaptação aos padrões brasileiros de numeração.
Ótimo, mas por que conhecer o Asterisk é importante para a carreira profissional? A minha resposta será baseada em números:
- 11 bilhões de dólares serão movimentados pelo VoIP móvel até 2024 (Statista)
- a economia relativa a custos com telecomunicações pode chegar a 90% para ligações internacionais (Tech.co);
- a quantidade de usuários de VoIP corporativos chegará a 350 milhões até 2020 (SpectrumVoIP); e
- espera-se que o mercado de Cloud PBX cresça mais de 20 bilhões de dólares até 2023 (MarketWatch).
Percebeu como a demanda por alguém que saiba lidar com essa tecnologia é grande? Então prepare-se para conhecer, instalar e configurar o Asterisk: uma das principais soluções disponíveis para este segmento!
Como funciona o Asterisk?
Sabemos que o Asterisk é um software livre e gratuito, voltado para fins de telecomunicações via VoIP. Mas, o que ele promete entregar ao usuário?
Imaginemos que você tenha um computador rodando alguma distro do Linux. Assim que o Asterisk é instalado e configurado na suposta máquina, o ambiente de trabalho passa a contar com uma plataforma de telecomunicações completa.
Por que estamos falando de uma solução completa? Porque o Asterisk oferece suporte a múltiplos protocolos abertos, tais como:
- Skinny Client Control Protocol (SCCP), da Cisco;
- Inter-Asterisk eXchange Protocol (IAX);
- Session Initiation Protocol (SIP);
- Media Gateway Control Protocol (MGCP); e
- H.323.
A seguir, explicarei a influência dos protocolos no funcionamento do Asterisk.
Como a solução funciona?
A interação entre o Asterisk e o PBX ocorre por meio de canais de conexão. Esses canais agem como controladores (drivers) que ligam os protocolos ao dispositivo de hardware usado para conectar à rede pública de telefonia comutada (Public Switched Telephone Network).
A partir daí os aparelhos telefônicos e o software se conectam a um canal online — destacando é realizada autenticação ou registro para que ramais disponíveis ao alcance sejam exibidos. Outro ponto interessante é que o Asterisk permite a recepção de conexões oriundas de outros servidores.
Dentro dos canais que acabo de mencionar há um arquivo de configuração. Nele, podemos criar contextos específicos que ampliam as funcionalidades da conexão, sobretudo por meio de automação. Este procedimento é conhecido como dial plan (plano de discagem).
Utilizando um dial plan, o usuário consegue programar ações para cada tipo de ligação ou ocorrência. Por exemplo, é possível bloquear chamadas de números indesejados (ou não identificável), transferir ligações para outro PBX do Asterisk e criar filas de chamadas gerenciáveis.
Vamos conhecer outras vantagens que os recursos do Asterisk proporcionam?
Quais as vantagens em utilizar o Asterisk?
Graças às funcionalidades e suporte oferecidos pelo Asterisk, o usuário é apresentado a diversos recursos que adaptam a telecomunicação tradicional (e analógica) aos tempos modernos. Abaixo, algumas possibilidades:
- fornecimento de voicemail integrado com as contas de e-mail dos funcionários (ou acesso via Web);
- implementação de música em espera (para chamadas na fila) a partir de streaming de mídia;
- conexão entre ambientes remotos usando VoIP ou a própria Internet;
- integração com sistemas de reconhecimento de voz;
- criação de URA (atendimento eletrônico);
- estabelecimento de conectividade entre trabalhadores remotos (home office, por exemplo) e escritório a partir de conexão de banda larga.
Em poucas palavras, o Asterisk transforma uma simples rede em um robusto sistema de comunicação — aproveitando, evidentemente, o enorme potencial da tecnologia VoIP. Agora, que tal aprendermos a instalar e configurar esta poderosa ferramenta?
Como instalar o Asterisk PABX?
Neste tópico, aprenderemos a instalar o Asterisk no Debian: uma das distribuições mais estáveis do universo Linux. Para isso, iniciaremos com o preparo do ambiente usando o comando apt-get.
apt-get install build-essential
Em seguida, instalamos os pacotes necessários:
apt-get install openssl libxml2-dev libncurses5-dev uuid-dev sqlite3 libsqlite3-dev pkg-config libjansson-dev
Pronto! Agora que os pacotes base foram instalados, prosseguiremos com o download e instalação do Asterisk na versão 16 (a mais recente até a data deste post).
cd /usr/src/ wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz
Feito o download, usaremos o comando tar para extrair o arquivo compactado.
tar -zxvf asterisk-16-current.tar.gz
Agora que o Asterisk foi extraído, navegue pelo diretório asterisk-16.0.0 usando o seguinte comando:
cd /usr/src/astrisk-16.0.0
Usaremos um script (install_prereq) que nos ajudará a obter pacotes que eventualmente estejam em falta e, com isso, alcançar os pré-requisitos de sistema.
./contrib/scripts/install_prereq install
Desta vez, utilizaremos o script ./configure para varrer o sistema em busca de arquivos e bibliotecas que estejam em falta.
./configure
Caso tudo ocorra dentro da normalidade, você receberá uma mensagem com a seguinte informação: “Menuselect build configuration successfully completed”. Prossiga acionando o comando make para receber a confirmação de que pode prosseguir com a instalação. Em seguida, acione o comando make install.
make make install
Decerto o instalador retornou uma confirmação de instalação, mais uma breve documentação de segurança. Não é mesmo? Ótimo. Então usaremos a seguinte sequência de comandos para instalação de arquivos de configuração:
make samples make config make install-logrotate
Concluído este procedimento o Asterisk está pronto para ser utilizado.
Como criar um dial plan no Asterisk?
Na hora de implementar o seu primeiro dial plan, é importante que saiba como usar as máscaras de discagem do Asterisk — metacaracteres utilizados para criação de regras.
O que se pode fazer com essas regras? Considerando que a criação de ramais implica linhas de códigos, o que leva a uma grande quantidade de texto a ser digitado, as máscaras (e as regras estabelecidas nelas) podem reduzi-la significativamente fazendo a simplificação da rota.
Para simples entendimento, acompanhe (abaixo) a tabela de caracteres aplicados nas máscaras do Asterisk.
X = representa qualquer dígito de 0 a 9.
Z = representa qualquer dígito de 1 a 9.
N = representa qualquer dígito de 2 a 9.
. = equivale a um ou mais dígitos.
[] = configura os dígitos a serem aceitos (os números são inseridos nos colchetes).
Com uso desses e outros comandos, o usuário pode, por exemplo, configurar ligações de emergência, aplicar critérios de discagem, configurar redirecionamentos etc. Abaixo, temos um exemplo de máscara para interurbano usando a dezena 28 como exemplo de código de operadora:
exten => _028ZZNXXXXXXX,1,Dial(dahdi/g3/${EXTEN})
Em suma, a gama de opções de configuração oferecida pelo Asterisk faz dele uma solução avançada para centrais telefônicas. Além disso, o software é gratuito e tem o seu código fonte disponível para que desenvolvedores tenham liberdade para aprimorá-lo.
E quanto a você: pronto para implementar o Asterisk para atender às demandas do mercado?
Caso tenha dúvida na hora de criar seu ambiente com um servidor LINUX rodando, assista essa aula completa aqui.
Até a próxima.