Desenvolvendo aplicações de telefonia com VXML

Há uma variedade de grandes soluções de telefonia que implementam VXML para a construção de iterações com usuários, permitindo a criação de URAs ( unidade de resposta audível ). O desenvolvimento de soluções de telefonia que permitam a interação com outras aplicações attravés do uso de uma interface de voz, leitura de teclado e reconhecimento de voz é um grande desafio. Nesse post tento introduzir o uso do Vxml como tecnologia para o desenvolvimento para cobrir essa lacuna.

Inicialmente cada fabricante implementava seu processo de construção de aplicações, o que impossibilitava uma aplicação ser executada em ambientes compostos por vários fornecedores, necessitando que a aplicação fosse parcialmente ou totalmente rescrita.Nesse cenário, VXML surge do como um documento padrão para a construção de aplicações portáveis para Voice Browsers que implementem a especificação, permitindo a integração com o usuário através de voz ou DTMF.

A implementação de documentos é simples e o uso de parsers para o tratamento de documentos é facilitado pelo uso dos mesmos componentes usados para tratamento de XML.

20130116-081803.jpg

Hello World VXML

Basicamente a construção do mecanismo de interatividade consiste no uso de forms para reprodução de áudios e abertura de prompts de leitura de dados do usuário. Mecanismos de submit e link permitem a integração com aplicações externas.

Implementando soluções em VoIP

Alguns cuidados devem ser tomados ao implementar um serviço de telefonia sobre rede voip:

Deseja-se a total equivalência das características da rede PSTN sobre a rede voip?
O serviço será apenas um-pra-um?
Haverá alguma contingência de meio através de PSTN ?
Haverá uma outra rota de contingência através de voip ?

Quanto ao tipo de terminação, precisamos decidir :

IP Phone;
Telefone convencional;
Sip Phone software;

Qual o QoS desejável ? Qual o Qos minímo aceitável ?

Os aspectos de segurança foram observados ?

Quais os servidores externos envolvidos com as rotas ?

Freeswitch no Ubuntu 12

 

 

 

Procedimento rápido para instalação do Freeswitch no Ubuntu 12.

1 – Instalando pacotes necessários :

apt-get install autoconf automake libtool gcc-c++ ncurses-devel make expat-devel zlib zlib-devel libjpeg-devel

apt-get install unixODBC-devel openssl-devel gnutls-devel libogg-devel libvorbis-devel curl-devel

apt-get install libtiff-devel libjpeg-devel

apt-get install perl

apt-get install libncurses5-dev

2 – Baixando e descompactando o freeswitch:

wget http://files.freeswitch.org/freeswitch-1.0.6.tar.gz
tar xvzf freeswitch-1.0.6.tar.gz
cd < freeswitch dir>

3 – Verificando as dependências para instalação:
./configure

Ao final dessa etapa, serão apresentadas as configurações que serão aplicadas.

4 – Gerando os binários :

make

make all

*** Serão gerados os binários da aplicação

make install

5 – Gerando os arquivos de audio para prompts

make cd-sounds-install
make cd-moh-install

make uhd-sounds-install
make uhd-moh-install

make sounds-install
make moh-install

6 – O Freeswitch esta instalado, se o caminho não foi alterado, o mesmo deve esta disponível em /usr/local/freeswitch o binário de execução deve estar disponível em : /usr/local/freeswitch/bin/freeswitch

[]’s