P. 1
Asterisk

Asterisk

|Views: 115|Likes:
Artigo submetido ao SBRC
Artigo submetido ao SBRC

More info:

Published by: Mauro Tapajós Santos on Mar 20, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as ODT, PDF, TXT or read online from Scribd
See more
See less

03/20/2012

pdf

text

original

TelSL1 – Solução de telefonia sobre redes de dados para pequenas  corporações utilizando softwares livres

Celso Henrique Ribeiro, Rafael Antonio Souza Spotto, Mauro Tapajós Santos Curso de Bacharelado em Ciência da Computação Universidade Católica de Brasília (UCB) – Brasília, DF – Brasil
celsohr@gmail.com, rafaelspotto@uol.com.br, maurotapajos@gmail.com

Abstract: Nowadays functions offered by PSTN and Internet protocols development moves IT sector for building new VoIP applictions. Plain computer systems can make available functions commonly found on expensive public or private telephone switches or PABX. Now this article shows that is possible to build full PABX services upon a local IP network for users. In order to do this, Asterisk, a free software system developed in Linux which supports analog and digital technology, can be used to deal with VoIP protocols and calls routing between PSTN and data network. Here, Asterisk will be used as a PABX solution over local IP data network together with softphones running on workstations. Resumo: As atuais funcionalidades oferecidas pelo sistema telefônico e o desenvolvimento de protocolos Internet, estimulam o setor de TI a criar aplicações VoIP. Sistemas computacionais podem implementar diversas funcionalidades normalmente encontradas em centrais telefônicas privadas, que são caras e proprietárias. Pode-se disponibilizar sobre uma rede IP e com softwares livres, várias das funcionalidades encontradas no serviço de telefonia convencional. O Asterisk, um sistema em software livre desenvolvido em Linux e que integra tecnologia analógica e digital, pode fazer o controle completo do roteamento de chamadas e serviços suplementares usando os protocolos padrões VoIP. Aqui ele será usado como solução de PABX em rede local, juntamente com, softphones de distribuição livre rodando sobre estações de usuários.

1. Introdução
O sistema telefônico atual dispõe de diversas funcionalidades que facilitam a comunicação entre usuários e é marcado por enormes investimentos para implantação e manutenção. Na maior parte dos casos, são necessários altos investimentos, para fazer uso dessas vantagens, considerando a necessidade de aquisição e operação de centrais telefônicas que oferecem essas funcionalidades. Voz sobre IP-VoIP é uma tecnologia que cria a possibilidade de integrar aplicações de voz e dados numa mesma rede, facilitando a manipulação das informações, aumentando ainda mais a interatividade entre usuários do mundo inteiro, e reduzindo custos de gerenciamento e operação, quando comparado a ligações telefônicas interurbanas convencionais usando a PSTN. O Asterisk é um exemplo de sistema de telefonia digital via software, de plataforma livre, e que pela abrangência de recursos, pode ser uma alternativa.

Considerado um software maduro e estável, possui recursos suficientes que permitem substituir o PABX existente ou complementá-lo com tecnologia VoIP. É um sistema que permite criar soluções de telefonia com vários ramais internos e funcionalidades avançadas, como caixa de mensagens, transferência de chamadas e resposta interativa de voz. Possibilita ainda, interligar servidores Asterisk em uma rede IP, permitindo ligações de longa distância sem usar a rede de telefonia pública. Além disso, este sistema pode se conectar a rede pública por meio de um hardware específico. Como objetivo do trabalho, foi proposta e implementada uma solução para implantação da tecnologia de Voz sobre IP numa rede Ethernet local de pequeno porte, utilizando o Asterisk, sem interligação com a rede pública de telefonia, explorando as diversas funcionalidades disponíveis em sua arquitetura.

2. Telefonia
A estrutura do sistema de telecomunicações evoluiu muito ao longo do tempo, passando de uma tecnologia puramente analógica para uma crescente utilização de sistemas digitais. A voz, que é de natureza analógica, precisa ser convertida em sinal digital para utilização em redes digitais, como redes TCP/IP por exemplo, e na recepção, o sinal precisa voltar a sua forma analógica. Para tanto, são utilizados os CODEC’s (Codificador/Decodificador). 2.1. Canais FXS e FXO Para promover a comunicação de um sinal de voz em codificação analógica, proveniente de um telefone convencional conectado a uma rede de dados, com a rede PSTN, é necessário utilizar uma interface física. Normalmente, essa interface é um hardware, por exemplo a placa Zaptel X100P, que apresenta porta(s) para telefones analógicos internos e porta(s) para a rede PSTN, respectivamente FXS e FXO. FXO – Foreign Exchange Office: é a porta utilizada para possibilitar a comunicação com um PABX ou com uma central telefônica da rede PSTN. FXS – Foreign Exchange Station: é a porta utilizada para possibilitar a comunicação com um telefone analógico. 2.2. Centrais Privadas de Comutação Telefônica (PABX) Centrais Privadas de Comutação Telefônica – CPCT, são centrais que podem ser utilizadas por qualquer entidade onde o tráfego telefônico interno se caracteriza por volumes consideráveis e o custo de usar uma grande quantidade de linhas externas se torna indesejável. Estas centrais são conhecidas também por PBX (Private Branch Exchange), de operação manual e PABX (Private Automatic Branch Exchange), de operação automática, que podem estar interligadas ou não a uma central de comutação da Rede Pública de Telefonia – PSTN [2]. O PABX se liga a PSTN por um determinado número de linhas ou troncos, dispondo de linhas internas (ramais) em quantidade superior ao número de troncos. A

grande vantagem do PABX é o seu menor custo de operação quando comparado com a utilização direta da rede pública, por não haver tarifação das chamadas internas e por demandar menor número de linhas/troncos que o número total de terminais atendidos [2]. O PABX pode utilizar tanto a comutação analógica como a digital, e desta forma tratar adequadamente chamadas de terminais e canais analógicos ou digitais, codificando o sinal de acordo com o desejado e encaminhando para o caminho especificado. Atualmente, programação computacional é utilizada nestas centrais, com o objetivo de controlar chamadas e integrar novos serviços e funcionalidades. O custo de aquisição de um PABX privado ainda é alto, apesar das reduções provocadas pela evolução digital. Contudo, centrais programadas em software de distribuição livre, como o Asterisk, podem ser implementadas junto com equipamentos multimídia (placa de som, fone e microfone), softphones também livres e hardwares adequados aos canais analógicos ou digitais, exigindo investimentos menores e favorecendo o uso dos serviços e funcionalidades avançados. 2.2.1. Funcionalidades do PABX O PABX é considerado uma evolução do PBX. Pode gerenciar as comunicações de voz dentro de uma empresa, concentrando várias linhas e ramais de colaboradores, oferecendo uma série de facilidades e serviços avançados, como transferência de chamadas, chamada em espera e resposta interativa de voz-IVR. Pode também gerar informações das chamadas, para fins de controle, bilhetagem e tarifação.

3 – Voz sobre IP – VoIP
Um dos mais relevantes problemas que dificultam a popularização da tecnologia VoIP, é a obtenção de uma sinalização compatível com as redes existentes e que supra as necessidades emergentes de interconexão. Uma solução única e unanimizada ainda ainda não foi definida, mas algumas já existem: H.323, SIP e MGCP. A definição de qual arquitetura usar deve considerar as características de cada uma e a situação em questão. Será visto no ítem 5, a análise feita sobre o protocolo que se adequa às situações de uso do Asterisk. Contudo, é relevante destacar alguns pontos dos dois conjuntos de protocolos de sinalização VoIP mais importantes, descritos na Tabela 1:
Tabela 1 – Comparação das arquiteturas Sip e H.323
Aspecto SIP Documento de 128 páginas, o que reflete mais simplicidade. H.323 Documento de 736 páginas, o que reflete maior complexidade para implementação.

Apenas 37 tipos de cabeçalhos de mensagens diferentes. Complexidade Formatação textual, facilitando o entendimento visual rápido do tráfego.

Faz uso de centenas de mensagens. Formatação binária.

Realiza as operações de forma única para tratamento da uma mesma tarefa.

Sua completa interoperabilidade exige a definição de funcionalidades por perfil.

Escalabilidade

Novas características podem ser incluídas de forma fácil e compatível com as versões anteriores. Aceita codecs de áudio e vídeo livres, reconhecidos pelo IAB. Pode trabalhar nos modos statefull ou stateless. No segundo caso, o desempenho não sofre interferência por não ter que armazenar o estado das chamadas.

Existem algumas predefinições para futuras inclusões. Codecs devem ser padronizados pelo ITU, proprietário ou padrão. É stateful, ou seja, mantém o estado das chamadas. Uma grande quantidade de chamadas simultâneas, pode provocar baixa performance.

Performance Conferência ocorre de forma distribuída pelos participantes, sem a necessidade de um equipamento centralizador. Facilidade de transferências, conferências e encaminhamento de chamadas. Operabilidade Suporta operação de gateway entre segmentos de redes diferentes, possibilitando tradução de protocolo de sinalização e mídia. Conferências usa obrigatoriamente a MCU, que centraliza toda sinalização e pode ser um “gargalo”. Facilidade de transferências, conferências e encaminhamento de chamadas. Também suporta operação por gateways.

4. Asterisk
Dentre os sistemas em software livre existentes atualmente que provêem aplicações de telefonia digital, o Asterisk se destaca por integrar tecnologia analógica e digital para transporte de voz e dados, utilizando eficientemente os protocolos VoIP, sendo considerado uma atraente alternativa para PABX em software [3]. É distribuído sobre os termos da licença GPL (GNU Public Licence) [4]. Desenvolvido, primeiramente, pela empresa Digium [5], sua principal patrocinadora, sendo Mark Spencer, seu principal criador e mantenedor. Além das arquiteturas VoIP apresentadas, o Asterisk também suporta o IAX. O IAX (Inter-Asterisk-Exchange) é um protocolo que provê controle e transmissão de streaming media, incluindo vídeo, mas foi primeiramente desenvolvido para o controle de chamadas de voz sobre IP. Os principais objetivos do protocolo IAX são: minimizar a largura de banda usada para controle e transporte de mídia com ênfase em chamadas de voz e prover suporte nativo para transparência em NAT (Network Adress Translation). IAX é um protocolo de mídia e de sinalização peer-to-peer. Isto significa que os endpoints mantém máquinas de estado com as operações do protocolo. Os componentes de sinalização trabalham no modo cliente-servidor, como o SIP. Com respeito ao transporte de mídia, o controle de sequência e de temporização estão incluídos nos frames do IAX, que não usa o RTP (Real-time Transport Protocol). O IAX é um protocolo aberto e não separa o controle de sinalização e o tranporte da mídia, ele faz isso sozinho, diferente dos outros protocolos que usam RTP/RTCP para o transporte da mídia. O transporte da mídia e a sinalização se faz utilizando a mesma porta UDP (User Datagram Protocol). Por causa disso, ele não sofre de problemas com NAT. Alé disso, permite que múltiplos streams de mídia possam ser representados com

um único cabeçalho, reduzindo consideravelmente o overhead. Possui bibliotecas com funções de telefonia que fazem o controle completo do roteamento de chamadas. Dentre outras funcionalidades, como um PABX convencional, oferece correio de mensagens integrado de voz e dados, filas de chamadas onde agentes  atendem as chamadas e monitoram a fila, conferência de chamadas, música em espera  na fila com MP3, registro detalhado de chamadas (CDR ­ call­detail­records) e resposta  interativa de voz. Por meio da parceria da empresa Digium e do projeto Zapata [6], conduzido por Jim Dixon, também foi possível investir em hardware de telefonia de baixo custo, permitindo que o Asterisk possa ter um hardware específico para sua interligação com a rede púbica de telefonia PSTN. O Asterisk pode ser usado nos seguintes contextos:  Soluções   de   telefonia   em   redes   de   dados   locais   (como   Ethernet)   com  protocolos VoIP H.323, SIP, IAX e MGCP, em conjunto com  SoftPhones  e/ou  HardPhones, sendo estes equipamentos ou softwares que realizam as  funções de telefone neste tipo de solução. Tornar   viável   conexões   de   uma   rede   local   VoIP   com   a   rede   pública   de  telefonia ou com um PABX, por meio de placas específicas que provêem  canais  analógicos  ou digitais. O Asterisk oferece suporte a estes tipos  de  placas. Conectar­se   à   provedores   de   serviço   de   telefonia   VoIP,   como   o  FreeWorldDialUp, que é uma provedora de serviços de voz em tempo real  de alto desempenho utilizando comunicação IP por meio da Internet. [7].  Possibilita conectar vários escritórios em várias localidades diferentes, por  uma rede privada de dados ou pela Internet, através de conexões seguras.

4.1. Principais funcionalidades As principais funcionalidades do Asterisk são:   Interligação com a PSTN: o Asterisk tem suporte a placas que provêem canais físicos ISDN E1 e T1, FXO e FXS. CDR ­ Call­Detail­Records – Registro detalhado de chamadas: tem  capacidade de registrar todas chamadas que são realizadas. Armazena  duração da chamada, número de origem, destino, data e hora. Interligação de Servidores Asterisk: permite a interligação de um ou mais  servidores, aumentando a abrangência do sistema de telefonia. Conferência: pode­se configurar salas de conferência, onde usuários podem  se logar e falar com todos usuários logados.

 

DAC – Distribuição Automática de Chamadas em Filas de Espera:  permite configurar filas de espera e distribuir as chamadas entre os membros  de uma organização ou agentes específicos para atendimento. Música em espera: pode­se configurar uma ou mais músicas para chamadas  que entram na fila de espera. IVR – Resposta de voz interativa: permite criar menus interativos de voz, onde clientes podem ser encaminhados para telefones ou setores específicos. Integração com banco de dados: pode fazer conexão com banco de dados para configuração dinâmica do plano de discagens, tarifação (billing) e gerar estatísticas. Caixa de mensagens unificada de voz e texto: tem caixa de mensagens de  voz poderosa, onde usuários podem configurar mensagem de ocupado e  indisponível e aplicações para ouvir suas mensagens ou encaminha­la para  outro usuário. Ainda se pode configurar um correio eletrônico para que as  mensagens de voz possam ser encaminhadas. Transferência de chamadas: permite transferir uma chamada para outro  telefone. Estacionamento de chamadas: permite parar uma chamada em um telefone  para poder atender em outro.

  

 

4.2. Arquitetura O Asterisk funciona essencialmente como um middleware, conectando as tecnologias de telefonia na base e as aplicações de telefonia no topo em uma visão externa [3], como mostra a Figura 1. Tecnologias de telefonia podem ser digitais usando protocolos VoIP, canais ISDN do tipo T1, E1, PRI e BRI, e analógico como PSTN. Aplicações de telefonia incluem distribuição automática de chamadas, conferência, caixa de mensagens, atendimento automático.

Figura 1 – Visão externa do Asterisk

4.2.1. Arquitetura interna Quando o Asterisk é inicializado, o DML (Dynamic Module Loader) lê e inicializa cada um dos drivers que disponibilizam canais, formatos de arquivo, detalhamento de chamadas, CODECs, e liga com as API's internas [3]. Então, o Switching Core PBX, o núcleo comutação, começa a aceitar chamadas das interfaces e tratá-las de acordo com o dialplan (plano de discagens), usando as aplicações para chamar telefones, conectar com a caixa de mensagens, fazer conexão com troncamento externos, entre outros. O Core provê um Scheduler (Agendador) e um Gerenciador de I/O para que as aplicações e os drivers possam usar [3]. Além disso, existe o Code Translator, com a função de tradutor que permite usar canais com codificadores e decodificadores (CODECs/DECoder) de diferentes tipos para que usuários possam falar um com o outro. A maioria das funcionalidades que se pode tirar proveito vem dos canais, CODECs, aplicações, formato de arquivos e varias interfaces de programação, assim como mostra a Figura 2.

Figura 2 – Arquitetura interna (core) do Asterisk

4.3. Canais, codecs e protocolos Os canais, codecs e protocolos suportados pelo Asterisk são. 4.3.1. Canais Canais são conexões lógicas com vários tipos de sinalização e caminhos usados para conectar chamadas. Eles podem ser físicos FXS, FXO, PRI, BRI, T1 e E1, providos por placas. Podem também ser baseados em softwares, com alguma combinação de CODEC com protocolo de sinalização, por exemplo GSM com SIP ou G.711 com IAX [11]. O Asterisk suporta vários tipos de hardware que provêem canais físicos, como placas ISDN e placas de canais T1/E1 disponíveis no mercado. 4.3.2. Codecs CODEC(COder/DECoder), é um software codificador dos sinais da voz, para que

o sinal possa ser transmitido digitalmente. A Tabela 2 mostra os CODECs que o Asterisk suporta:
Tabela 2 – CODECs suportados pelo Asterisk CODEC G.711 G.726 G.723.1 G.729 GSM iLBC Speex Bitrate (Kbps) 64 16, 24 ou 32 5,3 ou 6,3 8 13 13,3 ou 15,2 2,5 à 22,4 Requer Licença Não Não Sim Sim Não Não Não

4.3.3. Protocolos Os principais protocolos VoIP, que definem a sinalização de uma chamada, como o estabelecimento e encerramento de uma comunicação, registro e autenticação de usuários e sinalização acústica de serviços avançados, como tom de discagem, tom de chamada, tom de número inacessível, tom de aviso de chamada em espera e tons de programação e o tráfego real de voz dogotaçizada são suportados pelo Asterisk [3]. Além dos protocolos padrão SIP, H.323, IAX e MGCP, o asterisk tem suporte também a protocolos proprietários, como o SCCP (Cisco Skinny) e o UNISTIM, protocolo da Nortel. 4.4. Plano de discagens O plano de discagens é a peça mais importante na configuração do Asterisk. O arquivo responsável por sua configuração é o extensions.conf. Ele controla como todas as chamadas de entrada e saída são encaminhadas e manuseadas. Ele consiste em um conjunto de contextos, cada contexto consiste em um conjunto de extensões. Cada extensão é uma instrução para que o Asterisk possa tomar uma determinada decisão em relação à um chamada de entrada ou saída. Quando o Asterisk recebe uma chamada, de entrada ou saída, esta chamada pertence a um contexto. A qual contexto a chamada pertence, depende de qual canal a chamada foi originada. Um contexto é configurado para cada canal. Os contextos podem ser usados para implementar um número importante de recursos, incluindo:  Segurança: controle de acesso a ligações de longa distância;  Roteamento: rotear chamadas baseadas em uma extensão;  Auto-atendimento;  Menus multicamada: um menu para cada setor de uma empresa, por exemplo;  Autenticação: pedir por senha para certas extensões;  Decisões baseadas em horário;  Permite criar macros: funções para aplicações normalmente usadas;  Permite o uso de variáveis;  Permite o tratamento de strings.

5. Solução para PABX local
A definição do ambiente para implantação de uma rede VoIP, passa por algumas etapas, considerando os passos necessários para elaboração da rede e os recursos disponíveis. Uma solução de telefonia para pequenas corporações sobre uma rede de dados com software livre é um caso de uso aplicável no mercado atualmente. Por isso, a solução implementada, pretende criar um ambiente real de funcionamento de um sistema de telefonia. As etapas envolvidas nesse processo, devem contemplar desde levantamento de requisitos do ambiente, análise dos requisitos, elaboração da solução até testes e manutenção. Assim, foi escolhido um ambiente de pequeno porte, caracterizado por poucos computadores conectados em uma rede local Ethernet, com a finalidade de validar o funcionamento do sistema e sua ampla quantidade de funcionalidades. 5.1. Motivação Pequenas corporações, geralmente utilizam um PABX proprietário para prover ramais e conexão com a rede pública de telefonia (PSTN). Esse sistema é caracterizado por ter um alto custo de implantação, provocado pelo custo dos equipamentos utilizados, e pelo alto custo operacional. As pequenas corporações normalmente possuem uma rede de dados para o desenvolvimento de suas atividades. Estas redes, na maior parte dos casos, podem agregar o serviço de telefonia IP. Com esse intuito, são mostrados cenários onde o Asterisk funciona como provedor do serviço de PABX em software.

5.2 – Ambiente Montado
A Figura 3 mostra como foi montado o ambiente com rede local Ethernet 100, um servidor Asterisk sobre distribuição Debian Sarge com processador de 2.4GHz e RAM de 512MB, além de quatro estações cliente com telefones VoIP: 3 Linux e 1 Windows. Acesso à Internet também foi disponibilizado junto com os serviços DHCP e DNS.

Figura 3 – Ambiente de caso de uso

Todas as estações eram baseadas em softphones. Os softphone propostos foram: • Softphone IAXComm para protocolo IAX • Softphone X-Lite para protocolo SIP

Softphone GnomeMeeting para protocolo H323

Em função de melhor dsempenho e funcionalidades. O endereço IP das estações com Softphones podem ser dinâmicos permitindo que um usuário possa se logar no servidor de qualquer estação que possua um Softphone instalado. 5.3. Análise do protocolo VoIP Para escolher a arquitetura de protocolos para o servidor Asterisk é preciso analizar critérios como:  Nível de funcionalidades suportadas pelo servidor;  Habilidade de trabalhar com a topologia NAT (Network Adress   Translation);  Segurança;  Uso de banda passante. O protocolo SIP foi projetado pela IETF (Internet Engineering Task Force) para interoperar com as aplicações da Internet existentes, implementando a sinalização VoIP de maneira consistente O Asterisk tem um suporte maior para este protocolo do que para MGCP e H.323 [13]. O IAX tem a capacidade de diminuir o uso de banda passante porque tem a habilidade de juntar multiplas sessões em um único fluxo de dados. Isso permite que múltiplos streams de mídia possam ser representados com um único cabeçalho de datagrama, diminuindo consideravelmente o overhead na rede. Além disso, ajuda a diminuir a latência e reduzir processamento, possibilitando um número maior de canais na rede [12]. O H.323 controla todas as chamadas através de um gatekeeper. Para trabalhar em um rede que implementa NAT, é preciso ter um proxy rodando como gatekeeper. O Asterisk não pode agir como um gatekeeper H.323, precisando usar uma aplicação a parte para esta tarefa, conforme [12]. 5.4. Análise do Codec Numa rede corporativa é importante diminuir a sobrecarga da rede de dados e usar CODECs que ocupam menos largura de banda. Além disso é preciso avaliar a qualidade da voz. Para escolher um CODEC é preciso avaliar, principalmente, os critérios de largura de banda e qualidade da voz. É importante ressaltar que é recomendado padronizar um CODEC apenas para a rede inteira, para que não hajam problemas com a qualidade da voz e não sobrecarregue o servidor com tradução entre CODECs diferentes. Dentre todos os CODECS, três tem destaque para uma rede de dados corporativa: GSM, iLBC e Speex, porquê ocupam pequena largura de banda e são públicos (livres). 5.5. Descrição das funcionalidades implementadas na solução O ambiente utilizado para implantar a rede VoIP, é configurado com quatro computadores. O sistema será dotado de algumas funcionalidades descritas nos próximos

itens, que possibilitam a operação satisfatória do ambiente corporativo definido, cabendo descrever dois casos de uso básicos: Caso de Uso 1: “Uma chamada é recebida por um colaborador de determinado departamento, tocando seu terminal, cujo número corresponde ao informado pelo emissor. Se o receptor atender o chamado, a conexão será estabelecida e o diálogo ocorrerá. Caso não atenda, a chamada será direcionada para a caixa de mensagem do terminal receptor, onde quem originou a chamada será orientado a deixar uma mensagem, que por sua vez será enviada para o endereço eletrônico do receptor.“ Caso de Uso 2: “O emissor fará uma chamada para o departamento. A chamada será direcionada para um menu de voz. Ao término da mensagem o emissor deverá informar o número que correponde ao receptor desejado. Caso não disque nenhuma opção, é encaminhado para a fila de espera de chamadas, onde escutará uma música em espera até que um membro o atenda.” 5.5.1. Telefones VoIP nas estações Existem duas situações usando Asterisk. Em uma situação, os pacotes com a voz codificada, podem ser configurados para passar pelo servidor, Na outra, a mídia pode ser configurada para não passar pelo servidor, apenas a sinalização para estabelecer uma chamada. Se a mídia não passar pelo servidor Asterisk, não há possibilidade de sobrecarregá-lo, porém, perde três funcionalidades: não registra os tempos de duração das chamadas; assim que uma chamada é estabelecida o servidor deixa de monitorá-la, impossibilitando a tarifação, a transferência e o estacionamento de chamadas somente são possíveis se a mídia passar pelo servidor. Há dois tipos de configurações de telefone: uma configuração global e um configuração específica para cada um. Pode-se configurar um telefone apenas para realizar chamadas (users), apenas para receber chamadas (peers) ou os dois (friends). Foi configurado uma senha para cada usuário e um número para caixa de mensagens. Todos telefones devem ser configurados para serem utilizados por um contexto no plano de discagens. Os arquivos de configuração para os telefones telefones, são: sip.conf, iax.conf, h323.conf e mgcp.conf. As principais aplicações que o Asterisk utiliza para telefones são:  Dial(telefone) – Toca um telefone  Answer() - Atende um telefone  Hangup() - Desliga a chamada 5.5.2. Caixa de mensagens de voz e dados unificada É permitido configurar uma caixa de mensagens de voz para cada usuário, quando este está ocupado ou indisponível. O telefone emissor após gravar uma mensagem, tem como possibilidade realizar as seguintes ações: aceitar; revisar, regravar ou ir para a telefonista.

No arquivo de configuração de caixa de mensagens, é configurado uma senha de acesso e um correio eletrônico para que as mensagens de voz possam ser encaminhadas. As mensagens de voz podem ser gravadas em um dos três formatos: wav, gsm e wav49, sendo o formato gsm o que ocupa menos espaço em disco, seguido do wav49 e wav, conforme [11]. Qualquer usuário que quiser acessar sua caixa de mensagens deve ser orientado a discar no número escolhido pelos administradores do servidor Asterisk. O número escolhido neste projeto foi o 9000. Discando para esse número o usuário ouvirá uma voz orientando a discar o número da sua caixa de mensagem e senha. As principais aplicações utilizadas pelo Asterisk neste item são:  Voicemail (número de correio) - Encaminha para a caixa de mensagens.  VoicemailMain () - Para acessar a caixa de mensagens e configuração de mensagens de voz. 5.5.3. Resposta de voz interativa - IVR A resposta de voz interativa, conhecida em inglês como IVR (Interactive Voice Response), são menus de voz que permitem que chamadas possam ser encaminhadas para um determinado usuário, um determinado setor de uma corporação ou ainda pode ser encaminhada para fila de espera. Foi criado um menu de voz para que quando um usuário ligue para o número de determinado departamento com mais de um telefone, ouvirá as opções que foram definidas conforme a seguinte mensagem de entrada: “Você ligou para o CESMIC, disque 1 para falar com Mauro Tapajós, disque 2 para falar com Eduardo Lobo, disque 3 para falar Raissa“. O sistema é configurado para espera alguns segundos até que uma opção seja informada. O número discado encaminhará a chamada para o destino informado e fará tocar o telefone desejado. As principais aplicações utilizadas pelo Asterisk neste item são:  Wait (segundos) – Espera por tantos segundos.  Record (nome da mensagem) - Grava uma mensagem.  Playback (mensagem) - Toca uma mensagem.  GoTo () - Vai para um determinado lugar de um contexto. 5.5.4. Registro detalhado de chamadas e tarifação O registro detalhado de chamadas é uma funcionalidade que o Asterisk tem que pode ser configurada para registrar as chamadas em arquivo de texto comum ou fazer conexão com banco de dados e registrar em tabelas. O Asterisk tem suporte ao banco de dados PostgreSql diretamente, sem usar um drive ODBC e tem suporte a outros bancos de dados usando um driver ODBC. É registrado quem efetuou a chamada, o receptor, a duração, o protocolo, o canal, entre outros. Uma vez habilitada essa funcionalidade, o servidor registra automaticamente todas chamadas que passam por ele. Quando a mídia não passa por ele, a duração da chamada não é registrada. A tarifação somente é possível quando é configurado uma conexão com banco de

dados. A partir daí, aplicativos podem fazer cálculos sobre duração de chamadas e tarifar. Um exemplo de aplicativo é o Asterisk-stat [14], que gera gráficos e faz consultas no banco de dados. 5.5.5. Conferência Para o uso da conferência e de música em espera é preciso de um temporizador. Placas Zaptel provêem esse temporizador. Quando não é possível ter uma placa, é possível usar um temporizador através do módulo usb : uhci-hcd usado no Linux para gerenciar portas usb. Para tanto é preciso compilar um módulo chamado “ztdummy“, um driver que pode ser compilado junto ao código-fonte dos drivers da Zaptel. Para conseguir os código-fonte desse módulo é preciso baixá-lo do CVS da empresa Digium. Uma vez configurado esse módulo e ele em funcionamento é possível configurar salas de conferência. As salas são referenciadas por um número e uma senha de acesso. Caso o usuário queira entrar na sala, ele deve discar para o número referenciado no plano de discagens e então é orientado a discar a senha de acesso. Caso confirmada, o usuário entra na sala e fala com todos os usuários que estiverem nela. A principal aplicação utilizada pelo Asterisk é neste item é:  MeetMe (sala de conferência) – Encaminha o usuário para uma sala de conferência. 5.5.6. Música em espera Também com o auxílio do módulo ztdummy, a música em espera pode ser configurada para usuários que são encaminhados para filas de espera e pode ser configurada para tocar durante um tempo pré-definido. Enquanto está na fila de espera, o usuário ouve uma música configurada ou várias músicas em seqüência, até que um membro da organização ou um agente atenda a ligação. O aplicativo padrão que o Asterisk usa para tocar músicas é o mpg123 [15], porém pode ser configurado outro aplicativo. Como foi o caso deste projeto que usou o Madplay. As principais aplicações utilizadas pelo Asterisk neste item são:  WaitMusicOnHold (segundos) - Ouve uma música em espera por um determinado tempo.  MP3Player (arquivo) – Toca uma música em MP3. 5.5.7. Distribuidor automático de chamadas em filas - DAC Filas de espera podem ser configuradas no plano de discagens para que um usuário possa ser encaminhado. Enquanto espera o atendimento da chamada ele ouve uma música. Pode ser configurada uma fila para cada setor de uma empresa ou uma fila única para toda empresa. As chamadas que chegam na fila de espera podem são atendidas por membros que podem ser telefones comuns ou por agentes. Agentes são usuários específicos para atender chamada em fila de espera, como em call-centers.

Existem seis maneiras de se distribuir as chamadas para telefones ou agentes, infomrando a maneira desejada na diretiva strategy do arquivo de configuração queue.conf. 5.5.8. Transferência de chamadas A mídia tem que passar pelo servidor para que uma chamada possa ser transferida. Quando o usuário quer tranferir uma chamada, ele tem duas opções:  Usa o Softphone para transferir;  Usa o servidor para transferir; Com o Softphone, é preciso somente clicar no botão de transferência e digitar o número desejado e então o telefone de destino tocará. Com o servidor há dois tipos de transferência:   Transferência sem assistência;   Transferência com assistência; 5.5.9. Estacionamento de chamadas É usado para estacionar uma chamada. Auxilia quando um usuário está atendendo um telefone fora de sua sala. Ele pode estacionar a chamada em uma determinada extensão e quando se mover de volta a sua sala digita a extensão onde a chamada está estacionada e atende novamente. 5.5.10. Captura de chamadas A captura de chamadas funciona quando um telefone de outro usuário está tocando e se quer puxar esta chamada. Se digita uma determinada seqüência, como “*8“, e a chamada é capturada. 5.5.11. Interfaces gráficas para as funcionalidades Existem interfaces gráficas para o Asterisk fazer tarifação, configuração, gerenciamento, visualização de status, gerenciamento de call center , interfaces de uso, como mostra [16]. Neste trabalho, não foram utilizadas interfaces gráficas de configuração para o Asterisk.

6. Conclusões
O Asterisk é um sistema livre robusto, capaz de suportar diversas funcionalidades presentes em PABX de porte comercial. Com ele é possível fazer uso dos protocolos de suporte a VoIP para implantar sistemas de telefonia sob a rede de dados, e ainda permite utilizar as tecnologias existentes na rede pública de telefonia. Implementado sobre uma rede local de pequeno porte, permite criar uma ambiente com comportamento estável, confiável e seguro, integrando a rede de dados com rede digital de voz. Sua arquitetura provê interoperabilidade de clientes Linux e Windows. O Asterisk é capaz de reduzir significativamente o custo de implantação e operação de um sistema de telefonia quando comparado com tecnologias tradicionais de telecomunicações. Sua implantação em redes de pequeno porte exige baixos

investimentos, poucos recursos de hardware e software, pequena largura de banda disponível e conhecimento em rede de computadores para configurá-lo adequadamente. Este trabalho visou fornecer parâmetros de configuração da solução com Asterisk no papel de PABX dentro do contexto de uso numa rede local. Cabe acrescentar que o Asterisk é livre sob licença GPL e possui um razoável número de implementações funcionais suportado por uma comunidade visivelmente atuante.

Referências
[1] – JESZENSKY, Paul Jean Etienne. Sistemas Telefônicos. 1ª edição brasileira. 2004. [2] – PINHEIRO, José Maurício Souza. Centrais Privadas de Telefonia. Disponível em: www.projetoderedes.com.br/artigos, acessado em 05 dez. 2005. [3] – SPENCER, Mark, ALLISON, Mark e RHODES, Christopher. The Asterisk Handbook version 2 [4] – GNU, General Public License. Disponível em: <http://www.gnu.org/licenses/gpl.html> [5] – Digium, The primary developer and sponsor of Asterisk. Localizado em: http://www.digium.com [6] – Asterisk Documentation Project, The History of Zapata Telephony. Disponível em: <http://www.asteriskdocs.org/modules/tinycontent/index.php?id=10> [7] –Free World Dial UP, Communication for geeks by geeks. Disponível em: http://www.freeworlddialup.com [8] – Digium, Telephony for business. Wildcard TE410P. Disponível em: <http://www.digium.com/index.php? menu=product_detail&category=hardware&product=TE410P> [9] – Asterisk Brasil, A comunidade brasileira do Asterisk. Localizado em: <http://asteriskbrasil.org> [10] – Asterisk Documentation Project. Disponível em: http://www.asteriskdocs.org [11] – GONÇALVES, Flavio Eduardo Andrade. Asterisk PBX – Guia de Configuração. Disponível em: http://www.voffice.com [12] – MEGELLEN, Jim Van, SMITH, Jared, MADSEN, Leif. Asterisk – The Future of Telephony, O’Reilly. [13] – VoIP Wiki, A reference guide for all things VoIP. Disponível em: http://www.voip-info.org [14] – Asterisk-stat, CDR Analyser. Disponível em: <http://www.voipinfo.org/wiki/index.php?page=Asterisk+CDR+Areski+GUI> [15] – Real Time MPEG Audio Player for Layer 1,2 and Layer3. Disponível em: <http://www.mpg123.de> [16] – Asterisk GUI, Graphical Users Interfaces. Disponível em: <http://www.voip­

info.org/wiki/view/Asterisk+GUI>

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->