Você está na página 1de 84

Desenvolvimento e Manuteno da Interface

WEB de uma Central Telefnica de Grande


Porte

Trabalho submetido Universidade Federal de Santa Catarina


como requisito para a aprovao da disciplina:
DAS 5511: Projeto de Fim de Curso

Gabriel Antunes do Nascimento

Florianpolis, Fevereiro de 2013

Desenvolvimento e Manuteno da Interface WEB de uma


Central Telefnica de Grande Porte

Gabriel Antunes do Nascimento

Orientadores:

Felipe Wagner, Eng.

______________________________
Assinatura do Orientador

Prof. Rmulo Silva de Oliveira

_______________________
Assinatura do Orientador

Este relatrio foi julgado no contexto da disciplina


DAS 5511: Projeto de Fim de Curso
e aprovado na sua forma final pelo
Curso de Engenharia de Controle e Automao

Agradecimentos

Aos meus pais, Joo Augusto e Maria, pelo amor, amparo e, principalmente,
por tudo o que fizeram por mim para que eu conseguisse ultrapassar mais essa
etapa de minha vida.
minha companheira, Elem, pelo amor, ajuda e companheirismo durante
todos os momentos dessa caminhada.
Ao Daniel, pelo amor, inspirao e pelos sorrisos que me deram foras para
seguir em frente.
Aos meus irmos, Rafael e Junior, pelo apoio incondicional.
Ao meu orientador, Felipe, pelos conselhos, ensinamentos e pacincia nos
momentos em que trabalhamos juntos.
Ao professor Rmulo, pela ajuda e orientao neste trabalho.
Intelbras, pela oportunidade, espao e infraestrutura cedida para a
realizao do projeto.
Universidade Federal de Santa Catarina, por possibilitar que esse trabalho
fosse realizado.
Aos colegas e amigos em geral, por toda a ajuda e companheirismo nos
momentos compartilhados.
E, por ltimo porm no menos importante, a Deus por possibilitar-me no s
estar aqui agradecendo, mas tambm, a tantas pessoas.

Resumo

Com a evoluo dos sistemas de Telecomunicaes, mais precisamente as


centrais telefnicas para o mundo IP onde mesclamos as redes de dados e de voz,
existe uma necessidade contnua de integrarmos as plataformas de comunicaes
analgicas s digitais.
A Intelbras, pensando nestas necessidades do mercado, oferece a soluo
Infinity Solution, um Sistema Softswitch com capacidade de controle de at 640
ramais TDM, 4 linhas E1 (at 120 canais) e 500 ramais IP, aprimorando o
desempenho de sua plataforma de comunicao e garantindo uma alta
disponibilidade de ligaes.
A Infinity Solution uma central telefnica idealizada para atender qualquer
necessidade de comunicao, com alta capacidade de customizao e compatvel
com o protocolo de comunicao SIP.
Foi projetada para ser uma soluo em redes mistas, permitindo que as
comunicaes telefnicas sejam realizadas tambm atravs da rede de dados
disponvel, proporcionando, assim, uma reduo significativa dos gastos com
telefonia e um aumento na flexibilidade da planta para mdias e grandes empresas.
Esse trabalho refere-se ao desenvolvimento e a manuteno da interface
WEB deste produto, que apesar de j estar presente no mercado, continua em
freqente atualizao para atender s exigncias dos atuais e futuros clientes
Intelbras.
Para tanto, ser apresentada a forma como foram implementados os
softwares de acesso soluo, ressaltando-se suas funcionalidades, utilidade e
viabilidade de uso no sistema.

Palavras-chave: integrao, desempenho, alta disponibilidade, redes mistas,


interface WEB, software de acesso.

Abstract

With the evolution of telecommunications systems, specifically the central


offices for the merged world where IP data networks and voice, there is a continuing
need to integrate communications platforms analog to digital.
Intelbras, thinking these market needs, the solution offers Infinity Solution, a
Softswitch system capable of controlling up to 640 TDM extensions, 4 E1 lines (up to
120 channels) and 500 IP extensions, improving the performance of your
communication platform and ensuring high availability of connections.
The Infinity Solution is an office center devised to meet any communication
need with high customization capabilities and compatible with the SIP communication
protocol.
It was designed to be a solution in mixed networks, enabling telephone
communications are also conducted through the network of available data, thus
providing a significant reduction in spending on telephony and an increase in the
flexibility of the plant for medium and large enterprises.
This work refers to the development and maintenance of the web interface of
this product, which although already present in the market, remains in frequent
updating to meet the demands of current and future customers Intelbras.
To do so, the way that this software was developed will be presented,
highlighting their features, utility and feasibility of using the system.

Keywords: integration, performance, high availability, mixed networks, WEB


interface, access software.

Sumrio

Agradecimentos ................................................................................................ 3
Resumo ............................................................................................................ 4
Abstract ............................................................................................................ 5
Sumrio ............................................................................................................ 6
Captulo 1: Introduo .................................................................................... 11
1.1: Objetivo do trabalho ............................................................................. 12
1.2: Estrutura do trabalho ............................................................................ 13
Captulo 2: Contextualizao .......................................................................... 15
2.1: Histrico das Centrais Telefnicas ....................................................... 15
2.2: Conceito de PABX ............................................................................... 17
2.3: Ramal ................................................................................................... 18
2.3.1: Ramal Analgico ........................................................................... 18
2.3.2: Ramal IP ........................................................................................ 18
2.3.3: Ramal Virtual ................................................................................. 19
2.4: Troncos ................................................................................................ 19
2.5: A empresa Intelbras S.A. ..................................................................... 19
2.5.1: Linha de Produtos ......................................................................... 20
2.5.2: O Projeto Infinity Solution .............................................................. 20
2.6: Contextualizao com o curso ............................................................. 21
2.7: Consideraes Finais ........................................................................... 21
Captulo 3: A Plataforma Infinity ..................................................................... 22
3.1: Infinity Solution ..................................................................................... 22
3.2: VoIP ..................................................................................................... 23
3.2.1: Banda ............................................................................................ 23
6

3.2.2: Latncia ......................................................................................... 24


3.2.3: Jitter ............................................................................................... 25
3.2.4: Perdas de pacotes de voz ............................................................. 25
3.2.5: Disponibilidade .............................................................................. 26
3.2.6: Priorizao dos pacotes de voz ..................................................... 26
3.3: Protocolo SIP ....................................................................................... 27
3.4: O Produto ............................................................................................. 27
3.4.1: Integrao da Infinity Solution com a rede de telefonia ................. 28
3.4.2: Licenciamento ............................................................................... 28
3.4.3: Arquitetura de Hardware................................................................ 29
3.5: Facilidades de Uso da Central ............................................................. 33
3.5.1: Linha Executiva ............................................................................. 34
3.5.2: Bilhetador para tarifador proprietrio ............................................. 34
3.5.3: Cdigo de Conta ............................................................................ 35
3.5.4: Estacionamento de chamadas ...................................................... 35
3.5.5: Agenda Coletiva ............................................................................ 35
3.5.6: Atendimento pela identidade do chamador ................................... 36
3.5.7: Atendimento por comando............................................................. 36
3.5.8: Cadeado ........................................................................................ 36
3.5.9: Captura de chamada de grupo de ramais ..................................... 36
3.5.10: Chamada de emergncia ............................................................ 37
3.5.11: Chefe-Secretria ......................................................................... 37
3.5.12: Conferncia ................................................................................. 37
3.5.13: Consulta ...................................................................................... 37
3.5.14: Despertador ................................................................................. 37
3.5.15: Desvio de chamadas ................................................................... 38
7

3.5.16: Hotline ......................................................................................... 38


3.5.17: Fila de chamada .......................................................................... 38
3.5.18: Identificador de chamadas........................................................... 38
3.5.19: Intercalao ................................................................................. 38
3.5.20: Monitorao de ambiente ............................................................ 39
3.5.21: Msica de espera ........................................................................ 39
3.5.22: No perturbe................................................................................ 39
3.5.23: Pega trote .................................................................................... 40
3.5.24: Pndulo ....................................................................................... 40
3.5.25: Plano de numerao flexvel ....................................................... 40
3.5.26: Rechamada ................................................................................. 40
3.5.27: Servio noturno ........................................................................... 41
3.5.28: Siga-me ....................................................................................... 41
3.6: Consideraes Finais ........................................................................... 41
Captulo 4: Estrutura do software e ferramentas do sistema .......................... 42
4.1: Comunicao Inter-processos.............................................................. 42
4.1.1: Softswitch ...................................................................................... 43
4.1.2: Infinity Extension ........................................................................... 44
4.1.3: IctiMaster ....................................................................................... 44
4.1.4: IctiConsole ..................................................................................... 45
4.1.5: IctiSync .......................................................................................... 45
4.2: Ferramentas de software ..................................................................... 45
4.2.1: Navegador WEB ............................................................................ 46
4.2.2: Banco de Dados MySQL ............................................................... 47
4.3: Linguagens de Programao ............................................................... 48
4.3.1: PHP ............................................................................................... 48
8

4.3.2: JavaScript ...................................................................................... 49


4.3.3: Html ............................................................................................... 50
4.4: Consideraes Finais ........................................................................... 51
Captulo 5: Processo de Desenvolvimento e Manuteno ............................. 52
5.1: O Mantis ............................................................................................... 52
5.1.1: Nveis de Usurio do Mantis .......................................................... 53
5.2: Estados do defeito ............................................................................... 53
5.3: Relatar caso ......................................................................................... 56
5.4: Visualizao do caso ........................................................................... 57
5.5: Procedimentos de testes e implementao ......................................... 63
Captulo 6: Solues do Programador WEB ................................................... 65
6.1: A Equipe .............................................................................................. 65
6.2: Processo de Manuteno .................................................................... 65
6.2.1: Retirar spans da lista ao configurar um mdulo ............................ 66
6.2.2: Problema ao adicionar faixa de entradas na tabela DDR .............. 67
6.2.3: Criao de faixa de ramais ao chegar ao limite ............................. 69
6.2.4: Msica externa em grupo TDM ..................................................... 70
6.2.5: No possvel criar grupo de ramal comeando com zero ........... 71
6.2.6: No possvel alterar tempo de ringue do grupo .......................... 72
6.2.7: Descrio de facilidades e campos de ajuda................................. 73
6.2.8: Efetuar proteo em rotas ............................................................. 74
6.2.9: Outros casos de Manuteno ........................................................ 74
6.3: Processo de Desenvolvimento ............................................................. 75
6.3.1: Selecionar todos e excluir selecionados ........................................ 75
6.3.2: Funo copiar ramais .................................................................... 77
6.3.3: Mtodo de excluso de udio ........................................................ 78
9

6.3.4: Criao de grupos participantes para agentes DAC ...................... 78


6.3.5: Outros casos de desenvolvimento ................................................. 79
6.4: Consideraes Finais ........................................................................... 80
Captulo 7: Concluses e Perspectivas .......................................................... 81
Bibliografia ...................................................................................................... 83

10

Captulo 1: Introduo

Desde os primrdios da existncia dos seres vivos, a comunicao parte


essencial da vida dos seres. Tambm se define a comunicao como sendo o
intercmbio de informao entre sujeitos ou objetos. Neste sentido, dizemos que a
troca de informaes, e a utilizao de sistemas simblicos so as ferramentas de
suporte para este fim. Esto envolvidos neste processo uma infinidade de maneiras
de se comunicar: duas pessoas tendo uma conversa face-a-face, ou atravs de
gestos com as mos, mensagens enviadas utilizando a rede global de
telecomunicaes, a fala, a escrita que permite interagir com as outras pessoas e
efetuar algum tipo de troca informacional.
A Telecomunicao, que a motivao maior de estudo deste projeto, diz
respeito s distintas tecnologias de comunicao distncia como, telegrafia,
telefonia, radiodifuso, teledifuso e internet, entre outras, envolvendo transmisses
de udio (som), vdeo (imagens) e dados.
No meio corporativo, a telecomunicao possui ainda mais restries, onde o
mercado cada vez mais dinmico e exigente, torna necessrio o uso de meios que
agilizem os procedimentos de contato com clientes, fornecedores e os prprios
colegas de trabalho. Normalmente quando esses processos no so bem
formalizados

dentro

de

um

negcio,

ocorrem

problemas

como

gastos

desnecessrios e perda de tempo, o que tende a ser fatal para a continuidade de


uma empresa.
No sentido de solucionar esses problemas que interferem significativamente
no meio corporativo, a Intelbras S.A. uma empresa que produz centrais
telefnicas,

telefones,

uma

gama

de

produtos

voltados

ao

setor

de

telecomunicaes, vigorando entre as lderes de mercado no setor. E a partir deste


objetivo, destaca grande parte dos seus recursos para a pesquisa e o
desenvolvimento de melhorias nos seus mais diversos produtos. Sendo assim, o
foco deste projeto est voltado s centrais telefnicas de grande porte, oferecendo
solues para o mercado principalmente onde existe a necessidade de usufruir de

11

uma grande quantidade de ramais telefnicos, mas utilizando uma quantidade vivel
de linhas telefnicas.
Dessa forma, apresentamos a Soluo Infinity Intelbras, uma central
telefnica utilizada no meio empresarial que combina a integrao de um hardware
adequado e bem projetado com um software corretamente estruturado e de fcil
entendimento, mas ambos com suas devidas complexidades. Este projeto se
encontra inserido no mercado buscando sempre atender aos seus clientes da
melhor forma possvel e necessitando todo momento de freqentes atualizaes
de melhorias contnuas.
Essa soluo vem somar s empresas uma forma bastante verstil de
intensificar e acelerar o modo como elas promovem troca de dados e informaes,
pois englobar a maioria dos recursos de comunicao em uma soluo, que far o
gerenciamento de todas as mdias e aparelhos utilizados.
Dentro deste cenrio, a idia apresentar a estrutura do produto e mostrar o
trabalho realizado no software a fim de contribuir para o desenvolvimento do mesmo.
O objetivo ser entender o propsito do programador WEB, que aplica seus
conhecimentos de linguagens PHP, Javascript e Html, alm de organizar os dados
do sistema em um banco de dados que utiliza o Mysql para unir os perifricos de
comunicao e integr-los ao PABX. a partir destas ferramentas que este projeto
ser confeccionado, a fim de contribuir para os produtos da empresa e a minha
realizao pessoal.

1.1: Objetivo do trabalho


O

projeto

visa

estudo

de

novas

tecnologias

solues

em

telecomunicaes, incluindo o desenvolvimento e a manuteno da estrutura de


software voltado a centrais telefnicas, interface grfica, banco de dados e
linguagens PHP, Javascript e Html.
H de se considerar que o produto apresenta algumas deficincias e a
necessidade de atualizao corrente, sendo assim, a meta torn-lo cada vez mais
estvel e que atenda s necessidades e customizaes dos clientes. Como padro

12

de um produto Intelbras, existem alguns pontos que serviro como etapas para que
o objetivo geral seja alcanado:

Estudo e entendimento das ferramentas que compe o sistema;

Montagem de um cenrio de desenvolvimento completo;

Avaliao e padronizao de protocolos de comunicao;

Integrao das solues;

Procedimento de testes de bancada.

1.2: Estrutura do trabalho


O presente trabalho ser organizado de modo que o leitor primeiramente seja
inserido no contexto de centrais telefnicas, entendendo o modo como elas atingem
as empresas que a adotam, e como a Intelbras vem buscando inserir este conceito.
Em um segundo momento, ser possvel compreender de maneira geral o
funcionamento do produto Infinity Solution, a fim de mostrar mais a fundo sua
implementao e entender as funes que um programador WEB ir executar, que
o objetivo de estudo desse trabalho.
Para que essas idias fossem ordenadas como descrito, o trabalho contar
com sete captulos que abordaro o tema relativo ao projeto.
O captulo dois trar como objetivo principal evidenciar ao leitor uma melhor
abordagem sobre o conceito de centrais telefnicas, apontando as necessidades
das empresas para utilizar seus servios de comunicao, e descrevendo alguns
conceitos importantes para o entendimento do elementos que sero utilizados ao
longo do trabalho. Um breve histrico sobre o surgimento da filosofia das centrais
telefnicas tambm ser mostrado para fundamentar a formalizao desse conceito.
Os esforos que a Intelbras vem concentrando para se inserir no ambiente de
comunicaes ser o tema do terceiro captulo. Nele sero apresentados os servios
de comunicaes que a empresa integra, bem como o recente sistema que est em
desenvolvimento, abordando-se a arquitetura e funes gerais do mesmo.
Os captulos quatro e cinco tratam especificamente da estrutura do software e
suas linguagens de programao e do processo de desenvolvimento e manuteno
13

empregado no projeto. Nesses captulos mostram-se ferramentas utilizadas para o


funcionamento da Infinity, definio de protocolos de comunicao e, principalmente,
os fluxos de funcionamento e aspectos de implementao.
O sexto captulo mostra os casos mais relevantes de ocorrncias
solucionadas, resultados e melhorias que foram aplicadas no produto. Nesse
captulo so mostrados cenrios em que o software desenvolvido foi inserido a fim
de verificar sua usabilidade e corrigir possveis erros.
O trabalho se encerra no captulo sete com algumas consideraes a respeito
do assunto discutido, e apresentam-se tambm perspectivas para novas etapas da
soluo Infinity.

14

Captulo 2: Contextualizao

Este captulo tem por objetivo fazer uma contextualizao do ambiente em


que o projeto tema desse trabalho se insere, explicar importncia do mesmo para
empresa onde ele foi realizado, assim como fazer uma apresentao da prpria
empresa. Ao final do captulo so citadas as disciplinas do curso, as quais
forneceram conhecimento importante para o projeto.

2.1: Histrico das Centrais Telefnicas


Nascida por volta de 1879 em Paris, no mesmo ano em que foi instalada no
Rio de Janeiro a Companhia Telephonica do Brasil, a criao da Central telefnica
foi considerada um avano importante e surpreendente para a poca. Desenvolvida
pelos irmos Thomas e Daniel Connelly, juntamente com Thomas J. McTighe,
apresentou-se o primeiro sistema em que um usurio podia controlar um mecanismo
de comutao distncia. [1]

Figura 2.1 As primeiras centrais telefnicas

Essas Centrais Telefnicas precisavam de pessoas para oper-las e


funcionavam em sua totalidade com operaes manuais. Nesta poca, surgiram
desconfianas de que as telefonistas desviavam propositalmente as ligaes. Por
15

isso, criou-se a necessidade de inventar um sistema que dispensasse o intermdio


delas. [1]
O

surgimento

das

Centrais

automticas

que

no

precisavam

de

operador/telefonista para fazer uma ligao, eram do tipo eletromecnica, tambm


chamadas de Passo-a-passo. Inicialmente elas foram substitudas pelas centrais
Cross Bar Barras cruzadas, que tambm eram eletromecnicas, e a partir dos anos
70 as empresas de telefonia passaram a utilizar Centrais Digitais, tambm
chamadas CPA Central de Programa Armazenado. Essas centrais so
consideradas verdadeiros computadores e trabalham com um software interno para
execuo das operaes inerentes: interligar terminais, executar controle, teste e
gerenciamento do hardware, identificao de chamadas, transferncia de chamadas,
ligaes simultneas aos clientes. [1]
Nos dias atuais fato que as empresas e at mesmo algumas residncias
necessitam de uma Central Telefnica para fazer a comunicao interna e facilitar o
dia a dia seja no trabalho ou ate mesmo em transferncias internas de ligaes, e
no s isso, podemos notar que as centrais telefnicas ganharam o gosto
principalmente de donos de estabelecimentos comerciais, seja ele um hotel,
restaurante, pousada. Facilitando assim a comunicao entre os vrios setores do
local ao qual ela est instalada. Confeccionou-se um equipamento que realiza
ligaes entre dois usurios do servio de telefonia. Suas principais funes
compreendem:

atendimento,

recepo

de

informao,

processamento

da

Informao, teste de ocupado, interconexo, alerta, superviso, envio de


informao, disponibilidade maior.

16

Figura 2.2 Central telefnica nos dias de hoje

2.2: Conceito de PABX


Um PABX (Private Automatic Branch Exchange), cuja traduo seria Troca
automtica de ramais privados um centro de distribuio telefnica pertencente a
uma empresa que no inclua como sua atividade o fornecimento de servios
telefnicos ao pblico em geral.
Permite efetuar ligaes entre telefones internos sem interveno manual, ou
ainda telefonar e receber telefonemas da rede externa (geralmente pblica). Podem
consistir de uma plataforma de hardware ou somente software, este ltimo que pode
ser instalado no computador para a interao com a telefonia via Internet. [2]
Um telefone domstico por sua vez geralmente est conectado diretamente
operadora local de telefonia, podendo realizar chamadas discando o nmero de
destino desejado. Em um ambiente corporativo normalmente existem muito mais
ramais do que linhas telefnicas, principalmente devido ao custo, havendo a
necessidade de um ponto central para gerenciar e distribuir as chamadas, o que
feito pelo PABX. O equipamento torna-se tambm um elemento de controle dos
usurios de ramais, podendo gerenciar permisses de uso individuais ou por grupo.
Dessa forma, o PABX uma central telefnica aonde chegam as linhas da
rede pblica e saem os ramais para os usurios. Nesta central tambm podem ser
17

conectados o interfone para tocar direto no telefone e muitas outras funes, das
quais a Intelbras projeta solues e atende s necessidades mais variadas do
mercado de telecomunicaes.

2.3: Ramal
Os Ramais so o meio fsico utilizado para prover comunicao entre duas ou
mais pessoas. Os tipos de Ramais mais comuns podem ser:

2.3.1: Ramal Analgico


So os aparelhos conhecidos como convencionais. Na Intelbras, os ramais
analgicos utilizados so os ramais TDM, que tambm so conhecidos como ramais
extension. [2]

2.3.2: Ramal IP
So ramais que utilizam protocolos de comunicao especficos de telefonia
IP, como SIP e IAX. [2] Ramais IP podem ser aparelhos especficos ou ento
softwares conhecidos como Softphones. Para um Ramal IP, os protocolos mais
comuns so:

SIP(Session Initiation Protocol): um protocolo de aplicao, que


utiliza o modelo requisio resposta, similar ao HTTP, para iniciar
sesses de comunicao interativa entre utilizadores.

IAX(Inter Asterisk eXchange) um protocolo desenvolvido com o


objetivo de estabelecer comunicao entre servidores Asterisk. IAX
um protocolo de transporte, tal como o SIP, no entanto faz uso apenas
de uma nica porta UDP.

18

2.3.3: Ramal Virtual


uma extenso de um nmero de telefone fixo e seu funcionamento
anlogo ao ramal telefnico que conhecemos, exceto que este Ramal denominado
"Virtual" lhe possibilita que voc receba correio de voz no seu correio eletrnico(email). Desta forma, seus amigos, parentes, colegas de trabalho, clientes,
fornecedores, ou seja, todos podero - incluindo voc tambm - deixar uma
mensagem no seu Ramal Virtual a qualquer instante. Se voc gosta e necessita
estar conectado, "on-line", um Ramal Virtual o que voc precisa. [2]

2.4: Troncos
Em uma rede privada de comutao telefnica, chama-se tronco a linha
conectada central pblica. Portanto, o tronco o canal que permite central
privada realizar ligaes externas. Uma ligao chega pelo tronco e comutada na
central para um dos ramais, ou ento parte de algum dos ramais para chegar a um
tronco. Note-se que o nmero de troncos sempre ser menor que o de ramais, visto
que um dos objetivos do PABX racionalizar a ocupao das linhas telefnicas de
um local.
Engloba todas as interconexes entre centrais. Estas podem ser por cabos
metlicos, fibra ptica ou links de rdio ou satlite.

2.5: A empresa Intelbras S.A.


Com capital 100% nacional, a Intelbras lder no mercado brasileiro de
centrais telefnicas, telefones e centrais condominiais. Fundada em 1976, atua nas
reas de Telecomunicaes, Redes e Segurana eletrnica, com presena em todo
o territrio nacional e em diversos pases na Amrica Latina e frica. Seus produtos
so ofertados em aproximadamente 9 mil pontos de venda de varejo e em 10 mil
revendedores corporativos.
Destaque para sua grande capacidade produtiva, distribuda em quatro
unidades fabris: matriz e parque fabril II em So Jos/SC (regio metropolitana de
19

Florianpolis),

filiais

em

Santa

Rita

do

Sapuca/MG

Manaus/AM.

A Intelbras possui um dos maiores centros de pesquisa e desenvolvimento privado


da Amrica Latina, alm de uma das maiores redes de assistncia tcnica no
mercado brasileiro e importantes certificaes, como a ISO 14001 na matriz e a ISO
9001 tambm na matriz, parque fabril II e filial MG.
Com cerca de 1.800 colaboradores, a Intelbras se destaca como uma das
melhores empresas para se trabalhar no Brasil, conforme pesquisas das revistas
Exame, Voc S/A e poca.

2.5.1: Linha de Produtos


A Intelbras possui mais de 30 anos de experincia no atendimento ao
mercado. Na rea de telecomunicaes, a empresa dispe de equipamentos,
servios e meios para comunicao de voz e/ou dados para uso profissional.
Sempre atenta s necessidades do mercado e, especialmente, de seus
clientes e parceiros, a Intelbras oferece as mais completas solues em Telecom,
Redes e Segurana, reunidas e integradas sob a mesma plataforma tecnolgica, na
qual todas as tecnologias interagem e convergem.
A estrutura da Intelbras possui uma equipe apta a desenvolver projetos
personalizados de comunicao para clientes corporativos em todo o Brasil. So
solues feitas para suprir necessidades especficas. O que o cliente precisa, a
Intelbras sempre busca oferecer.

2.5.2: O Projeto Infinity Solution


um projeto que atende empresas que buscam em uma nica soluo a
cobertura de toda rede telefnica. uma central robusta que agrega todas as
funcionalidades de um PABX comercial ao que existe de mais moderno em telefonia
IP.

20

2.6: Contextualizao com o curso


O presente documento est sendo desenvolvido como atividade para o
Projeto de Fim de Curso (DAS 5511), no departamento de desenvolvimento da
empresa Intelbras S/A. Vrias disciplinas do curso esto relacionadas com o
trabalho em maior ou menor participao, algumas delas so: Sistemas Distribudos,
Informtica Industrial I e II, Redes de Computadores, Fundamentos de Sistemas de
Banco de Dados.

2.7: Consideraes Finais


Neste captulo foi feito uma descrio do atual cenrio e tambm a tendncia
futura das centrais telefnicas, ambiente em que este trabalho se insere. Foi feito
tambm uma apresentao da empresa onde o trabalho foi realizado, assim como a
motivao para o mesmo.
Ns prximos captulos sero apresentados o embasamento terico
necessrio para o projeto, um detalhamento de como foi realizado e apresentao
de resultados.

21

Captulo 3: A Plataforma Infinity

O captulo 3 apresentar a estrutura do produto Infinity Solution e a descrio


do funcionamento deste sistema, bem como entender suas funcionalidades e
mostrar como ele se insere no mercado de telecomunicaes. Ser a partir deste
entendimento que situaremos na sequncia deste documento, como feito o
desenvolvimento deste produto.

3.1: Infinity Solution


A soluo Infinity foi criada pela Intelbras para competir no mercado de
centrais telefnicas de grande porte visando atender clientes que necessitam de alta
capacidade de customizao e compatvel com o protocolo de comunicao SIP.
um projeto que dispe de facilidades e acessos j conhecidos no mundo analgico e
incorpora as novas facilidades do mundo IP.[5]
Nela, as informaes referentes voz tambm podem ser transmitidas pela
Internet ou por uma rede privada sobre o protocolo SIP. Ento, agora, alm de poder
utilizar normalmente toda a estrutura da rede de telefonia instalada, o usurio da
Infinity pode tambm utilizar a rede de dados para realizar e receber chamadas
atravs dos telefones analgicos ou telefones SIP.
Alguns dos resultados imediatos so:

Diminuio dos custos de ligaes locais , DDD e DDI, por utilizar a


internet;

Unificao do plano de numerao para os ramais IP e analgicos,


tanto locais como externos;

Acesso via WEB das facilidades de telefonia e administrao.

22

3.2: VoIP
Voice Over IP (VoIP) a tecnologia que permite que informaes de voz
sejam transmitidas atravs do protocolo Internet Protocol (IP). Este conceito consiste
em digitalizar a voz, empacot-la e transmiti-la na mesma rede que usada para
transportar os pacotes de dados IP. [3][4]
O empacotamento consiste em inserir as amostras ou quadros processados
pelo codificador (CODEC) em pacotes. Esses pacotes trafegam na rede dados LAN
(Local Area Network), WAN (Wide Area Network) ou rede pblica (Internet) atravs
dos roteadores, que tomam a deciso recebendo os pacotes e escolhendo rotas
mais convenientes at os destinatrios.
Para que uma chamada telefnica VoIP gerada ou recebida chegue at o
usurio com qualidade aceitvel, necessrio que os parmetros de qualidade de
servio sejam atendidos:

Banda;

Atraso (latncia);

Jitter (variao do atraso);

Perda de pacotes de voz;

Disponibilidade;

Priorizao dos pacotes de voz.

3.2.1: Banda
A banda um parmetro necessrio para a operao adequada das
chamadas telefnicas via VoIP.
Em termos prticos, as aplicaes que gerenciam as chamadas telefnicas
VoIP geram vazes de pacotes de dados (contendo voz) que devem ser atendidas
pela rede. [5]
A largura de banda necessria para transmisso de voz na rede IP depende
de uma srie de fatores. Entre estes fatores pode-se citar a capacidade de
23

compresso dos CODECs (de aproximadamente 3 at 64 Kbps por canal de voz),


como tambm o aumento da taxa de ocupao do pacote de voz devido adio de
cabealhos das demais camadas da arquitetura TCP/IP.

3.2.2: Latncia
o tempo calculado entre o instante de transmisso de um pacote e o
instante em que o transmissor recebe a confirmao que o pacote foi recebido.
Tambm conhecida como atraso.
O atraso um fator importante no projeto de redes de dados que trafegam a
voz. Sua incidncia crtica para aplicaes de voz, que exigem comunicao
interativa em tempo real. [5]
Outros tipos de comunicao de dados podem tolerar o atraso (navegar na
Internet, download de arquivos, etc...).
Nas comunicaes de voz em PABX com tecnologia TDM, o atraso no
problema, pois cada chamada usa um circuito reservado.
Comunicaes de voz em redes de dados devem ser executadas
aproximando-se do tempo real. Para isso, os atrasos da transmisso e da rede
devem ser mantidos pequenos o suficiente para se tornarem imperceptveis aos
usurios.
Um dos geradores de atraso pode ser o acmulo de pacotes nos roteadores,
switches,

firewalls

demais

equipamentos

da

rede

de

dados.

Esse

congestionamento provocado por pacotes acumulados na pilha para transmisso e


nos

buffers

para

manter

ordenao

dos

pacotes

recebidos.

Esse

congestionamento pode ser reduzido significativamente se a rede e esses


equipamentos forem dimensionados adequadamente. Como por exemplo, usando
equipamentos de primeira linha e separar a rede local em redes menores com no
mximo 200 hosts (computadores).
Outro gerador de atrasos pode ser a utilizao de velocidades de transmisso
inadequadas ao trfego de pacotes de dados. Na LAN, onde se tem o controle,

24

utilizar conexo entre os equipamentos de rede (switches) com velocidade mnima


de 1 Gbps.
No poder ter nenhum segmento da rede LAN por onde ir trafegar pacotes
de voz com velocidade abaixo de 100 Mbps.
Durante uma conversa, cada interlocutor espera o final do discurso do outro
para iniciar o seu. Se os valores de atrasos variarem ou aumentarem, ser gerada
uma sensao de ruptura, um dilogo sinttico e cheio de tropeos: os interlocutores
comearo a falar sem ter certeza de que o outro terminou e, assim, as falas sero
sobrepostas, tornando a conversa invivel.

3.2.3: Jitter
Fenmeno caracterizado pelo desvio no tempo ou na fase de um sinal de
transmisso de pacotes de dados. O parmetro jitter para chamadas telefnicas
VoIP representa a variao no tempo de entrega de pacotes UDP com dados de
voz, devido variao na latncia (atrasos) na rede. Portanto, jitter a variao do
atraso do pacote de dados. [5]
Da mesma forma que a latncia, um jitter aceitvel depende da qualidade da
rede de dados e dos equipamentos intermedirios (roteadores, firewalls, switches).

3.2.4: Perdas de pacotes de voz


As perdas de pacotes ocorrem principalmente em funo de fatores tais
como:

Descarte

de

pacotes

nos

roteadores

switches

(erros,

congestionamentos);

Erros que podem ocorrer na rede durante o transporte dos pacotes;

Erros de roteamento de pacotes.

A perda de pacotes um problema srio para chamadas telefnicas VoIP.

25

Uma taxa de perda de pacotes de voz at 5% do total de pacotes de voz


aceitvel, ou seja, neste caso a qualidade do udio da chamada telefnica VoIP no
significativamente afetada.

3.2.5: Disponibilidade
Em termos prticos, a disponibilidade uma medida da garantia do transporte
de pacotes de voz ao longo do tempo e depende de fatores tais como:

Disponibilidade dos equipamentos utilizados na rede proprietria (rede


do cliente);

Disponibilidade da rede pblica, quando a mesma utilizada


(operadoras de telecomunicaes, carriers, ISPs - Internet Service
Providers).

Requisitos de disponibilidade acima de 99,9% do tempo so comuns para


aplicaes de comunicaes VoIP. Ento, a rede de dados e seus equipamentos
devem ser projetados para apresentarem uma disponibilidade acima de 99,9%.

3.2.6: Priorizao dos pacotes de voz


A priorizao em redes de dados com chamadas telefnicas VoIP contribui
para diminuio da variao do atraso dos pacotes de voz.
Os equipamentos de roteamento na rede so programados para identificar os
pacotes de voz e coloc-los na frente dos pacotes de dados na fila de transmisso.
A propriedade de priorizao de pacotes j est implementada em redes IP
desde a verso 4 do protocolo IP que do ano de 1981, atravs do campo de oito
bits do cabealho IP denominado ToS (Type of Service).[5]
Esse campo informa aos dispositivos de rede que os pacotes que tenham
esses bits marcados possuem nveis de servio diferenciados que determinam a
preferncia na hora da transmisso do pacote.

26

Os pacotes de voz transmitidos pela Infinity so enviados com o campo ToS


marcados para serem tratados com prioridade pelos equipamentos de rede.
Todos os equipamentos utilizados na rede de dados (roteadores, switches,
firewalls, servidores) devem ter essa propriedade de tratar pacotes prioritrios
habilitada.
Todos os dispositivos VoIP utilizados na rede, como ATAs, telefones IP e
Softfones, devem transmitir pacotes de voz com o campo ToS marcado com
prioridade.
No caso de utilizao de Softfone, essa propriedade de priorizao deve ser
habilitada tambm no sistema operacional.

3.3: Protocolo SIP


um protocolo utilizado para estabelecer chamadas e conferncias atravs
de redes via IP. Foi projetado tendo como foco a simplicidade, e, como um
mecanismo de estabelecimento de sesso, ele apenas inicia, termina e modifica a
sesso, o que o torna um protocolo que se adapta confortavelmente em diferentes
arquiteturas.
O SIP possui um papel cada vez mais importante na telefonia IP
principalmente devido a sua simplicidade, flexibilidade, segurana, facilidade de
mobilidade e, principalmente, devido a grande aceitao de fabricantes de IP PABX,
Gateways e telefones IP. [4]

3.4: O Produto
A seguir ser apresentado as caractersticas da central telefnica Infinity, bem
como suas especificaes de hardware e funcionalidades. [5][6][7]

27

3.4.1: Integrao da Infinity Solution com a rede de telefonia


A plataforma Infinity Solution est totalmente preparada para convergncia,
pois opera com VoIP em modo nativo usando o protocolo SIP. Porm tambm pode
utilizar-se de conexes com a rede pblica via TDM.
A figura abaixo exemplifica uma conexo tpica da plataforma junto rede de
telefonia fixa via E1 e SIP-Trunking.

Figura 3.1 Conexes de plataforma com a operadora

3.4.2: Licenciamento
O licenciamento da Infinity realizado atravs de software e para o Upgrade
das licenas, necessrio que se entre em contato com os canais de suporte
Intelbras.
A soluo ser instalada de acordo com cada projeto, respeitando o limite de
licenas acordados em contrato.
Os tipos de licenciamento disponveis na soluo Infinity so:

Ramais IP Infinity Solution

Ramais Analgicos/Digitais

Ramais IP Infinity Geral

Infinity Attendant Viewer


28

Obs.: Para que esse procedimento possa ser realizado, o acesso remoto
Infinity dever estar disponvel.

3.4.3: Arquitetura de Hardware


A plataforma Infinity Solution possui uma arquitetura modular o que possibilita
uma maior vida til ao equipamento, podendo ser facilmente ampliada. Outra
caracterstica a possibilidade de aproveitamento da rede de dados e telefnica j
existente, desde que possua os requisitos necessrios exigidos pelo sistema. Na
figura a seguir, podemos observar um rack com 4 mdulos infinity extension, um
servidor Softswitch e um switch Intelbras.

Figura 3.2 Soluo Infinity

O mdulo Infinity Softswitch composto por um servidor que contempla todas


as funcionalidades e tambm os softwares que compem a plataforma.

29

Utilizado para realizar a comunicao de voz entre a Infinity Softswitch e os


Mdulos Infinity Extension atravs de um entroncamento E1 interno e entre a Infinity
Softswitch e Operadora atravs do entroncamento E1 externo.
Responsvel tambm pela interface de rede LAN (Externo: LAN0/Eth0 e
Interno: LAN1/Eth1) com o Switch, permitindo que as comunicaes telefnicas IP
sejam realizadas atravs da rede de dados disponvel.
Esse servidor possui interface de gerenciamento remoto IPMI que permite
ser acessado e monitorado remotamente, sem interveno local, diminuindo assim o
custo da manuteno e suporte.

Figura 3.3 Servidor da Supermicro

As placas de conexo E1 padro so as placas PXE 445, caracterizadas por


ser uma placa PCI onde podemos conectar at 4 links E1 por placa sendo que o
sistema utiliza at 2 destas em sua configurao mxima.
So utilizadas para realizar a comunicao de voz "interna" entre a Infinity
Softswitch e os mdulos Infinity Extension E1.
Essa placa no pode ser utilizada para realizar a interligao entre a Infinity
Softswitch com a operadora pblica de telefonia.
30

Figura 3.4 Placas PXE 445 para 4 canais E1

Outra placa de comunicao utilizada a E1 AP 414. um conjunto de


placas composta por uma placa base PCI Express onde podemos conectar at 2
links E1 e uma sobre-placa com mais 2 links E1 sendo que o sistema utiliza at 1
conjunto em sua configurao mxima.
So utilizadas para realizar a interligao entre a Infinity Softswitch e a
Operadora Pblica de telefonia via entroncamento E1. Vide figura.

Figura 3.5 Placas AP 414 para 2 canais E1

J o switch Intelbras utilizado nesta soluo o Switch Gerencivel Smart


Plus SG 2622 PR que disponibiliza 24 portas Fast Ethernet de 10/100 Mbps e mais 2
portas Gigabit Ethernet compartilhadas com 2 slots Mini-GBIC que proporcionam
conexes com alta taxa de processamento de dados para a Infinity Solution,
31

aumentando a velocidade da transferncia de pacotes que necessitem de grande


largura de banda. Possui tambm interface de gerenciamento web o que facilita sua
configurao e operao.
Existe a necessidade de se configurar pelo menos 2 Redes Virtuais (VLAN).
Por padro:
A VLAN 1 portas de 1 a 12 : tem a finalidade de interconectar os mdulos
Infinity Extension com os mdulos Infinity Softswitch.
A VLAN 2 portas de 13 a 20: destinada a conectar a Infinity Solution a
rede de voz IP e gerenciamento remoto IPMI.
Atravs da rede VLAN 2 possvel:

Acesso remoto para monitoramento, configuraes e instalao de


atualizaes pelos canais de suporte Intelbras;

Autenticao de Terminais e Ramais IP;

Autenticao de Troncos SIP.

Figura 3.6 Switch SG 2622 SR Intelbras

Por fim, o mdulo Infinity Extension responsvel pela disponibilizao das


interfaces de ramais analgicos e digitais, assim como possibilitar a conexo de
outros perifricos.
Os mdulo Infinity Extension so interconectados ao Infinty Softswitch atravs
de 1 ou 2 links E1 (ISDN) internos. Na configurao mxima da Infinity Solution, com
os 4 mdulos Infinity Extension, possvel atingir at 640 ramais analgicos ou
digitais com comutao TDM.

32

Figura 3.7 Infinity Extension

3.5: Facilidades de Uso da Central


A seguir, ser fornecido as funcionalidades de uso geral da central que depois
de configuradas, podem ser utilizadas pelos ramais atravs de comandos que
podem ser efetuados via telefone para realizar diversas tarefas. Os cdigos de
ativao destas funcionalidades podem ser alterados para um nmero que se
considere mais fcil de ser lembrado por exemplo.

33

Figura 3.8 Tela de facilidades

3.5.1: Linha Executiva


Permite ao usurio do sistema acesso externo ao equipamento, acessar
facilidades, ramais e at mesmo originar chamadas externas, conforme sua
categoria. Excelente para uso em home office ou para quem trabalha fora do
ambiente da empresa.

3.5.2: Bilhetador para tarifador proprietrio


Registro de chamadas realizadas ou recebidas externas (entrando ou saindo
atravs de um Juntor (SIP/E1) ). Estes bilhetes contm informaes sobre a
chamada, como o dia e a hora (UTC, necessrio descontar o fuso-horrio) em que
realizada ou recebida, o nmero de origem e destino, o tempo de durao em
segundos, o estado (se foi ou no atendida) e a operadora.
Os bilhetes dos Mdulos Infinity Extension e Infinity Softswitch so
repassados para o Controller Corporate, que realizar a tarifao.
34

A Infinity Softswitch armazenar at 50.000 bilhetes. Aps esse limite, os


bilhetes mais antigos sero sobrescritos.

3.5.3: Cdigo de Conta


As informaes a respeito das chamadas externas podem ser associadas a
determinados cdigos denominados "Cdigos de contas" sendo uma forma de
gerenciar as chamadas telefnicas (destinadas a nmeros da rede pblica) atravs
de nmeros de contas, facilitando assim a contabilizao de gastos.
Este cdigo de custo definido pelo configurador do sistema. Sendo
composto por uma seqncia de at 5 dgitos (0...9) aleatrios. Um exemplo de
aplicao seria a associao do cdigo a uma conta de projeto para que ao final
deste possa ser apurado o custo relativo s chamadas telefnicas.
Quantidade de contas para a Infinity Solution de 300 contas para o sistema.
Se o ramal (TDM e SIP) possuir display, o cdigo de conta + senha
aparecero no display e ficaro no registro de ltima chamada efetuada.

3.5.4: Estacionamento de chamadas


possvel estacionar uma chamada atendida e deix-la num local apropriado
(estacionamento) para que possa ser capturada no momento oportuno pela pessoa
a quem se destina.
Para os ramais TDM, existe tambm o estacionamento de chamadas por
mdulo. O limite de 10 posies por mdulo Infinity Extension e tambm pode ser
realizado atravs de cdigos de facilidades.

3.5.5: Agenda Coletiva


Esta programao permite a criao de uma agenda coletiva contendo
nmeros de uso geral para ser usada pelos ramais. Nesta agenda podero ser
memorizados ate 100 nmeros telefnicos que sero identificados pela numerao
35

de 01 a 100. Podem-se incluir privilgios especiais para nmeros contemplados na


agenda.

3.5.6: Atendimento pela identidade do chamador


Esta funcionalidade permite o redirecionamento de uma chamada para um
ramal especfico referenciado pelo nmero do originador.

3.5.7: Atendimento por comando


Esta funcionalidade permite a utilizao do ramal fora do gancho. As
chamadas so atendidas mediante a digitao de um comando no ramal.
Obs.: Disponvel apenas para ramal TDM.

3.5.8: Cadeado
Permite bloquear o ramal para no gerar chamadas externas. Este bloqueio
poder ser total ou de acordo com a categoria escolhida: chamadas locais, DDD,
DDI, chamadas regionais, celular local, celular DDD, celular DDI, celular regional.

3.5.9: Captura de chamada de grupo de ramais


Esta facilidade possibilita atender as chamadas dirigidas a outros ramais que
no foram atendidas ou que estejam estacionadas ou retidas. E possvel capturar
chamadas externas e internas, com exceo de chamadas de despertador e
rechamadas.

Essa facilidade est disponvel apenas para os ramais TDM que


estejam no mesmo mdulo.

Os ramais IP somente podero capturar chamadas de outros ramais


IP.

36

3.5.10: Chamada de emergncia


Realiza uma chamada pr-programada para um nmero interno ou externo
central. Pode ser utilizada para chamar o setor de segurana da empresa ou a
prpria polcia.
Essa facilidade tambm pode ser configurada atravs do cdigo de facilidade.

3.5.11: Chefe-Secretria
Possibilita estabelecer rapidamente uma chamada entre o chefe e a
secretria, priorizando a comunicao dele sobre qualquer ligao.

3.5.12: Conferncia
Possibilita a integrao de mais de uma chamada ao mesmo tempo, podendo
ser por ramal ou chamada externa, tornando possvel a comunicao de at 5
participantes no mdulo. Se a conferncia for realizada na sala de conferncia
podemos ter at 10 simultneas com at 10 participantes cada.

3.5.13: Consulta
Mesmo durante uma chamada, possvel ligar para um ramal, grupo ou
nmero externo, sem precisar desligar. Enquanto estiver realizando a consulta, a
chamada anterior ficar em espera.

3.5.14: Despertador
Com esta funcionalidade, pode-se programar o ramal para despertar uma
nica vez, nos dias teis, todos os dias ou a cada perodo de tempo definido.

37

3.5.15: Desvio de chamadas


Permite que as chamadas recebidas pelo ramal sejam desviadas para serem
atendidas por outro ramal TDM/SIP, grupo de ramais, para um nmero externo (via
E1 ou trunk SIP, inclusive celular), atendimento automtico ou correio de voz.

3.5.16: Hotline
Esta facilidade permite o acesso a um ramal, a uma linha de uma rota, a um
grupo ou a um nmero externo, logo aps a retirada do fone do gancho, sem a
necessidade de nenhum comando.

3.5.17: Fila de chamada


Disponvel apenas para ramais TDM. Se ramal (ramal analgico ou digital) for
telefonista, tem fila de at 20 posies.Se ramal (ramal analgico ou digital) no for
telefonista, ter uma fila de at 4 posies.
No caso de ramal SIP, no tem fila de chamada, porm, dependendo do
terminal, ele pode ter mais de uma linha, permitindo a funo de chamada em
espera.

3.5.18: Identificador de chamadas


O sistema dispe da funo de identificao de chamadas (DTMF ou FSK)
para todas as linhas telefnicas. H necessidade apenas de habilitao atravs do
Programador Web e a contratao do servio junto companhia telefnica.

3.5.19: Intercalao
A intercalao permite que voc monitore uma chamada que esteja em
andamento atravs de outro ramal. Esta facilidade bastante til para ramais que

38

precisam se comunicar com urgncia, no podendo aguardar que o outro ramal


desocupe.
Facilidade disponvel apenas para ramal TDM.
Os usurios devem estar cientes dessa facilidade devido a questes
legais de sigilo.

3.5.20: Monitorao de ambiente


A monitorao de ambiente permite que o telefone de um ramal seja utilizado
como um microfone para captar os sinais de udio em um ambiente. muito
utilizada para monitorar o quarto de crianas, idosos, doentes, deficientes e para
outras necessidades.

3.5.21: Msica de espera


A central oferece a possibilidade de msica digital interna. Com esta
facilidade possvel executar uma msica para todas as chamadas que estejam em
fila de espera. Essa msica interna dever ter no mximo 30 segundos de gravao.
O Formato do arquivo de msica que deve ser obedecido o que segue:
WAVE, 8 KHz, 16 bits, mono. Disponvel tanto para ramais TDM quanto para ramais
SIP.

3.5.22: No perturbe
Com esta facilidade, o usurio pode programar para que nenhuma chamada
seja destinada a seu ramal, evitando interrupes em reunies, processos criativos,
etc. Apenas para ramais TDM, nos ramais IP depende da funcionalidade do
aparelho.

39

3.5.23: Pega trote


Este recurso possibilita refazer automaticamente a ltima chamada dirigida ao
seu ramal, identificando possveis trotes.

3.5.24: Pndulo
Esta facilidade possibilita trocar a chamada corrente por outra que esteja na
fila de atendimento, sejam essas chamadas internas ou externas.

3.5.25: Plano de numerao flexvel


O plano de numerao associa as posies de Ramais, Linhas externas,
Grupos e outros nmeros que podem ser selecionados em conjunto com as
facilidades ou comandos de programao com a finalidade de executar uma funo.
O sistema possui um plano de numerao completamente configurvel. Alm
da troca da numerao dos ramais, tambm podem ser alterados os cdigos de
comandos de todos os servios oferecidos na pgina web.
O numero de linhas externas e ramais disponveis assim como o Plano de
Numerao, dependem da configurao local do seu sistema.

3.5.26: Rechamada
A rechamada permite realizar, automaticamente, uma chamada para um
ramal ou nmero externo que est indisponvel no momento, assim que este esteja
disponvel.
Cada ramal pode ativar apenas uma rechamada. Uma nova rechamada
apaga a anterior.

40

3.5.27: Servio noturno


Este recurso possibilita a alterao das configuraes da central de acordo
com o turno de trabalho.
possvel tambm gravar uma mensagem para informar aos originadores de
chamada o horrio de expediente da empresa, por exemplo.

3.5.28: Siga-me
A funo siga-me consiste no nmero para o qual sero transferidas todas as
chamadas destinadas ao ramal.
Com este recurso possvel transferir todas as chamadas destinadas ao
ramal para telefones externos como celular ou ramais. O usurio pode ser
encontrado onde quiser.

3.6: Consideraes Finais


Neste captulo foi apresentado a proposta da Intelbras relacionada centrais
telefnicas de grande porte. As caractersticas da soluo Infinity puderam ser
detalhadas a fim de mostrar a base do hardware utilizado e as facilidades que o
produto oferece e quais as suas vantagens.
A seguir, ser detalhado melhor no captulo seguinte a estrutura do software
do sistema que envolve este trabalho e as ferramentas utilizadas na sua confeco.

41

Captulo 4: Estrutura do software e ferramentas do sistema

Neste captulo ser detalhada a estrutura do software da Infinity e o seu


ambiente de desenvolvimento. Sero apresentadas as ferramentas utilizadas no
projeto, as linguagens de programao utilizadas e o motivo da escolha das
mesmas. [5][6]

4.1: Comunicao Inter-processos


A plataforma Infinity nasceu da interconexo de centrais da famlia Impacta
Intelbras atravs dos links E1 um servidor que trouxesse uma interface WEB que
implementava os recursos encontrados em um PABX convencional, utilizando a
tecnologia VoIP, conforme a figura a seguir.

Figura 4.1 Esquema da Comunicao Inter-processos

42

Este sistema Infinity contempla uma gama de tarefas sncronas e outras


assncronas. Um banco de dados SQL foi desenvolvido para a manipulao de
dados dentro do servidor. Dessa forma, a arquitetura final da comunicao interprocessos pode ser visualizada na figura que segue.

Figura 4.2 Comunicao Inter-processos completa

Alguns mdulos apresentados sero explicados detalhadamente para o


entendimento completo do sistema.

4.1.1: Softswitch
atravs deste mdulo que as funes so processadas na infinity, tais
como:

Comutao de pacotes;

Rodar servios de bilhetagem, sincronismos, programao, pginas


Web e armazenamento de dados;

Prover as facilidades de ramais IP (SIP);

Prover interconexo com rede de telefonia pblica, com entroncamento


via:
- troncos SIP;
43

- troncos IAX (interconexo com outras Infinity);


- troncos E1: R2 digital e RDSI (ISDN);
- troncos Analgicos

Servios de telefonia: correio de voz, salas de conferncia, entre


outras;

Este mdulo realiza a interconexo com os mdulos Infinity Extension via Link
E1 ISDN.

4.1.2: Infinity Extension


Para este mdulo reservam-se as funes de interconexo com o mdulo
Softswitch via Link E1 ISDN e a disposio de todos os ramais analgicos e digitais
que comportam o sistema.

4.1.3: IctiMaster
O sistema necessitou possuir um software capaz de se comunicar com o
Sofswitch, os mdulos Infinity Extension e o BD a fim de prover uma integrao
entre as informaes e tambm ser capaz de garantir a integridade das mesmas.
atravs desse software que novas funcionalidades podero ser desenvolvidas para a
Infinity.
O sistema atravs do IctiMaster capaz de prover a comunicao com todos
os processos de maneira integrada e transparente sem a necessidade do usurio
saber em qual mdulo Infinity Extension ele precisa se conectar.
A interface de configurao Web tem acesso somente Tabela 2 do BD,
deixando a cargo do IctiMaster a integrao das informaes entre as Tabelas 1 e 2
do BD.
O software IctiMaster identifica por meio de sinais do sistema operacional a
necessidade de se executar operaes com o BD a fim de garantir a consistncia
das informaes em todo o sistema.
44

4.1.4: IctiConsole
Os softwares IctiMaster, BillMaster, IctiSync e IctiSNMP se comunicam com
os mdulos Infinity Extension atravs do software IctiConsole. Esta comunicao se
d atravs do protocolo TCP/IP.
O software IctiConsole foi gerado a partir do IctiService (verso Windows para
comunicao com centrais Intelbras). Foi utilizada a verso compilada para o
sistema operacional Linux, fazendo as devidas alteraes para que seja possvel a
execuo de quatro instncias, escutando diferentes portas, em um mesmo servidor.

4.1.5: IctiSync
Processo responsvel pelo sincronismo da Infinity, ou seja, manter o mesmo
status em todos os mdulos.
Mantm o sincronismo de status dos ramais, LEDs das TIs, status dos
ramais VoIP, programao de ramais (cdigo de conta, calendrio, etc...), acerto de
data/hora, etc...
O IctiSync indicar quando houve mudana no BD do mdulo Infinity
Extension para atualizao dos mdulos.

4.2: Ferramentas de software


Agora que foi possvel entender a estrutura da comunicao entre os
processos que ocorrem no interior do sistema Infinity, pode-se apresentar o
ambiente de programao e as ferramentas utilizadas para o desenvolvimento deste
produto. Cabe ressaltar que o objetivo deste trabalho est voltado ao ambiente de
um programador WEB, dessa forma, o foco desta descrio ser voltado para tal
situao.

45

4.2.1: Navegador WEB


Um navegador WEB, tambm conhecido pelos termos em ingls web
browser ou simplesmente browser, um programa de computador que habilita seus
usurios a interagirem com documentos virtuais da Internet, tambm conhecidos
como

pginas

da web,

que

podem

ser

escritas

em

linguagens

como HTML, ASP, PHP, com ou sem linguagens como o CSSe que esto
hospedadas num servidor Web.
Os Navegadores Web, ou Web Browsers comunicam-se geralmente
com servidores Web (podendo hoje em dia se comunicar com vrios tipos de
servidor),

usando

principalmente

o protocolo de

transferncia

de

hiper-

texto HTTP para efetuar pedidos a ficheiros ou arquivos, e processar respostas


vindas do servidor. Estes ficheiros ou arquivos so por sua vez identificados por
um URL.
O navegador, tem a capacidade de ler vrios tipos de arquivos sendo nativo o
processamento dos mais comuns (HTML, XML,JPEG, GIF, PNG, etc.), e os
restantes possveis atravs de plugins (Flash, Java, etc.), mas tambm tem a
capacidade de trabalhar tambm com vrios outros protocolos de transferncia.
A finalidade principal do navegador fazer-se o pedido de um determinado
contedo da Web e providenciar a exibio do mesmo. Geralmente, quando o
processamento do ficheiro no possvel atravs do mesmo, este apenas transfere
o ficheiro localmente. Quando se trata de texto (Markup Language e/ou texto
simples) e/ou imagens bitmaps, o navegador tenta exibir o contedo.
Os navegadores mais primitivos suportavam somente uma verso mais
simples de HTML. O desenvolvimento rpido dos navegadores proprietrios, porm,
levou criao de dialetos no-padronizados do HTML, causando problemas de
interoperabilidade na Web. Navegadores mais modernos (tais como o Internet
Explorer, Mozilla Firefox, Opera, Safari e o Chrome do Google) suportam verses
padronizadas das linguagens HTML e XHTML (comeando com o HTML 4.01), e
mostram pginas de uma maneira uniforme atravs das plataformas em que rodam.
no navegador WEB que o usurio da Infinity visualiza todas as telas e
configura todas as funes do produto, com fcil utilizao, rapidez e eficincia nos
movimentos.
46

O acesso ao sistema via programador Web pode ser executado de qualquer


navegador comumente utilizado no mercado. O Mozilla Firefox foi neste caso o
utilizado como base para o desenvolvimento e a manuteno do produto. Dessa
forma, visualizamos o sistema Infinity como mostra a figura a seguir.

Figura 4.3 Sistema Web da Infinity

4.2.2: Banco de Dados MySQL


Um Bancos de dados ou bases de dados so colees de informaes que
se relacionam de forma que crie um sentido. So de vital importncia para
empresas, e h duas dcadas se tornaram a principal pea dos sistemas de
informao. So operados pelos Sistemas Gerenciadores de Bancos de Dados
(SGBD), que surgiram na dcada de 70. Antes destes, as aplicaes usavam
sistemas de arquivos do sistema operacional para armazenar suas informaes. Na
dcada de 80 a tecnologia de SGBD relacional passou a dominar o mercado, e
atualmente utiliza-se praticamente apenas ele. Outro tipo notvel o SGBD
47

Orientado a Objetos, para quando sua estrutura ou as aplicaes que o utilizam


mudam constantemente. [8]
A principal aplicao de Banco de Dados controle de operaes
empresariais. Outra aplicao tambm importante gerenciamento de informaes
de estudos, como fazem os Bancos de Dados Geogrficos, que unem informaes
convencionais com espaciais.
A Infinity, por sua vez, possui um banco de dados que trabalha com SQL ou
Linguagem de Consulta Estruturada. Esta linguagem um grande padro de banco
de dados. Isto decorre da sua simplicidade e facilidade de uso. Ela se diferencia de
outras linguagens de consulta a banco de dados no sentido em que uma consulta
SQL especifica a forma do resultado e no o caminho para chegar a ele. Ela uma
linguagem declarativa em oposio a outras linguagens procedurais. Isto reduz o
ciclo de aprendizado daqueles que se iniciam na linguagem.
O MySQL, um SGBD que utiliza a linguagem SQL e um dos banco de
dados mais populares ao longo do mundo. Para este projeto, foi definida a sua
utilizao devido ao seu excelente desempenho e estabilidade, facilidade de uso e
compatibilidade com a linguagem PHP.

4.3: Linguagens de Programao


4.3.1: PHP
O PHP uma linguagem de script de cdigo aberto do lado do servidor
projetado para o desenvolvimento da Web. um tipo de linguagem de scripts do
lado do servidor para ser incorporado em um documento HTML fonte ao invs de
chamar um arquivo externo para processar dados. O cdigo interpretado por um
servidor Web com um mdulo processador PHP que gera a pgina da Web
resultante. Ele tambm evoluiu para incluir uma capacidade de interface de linha de
comando e pode ser usado em aplicaes grficas standalone. PHP pode ser
implantado na maioria dos servidores Web e tambm como um escudo autnomo
em quase todos os sistemas operacionais e plataforma, gratuitamente como um
software livre. [8][9]
Com PHP voc no est limitado a gerar somente HTML. As habilidades do
PHP incluem gerao de imagens, arquivos PDF e animaes Flash (utilizando

48

libswf ou Ming) criados dinamicamente, on the fly. Voc pode facilmente criar
qualquer padro texto, como XHTML e outros arquivos XML. O PHP pode gerar
esses padres e os salvar no sistema de arquivos, em vez de imprim-los, formando
um cache dinmico de suas informaes no lado do servidor. [8]
Talvez a mais forte e mais significativa caracterstica do PHP seu suporte a
uma ampla variedade de banco de dados.
O PHP tambm tem suporte para comunicao com outros servios utilizando
protocolos como LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (em Windows) e
incontveis outros. Voc pode abrir sockets de rede e interagir diretamente com
qualquer protocolo. O PHP tambm suporta o intercmbio de dados complexos
WDDX, utilizado em virtualmente todas as linguagens de programao para web. [9]
Assim, com tantas caractersticas importantes, o desenvolvimento da
plataforma Infinity nasceu com a utilizao do PHP, onde foi possvel juntamente
com o Banco de Dados, manipular os dados da central PABX e mostrar na tela do
navegador Web uma srie de informaes necessrias para a construo da
soluo de telecomunicao.

4.3.2: JavaScript
O JavaScript uma linguagem de programao interpretada por computador.
originalmente implementada como parte de navegadores web, de modo que do lado
do cliente scripts podem interagir com o usurio, controlar o navegador, comunicar
de forma assncrona e alterar o contedo do documento que apresentado. [10]
Foi concebido baseado em prottipo de linguagem de script, que dinmica,
fracamente tipada e possui funes de primeira classe. Ele usa sintaxe influenciada
pelo C. Alm disso, JavaScript copia muitos nomes e convenes de nomenclatura
de Java, mas as duas lnguas so independentes e tm semnticas muito diferentes.
Os princpios fundamentais de projeto dentro de JavaScript so tomadas a partir das
linguagens de programao de auto e Scheme. uma linguagem multi-paradigma,
apoiando orientao a objeto. [10][11]
O JavaScript foi formalizado na linguagem padro ECMAScript e usado
principalmente na forma de client-side JavaScript (como parte de um navegador).
49

Isto permite o acesso programtico a objetos computacionais dentro de um ambiente


de acolhimento. [11]
Para o projeto em questo, a utilizao do JavaScript se fez necessria em
todas as situaes onde alguma utilizao assncrona ocasiona mudanas no
sistema.

4.3.3: Html
HyperText Markup Language (HTML) a linguagem de marcao principal
para criao de pginas web e outras informaes que podem ser exibidos em um
navegador da web.
O HTML escrito na forma de elementos HTML consistindo de tags entre
colchetes angulares (como <html>), dentro do contedo da pgina. HTML tags mais
comumente vm em pares, como <h1> e </ h1>, apesar de algumas marcas,
conhecidas como elementos vazios, so no pareado, para <img> por exemplo. A
primeira tag em um par a marca inicial, a segunda tag a tag final (eles tambm
so chamados de marcas de abertura e fechamento). Dentre estas tags, web
designers podem adicionar texto, tags, comentrios e outros tipos de contedo
baseado em texto. [11]
O propsito de um navegador da web a leitura de documentos HTML e
comp-los em pginas web visveis ou audveis. O navegador no exibe as tags
HTML, mas usa as tags para interpretar o contedo da pgina.
Elementos HTML formam os blocos de construo de todos os sites. HTML
permite que imagens e objetos sejam incorporados pgina e possam ser usados
para criar formas interativas. Ele fornece um meio para criar documentos
estruturados denotados por semntica estrutural de texto, tais como ttulos,
pargrafos, listas, links, citaes e outros itens. Ele pode inserir scripts escritos em
linguagens como JavaScript, que afetam o comportamento de pginas HTML. [11]
Os navegadores da Web tambm pode consultar a Cascading Style Sheets
(CSS) para definir a aparncia ao layout de texto e outro material. Portanto, o HTML
est diretamente relacionado ao cdigo fonte do sistema Infinity sendo fortemente
utilizado.
50

4.4: Consideraes Finais


Todas as linguagens de programao acima introduzidas so utilizadas no
sistema da soluo Infinity e tarefa do desenvolvedor conhec-las para efetuar as
modificaes necessrias no produto.
Durante um perodo inicial deste trabalho, reservou-se algum tempo para
entend-las melhor a fundo e se familiarizar com o cdigo fonte do produto.
Aps tais consideraes e montagem de um cenrio de desenvolvimento do
produto, foi possvel iniciar a implementao de funcionalidade e correes de bugs
que sero apresentados no captulo 6.

51

Captulo 5: Processo de Desenvolvimento e Manuteno

O captulo 4 destina-se ao detalhamento do processo de desenvolvimento e


manuteno dos produtos, no qual adotada pela empresa a utilizao da
ferramenta Mantis. Dessa forma, veremos a seguir como as deficincias no produto
so reportadas, quais as vrias etapas do processo de soluo e implementao
das alteraes e como so definidos os testes e em quais respectivos cenrios. [12]

5.1: O Mantis
O Mantis um sistema de acompanhamento de defeitos de fcil utilizao,
onde podem ser executadas customizaes de propriedades por projeto,
customizaes de fluxo de tratamento do defeito por projeto e notificaes de
alteraes dos casos.
Para o desenvolvedor de software, a ferramenta Mantis como um repositrio
de tarefas a serem cumpridas e um posterior registro de quais aes foram
executadas para a soluo/implementao de melhorias.
Do ponto de vista de cada colaborador da empresa que participa de um
projeto em andamento, o cenrio inicial mostra todos os casos de Mantis que
existem no projeto de forma organizada, sendo divididos em: No atribudos,
Resolvidos, Relatados por mim, Modificados recentemente, Monitorados por mim,
Atribudos a mim.
Alm disso, caso o usurio do Mantis trabalhe em mais de um projeto em
questo, a alterao do projeto padro permite fazer um filtro inicial dos casos da
Minha Viso.
Esta ferramenta contempla alguns tipos de usurio destinados a funes
especficas dentro de sua utilizao e que sero apresentadas a seguir.

52

Figura 5.1 Seleo de projetos no Mantis

5.1.1: Nveis de Usurio do Mantis


Na concepo do Mantis, foi efetuada em sua estrutura uma diviso de nveis
de usurio, onde cada nvel possui diferentes tipos de permisses e acessos. As
permisses podem ser diferentes para cada projeto.
Um usurio cadastrado com um nvel em um projeto pode ter outro nvel em
outro projeto, por exemplo: Ser Relator em um projeto e Administrador em outro.
Um nvel superior faz tudo o que o nvel inferior faz. Sendo assim, classificamse da seguinte forma:

Visualizador somente visualiza;

Relator cria casos;

Atualizador;

Desenvolvedor;

Gerente;

Administrador.

5.2: Estados do defeito


Conhecidos popularmente como bug, o defeito num software registrado no
sistema deve receber a classificao do seu estado atual. A cada atualizao o
53

usurio

que

efetuar

alguma

alterao

no

andamento

do

processo

de

desenvolvimento do defeito deve registrar uma atualizao do estado deste defeito.


Sendo assim, pode-se classificar um defeito da seguinte forma:

Novo;

Retorno Defeito foi reaberto;

Admitido Desenvolvedor aceitou o caso;

Pronto para teste Apto para teste de confiabilidade;

Atribudo Desenvolvedor foi escolhido;

Resolvido;

Fechado.

Para o correto andamento do procedimento, existe um fluxo normal de


desenvolvimento a ser seguido, onde apenas o usurio administrador poder alterar
tal fluxo. A partir do momento em que um novo Mantis relatado e descrito no
sistema, por padro, deve-se proceder da seguinte forma:

Figura 5.2 Esquema do fluxo de desenvolvimento

54

O Mantis Novo o defeito que acaba de ser reportado e ainda no foi


repassado ao desenvolvedor que ir analis-lo e efetuar as correes que achar
necessrio. Neste estado Novo, o Mantis pode ter sido reportado por qualquer
pessoa da equipe que tenha se deparado com tal situao, seja desenvolvedor, ou
algum membro responsvel pelos testes de confiabilidade em bancada ou nos testes
de campo do produto. Exigncias e customizaes advindas dos clientes e usurios
finais do produto tambm costumam ser convertidas em Mantis e nem sempre so
defeitos propriamente ditos, mas tambm melhorias que o sistema poderia
contemplar.
O estado Atribudo quando o Mantis est destinado para o colaborador em
questo que ir solucionar o caso, ou seja, um membro da equipe de
desenvolvimento inicialmente. Este mesmo Mantis s ser atribudo a outro membro
da equipe quando estiver resolvido ou na situao de pronto para teste, pois a ser
a equipe de confiabilidade e testes que dever executar suas funes.
Quando estiver Admitido, significa que o colaborador ao qual o Mantis est
atribudo est analisando o caso naquele corrente momento ou possivelmente j
est em estgio avanado de desenvolvimento.
Para o status Resolvido, a ocorrncia potencialmente j foi dada como
solucionada pelo desenvolvedor. Entretanto, existe a necessidade de efetuar testes
de confiabilidade para que a correo seja validada e o Mantis possa ser Fechado.
Apenas depois de solucionado o caso e efetuados os testes de desempenho
no sistema, o Mantis poder ser Fechado. Assim, significa que o caso foi dado como
completo e a correo ou nova funcionalidade foi validada. Ainda sim, caso seja
detectado que a ocorrncia ainda apresenta falhas ou inadequaes referentes
descrio inicial do que foi relatado no Mantis, o caso dever ser reaberto e o
desenvolvedor que efetuou modificaes no sistema do produto em questo
receber o Mantis de Retorno. Novamente, ser necessrio admitir o caso e iniciar o
ciclo novamente.

55

5.3: Relatar caso


Existem algumas particularidades e peculiaridades que devem ser entendidas
na hora de relatar um novo caso de Mantis. muito importante que o usurio,
quando encontre alguma irregularidade no sistema do produto, saiba mensurar e
classificar as necessidades e prioridades que devem ser tomadas para o
desenvolvimento e a futura implementao da soluo. So importantes definies
como: nvel de gravidade do caso, nvel de prioridade que se deve visualizar para
avaliar o caso e solucion-lo, freqncia de ocorrncia do problema constatado,
entre outras.
Dentre as principais informaes que um colaborador deve compreender para
a boa descrio de um caso de Mantis, cabe detalhar melhor as necessidades e as
possibilidades que podem se enquadrar num caso de Mantis.
Em relao gravidade de um caso:

Recurso

Trivial

Texto

Pequena

Mdia

Alta

Travamento

Sugesto

Quanto a prioridade:

Nenhuma

Baixa

Normal

Alta

Urgente

Imediato

56

Em relao freqncia:

Sempre

s vezes

Aleatrio

No se tentou

Incapaz de reproduzir

N/D

Outros campos classificados como obrigatrios so o resumo, a descrio,


quais os dependentes do projeto, anexo de arquivos sendo figuras ou logs, passos
para reproduzir o caso e a verso do sistema onde o problema ou situao foi
detectada.
A partir dessas situaes, o relator deve ter sempre em mente que quanto
melhor e mais bem especificado e detalhado seja o erro, em melhores condies a
equipe de desenvolvimento ter condies no somente de entender a ocorrncia,
mas tambm para identificar os maiores pontos impactantes do Mantis no sistema.

5.4: Visualizao do caso


Para a manuteno e desenvolvimento de um projeto, existe ainda uma
grande quantidade de recursos necessrios para a organizao e o bom andamento
na correo dessas ocorrncias dentro de um mesmo projeto. Quando o usurio do
Mantis visualiza um caso, deve-se permitir visualizar, incluir e excluir arquivos, bem
como alterar dados do caso e observar um histrico de modificaes efetuadas.
Neste cenrio de visualizao, pode-se observar detalhadamente os seguintes
passos configurveis de um caso de Mantis:
- Ao Atribuir: permite definir quem deve tratar o caso

57

Figura 5.3 Atribuio de caso de Mantis

- Ao Reabrir: status de retorno que s aparece aps o caso ter sido


fechado

Figura 5.4 Estado de retorno

- Ao Alterar Status: permite alterar o estado do caso, dependendo do fluxo


definido para o projeto podemos no ter todas as opes

58

Figura 5.5 Alterar status de Mantis

- Ao Monitorar: faz com que o Mantis envie e-mails de notificao sempre


que houver alterao do caso. Aparece na tela minha viso.
- Ao Apagar: excluir o caso. Apenas deve ser usado pelo administrador
- Ao Mover: move um caso de um projeto para outro projeto
- Ao Criar Clone: cria uma cpia do caso. Pode ser utilizado para dividir
um caso em dois ou mais. Alm disso, pode criar outro caso que esteja vinculado ao
original ou criar um identificador novo.
Ainda assim, podemos classificar em 5 tipos de clones:

Est relacionado

pai de

filho de

duplicado de

Possui duplicado

59

Figura 5.6 Relacionar caso de Mantis clonado

- Caso Clone: o caso que foi clonado apresenta os seus relacionamentos

Figura 5.7 Tela de Relacionamento de caso

- Arquivos anexados: podemos ter vrios arquivos anexados

Figura 5.8 Passos para anexar arquivos

60

- Adicionar relacionamentos: possibilita criar relacionamentos entre casos


- Alterar Status Atribuio: define quem ir resolver o caso
- Alterar Status Admitido: usurio aceita o caso
- Alterar Status Resolver caso: definir status como corrigido

Figura 5.9 Tela para corrigir caso de Mantis

- Alterar Status Tipo da resoluo: definir novo status do tipo de


resoluo entre:

Aberto

Reaberto

Incapaz de reproduzir

No corrigvel

Duplicado -> precisa definir o nmero duplicado

No um caso

Suspenso

No ser corrigido

Corrigido

61

- Alterar Status Boletim tcnico: depende do projeto em questo. Apenas


utilizado para relatrios.
- Alterar Status Corrigido na Verso: definio efetuada pelo gerente e
que de uso obrigatrio. Define tambm a verso que o profissional de
confiabilidade ir testar.
- Alterar Status Pronto para teste: definido aps teste ps correo
efetuado pelo prprio desenvolvedor. Indica que o responsvel pela confiabilidade
pode comear a testar.
- Alterar Status Retorno: significa que o caso necessita de modificaes.

Figura 5.10 Solicitao de retorno

- Alterar Status Fechado: indica que o caso foi solucionado e j poder ser
finalizado.

62

Figura 5.11 Fechar caso

- Histrico do caso: mostra todos os passos do caso

Figura 5.12 Histrico do caso

5.5: Procedimentos de testes e implementao


Conhecidas a forma de classificar um caso de Mantis e o modo que este
visualizado no sistema, deve-se entender como funciona os procedimentos de
63

confeco de um software desde o seu desenvolvimento, onde avalia-se os


requisitos do projeto que se deseja criar/atualizar e as funcionalidades que se
objetiva adicionar. dever do desenvolvedor ter estes requisitos na mo e bem
definidos, alm de conhecer a linguagem de programao bem como entender a
lgica a ser utilizada.
O engenheiro de confiabilidade, utilizando-se de um procedimento detalhado
de testes, baseia-se no conhecimento voltado s telecomunicaes, que o objeto
de estudo deste trabalho, e avalia em diversos cenrios os possveis impactos que
uma nova correo poder acarretar. Caso o desenvolvedor tenha cumprido os
requisitos necessrios para executar tais funcionalidades e o sistema como um todo
continua se comportando conforme o desejado e esperado, os casos podero ser
validados e as novas verses do produto vo sendo liberadas.
Assim,

como no caso de estudo deste trabalho, o produto em questo

utilizado j se encontra no mercado, mas continua passvel de atualizaes e


modificaes no seu software a fim de torn-lo ainda melhor, mais estvel e com
funcionalidades que atendam as exigncias dos clientes.

64

Captulo 6: Solues do Programador WEB

Neste captulo ser apresentado o esforo de desenvolvimento e manuteno


no software do produto, a fim de elevar a qualidade do sistema e conferir robustez.
Uma breve descrio do corpo de colaboradores ser feita inicialmente para
entender o papel de cada um no andamento do projeto. Depois, ser exposto
apenas o trabalho efetuado pelo autor deste relatrio, que durante alguns meses de
trabalho solucionou 82 casos de Mantis ao todo. Cabe ressaltar que neste
documento sero expostos apenas os casos mais relevantes e de maior
complexidade no processo de melhoria contnua efetuado pelo autor.

6.1: A Equipe
Com um total de 14 colaboradores envolvidos no projeto, o esforo de
desenvolvimento do software realizado por 8 integrantes. Destes, apenas 3
integrantes contando com o autor deste relatrio so os responsveis pela tarefa de
programador WEB. Os outros 5 desenvolvedores ou executam alteraes nvel de
firmware do PABX, ou Controller, ou Bilhetador, entre outros.
Para o hardware so designados dois engenheiros e para os servios de
confiabilidade e testes do produto a equipe composta por 4 membros.
Sendo assim, o decorrer deste captulo estar voltado ao servio de WEB
onde podemos classificar como dois tipos de processos que envolvem o ambiente
de software:
Processo de Manuteno;
Processo de Desenvolvimento.

6.2: Processo de Manuteno


Inicialmente num projeto, antes mesmo de desenvolver qualquer nova
funcionalidade, classifica-se como essencial adquirir conhecimento tcnico na rea
65

de telecomunicaes. Dessa forma, iniciou-se pelos processos de manuteno at


que se adquirisse uma bagagem maior para ento partir para o desenvolvimento de
novas funcionalidades.
Dessa forma, ser mostrado a seguir algumas das ocorrncias mais
relevantes que foram solucionadas ao longo do projeto.

6.2.1: Retirar spans da lista ao configurar um mdulo


Ao instalar uma Infinity, o usurio tem por necessidade efetuar a configurao
de seus mdulos de acordo com as suas necessidades. Como visto no captulo 3,
uma central infinity poder possuir at 4 mdulos.
Para um caso exemplo onde os 4 mdulos esto instalados e habilitados nos
checkboxes da figura abaixo, deve-se configurar quais os links ativos desse mdulo.

Figura 6.1 Mdulos e configurao de links

Durante a configurao dos links, detectou-se que ao selecionar um


caminho de qualquer uma das placas dos mdulos internos (PXE ou AP),
66

esses links ficavam mantidos dentro da combo-box mesmo que estivessem


selecionados em um dos mdulo.
Como a placa dos mdulos internos so caminhos fsicos, eles no
poderiam ser duplicados no sistema, fato este que evidenciava um erro na
interface web, que apenas detectava quais placas existiam no sistema e
geravam uma lista delas na combo-box.
Para resolver tal situao, foi necessrio criar em JavaScript, uma
funo de atualizao da combo-box, que filtrasse as opes de acordo com
os links que ainda no foram utilizados nos mdulos.
Esta modificao se aplicava a uma situao assncrona e foi corrigida
de acordo com o esperado. Utilizou-se alguns conceito de array e para cada
atualizao do sistema o combo-box era remontado e exibia apenas os links
no utilizados.

6.2.2: Problema ao adicionar faixa de entradas na tabela DDR


A tabela DDR um lugar onde se associa uma faixa de ramais um
respectivo tronco. Neste caso, foi detectado um erro na criao da tabela ao tentar
criar uma faixa onde do nmero inicial at o nmero final dos ramais houvesse um
aumento do nmero de dgitos, como podemos observar na figura.

67

Figura 6.2 Tabela DDR

Para solucionar tal problema, utilizou-se dos conhecimentos em JavaScript e


efetuou-se uma lgica para comparar os valores dos campos aos quais estava
sendo tentado salvar. Caso detectasse o aumento do nmero de dgitos, o
procedimento definido para correo seria no permitir a operao de salvamento e
emitir uma mensagem na tela alertando sobre o problema. Ou seja, efetuado o
disparo do click Salvar, processaria inicialmente esta comparao e de acordo com
o resultado o sistema responderia de acordo com algumas condies determinadas
em IF than ELSE.
Enfim, tomou-se tal medida por causa de uma limitao no interior do prprio
PABX. Dessa forma, do ponto de vista de Programador WEB, esta seria o nico tipo
de soluo vivel, mas que funcionou corretamente. Para permitir o acrscimo de
dgitos sem acarretar maiores problemas a modificao deveria ser executada
diretamente no PABX.

68

6.2.3: Criao de faixa de ramais ao chegar ao limite


Como visto anteriormente, o elemento chave na composio de uma central
telefnica a possibilidade de inserir os ramais de comunicao. No captulo 2, foi
apresentado os 3 tipos de ramais existentes no sistema:
Ramal Analgico (TDM);
Ramal IP (SIP);
Ramal Virtual.
Na Infinity, estes ramais podem ser adicionados no programador Web um de
cada vez pelo boto adicionar ramal. No entanto, existiu a necessidade de criar uma
quantidade maior de ramais utilizando a funo adicionar faixa. Nesta funo, o
usurio define o nmero inicial e o nmero de quantos ramais devem ser criados.
Lembrando que apenas poderiam ser criadas faixas de um mesmo tipo de ramal.
Entretanto, foi detectado uma falha ao gerar esta faixa de ramais quando se
tentava criar um nmero elevado de 600 novos ramais. O sistema travava e no se
sabia se os ramais haviam sido criados.
Avaliando a situao, observou-se que haviam sido criados apenas os ramais
faltantes para completar limite da licena que era de 500. Assim, era necessrio
fazer uma sucesso de clculos e informar ao usurio algumas informaes antes
de cria qualquer faixa.
Como no ficava claro quantos ramais o operador poderia criar, a primeira
medida tomada foi emitir um aviso de qual licena o usurio estava utilizando e
quantos ramais de cada tipo ele poderia utilizar. Este tipo de informao j abriria 3
tipos de possibilidades, pois as licenas so especficas para cada tipo de ramal.
Alm disso, cada tipo de ramal possui particularidades na hora de serem
adicionados.
Em relao implementao, foi necessrio um grande esforo para
consultar no banco de dados as informaes de licena e dos ramais existentes. Em
PHP, estas informaes deveriam ser passadas para o gerenciador do dados
utilizando uma biblioteca JSON e ainda permitir ao usurio algumas escolhas. Dessa
forma, em JavaScript foi disparado as mensagens de aviso referentes a todas as
informaes que o usurio requisitou na hora de adicionar uma faixa. O sistema no
69

permite a criao de ramais excedendo a licena, mas cria os ramais faltantes caso
o usurio assim queira.
Este caso foi solucionado com sucesso e trouxe grande aprendizado em
relao aos elementos de telecomunicao e conceitos de programao em geral.

6.2.4: Msica externa em grupo TDM


No grupo de ramais TDM temos duas opes "Sinalizao da chamada" e
"DISA atende primeiro". A Mensagem DISA nada mais do que um arquivo de udio
gravado na memria do PABX. Atualmente estas configuraes so independentes,
porm para que a "Sinalizao da chamada" via Msica Interna ou Msica Externa 1
seja reproduzida para um nmero externo, obrigatoriamente a DISA deve atender
primeiro, conforme a figura abaixo.

Figura 6.3 Sinalizao de chamada e DISA

70

Desta forma existiu a necessidade de amarrar as configuraes para o correto


funcionamento do sistema. Quando a opo "DISA atende primeiro" for marcada, o
combo-box da "Sinalizao da chamada" torna-se configurvel, dando a opo de
escolha entre Msica Interna ou Msica Externa 1, a opo Tom de Chamada tornase default, ou seja, caso a DISA no esteja habilitada a sinalizao da fila de espera
do grupo TDM ser automaticamente por Tom de Chamada. [13]
A implementao deu-se no ambiente JavaScript onde o combo-box de
Sinalizao de chamada apenas se torna ativo se a opo DISA atende primeiro
estiver habilitada. Caso contrrio, deve marcar o combo-box obrigatoriamente com
Tom de Chamada e deix-lo desativado.

6.2.5: No possvel criar grupo de ramal comeando com zero

Para este caso observou-se que qualquer grupo de ramal que fosse criado
no poderia comear com zero, pois ao ficar registrado no sistema, o dgito
esquerda desaparecia, conforme a figura abaixo.

Figura 6.4 Grupo de ramal comeando com zero

71

Ao avaliar o caso, corrigiu-se o problema facilmente, pois quando o sistema


manipulava o nmero de acesso ele tratava como se fosse inteiro e deveria ser
tratado como se fosse string.

6.2.6: No possvel alterar tempo de ringue do grupo


O Mantis em questo foi levantado em virtude de que para os grupos de
ramais no havia a possibilidade de alterar o seu tempo de atendimento ou ringue.
Sendo assim, foi utilizado como base para corrigir este problema o padro que j era
adotado no software de um produto de menor porte na Intelbras, como se pode
visualizar na figura abaixo.

Figura 6.5 Modelo para tempo de atendimento

72

Individualmente, cada ramal registrado na infinty pode ter o seu tempo de


atendimento configurado. No entanto existem algumas situaes onde o tempo de
atendimento deveria poder ser alterado tanto para o grupo como um todo como para
qualquer participante do grupo. Para entender melhor esta situao deve-se separar
os grupos de ramais em grupo SIP e grupo Extension.
Para o grupo SIP, deve-se configurar o tempo de atendimento nico para o
grupo como um todo entre a faixa de 05 90 segundos. Esta modificao exige
alteraes em PHP, JavaScript e ainda gravar no banco de dados os tempos de
atendimento.
Para o grupo Extension, deve-se configurar o tempo de atendimento nico,
mas permitir que cada participante tenha o seu tempo alterado. Sendo assim, para
este grupo a tabela de participante tambm dever ter uma combo-box para cada
participante.
O tratamento de arrays foi importante na implementao, que foi realizada
com sucesso. Entretanto, no mbito do desenvolvimento, o teste de bancada no
era o suficiente para uma validao consciente do desenvolvedor. Apenas nos teste
que realmente foi efetivada a total validade da soluo, pois no teste de bancada o
desenvolvedor no conseguiria reproduzir todos os possveis cenrios do problema.

6.2.7: Descrio de facilidades e campos de ajuda


Esta necessidade do sistema nada mais do que uma sugesto de melhoria
para auxiliar o usurio a entender o funcionamento do sistema em seus vrios
setores de funcionamento. Dessa forma, foi necessrio realizar um levantamento de
todas as facilidades encontradas atualmente no sistema e construir um anexo
explicativo sobre os comandos e os sufixos utilizados em cada caso.
Existiam tambm alguns ambientes de configurao do sistema que ainda no
tinham nenhum tipo de referncia de ajuda. Com isso, foi efetuado uma visualizao
geral no sistema como um todo e atualizado todos os tpicos de ajuda.
Isso contribuiu para o entendimento do sistema como um todo, facilitando cada
vez mais o trabalho para desenvolver novas funcionalidade e apontar dificuldades do
produto.

73

As correes foram efetuadas em HTML, pois faziam parte apenas dos campos
texto.

6.2.8: Efetuar proteo em rotas


Foi necessrio construir uma proteo na aba de Rotas do sistema. Cada
Rota poder ser configurada para determinadas caractersticas de ligaes. Um
PABX possui rotas de entrada e sada, sendo que ela possibilitam configurar se as
chamadas que so efetuadas pela aquela rota podem ser DDD, DDI, podem no
permitir chamada para celular, entre outras.
Esta proteo definida pela equipe, visava garantir que o nmero de acesso
configurado para cada rota no estivesse sendo utilizado por algum outro lugar no
sistema, seja um simples ramal ou um grupo de ramal, etc. Sendo assim, foi
necessrio checar todos os acessos no sistema efetuando consultas no banco de
dados para no permitir que houvessem furos no sistema.
Este caso foi resolvido com certa dificuldade, pois no foi uma tarefa simples
levantar todas as possveis amarraes que o sistema poderia fazer em relao ao
acesso. No entanto, foi possvel concluir com sucesso.

6.2.9: Outros casos de Manuteno


Ainda dentro dos casos de Mantis solucionados, alguns casos pontuais
mereceram destaque e tiveram grande relevncia no intuito de tornar o sistema mais
confivel:
- Tabela da lista de participantes em desacordo com o padro da interface da
central;

- Validar registro de troncos SIP;


- Adicionar a configurao de cliente SMTP;
- Remover a configurao de feixes;
- Limitar campos para receber apenas datas vlidas no calendrio.

74

O esforo destas implementaes em sua maior parte j foram validados pela


equipe de testes e tambm se encontram operando corretamente no sistema.

6.3: Processo de Desenvolvimento


Durante o decorrer deste trabalho, houveram situaes onde uma quantidade
suficiente de ocorrncias j haviam sido corrigidas e surgia a necessidade de lanar
uma nova verso atualizada no mercado. Durante o perodo deste projeto, duas
novas verses foram testadas em sua totalidade e foram realizados os seus devidos
checklists de testes. Durante estes perodos de testes, a equipe de desenvolvimento
visualiza as possveis novas implementaes e juntamente com a liderana do
projeto e equipe de marketing, definem as diretrizes das prximas verses. nesse
momento que as idias de melhoria podem ser postas em prtica e algumas destas
so levadas ao desenvolvimento. Neste contexto, o programador WEB passou por
algumas melhorias de desenvolvimento e algumas delas sero mostradas a seguir.

6.3.1: Selecionar todos e excluir selecionados


O produto Infinity foi confeccionado inicialmente com o objetivo de executar a
maior gama possvel de funes implementadas no PABX. No entanto, alguns tipos
de funes que podem parecer bsicas, mas que apenas seriam julgadas pelos
usurios quando fossem necessrias as manipulaes de mltiplas quantidades de
ramais, grupos de ramais, troncos, uma agenda de centenas de nmeros, entre
outras, foram assim avaliadas utilizando o critrio de usabilidade do sistema.
Nesse sentido, viu-se a necessidade de incluir cones para selecionar todos
os participantes da janela e excluir mltiplos selecionados. Na figura a seguir,
podemos observar um esboo desta visualizao.

75

Figura 6.6 Selecionar todas as opes

Esta modificao deveria contemplar praticamente todas as abas de


PABX e Sistema presentes na Infinity.
A Implementao desta soluo, apesar de repetitiva, era particular de
cada tela, usufruindo assim de um perodo considervel do desenvolvedor. Incluiu a
modificao no cdigo PHP em sua sesso de visualizao para mostrar todos os
tipos de botes, o sistema necessitou de chamadas em JavaScript para detectar as
modificaes assncronas efetuadas nas telas e a troca de dados via JSON para o
sistema gerenciador. No sistema gerenciador, o programa receberia os dados de
quais os cones que foram selecionados e para exclu-los seria necessrio fazer uma
chamada de deleo no objeto de acesso de dados. Neste, deve-se apagar do
banco os dados do tipo de participante a ser excludo e retornar at o usurio as
devidas mensagens de retorno. [13]
Aps tais modificaes, o usurio ganhou muito em tempo de
operao, pois antes era necessrio deletar um participante de cada vez. Alm
disso, a correo tambm auxiliou no entendimento de vrios processos do sistema
como um todo.
76

6.3.2: Funo copiar ramais


Outra funo bastante til ao usurio que contribuiu para a praticidade e
agilidade nas operaes a funo copiar ramais. Quando uma faixa de ramais
criada, todos os ramais vem com a configurao default. Sendo assim, quando havia
a necessidade de mudar as caractersticas desses ramais, era necessrio abrir um
por um e configur-los da maneira que fosse necessrio.
Com esta nova funcionalidade, possvel copiar as caractersticas de um
ramal para uma grande quantidade de ramais, conferindo assim uma vantagem
muito grande ao se trabalhar com centenas de ramais.
Desenvolver tal funo foi interessante, pois envolveu a criao de uma nova
janela completa para o sistema, alm de efetuar um levantamento de todas as
caractersticas de cada tipo de ramal, seja, SIP, Extension ou Virtual.
Dessa forma, esta funcionalidade foi criada para cada tipo de ramal, ou seja,
apenas sendo possvel copiar ramais de mesmo tipo.
Implementou-se a lista de participantes com dois segmentos. Uma combo-box
com o ramal Copiar de e outra lista onde aparecem todos os ramais de mesmo tipo
disponveis no sistema. Alm disso, possvel escolher quais as caractersticas do
ramal deseja copiar, tudo em coluna dupla, pois existem dois turno de operao,
diurno e noturno.
O gerenciador de arquivos foi a parte mais afetada desta mudana, pois trazia
com ela todas as caractersticas para os trs tipos de ramais. O acesso ao banco de
dados tambm foi modificado. Era necessrio receber em formato XML as novas
caractersticas do ramais que estavam sendo alterados.
Ainda na implementao, em JavaScript foi necessrio adicionar as funes
de click desta nova tela e todas as mensagens de retorno com quais os tipos de
ramais foram copiados.
Por fim, tambm foi implementado uma integrao das telas de copiar,
adicionar ou adicionar faixa de ramais, na qual o parmetro selecionado na combo-box
de tipo de ramais deve ser sempre preservado ao navegar nestas operaes. Ou seja,
quando for efetuado a cpia em ramais SIP, quando confirmado, o sistema voltar para

77

a tela de ramais SIP. Se estiver em ramais Extension, voltar para Extension. Isso
confere tambm mais agilidade na navegao e uma resposta intuitiva do sistema para
o usurio.

6.3.3: Mtodo de excluso de udio


Na maioria do casos, excluir um arquivo simplesmente realizar uma
chamada de deleo no banco de dados. No entanto, para excluso de
arquivo de udio dentro do sistema um novo projeto de melhoria poderia ser
implementado.
Adicionar um mtodo de excluso de arquivos de udio do PABX que
avise ao operador onde o arquivo est sendo utilizado e se ele pode ou no ser
deletado era algo importante e necessrio para a Infinity, pois existem vrios
tipos de referncia que um udio pode ser configurado no sistema.
Assim, a implementao tambm passava por uma consulta na gama de
possveis vnculos do arquivo de udio e em seguida um retorno de mensagem
ao usurio para o caso de ele estar sendo utilizado por algum tipo de
configurao.

6.3.4: Criao de grupos participantes para agentes DAC


Um agente DAC como chamado no meio da telefonia um Distribuidor
automtico de chamadas. Suas caractersticas so:

Distribuio das chamadas uniforme, para o agente h mais tempo


livre;

Atendimento automtico compulsrio na PA, com bip no fone de


cabea do agente;

Atendimento automtico com mensagem gravada para fila de espera;

Fila de espera com msica com atendimento pela ordem de chegada;

Pr atendimento de todas as chamadas com mensagem gravada e


deteco do servio por discagem de 4 opes;
78

Pr-atendimento do servio com mensagem gravada solicitando a


identificao do cliente mediante discagem de seu cdigo de
identificao;

Fila de espera virtual - tempo programvel de espera sem atendimento,


antes de encaminhar a chamada para a fila de espera. O cliente ouve
tom de chamada e no se considera esperando ainda;

Integrao CTI (Computer & Telephony Integration) com softwares

externos.

Dentro das funcionalidades da Infinity, os agentes DAC devem ter a


possibilidade de serem agrupados em grupos DAC. Dessa forma, pode-se
implementar uma tela para que os grupos DAC contemplem mltiplos participante
sejam Agentes DAC ou Ramais, os quais cumpram as funes de atendimento da
central.
A soluo foi implementada com sucesso apenas utilizando a tela de
participantes do sistema com pequenas modificaes para contemplarem estes tipos
de grupo.

6.3.5: Outros casos de desenvolvimento


Alguns outros casos de desenvolvimento implementados que tambm
mereceram destaque como novas solues no sistema foram:
- Criao do cliente SMTP;
- Truncamento de senhas em at 10 caracteres;
- Implementao de limite de tamanho para arquivos de udio.

79

6.4: Consideraes Finais


Todos os casos de ocorrncias solucionadas e os casos de desenvolvimento
apresentados contriburam para que a soluo Infinity se tornasse um produto ainda
mais robusto e qualificado no mercado. Alm disso, existe uma srie de outras
melhorias que foram efetuadas pela equipe em geral e que fizeram parte das ltimas
atualizaes do produto.
Cabe ressaltar que os clientes que j possuem suas centrais Infinity tm
distintos cenrios de utilizao dentro de suas empresas. Existem melhorias
especficas solicitadas por alguns usurios e que no necessariamente fazem parte
das verso liberadas para a produo em seu estado inicial. Esta dinmica fez com
que a equipe organizasse os pacotes de atualizao em Releases, que organizaram
muito bem o controle de verses que so instaladas nos clientes.
Por fim, como autor e executor destas atualizaes, classificaria como
enorme o aprendizado em termos de projeto de software e tambm a possibilidade
de poder associar todos os conhecimentos obtidos ao longo do curso de engenharia
de Controle e Automao com a prtica dentro de uma empresa.

80

Captulo 7: Concluses e Perspectivas

O sistema da central Infinity apresentado pode ser considerado um produto


muito importante para empresas j nos dias de hoje, visto que os resultados
alcanados com a implantao de melhorias contnuas como essas so
consideravelmente positivas, ou seja, a empresa passa a otimizar o tempo de seus
funcionrios em suas jornadas de trabalho, alm de conseguir contatar seus
parceiros com maior rapidez.
Os procedimentos de manuteno apresentados cumpriram seus papis
dentro do sistema como um todo, pois cada um deles alcanou seus requisitos prestabelecidos, mesmo com algumas limitaes que foram ou sero corrigidas.
O papel de desenvolvedor WEB, por necessitar gerenciar mltiplas conexes,
apresentou-se num software bastante robusto e com desempenho elevado em
relao velocidade com que trata as requisies vindas de outros mdulos da
soluo. Apesar de ele poder realizar somente algumas rotinas, cada uma delas
de fundamental importncia para que o sistema funcione. Certamente, as protees
para possveis falhas nessas rotinas permitem que o software no seja interrompido
ou seu funcionamento seja comprometido, garantindo a confiana necessria para
que as novas funcionalidades pudessem ser inseridas no sistema Infinity.
Tendo

em

vista

essas

observaes

relacionadas

aos

softwares

desenvolvidos, pode-se considerar que a meta geral do trabalho de tornar o produto


mais estvel e fornecer ainda mais qualidade e funcionalidades foi concluda de
forma bem sucedida.
Entretanto, ainda se faz pertinente comentar os aspectos pessoais envolvidos
no desenvolvimento desse trabalho, isso porque houve um ganho profissional em
relao ao conhecimento e convivncia em um ambiente corporativo, alm de se
intensificar e aprimorar conhecimentos novos e j adquiridos durante toda a
graduao.
Como perspectiva para trabalhos futuros, esperada a integrao de outros
recursos e mdias como o sistema de Comunicao Unificada, no qual engloba
integrao no sistema de uma grande central telefnica com chat, videoconferncia
81

e salas de grupo, para que a soluo consiga atingir um nmero maior de


dispositivos de comunicao.
Alm disso, espera-se tambm que o sistema passe a contar com mais
facilidades e inovaes para atrair um maior nmero de clientes.

82

Bibliografia

[1] Flood, J.E. (1995). Telecommunications Switching, Trafic and Networks.


Prince-Hall, New York, USA.

[2] O. Hersent & D. Guide. Telefonia IP Comunicao baseada em pacotes.

[3] P.S.M. Bernal, Voz sobre protocolo IP A nova realidade da telefonia


Editora rica 2007

[ 4 ] Diferena entre VoIP e Telefonia IP. Disponvel em: <http://tecnologiavoip.blogspot.com.br/2010/11/diferenca-entre-voip-e-telefonia-ip.html>. Acesso em


novembro de 2012.

[5] Infinity Solution v2.3, ISOL Intelbras

[6] Apresentao Infinity ITEC 2012v4


Cardoso E. acesso novembro 2012.3

[7] Infinity SW Instalao CfgOper ISOL Intelbras 2012

[8] W. Jason Gilmore - Beginning PHP 5 and MySQL 5 From Novice to


Professional 2006

[9] Php.net 2012. Disponvel em:


<http://php.net>. Acesso em outubro de 2012

83

[10] Eloquent JavaScript Marijn Haverbeke, julho 2007


<http://eloquentjavascript.net/contents.html>. Acesso em outubro de 2012

[11] W3schools. Learn HTML, CSS, JavaScript, JSON, PHP. - Disponvel


em:<www.w3schools.com>. acesso em novembro de 2012

[12] Adam A. - Apresentao do Mantis . Intelbras, 2010

[13] Introducting JSON. Disponvel em: <http://json.org>. Acesso em


novembro de 2012.

84