57
UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS TECNOLÓGICAS CURSO DE ENGENHARIA DE TELECOMUNICAÇÕES IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM GATEWAY VOIP EDUARDO LUIZ DALPIAZ TOREZAN BLUMENAU 2006

IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

UNIVERSIDADE REGIONAL DE BLUMENAU

CENTRO DE CIÊNCIAS TECNOLÓGICAS

CURSO DE ENGENHARIA DE TELECOMUNICAÇÕES

IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM

GATEWAY VOIP

EDUARDO LUIZ DALPIAZ TOREZAN

BLUMENAU 2006

Page 2: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

EDUARDO LUIZ DALPIAZ TOREZAN

IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM

GATEWAY VOIP

Trabalho de Conclusão de Curso submetido à Universidade Regional de Blumenau para a obtenção dos créditos na disciplina Trabalho de Conclusão de Curso da faculdade de Engenharia de Telecomunicações.

Prof. Francisco Adell Péricas, Mestre - Orientador

BLUMENAU 2006

Page 3: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM

GATEWAY VOIP

Por

EDUARDO LUIZ DALPIAZ TOREZAN

Trabalho aprovado para obtenção dos créditos na disciplina de Trabalho de Conclusão de Curso, pela banca examinadora formada por:

______________________________________________________ Presidente: Prof. Francisco Adell Péricas, Mestre - Orientador, FURB

______________________________________________________ Membro: Prof. Fábio Rafael Segundo, Mestre, FURB

______________________________________________________ Membro: Prof. Adriano Peres, Doutor, FURB

Blumenau, 03 de julho de 2006

Page 4: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

Dedico este trabalho a todos que participaram, direta ou indiretamente na realização deste trabalho.

Page 5: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

AGRADECIMENTOS

À Deus, pelo seu imenso amor e graça.

À minha mãe e avó, que dispensaram minha presença nos fins de semana.

A minha namorada, que além do apoio, emprestou sua voz para que eu a usasse na

implementação deste trabalho.

Ao meu orientador, Francisco Adell Péricas, por ter acreditado na conclusão deste

trabalho e fornecido o hardware da Digium para os testes.

Page 6: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

Não basta conquistar a sabedoria, é preciso usá-la.

Cícero

Page 7: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

RESUMO

A utilização da telefonia IP tem crescido rapidamente. Com ela, a necessidade de novas

facilidades aos usuários, como correios de voz, atendimentos automáticos e conferências

também aumenta. Este trabalho trata da implementação destas funcionalidades a um gateway

de voz sobre IP, o Asterisk. Trás ainda alguns conceitos básicos como telefonia tradicional, o

linux e discorre brevemente sobre alguns outros modelos de gateways disponíveis no

mercado. Por fim, mostra detalhes de configuração e alguns exemplos de aplicação destas

funcionalidades.

Palavras-chave: Asterisk. Correio de voz. Servidor de conferências. URA.

Page 8: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

ABSTRACT

The use IP telephony has grown quickly. With it, the need of new facilities to the users, such

as voicemail, interactive voice response and conferences increases too. This paper shows the

implementation of those features into a VoIP gateway, the Asterisk. It also shows some basic

contents about traditional telephony systems, the Linux and some other gateways brands

available today. Finally, some configuration details and use examples of those features are

shown.

Key-words: Asterisk. Voicemail. Conference bridging. IVR.

Page 9: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

LISTA DE ILUSTRAÇÕES

Figura 1 – Operadora conectando ligações em uma mesa comutadora....................................15

Figura 2 – Componentes básicos do sistema telefônico ...........................................................16

Figura 3 – Rede telefônica IP. ..................................................................................................18

Figura 4 – Conversão da voz analógica em pacotes IP (bits)...................................................18

Figura 5 – Crescimento do tráfego de VoIP no mundo............................................................19

Figura 6 – O jitter é um dos principais problemas enfrentados pela voz em redes IP .............21

Figura 7 – Topologia básica do sistema a ser implementado ...................................................29

Figura 8 – Salas de conferência................................................................................................36

Figura 9 – Caixas postais do correio de voz.............................................................................40

Figura 10 – Interface gráfica para gerenciamento das mensagens ...........................................42

Figura 11 – Resultado do teste de verificação do sistema........................................................49

Figura 12 – Resultado do teste de navegação na URA.............................................................50

Figura 13 – Resultado do teste de mensagem no correio de voz..............................................50

Figura 14 – Resultado do teste de audição das mensagens no correio de voz .........................51

Figura 15 – Resultado do teste de URA e servidor de conferências ........................................52

Figura 16 – Resultado do teste da sala de conferências com líder ...........................................53

LISTA DE TABELAS

Tabela 1 – Comparação entre os principais codecs utilizados para VoIP. ...............................23

Page 10: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

LISTA DE SIGLAS

API – Application Programming Interface

FTP – File Transfer Protocol

IETF – Internet Engineering Task Force

IP – Internet Protocol

LAN – Local Area Network

MGCP – Media Gateway Control Protocol

MOS – Mean Opinion Score

PABX – Private Automatic Branch Exchange

PSTN – Public Switched Telephony Network

RTCP – Real-time Control Protocol

RTP – Real-time Transport Protocol

SIP – Session Initiation Protocol

SMS – Short Message Service

TDM – Time Division Multiplex

URA – Unidade de Resposta Audível

VoIP – Voice over IP

WAN – Wide Area Network

Page 11: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

SUMÁRIO

1 INTRODUÇÃO..................................................................................................................12

1.1 OBJETIVO........................................................................................................................13

1.2 ESTRUTURA DO TRABALHO ......................................................................................14

2 TELEFONIA......................................................................................................................15

2.1 TELEFONIA TRADICIONAL.........................................................................................15

2.1.1 Componentes...................................................................................................................16

2.2 TELEFONIA IP.................................................................................................................17

2.2.1 Breve Histórico ...............................................................................................................18

2.2.2 Qualidade da Voz............................................................................................................20

2.2.3 Protocolos........................................................................................................................21

2.2.4 Codecs .............................................................................................................................22

3 GATEWAY VOIP .............................................................................................................24

3.1 SOFTWARES GATEWAYS VOIP..................................................................................24

3.1.1 Asterisk ...........................................................................................................................24

3.1.2 Communigate ..................................................................................................................25

3.1.3 Siemens Hipath 5000 ......................................................................................................25

3.2 FUNCIONALIDADES DE GATEWAYS VOIP .............................................................26

3.2.1 Correio de Voz ................................................................................................................26

3.2.2 Servidor de Conferências ................................................................................................27

3.2.3 Unidade de Resposta Audível (URA).............................................................................28

3.2.4 Distribuição Automática de Chamadas (DAC)...............................................................28

4 DESENVOLVIMENTO DO TRABALHO.....................................................................29

4.1 REQUISITOS PRINCIPAIS DO PROBLEMA A SER TRABALHADO.......................29

4.1.1 URA ................................................................................................................................30

4.1.2 Correio de Voz ................................................................................................................30

4.1.3 Servidor de Conferências ................................................................................................31

4.2 REQUISITOS DE HARDWARE E SOFTWARE ...........................................................31

4.3 IMPLEMENTAÇÃO ........................................................................................................31

4.3.1 Instalação do Linux .........................................................................................................32

4.3.2 Asterisk ...........................................................................................................................33

4.3.3 Configuração Básica .......................................................................................................33

Page 12: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

4.3.4 Configuração do Servidor de Conferências ....................................................................35

4.3.4.1 Meetme().......................................................................................................................36

4.3.4.2 Arquivos de Configuração............................................................................................37

4.3.5 Configuração do Correio de Voz ....................................................................................39

4.3.5.1 Voicemail.conf..............................................................................................................39

4.3.5.2 Sip.conf.........................................................................................................................41

4.3.5.3 Verificando as mensagens de voz.................................................................................41

4.3.5.4 A aplicação voicemail () ...............................................................................................43

4.3.5.5 Arquivos de Configuração............................................................................................43

4.3.6 Configuração da URA.....................................................................................................45

4.3.6.1 Background() ................................................................................................................46

4.3.6.2 Goto()............................................................................................................................46

4.3.6.3 Dial().............................................................................................................................46

4.3.6.4 Arquivos de configuração.............................................................................................47

4.4 VALIDAÇÃO E TESTES.................................................................................................48

5 CONCLUSÕES..................................................................................................................54

5.1 EXTENSÕES ....................................................................................................................55

REFERÊNCIAS BIBLIOGRÁFICAS .................................................................................56

Page 13: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

12

1 INTRODUÇÃO

Não faz muito tempo que as telecomunicações, tanto voz como dados, bem como os

softwares, eram todos proprietários, controlados por um grupo seleto de empresas que

criavam as tecnologias e outro seleto grupo que podia usar estes produtos. Porém, com o

avanço tecnológico dos últimos anos e a globalização – que fez as empresas se espalharem

pelo mundo, estes sistemas antigos e “engessados” não têm atendido a necessidade das

empresas: comunicação em tempo real, para onde quer que seja e com baixo custo.

Isto se deve ao fato dos sistemas tradicionais usarem a comutação por circuitos, a qual

desperdiça boa parte das vias de comunicação das operadoras de telefonia. Estes sistemas

reservam um canal exclusivo para cada conversação em uso, encarecendo sua utilização.

Além do mais, sistemas de PABX (Private Automatic Branch Exchange) tradicionais,

com comutação por circuitos, são demasiadamente caros, limitados em funções e não

oferecem qualquer tipo de customização (quando oferecem, são inviáveis em termos

financeiros).

Em meados dos anos 90, um novo “mundo” começou a surgir nas telecomunicações: a

Internet e seu protocolo IP (Internet Protocol). No início, o IP foi visto apenas como uma

forma de se transmitir dados, com origens e destinos diferentes, por uma mesma linha de

comunicação, simultaneamente, compartilhando as vias de transmissão e o custo destas vias

com milhares de usuários. Esta tecnologia se chama comutação por pacotes.

Ainda na década de 90, percebeu-se que a comutação por pacotes poderia ser utilizada

para outras aplicações, como voz e vídeo, e não somente para a transmissão de dados entre

computadores. Mais precisamente em 1995, a Vocaltec, empresa sediada em Israel, lançou o

primeiro sistema VoIP (TECHWEB, 2006). Logo após, grandes fabricantes entraram neste

mercado e, desde então, novos equipamentos foram surgindo, com cada vez melhor qualidade

Page 14: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

13

de voz e mais funcionalidades. Entretanto, estes continuaram com as características básicas

dos sistemas de telefonia até então conhecidos: fechados, caros e pouco flexíveis.

No final do século passado, um programador americano, Mark Spencer, decidiu ir na

contra-mão das grandes empresas e criou um PABX totalmente aberto. Sua pretensão era

apenas criar um sistema para sua, até então, pequena empresa, que pudesse atender e

armazenar as chamadas não atendidas. Acabou fazendo uma revolução! Hoje o Asterisk é

uma das grandes promessas do software livre e está mudando os conceitos conhecidos em

telefonia: é totalmente aberto, extremamente flexível e gratuito.

Como qualquer software baseado na filosofia OpenSource, o Asterisk recebe milhares

de contribuições de programadores de todo o mundo diariamente. Estes ajudaram no

desenvolvimento de várias funções, entre as quais se destacam correio de voz, salas de áudio

conferências, unidades de resposta audível e atendimento automático.

O correio de voz é responsável por armazenar recados quando uma chamada não pode

ser atendida e avisar o usuário de destino sobre o acontecimento. As salas de áudio

conferência criam ambientes para “reuniões” por telefone. Já as unidades de resposta audível

atendem as ligações e, através de menus, as direcionam para os locais mais apropriados.

A implementação e entendimento destes serviços será o foco principal deste trabalho.

1.1 OBJETIVO

O objetivo deste trabalho é desenvolver um estudo acerca de algumas funcionalidades

avançadas em um gateway de voz sobre IP, mais especificamente o Asterisk. Apesar de pouco

complexas, estas funcionalidades permitem maior comodidade aos usuários do sistema, seja

atendendo ligações automaticamente, facilitando as audioconferências ou permitindo o

armazenamento de recados.

Page 15: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

14

Os objetivos específicos são:

a) implantar um servidor de conferências com suporte a diversas modalidades de

salas de conferência, entre elas segura com senha, treinamento e acesso livre;

b) configurar uma unidade de resposta audível, a qual será capaz de fazer a

navegação entre menus através das teclas pressionadas pelos usuários;

c) configurar um módulo de correio de voz, permitindo aos usuários deixar recados e

gerenciar as suas caixas postais através de aparelhos telefônicos.

1.2 ESTRUTURA DO TRABALHO

O trabalho está dividido em 5 capítulos, sendo o primeiro deles a Introdução que traz

um apanhado geral do assunto. O segundo capítulo trata das duas tecnologias interconectadas

por um gateway de VoIP: a telefonia tradicional, com o TDM, e a telefonia IP. No capítulo 3

são abordadas as formas e funções de um gateway, citando alguns modelos disponíveis no

mercado. Cita também algumas funcionalidades disponíveis em um gateway VoIP. O capítulo

4, por sua vez, apresenta de forma breve a instalação e configuração dos sistemas ligados ao

Asterisk e a validação do trabalho. Por fim, o quinto capítulo traz as conclusões chegadas a

partir deste trabalho.

Page 16: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

15

2 TELEFONIA

Este capítulo apresenta uma breve história da telefonia tradicional e de seus

componentes chegando a sua mais recente evolução: a telefonia IP.

2.1 TELEFONIA TRADICIONAL

Quando o telefone foi inventado, em 1876, a linha telefônica de cada assinante era

conectada diretamente a outro usuário individual. Este sistema era nada inteligente e de pouca

escalabilidade, pois para cada novo assinante que se desejasse contato, mais um circuito

deveria ser ligado a casa do usuário.

Por volta de 1877, surgiram as mesas comutadoras. Com estas, cada telefone não

necessitava ser ligado a outro telefone, mas sim apenas à mesa comutadora central. Quando

um indivíduo desejasse chamar alguém, ele tirava o telefone do gancho e solicitava ao

operador que conectasse sua ligação a determinado assinante.

Na Figura 1 é possível perceber como as ligações eram feitas: através de cordões de

manobra que conectavam os usuários entre si.

Fonte: Telecom (2006). Figura 1 – Operadora conectando ligações em uma mesa comutadora.

Page 17: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

16

2.1.1 Componentes

Podemos dizer que o sistema telefônico é composto de quatro componentes básicos: o

terminal, a central telefônica, a rede de acesso e a rede de transmissão.

Conforme Tude e Souza (2003), o terminal telefônico é o aparelho utilizado pelo

assinante, onde podem ser encontrados desde um único terminal a um sistema telefônico

privado, como um PABX, para atender uma empresa, por exemplo.

Sobre a rede de acesso pode-se dizer que é a responsável por interligar os terminais à

central telefônica pública. Normalmente são construídas com cabos metálicos, destinando um

par deste cabo para cada terminal. Existem equipamentos e materiais alternativos aos cabos

metálicos, como a fibra óptica e as redes sem fio, porém não serão detalhados, por não se

tratar do foco do trabalho.

A central telefônica, por sua vez, tem como função interconectar os diversos assinantes

entre si, substituindo as telefonistas que faziam este trabalho manualmente.

A rede de transmissão é a responsável pela interligação das diversas centrais

telefônicas, podendo ser física com, cabos coaxiais e fibras ópticas, ou ainda sem fio.

Fonte: O próprio autor. Figura 2 – Componentes básicos do sistema telefônico

Em meados de 1970, segundo Tude e Souza (2003), os sistemas analógicos

começaram a passar pela digitalização. Inicialmente os núcleos das centrais telefônicas foram

substituídos por microprocessadores, capazes de comutar muito mais assinantes.

Page 18: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

17

Ainda citando Tude e Souza (2003), com equipamentos digitais, foi possível evoluir os

métodos de sinalização, passando de sistemas onde a sinalização era feita no mesmo canal de

transmissão da voz para sistemas com uma rede de sinalização independente da voz, trazendo

inúmeros benefícios, principalmente na possibilidade de oferta de novos serviços.

2.2 TELEFONIA IP

Telefonia IP é uma proposta de mudança do paradigma da comutação de circuitos para

um cenário onde a comutação é baseada em pacotes.

Voz sobre IP, ou VoIP, é a tecnologia que permite a transmissão de voz em redes de

dados com protocolo IP. Desta forma, a voz é transformada como mais um serviço suportado

pela rede de dados.

A comunicação telefônica utilizando o VoIP apresenta muitas vantagens em relação a

telefonia tradicional, entre elas a redução de custos, visto que a tarifação de ligações VoIP não

é a mesma da telefonia tradicional, independendo da distância geodésica que os usuários se

encontram.

Outra grande vantagem é operar com comutação por pacotes, a qual aproveita melhor

os recursos de rede existentes, disponibilizando as vias não utilizadas para tráfego de outros

dados.

Na Figura 3 é possível verificar a topologia básica de uma rede com Voz sobre IP. Os

gateways ficam responsáveis pela interconexão da PSTN com a rede IP. Nas LANs IP é

possível a utilização de equipamentos que sejam compatíveis com o VoIP, como telefones IP,

centrais telefônicas IP, softphones e outros.

Na Figura 4 está ilustrado o processo de conversão da voz analógica – ondas

mecânicas em bits. Estes bits são então empacotados e enviados através da rede de dados.

Page 19: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

18

Este processo encontra-se detalhado em Hersent, Guide e Petit (2002).

Fonte: O próprio autor.

Figura 3 – Rede telefônica IP.

Fonte: Gonçalves (2005) Figura 4 – Conversão da voz analógica em pacotes IP (bits)

2.2.1 Breve Histórico

No início da década de 90, a Internet era ainda uma área restrita a usuários muito

avançados, onde não haviam as telas coloridas comuns de hoje. Nesta época, seu uso principal

era para troca de e-mails, bate-papo e, principalmente a transferência de arquivos via FTP

(File Transfer Protocol).

Então em 1993, veio a primeira revolução: a World Wide Web. A internet ganhou cores

Page 20: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

19

e começou a se popularizar, principalmente entre os estudantes. Nesta época surgiram

também os primeiros serviços com indexadores de endereços de páginas e ferramentas de

busca (entre elas o Yahoo!) (HERSENT; GUIDE; PETIT, 2002).

Por volta de 1996 a internet estava bem difundida entre os estudantes, porém ainda não

conseguia alcançar o mercado em massa. Nesta mesma época surgiram as primeiras tentativas

de se construir um gateway de telefonia via internet. Era um equipamento estranho, onde se

usavam placas de fax modem e multimídia (HERSENT; GUIDE; PETIT, 2002).

Apesar de grosseiro, seu potencial era imenso. Tanto que, algum tempo depois,

gigantes como a Cisco e a Nortel começaram a investir neste tipo de tecnologia. Esta entrada

no mercado foi o grande divisor na história, pois com ela surgiram hardwares com maior

qualidade de voz, menor custo e que exigiam menos poder de processamento das máquinas.

Aliada à evolução do hardware, a popularização da banda larga permitiu que o VoIP se

tornasse mais um fenômeno na internet, atingindo grande parte dos usuários de internet do

planeta, estimando-se em 16 milhões de usuários em 2005 e 55 milhões em 2009

(ESTADAO.COM.BR, 2006).

Fonte: Estadao.com.br (2006). Figura 5 – Crescimento do tráfego de VoIP no mundo.

Page 21: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

20

2.2.2 Qualidade da Voz

Em VoIP, diferentemente da telefonia tradicional, a largura de banda é compartilhada

com outras conversações e outras aplicações. Desta forma, caso a banda esteja ocupada a

transmissão terá que esperar até que haja capacidade para sua transmissão. Este é apenas um

dos problemas enfrentados pela voz em redes IP. Entre os principais se destacam:

a) delay: é o tempo decorrido entre o envio do dado de sua origem até a chegada ao

seu destino. Esse tempo é calculado somando-se todos os retardos que o pacote

sofre na rede, incluindo os tempos de enfileiramento, processamento e propagação

no meio de transmissão (SERRA, 2001). Segundo Spencer e Alison (2005) o delay

pode causar eco na transmissão e, quando maior que 500ms, a conversação perde

totalmente a interatividade;

b) jitter: é a variação do delay, como mostra a Figura 6. Esta variação pode ocorrer

devido a tempos de processamento diferentes nos equipamentos entre a origem e

destino dos dados, ou ainda por fatores como congestionamento de links e pacotes

que trafegam por caminhos diferentes. O jitter pode ser corrigido através de um

buffer que armazena alguns pacotes de dados e os libera conforme tempo normal

da voz. O buffer, entretanto, pode adicionar ainda mais atraso na rede;

c) perda de pacotes: uma rede IP não tem como garantir que os pacotes serão

entregues ao seu destino, podendo estes se perderem na nuvem. As perdas de

pacotes causam o efeito de picotamento nas ligações, e se forem maiores que 10%

acabam deixando esta incompreensível.

Page 22: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

21

Fonte: Hersent, Guide e Petit (2002)

Figura 6 – O jitter é um dos principais problemas enfrentados pela voz em redes IP

2.2.3 Protocolos

Conforme Hersent, Guide e Petit (2002), o mecanismo de suportar uma conexão VoIP

envolve uma série de transações de sinalização entre os pontos-finais (e os gateways entre

eles), terminando em dois fluxos de mídia, um para cada direção, os quais “carregam” a

conversação. Para gerenciar toda esta sinalização e fluxo, foram definidos diversos

protocolos. Os principais protocolos utilizados para sinalização no VoIP são:

a) SIP (Session Initiation Protocol): é um protocolo baseado em texto, desenhado

para iniciar, manter e terminar sessões de comunicação interativa entre usuários.

Tais sessões podem incluir voz, vídeo, chat, entre outros. Foi definido pelo IETF e

vem se tornando o padrão de fato em telefonia IP (GONÇALVES, 2005);

b) H.323: amplamente utilizado em voz sobre IP. Essencial na conectividade com

projetos mais antigos envolvendo roteadores e gateways de voz. O H.323 ainda é o

padrão fornecido pelos fabricantes, muito embora eles comecem a adotar o SIP.

(GONÇALVEZ, 2005);

Page 23: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

22

c) MGCP (Media Gateway Control Protocol): também teve sua definição através do

IETF. Apesar de ser um protocolo extremamente simples vem perdendo, assim

como o H.323, terreno para o SIP. Foi criado para tornar os aparelhos da ponta

(telefones) os mais simples possíveis, colocando todo o processamento da

chamada nas mãos dos gateways de mídia (SPENCER, M.; ALLISON, M, 2005) .

Segundo Hersent, Guide e Petit (2002), para controle e transporte da voz sobre a rede

IP os principais protocolos utilizados são:

a) RTP (Real-Time Transport Protocol): permite que os receptores compensem o

jitter (abordado mais adiante) e a perda de seqüência dos pacotes, comum nas

redes IP. Pode ser usado para qualquer fluxo de dados em tempo real, como voz e

vídeo;

b) RTCP (Real-Time Control Protocol): geralmente é usado com o RTP para permitir

o transporte de algum retorno sobre a qualidade da transmissão (jitter, perda de

pacotes, etc.).

2.2.4 Codecs

Segundo Spencer e Allison (2005) os codecs podem ser entendidos como diversos

modelos matemáticos que digitalizam e comprimem a voz analógica, permitindo que esta

trafegue na rede.

A largura de banda é limitada em qualquer link, logo o número de conversações

simultâneas nesse link depende diretamente do codec utilizado, conforme Tabela 1.

Uma forma de avaliar o desempenho dos codecs é através do MOS (Mean Opinion

Score). Este varia de 1 (ruim) até 5 (excelente), onde o nível 4 corresponde ao de uma linha

telefônica analógica convencional.

Page 24: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

23

Codec Consumo de Banda

(Kbps)

Qualidade da Voz

(MOS)

G.711 64,0 4,2

G.726 16,0; 24,0 ou 32,0 2; 3,2 ou 4

G.723.1 5,3 ou 6,3 3,7 ou 3,9

G.729A 8,0 4,0

GSM 13,0 3,71 a 4,43

Fonte: Hersent, Guide e Petit (2002) e Spencer e Allison (2005).

Tabela 1 – Comparação entre os principais codecs utilizados para VoIP.

Page 25: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

24

3 GATEWAY VOIP

Os gateways VoIP têm a responsabilidade de conectar terminais telefônicos comuns,

fazer a codificação da voz recebida e colocá-los em pacotes IP, os quais serão transmitidos

pela de rede dados (e vice-versa), conforme representado na Figura 3.

Os gateways podem ser tanto appliances, com hardware desenvolvido especialmente

para este fim; ou softwares que rodam em qualquer plataforma.

3.1 SOFTWARES GATEWAYS VOIP

Existem diversos softwares que fazem a função de gateways VoIP. Algumas opções

são pagas, mas a que tem se destacado mais, o Asterisk, é de código aberto. Em geral,

apresentam mais flexibilidade que os hardwares dedicados a esta função.

3.1.1 Asterisk

Asterisk é um sistema convergente de telefonia, baseado em código-livre, que foi

concebido inicialmente para rodar em linux. O Asterisk reúne mais de 100 anos de

conhecimento em telefonia em uma suíte de softwares altamente integrados. O poder deste

programa está em sua natureza: totalmente aberta e customizável, complementada por uma

série de padrões atendidos. Nenhum outro equipamento de PABX pode implementar as

funcionalidades que o Asterisk pode, e com tantas formas diferentes (MEGGELEN; SMITH;

MADSEN; 2005).

Ele suporta uma vasta gama de protocolos TDM (Time Division Multiplex) para o

gerenciamento e transmissão de voz nas interfaces de telefonia tradicionais. Suporta os

Page 26: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

25

padrões europeus e americanos de sinalização usados na maioria dos sistemas de

comunicação, permitindo fazer uma ponte entre a próxima geração de telefonia – que integra

voz e dados, com a infra-estrutura atual. Aliás, o Asterisk não somente suporta a telefonia

tradicional como adiciona novas funções a ela (SPENCER; ALISSON, 2002).

O Asterisk possui um núcleo central de chaveamento, com quatro API’s para

carregamento modular das aplicações de telefonia, interfaces de hardware, manuseamento de

formatos de arquivos e codecs. Isto permite a comutação transparente entre todas as interfaces

suportadas, possibilitando disponibilizar uma série de sistemas de telefonia em uma única

rede de comutação (ASTERISK, 2006).

3.1.2 Communigate

Desenvolvido pela Communigate Systems, com sede na Califórnia, o Communigate

vai muito além de apenas um gateway VoIP, pois inclui funções avançadas de mensagens

unificadas, URA (Unidade de Reposta Audível), servidor de conferências, correio de voz,

sistema de bilhetagem e tarifação, integração com e-mail e aplicações de terceiros.

Apesar de se tratar apenas de um software, assim como o Asterisk, o Communigate

não é livre, muito menos gratuito, tendo licenças que vão de 20 usuários a 5 milhões de

usuários, segundo o próprio fabricante (COMMUNIGATE, 2006).

3.1.3 Siemens Hipath 5000

O Hipath 5000 combina comunicação convencional com voz sobre IP através de

gateways TDM secundários. Estes gateways fazem a conversão TDM/IP, ficando a cargo do

Hipath 5000 a sinalização entre dispositivos IP.

Page 27: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

26

Funciona também como gatekeeper de redes que podem chegar a 64 centrais

telefônicas e mais de mil usuários.

Diferentemente dos softwares anteriores, não possui funções avançadas. Entretanto, se

adicionado um servidor de correio de voz na rede corporativa, o Hipath 5000 é capaz de

direcionar ligações para este servidor (SIEMENS, 2006).

3.2 FUNCIONALIDADES DE GATEWAYS VOIP

Como visto no capítulo anterior, alguns gateways VoIP são capazes de fornecer

diversas funcionalidades muito além da conversão da voz analógica em voz sobre IP. Dentre

estas funções, algumas podem ser destacadas, como bilhetagem, integração com bancos de

dados, possibilidade de gravação e outras, melhores descritas nos parágrafos a seguir. Muitas

delas serão implementadas no Asterisk.

3.2.1 Correio de Voz

O correio de voz, assim como grande parte das invenções, surgiu da necessidade. O

seu criador, Gordon Matthews, possuía uma empresa e viajava muito, visitando seus

consumidores. Era difícil encontrá-lo e não havia meio para deixar recados. Após diversos

negócios e clientes perdidos, Gordon resolveu seu problema desenvolvendo o Correio de Voz

(MARPLES, 2006).

Este recurso permite que uma chamada ocupada ou não atendida seja enviada para

uma espécie de secretária eletrônica central. A partir daí é possível avisar ao usuário da

existência desta mensagem de diversas maneiras: sinal sonoro em suas ligações, mensagem de

e-mail, SMS ou então, enviar a própria mensagem gravada ao e-mail do usuário

(GONÇALVES, 2005).

Page 28: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

27

3.2.2 Servidor de Conferências

As conferências por telefone têm, cada vez mais, se destacado em sistemas de PABX.

Seu uso possibilita fazer uma reunião sem a presença física das pessoas envolvidas em

determinado assunto. Um exemplo pode ser em uma loja de carros: o mecânico precisa

explicar para o cliente o que está havendo em seu carro, porém seu superior gostaria de

acompanhar a conversação, então, estabelece-se, manualmente, uma conferência.

Até aqui é tudo simples, disponível em qualquer central telefônica de mercado. O

grande diferencial do Asterisk é possibilitar a criação de uma sala de conferências. Esta sala

comporta-se como uma sala de reuniões virtual, onde os participantes convidados vão

entrando na conversa sem a necessidade de serem adicionados manualmente. Para que isto

ocorra, basta que o administrador da conferência indique o número da sala e a senha para

autenticação.

É possível criar a sala de conferências e definir uma senha, tornando-a segura o

suficiente para, por exemplo, reuniões de diretoria. A partir daí, basta definir um horário para

então os convidados entrarem na sala e iniciarem a reunião.

Após o término da reunião, o administrador tem condições de verificar os

colaboradores presentes e emitir relatórios.

Entre as aplicações de um servidor de conferências, destacam-se as seguintes:

a) reuniões entre colaboradores de diversas unidades da empresa;

b) um treinamento a um determinado departamento;

c) uma sala de bate-papo (como o 104 da BrasilTelecom).

No Asterisk, a sala de conferências pode ser configurada através dos arquivos

extensions.conf e meetme.conf.

Page 29: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

28

3.2.3 Unidade de Resposta Audível (URA)

A unidade de resposta audível (URA) é um sistema de automatização muito utilizado

pelas empresas. Com ela é possível, por exemplo, atender as ligações e colocá-las em modo

espera ou então transferi-las de acordo com o que o usuário disca no teclado do telefone.

Do ponto de vista do usuário, não é um sistema muito agradável, já que este se vê

obrigado a interagir com uma espécie de robô.

Já para as empresas as URAs representam uma enorme economia com colaboradores,

visto que num sistema deste tipo, a capacidade de atendimento é praticamente ilimitada.

3.2.4 Distribuição Automática de Chamadas (DAC)

Este recurso é utilizado para montar sistemas de call centers, criando filas de

chamadas. Com as filas, é possível evitar a perda de chamadas quando os agentes estão

ocupados, melhorando a produtividade, visto que as chamadas serão direcionadas somente aos

atendentes que estão prontos para receber aquela chamada.

Page 30: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

29

4 DESENVOLVIMENTO DO TRABALHO

Neste capítulo serão apresentados os principais passos para a implementação de

funções avançadas em um gateway VoIP. Uma breve passagem pela instalação do Linux e do

Asterisk também será apresentada.

4.1 REQUISITOS PRINCIPAIS DO PROBLEMA A SER TRABALHADO

O sistema será composto por três ramais, uma Unidade de Resposta Audível (URA),

Correio de Voz e Servidor de Conferências, como mostrado na Figura 7.

Fonte: O próprio autor. Figura 7 – Topologia básica do sistema a ser implementado

Page 31: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

30

Na Figura 7, os sistema de URA, Correio de Voz e Conferência estão separados do

Asterisk apenas para destacar suas funções. Na realidade eles são módulos dentro do próprio

Asterisk.

4.1.1 URA

O sistema de URA será responsável por:

a) atender as ligações entrantes e dar a possibilidade de o usuário escolher entre as

opções: ouvir mensagens do correio de voz, participar de uma conferência, ligar

para o ramal da telefonista e repetir este menu;

b) quando o usuário não estiver disponível para atender uma ligação, seja por estar

ocupado, não logado ou não atender, o sistema avisará ao usuário chamador deste

evento e lhe dará a opção de deixar uma mensagem de voz;

c) dentro do correio de voz, permitir que o usuário ouça, apague, encaminhe ou

armazene as mensagens de voz. Deve permitir também que o próprio usuário grave

sua saudação inicial e altere sua senha;

d) no Servidor de Conferências, solicitar o número da sala e, caso necessária, a senha

para entrada nesta sala.

4.1.2 Correio de Voz

O correio de voz, por si só, não oferece muitas opções, além de:

a) armazenar uma mensagem caso o usuário esteja indisponível;

b) através da URA, permitir que a mensagem seja lida, apagada, armazenada ou

encaminhada para outra caixa postal;

Page 32: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

31

c) durante a implementação, permitir ao usuário escolher se deseja receber uma cópia

da mensagem de voz em seu correio eletrônico.

4.1.3 Servidor de Conferências

Os requisitos para este módulo são:

a) permitir três modos de conferência: Diretoria, protegida por senha, Treinamento,

onde todos aguardam pelo líder ouvindo música e Aberta, onde todos falam;

b) possibilitar a um usuário criar salas virtuais.

4.2 REQUISITOS DE HARDWARE E SOFTWARE

Para implementação deste sistema, conforme Figura 7, necessitou-se dos seguintes

equipamentos (GONÇALVES, 2005):

a) o computador onde foi instalado o Asterisk, deve possuir no mínimo:

o Processador com clock de 300MHz;

o Memória RAM de 256MB;

o Distribuição Linux compatível com o Asterisk, como o Debian, Fedora,

SuSE, Mandrake ou Slackware;

o O próprio software do Asterisk;

b) para o sistema suportar comunicação com uma concessionária local, deve ser

usada uma placa com uma porta FXO, como a TDM-400P da Digium.

4.3 IMPLEMENTAÇÃO

O processo de implementação seguiu a uma ordem lógica e necessária, partindo da

Page 33: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

32

instalação do sistema operacional Linux, após isto instalação do Asterisk para somente então

partir para a configuração dos módulos de URA, Correio de Voz e Servidor de Conferências.

4.3.1 Instalação do Linux

A versão escolhida para instalação é o Debian, kernel 2.6.8-2-386, por se tratar de uma

versão muito bem testada e homologada pela comunidade do Asterisk e por acompanhar o

livro “Asterisk: Guia de Configuração”, citado nas referências.

Como este passo não é o foco do trabalho, as explicações serão superficiais.

Ao inserir o CD citado anteriormente, o sistema apresentará uma tela de apresentação

do Debian. Deve-se pressionar a tecla Enter. Após isto, será necessário configurar, através de

menus, o idioma da interface, layout do teclado, nome da máquina e esquema de

particionamento.

Terminado isto, o sistema reiniciará a máquina, e receberá as configurações de horário

e senhas de administrador e usuário. Então, solicitará escolher entre algumas opções de

instalação pré-definidas, necessitando apenas teclar Enter novamente.

Neste momento, o sistema operacional está instalado. A lista de comandos que segue é

necessária para preparar o sistema para receber o Asterisk.

Instalar os headers do kernel em execução:

#apt-get install kernel-headers-`uname –r`

#ln –s /usr/src/kernel-headers-`uname –r` /usr/src/linux

Atualizar e instalar pacotes necessários para o Asterisk:

#apt-get update && apt-get upgrade

#apt-get install bison cvs openssl libssl-dev libasound2-dev libc6-dev libnewt-dev

libncurses5-dev

O sistema está pronto para receber o Asterisk.

Page 34: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

33

4.3.2 Asterisk

Assim como o Linux, o Asterisk também acompanha o livro “Asterisk: Guia de

Configuração”, citado nas referências.

Com o CDRom no drive, deve-se digitar o comando:

#apt-get install vts-asterisk

Isto fará com que os pacotes Asterisk 1.2.0, Zaptel, Libpri, Sounds e Sounds-pt-br

sejam instalados (GONÇALVES, 2005).

Outro comando é necessário, desta vez para ativar algumas funções de administração

do Asterisk via navegador de internet, instalando os pacotes do Apache, PHP4, MySQL, PHP-

My-Admin e Asterisk-addons (GONÇALVES, 2005).

#apt-get install vts-web

4.3.3 Configuração Básica

Para a instalação do hardware (placa Digium TDM400P) inicialmente devem-se

configurar e carregar os drivers para a placa PCI que fará a interface com a rede pública. Para

tanto, os arquivos a seguir devem ser configurados. A descrição detalhada de todos os

comandos e seus respectivos parâmetros podem ser encontrados em Gonçalvez (2005),

Spencer e Alisson (2005) ou ainda em Asterisk (2006).

zaptel.conf

fxsks=1

defaultzone=br

loadzone=br

zapata.conf

signalling=fxs_ks

Page 35: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

34

echocancel=yes

echocancelwhenbridged=yes

echotraining=400

group=1

context=entrada

channel=> 4

Agora basta carregar os drivers zaptel no Linux, através dos comandos:

#modprobe zaptel

#modprobe wctdm

É possível verificar se a configuração dos canais está correta através do comando:

#ztcfg -vvv

Para que os ramais sejam configurados e fiquem disponíveis na rede IP é necessário

editar o arquivo sip.conf,. De acordo com a Figura 7, são três ramais: 601, 602 e 603.

sip.conf

[general]

context=default

bindport=5060

bindaddr=0.0.0.0

srvlookup=yes

[601]

type=friend

username=601

context=interno

callerid="Ramal 601"

host=dynamic

canreinvite=no

disallow=all

allow=ulaw

[602]

type=friend

username=602

Page 36: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

35

context=interno

callerid="Ramal 602"

host=dynamic

canreinvite=no

disallow=all

allow=gsm

[603]

type=friend

username=603

context=interno

callerid="Ramal 603"

host=dynamic

canreinvite=no

disallow=all

allow=gsm

4.3.4 Configuração do Servidor de Conferências

A configuração do servidor de conferências será baseada na topologia da Figura 7,

detalhada na Figura 8.

O acesso às conferências poderá ser feito de duas maneiras: discando-se diretamente o

número da sala ou via ramal 400, o qual está ligado a URA. Esta por sua vez, solicita ao

usuário que disque o número da sala.

Acessos da rede externa via canal FXO serão obrigados a passar pelo ramal 400, para

somente então poderem se conectar a uma conferência.

A sala de conferência de número 500 será reservada para uso da diretoria e contará

com proteção por senha, definida como 586. A sala de número 550 será de acesso livre aos

usuários. Ambas contarão com música em espera quando se está sozinho. A música em espera

será interrompida somente quando o segundo usuário se conectar ao sistema. A sala 510 será

Page 37: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

36

a sala de treinamentos por telefone. Todos os usuários ouvirão a música de espera enquanto o

líder não se conectar. Este por sua vez, deverá se conectar a sala 510 através do ramal 520 e

só poderá completar a conexão após inserir a senha do líder, definida como 951.

Fonte: O próprio autor.

Figura 8 – Salas de conferência

4.3.4.1 Meetme()

Nos Asterisk as conferências são estabelecidas através da aplicação meetme().

Sintaxe de uso:

Meetme(numero_da_conferência[|opções][|senha])

Os principais parâmetros são:

m – configura o modo monitor (apenas ouve, não pode falar);

1 – não toca a mensagem “você é a única pessoa nesta conferência”;

a – entra no modo administrativo;

Page 38: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

37

A – entra como usuário marcado. Usado para conferências com líder;

b – chama um script externo, especificado na variável

${MEETME_AGI_BACKGROUND}. O script padrão é o background.agi. Esta funciona

somente com canais tipo zap;

c – anuncia o número de participantes na conferência;

d – adiciona uma conferência dinamicamente;

D – o mesmo que ‘d’, mas solicita uma senha;

e – seleciona uma conferência vazia;

E – seleciona uma conferência vazia e sem senha;

i – anuncia a entrada e saída de um usuário;

M – habilita música em espera quando há apenas um usuário na conferência. É

necessário instalar o mpg123 e configurar o arquivo musiconhold.conf;

p – permite um usuário deixar a conferência teclando ‘#’;

q – modo silencioso. Não toca os sons de entrada e saída;

r – grava a conferência no arquivo descrito na variável

${MEETME_RECORDINGFILE} usando o formato especificado na variável

${MEETME_RECORDINGFORMAT}. Por padrão, o arquivo se chama meetme-conf-rec-

número_da_conferência-número_de_sequencia e o formato wave.

w – aguarda a conexão do usuário marcado com a opção ‘A’ para iniciar a conferência;

x – termina a conferência quando o último usuário marcado sair;

4.3.4.2 Arquivos de Configuração

Nas próximas linhas estão os arquivos utilizados para configurar o Servidor de

Conferências, conforme citado no Capítulo 4.3.4.

Page 39: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

38

O arquivo meetme.conf contém as configurações básicas das salas de conferência.

meetme.conf

[rooms]

; Sintaxe conf => número_da_sala[,senha_usuário][,senha_de_adminstração]

conf=>500,586 ; cria a sala 500, senha 586

conf=>510 ; cria a sala 510

conf=>550 ; cria a sala 550

O arquivo musiconhold.conf deve ser configurado para que os usuários de conferências

ouçam música em espera quando necessário.

musiconhold.conf

[default]

mode=mp3 ; modo mp3

directory=/var/lib/asterisk/mohmp3 ; toca todos os arquivos desta pasta

O arquivo extensions.conf é um dos principais arquivos do Asterisk. Nele é

configurado o plano de discagem, o coração de um sistema de telefonia. A parte que se refere

as conferências está nas linhas abaixo.

extensions.conf

[conferencia]

exten=>400,1,background(conf-getconfno) ; solicita a discagem do nº da conferência

exten=>400,150,hangup

exten=>i,1,playback(invalid) ; se o número for inválido, reproduz aviso

exten=>i,2,goto(400,1) ; e repete o menu

exten=>t,1,goto(400,1) ; se tempo muito longo, reproduz o menu

exten=>500,1,meetme(500,M) ; Conferência Diretoria

exten=>510,1,meetme(510,Mw) ; Conferência Treinamento

exten=>520,1,authenticate(951) ; Solicita senha do Líder

exten=>520,2,meetme(510,AM) ; Líder entra na sala treinamento

exten=>550,1,meetme(550,M) ; Conferência sala diversa

exten=>599,1,meetme(|Md) ; Usuário cria a sala

Page 40: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

39

4.3.5 Configuração do Correio de Voz

O correio de voz entrará em ação quando um usuário não estiver disponível (ocupado,

não atende ou não logado) reproduzindo uma mensagem ao usuário chamador. Após um sinal,

deverá permitir que o usuário deixe uma mensagem.

O correio de voz terá três caixas postais, sendo uma para cada ramal cadastrado no

PABX (601, 602 e 603). Cada caixa postal será protegida por senha. No caso da caixa postal

603, as mensagens deixadas serão enviadas em anexo para um e-mail pré-definido e então

apagadas do Asterisk. No caso dos usuários 601 e 602 a sinalização do recebimento de uma

mensagem será feita diretamente no seu telefone (Softfone X-Lite). Para ouvir as mensagens,

os usuários poderão discar para o número 700, podendo esta ligação ser feita a partir da rede

pública de telefonia.

A configuração do correio de voz no Asterisk se dá basicamente, em três arquivos

sip.conf, extensions.conf e voicemail.conf.

4.3.5.1 Voicemail.conf

Neste arquivo são configurados os parâmetros das caixas postais. As opções podem ser

comuns a todos os usuários – se definidas no contexto [general], ou podem ser definidas de

acordo com o desejo de cada usuário – se definidas no contexto [default].

Page 41: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

40

Fonte: O próprio autor.

Figura 9 – Caixas postais do correio de voz

No contexto [general] as configurações se aplicam a todos os usuários Estas

configurações podem ser (GONÇALVES, 2005):

attach – envia a mensagem como anexo para o e-mail do usuário;

delete – apaga a mensagem do Asterisk após ter sido enviada por e-mail;

mailcmd – permite ao administrador enviar um comando do e-mail especial. Mailcmd

recebe uma string com a linha de comando desejada, por exemplo “/usr/bin/sendmail –t”;

maxsilence – define o tempo de silêncio contínuo antes de encerrar a chamada para o

correio de voz;

envelope – controla se o Asterisk deve ou não tocar uma mensagem com a data/hora

antes de tocar a mensagem deixada no correio de voz;

externnotify – permite rodar um programa externo sempre que alguém deixa uma

mensagem no correio de voz;

silencethreshold – permite ajustar o nível de detecção de ruído de fundo;

serveremail – permite identificar o remetente da mensagem de e-mail;

maxmessage – define o tempo máximo que o recado poderá ter;

minmessage – define o tempo mínimo que o recado poderá ter;

Page 42: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

41

format – permite a seleção do formato de áudio utilizado para armazenar as mensagens

do correio de voz;

emailsubject – substitui a linha Assunto no e-mail enviado com o recado;

emailbody – substitui a o corpo de texto no e-mail enviado com o recado;

No contexto [default] – o qual foi utilizado para as caixas deste correio de voz, a

sintaxe é a seguinte:

número_da_caixa => senha, nome_usuário, e_mail_usuário, pager_usuário, opções

4.3.5.2 Sip.conf

No arquivo sip.conf é necessário apenas informar dentro da configuração do ramal qual

será sua caixa postal, através do comando:

mailbox = número_da_caixa_postal

4.3.5.3 Verificando as mensagens de voz

Existem duas maneiras de verificar as mensagens de voz no Asterisk: a primeira

através de uma interface gráfica disponibilizada na internet, o vmail.cgi, ilustrada na Figura

11 e a segunda através da aplicação voicemailmain(), chamada através do arquivo

extensions.conf, da seguinte maneira:

exten => extensão, prioridade, voicemailmain()

Esta aplicação permite aos usuários gerenciar sua caixa postal. Quando chamada, ela

reproduz o seguinte menu para o usuário:

− 0 – opções da caixa postal;

- 1 – grava sua mensagem de não disponível;

Page 43: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

42

- 2 – grava sua mensagem de ocupado;

- 3 – grava seu nome;

- 4 – grava sua mensagem temporária;

- 5 – muda sua senha;

- * - retorna ao menu principal;

− 1 – ouvir as mensagens do correio de voz;

- 3 – opções avançadas;

- 4 – reproduz a mensagem anterior;

- 5 – repete a mensagem atual;

- 6 – reproduz a próxima mensagem;

- 7 – apaga a mensagem atual;

- 8 – encaminha esta mensagem para outra caixa postal;

- 9 – salva a mensagem em uma nova pasta;

- * – ajuda;

- # – sair;

− 2 – mudar de pasta;

− * – ajuda;

− # – sair;

Fonte: O próprio autor.

Figura 10 – Interface gráfica para gerenciamento das mensagens

Page 44: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

43

4.3.5.4 A aplicação voicemail ()

Esta é a aplicação que configura o modo como os usuários deverão deixar as

mensagens no correio de voz. Deve ser chamada a partir do arquivo extensions.conf. Sua

sintaxe é a que segue:

exten => extensão, prioridade, voicemail ([opções]númerodacaixa[@contexto][&

númerodacaixa2[@contexto]] [& númerodacaixa3[@contexto]]

As opções disponíveis para aplicação, segundo Gonçalves (2005), são:

s – não reproduz a mensagem “Deixe sua mensagem após o bip, quando terminar

deligue ou pressione a tecla sustenido”;

u – reproduz a mensagem de não disponível. Por padrão, reproduz a mensagem “A

pessoa na extensão 6, 0, 1 não está disponível”. Porém, o proprietário da caixa pode gravar

sua própria mensagem, chamando a aplicação voicemailmain;

b – reproduz a mensagem de ocupado.

Todas as mensagens de correio de voz ficam armazenadas na seguinte pasta do Linux:

/var/spool/asterisk/voicemail/contexto/número_da_caixa/INBOX

A descrição detalhada de todos os comandos e seus respectivos parâmetros podem ser

encontrados em Gonçalvez (2005), Spencer e Alisson (2005) ou ainda em Asterisk (2006).

4.3.5.5 Arquivos de Configuração

voicemail.conf

[general]

format=wav49|gsm|wav

[email protected]

Page 45: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

44

attach=yes

skipms=3000

maxsilence=10

silencethreshold=128

maxlogins=3

emaildateformat=%A, %d %B %Y as %H:%M

sendvoicemail=yes

emailbody=${VM_NAME} <${VM_MAILBOX}>\n\nVocê recebeu uma mensagem

com ${VM_DUR} de ${VM_CALLERID}. A mensagem foi deixada em ${VM_DATE}.

[zonemessages]

eastern=America/New_York|'vm-received' Q 'digits/at' IMp

central=America/Chicago|'vm-received' Q 'digits/at' IMp

[default]

601 => 001,Ramal601,601@localhost

602 => 002,Ramal602,602@localhost

603 => 003,Ramal603,[email protected],,|attach=yes|delete=yes

sip.conf

[601]

; demais configurações do sip

mailbox=601

[602]

; demais configurações do sip

mailbox=602

[603]

; demais configurações do sip

mailbox=603

Page 46: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

45

extensions.conf

[interno] ;Ligações internas

exten=>_6XX,1,Dial(SIP/${EXTEN},10) ; Disca para os ramais

exten=>_6XX,2,voicemail(u${EXTEN}) ;Se não atende, vai para o voicemail

exten=>_6XX,3,hangup

exten=>_6XX,102,voicemail(b${EXTEN}) ; Se ocupado, vai para o voicemail

exten=>_6XX,103,hangup

exten=>_700,1,voicemailmain ; Ouvir os voicemails

[menu_entrada]

exten=>s,1,Background(disque_o_ramal) ; Opções do menu:

; demais opções da URA

exten=>_6XX,2,voicemail(u${EXTEN}) ; Correio de voz, se usr não atende

exten=>_6XX,3,hungup ; desliga após correio de voz

exten=>_6XX,102,voicemail(b${EXTEN}) ;Correio de voz, se usr indisponivel

exten=>_6XX,103,hungup ; desliga após correio de voz

4.3.6 Configuração da URA

O papel da URA é facilitar a utilização das opções disponíveis no equipamento.

Diferentemente das outras funções descritas anteriormente, a URA não possui um arquivo de

configuração especial. Toda a sua programação é feita no arquivo extensions.conf. Dentro

deste arquivo, três aplicações são muito úteis na hora desta programação: o background(), o

goto() e o dial().

Page 47: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

46

4.3.6.1 Background()

O comando background reproduz uma música de fundo enquanto o Asterisk executa

outros comandos. É muito utilizado também para a reprodução de menus (disque 1 para

telefonista, 2 para suporte...). Quando uma tecla é pressionada o Asterisk pára imediatamente

a reprodução da música e executa o comando corresponde àquela tecla no plano de discagem.

Se o usuário disca uma tecla ou extensão errada enquanto o background está sendo

executado ele vai para a extensão “i” do plano de discagem. Caso a extensão “i” não exista ele

desconecta a chamada.

A sintaxe do comando é a seguinte:

exten => extensão, prioridade, background (nome_do_arquivo_música)

4.3.6.2 Goto()

O comando goto() salta para a posição do plano de discagem especificada em seus

parâmetros. Esta posição pode ser uma prioridade, uma extensão e uma prioridade ou um

contexto, uma extensão e uma prioridade.

A sintaxe do comando é a seguinte:

exten => extensão, prioridade, goto ([[contexto]|extensão]|prioridade)

4.3.6.3 Dial()

Esta é uma aplicação das mais importantes, pois é a responsável por realizar as

chamadas para outros usuários. Sua sintaxe é um pouco mais complexa e suporta uma séria de

opções, as quais serão detalhadas mais a frente.

Page 48: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

47

exten => extensão, prioridade, Dial(tipo1/identificador1 [& tipo2/identificador2 [&

tipo3/identificador3 ... ] ], tempo_limite, opções)

O dial() chama todos os canais listados em seu par de parâmetros tipo/identificador

simultaneamente. O canal que atender primeiro recebe a ligação. As outras chamadas são

desconectadas.

Os parâmetros do dial() estão listados abaixo:

tipo – é o tipo do canal a ser chamado. Deve ser um dos tipos registrados no asterisk,

como o Zap, SIP, IAX2 e outros;

identificador – é o número que deve ser chamado. Dependendo do tipo do canal, a

variável número poderá receber algumas opções adicionais;

tempo_limite – define o tempo máximo que a discagem deve levar antes de ir para a

próxima instrução;

As principais opções do dial() são:

m – reproduz a música em espera enquanto o usuário chamado não atende;

j – salta para a prioridade n+101 se todos os usuários estão ocupados;

A(x) – reproduz o som contido em x.gsm para o usuário que atender a chamada;

W – permite que o usuário chamador inicie a gravação da conversa pressionando *1;

w – permite que o usuário chamado inicie a gravação da conversa pressionando *1;

4.3.6.4 Arquivos de configuração

Toda a configuração da URA é feita no arquivo extensions.conf.

extensions.conf

[entrada] ; Todas as ligações de entrada

exten=>s,1,Answer() ; Atende a ligação

exten=>s,2,goto(menu_entrada,s,1) ; Vai para o menu principal

Page 49: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

48

exten=>s,3,Hangup() ; Desliga

[interno] ; Ligações internas

exten=>_700,1,voicemailmain ; Ouvir os voicemails

[menu_entrada]

exten=>s,1,Background(disque_o_ramal) ; Opções do menu:

exten=>i,1,playback(invalid) ; se número inválido, toca aviso

exten=>i,2,goto(s,1) ; e repete o menu

exten=>t,1,goto(s,1) ; se tempo longo, repete o menu

exten=>1,1,goto(interno,_700,1) ; Ouvir o correio de voz

exten=>2,1,goto(interno,400,1) ; Conferência

exten=>3,1,Dial(SIP/601) ; Telefonista

exten=>4,1,Goto(menu_entrada,s,1) ; Repete o menu

exten=>5,1,Hangup() ; Desliga

exten=>_6XX,1,Dial(SIP/${EXTEN},5) ; Ramal qualquer

exten=>_6XX,2,voicemail(u${EXTEN}) ; Correio de voz, se usr não atende

exten=>_6XX,3,hungup ; desliga após correio de voz

exten=>_6XX,102,voicemail(b${EXTEN}) ; Correio de voz, se usr indisponivel

exten=>_6XX,104,hungup ; desliga após correio de voz

4.4 VALIDAÇÃO E TESTES

Nesta parte do trabalho será realizada a validação dos arquivos de configuração bem

como os testes do sistema. A fim de se obter maior clareza, os testes serão realizados em

etapas e contarão com alguns screenshots do Asterisk.

O primeiro teste para verificação do funcionamento do sistema foi fazendo uma

ligação da rede PSTN para o servidor do Asterisk, então selecionada a opção 1 para o correio

de voz. Após isto, foram digitadas as informações de caixa postal e senha e o sistema

informou corretamente que não havia nenhuma mensagem na caixa postal. A Figura 11

mostra o resultado obtido na console do Asterisk.

Page 50: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

49

Fonte: O próprio autor.

Figura 11 – Resultado do teste de verificação do sistema

Um segundo teste foi feito navegando entre as opções da URA, na seguinte ordem:

a) Escolhida a opção 4, reproduzindo o menu novamente;

b) Discado o número 8, opção inválida;

c) Não discando nada, estourando o tempo limite;

d) Pressionando 5 para sair do sistema.

A Figura 12 mostra o resultado obtido.

O terceiro teste foi feito ligando para o usuário 601 que estava ocupado no momento.

O sistema solicitou que se deixasse uma mensagem no correio de voz. A mensagem foi

deixada. Em seguida, o usuário 601 ligou de um celular para o sistema via PSTN, escolheu a

opção 1 para ouvir o seu correio de voz. Então o sistema reproduziu a mensagem e deu

opções para administração daquele recado. A Figura 13 apresenta o resultado obtido na

primeira parte do teste e a figura 14 apresenta o resultado da segunda parte.

Page 51: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

50

Fonte: O próprio autor.

Figura 12 – Resultado do teste de navegação na URA

Fonte: O próprio autor.

Figura 13 – Resultado do teste de mensagem no correio de voz

Page 52: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

51

Fonte: O próprio autor.

Figura 14 – Resultado do teste de audição das mensagens no correio de voz

O quarto teste foi utilizando a URA e o servidor de conferências. Supondo que um dos

diretores da empresa ligue a partir da PSTN e outro do ramal 601. Eles devem se encontrar na

sala de reuniões número 500 e entrar com a senha 586. A Figura 15 mostra que o usuário de

número 601 entrou primeiro na sala, ficou ouvindo a música em espera até que um usuário

entrou a partir da PSTN.

Page 53: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

52

Fonte: O próprio autor.

Figura 15 – Resultado do teste de URA e servidor de conferências

Um quinto e último teste consistiu em colocar o usuário 601 na sala de conferência de

treinamento (sala 510). Este ficou ouvindo a música em espera até que o usuário líder fez o

login na sala. O resultado obtido está ilustrado na Figura 16.

Page 54: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

53

Fonte: O próprio autor.

Figura 16 – Resultado do teste da sala de conferências com líder

Page 55: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

54

5 CONCLUSÕES

A tecnologia de voz sobre IP está deixando de ser apenas uma tendência para se tornar

realidade e um caminho sem volta. A universalização da banda larga e o acesso cada vez mais

facilitado à tecnologia contribuem para que o crescimento na adoção do VoIP seja

vertiginoso. Tendo isto em vista, há de se imaginar que a necessidade por serviços adicionais

a simples conversação, e sua implantação, sigam no mesmo ritmo.

Apesar de se tratarem de serviços avançados, foi demonstrado neste trabalho que a

implementação de uma URA, correio de voz e um servidor de conferências pode ser feita de

maneira não muito difícil quando se detém os conhecimentos básicos de redes de dados,

telefonia e VoIP. Este moderado nível de dificuldade aliado a característica open source do

Asterisk e ao custo razoável do hardware permite que as pequenas e médias empresas

incluam a telefonia IP em seus orçamentos.

Não é difícil perceber que além do baixo custo o sistema é extremamente flexível. Para

cada comando existem diversas opções que podem ser combinadas entre si, formando um

leque enorme de possibilidades. Desta forma, é possível fazer com que o sistema se adapte as

necessidades de cada empresa/usuário.

Esta flexibilidade do sistema deve permitir que ele se interconecte com centrais

telefônicas convencionais e IPs, agregando valor e serviços às plataformas implantadas

atualmente nas empresas, as quais são limitadas em funcionalidades.

Por fim, verificou-se que o Asterisk é eficaz no que diz respeito a funções avançadas.

Estas além de muito flexíveis, funcionam de maneira adequada e superam em qualidade as

soluções proprietárias.

Page 56: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

55

5.1 EXTENSÕES

Como formas de continuação deste trabalho, sugere-se:

a) a integração das funções estudadas com uma central telefônica convencional;

b) a integração com um SIP server de mercado (Planet, Ebrax, Furukawa etc.);

c) o desenvolvimento de um ambiente gráfico para administração das salas de

conferência e de relatórios com os participantes de uma conferência;

Page 57: IMPLEMENTAÇÃO DE FUNÇÕES AVANÇADAS EM UM …pericas/orientacoes/VoIPGw2006.pdfBlumenau, 03 de julho de 2006 . Dedico este trabalho a todos que participaram, direta ou indiretamente

56

REFERÊNCIAS BIBLIOGRÁFICAS

ASTERISK: The open source PBX [S.l], 2006. Disponível em <http://www.asterisk.org>. Acesso em 05 de março de 2006.

COMMUNIGATE SYSTEMS [S.l], 2006. Disponível em <http://www.stalker.com>. Acesso em 05 de março de 2006.

ESTADAO.COM.BR. [S.l], 2006. Disponível em: <http://www.estadao.com.br/tecnologia/telecom/noticias/2006/fev/01/76.htm>. Acesso em 05 de abril de 2006.

GONÇALVES, F. E. A. Asterisk: Guia de Configuração. 3ª Edição. Florianópolis: V. Office, 2005.

HERSENT, Oliver; GUIDE, David; PETIT, Jean-Pierre. Telefonia IP: Comunicação multimídia baseada em pacotes. São Paulo: Addison Wesley, 2002.

MARPLES, G. The History of Voicemail:Press one to find out. Disponível em <http://www.thehistoryof.net/the-history-of-voicemail.html>. Acesso em 06 de março de 2006.

MEGGELEN, J. V.; SMITH, J; MADSEN, L. Asterisk: The Future Of Telephony. Sebastopol, Califórnia, EUA: O’Reilly Media, 2005.

SERRA, Antonio de Barros. Uma Solução de Distribuição de Aplicações em Tempo Real no Contexto do Ensino Tecnológico à Distância. 2001. 165f. Dissertação (Mestrado em Ciência da Computação), Universidade Federal do Ceará, Fortaleza – CE.

SIEMENS COMMUNICATIONS [S.l], 2006. Disponível em <http://www.siemens.com>. Acesso em 05 de março de 2006.

SPENCER, M.; ALLISON, M. The Asterisk Handbook. Digium, 2005. Disponível em <http://www.digium.com/downloads/asterisk_handbook_project_version_1.pdf>. Acesso em 05 de março de 2006.

TECHWEB: TechEncyclopedia [S.l], 2006. Disponível em <http://www.techweb.com/encyclopedia/>. Acesso em 05 de março de 2006.

TELECOM. The Telecommunications History Group, Inc. [S.l.], 2006. Disponível em: <www.telcomhistory.org>. Acesso em 27 de março de 2006.

TUDE, E.; SOUZA, J. L. Telefonia Fixa no Brasil. Telecom, 2003. Disponível em <www.teleco.com.br/tutoriais/tutorialstfc/default.asp>. Acesso em 24 de maio de 2006.