Mudanças entre as edições de "Tópicos Avançados em Telefonia (técnico) (diário 2009-2)"
Linha 341: | Linha 341: | ||
* Propostas escolhidas: XMPP e redes VoIP. | * Propostas escolhidas: XMPP e redes VoIP. | ||
* Funcionalidades do sistema: | * Funcionalidades do sistema: | ||
+ | ** Pelo menos 10 salas de conferência com controle de acesso (com senha) feito pelo primeiro canal que se conectar. | ||
** Servidor interno de ''email'' e mensagem instantânea. | ** Servidor interno de ''email'' e mensagem instantânea. | ||
** Envio de mensagens instantâneas para recebimento de chamadas e gravação de mensagens de voz. | ** Envio de mensagens instantâneas para recebimento de chamadas e gravação de mensagens de voz. |
Edição das 20h14min de 18 de novembro de 2009
Cronograma
- Vide plano de ensino.
Capítulo 6
26/08 (4): O que é VoIP?
- Tópicos: Internet como meio de transmissão, redes convergentes e comunicações unificadas.
02/09 (2): Protocolos de VoIP
- Tópicos: H.323, SIP, SDP, XMPP, RTP e RTCP.
- Material auxiliar: Guia básico de VoIP com Asterisk.
09/09 (2): Plataformas de VoIP
- Tópicos: hardware e software. Asterisk como exemplo de soft PBX, instalação de Asterisk.
- Material auxiliar: comandos *nix.
Intervalo de 1 semana
23/09 (2): Visão geral de um soft PBX
- Tópicos: visão geral do soft PBX Asterisk, o protocolo SIP (arquitetura e primeiros canais), a primeira ligação entre dois canais.
Capítulo 7
30/09 (4): Sinalização de Mídia
- Tópicos: o protocolo SIP (trocas de mensagens e cabeçalhos).
- Exemplo de uma ligação sem sucesso entre origem e destino (as duas primeiras figuras) e uma ligação com sucesso (última figura).
Entroncamento entre dois soft PBXs
- Cenário: dois soft PBXs contendo 3 canais SIP para uso local: telefone+ATA, telefone IP e softphone (Ekiga).
- Ideia: interligar os dois PBXs para permitir as ligações diretas entre quaisquer UACs usando apenas SIP.
<graphviz> digraph DoisPBXs {
Norte [shape=record,label="Norte|IP=10.1.1.1",URL="http://wiki.sj.ifsc.edu.br/index.php/T%C3%B3picos_Avan%C3%A7ados_em_Telefonia_%28t%C3%A9cnico%29_%28di%C3%A1rio_2009-2%29#PBX_Norte"] ATA_N [shape=plaintext] Softphone_N [shape=plaintext] TelefoneIP_N [shape=plaintext]
Sul [shape=record,label="Sul|10.20.30.40",URL="http://wiki.sj.ifsc.edu.br/index.php/T%C3%B3picos_Avan%C3%A7ados_em_Telefonia_%28t%C3%A9cnico%29_%28di%C3%A1rio_2009-2%29#PBX_Sul"] ATA_S [shape=plaintext] Softphone_S [shape=plaintext] TelefoneIP_S [shape=plaintext]
ATA_N -> Norte:0 Softphone_N -> Norte:0 TelefoneIP_N -> Norte:0
ATA_S -> Sul:0 Softphone_S -> Sul:0 TelefoneIP_S -> Sul:0
Norte:0 -> Sul:0 } </graphviz>
PBX Norte
- Arquivo sip.conf:
[general] ... # # Registrando o UAC Norte no UAS Sul register => Norte@10.20.30.40
... # Definição dos "Ramais" internos [ATA_N] type=friend username=ATA_N host=dynamic insecure=port,invite context=ligacoesLocais allow=alaw allow=ulaw qualify=yes # [TelefoneIP_N] type=friend username=TelefoneIP_N host=dynamic insecure=port,invite context=ligacoesLocais allow=alaw allow=ulaw qualify=yes # [Softphone_N] type=friend username=softphone_N host=dynamic insecure=port,invite context=ligacoesLocais allow=alaw allow=ulaw qualify=yes
# Definição do UAC Norte [Norte] type=peer username=Norte host=10.20.30.40 insecure=port,invite context=ligacoesLocais allow=alaw allow=ulaw qualify=yes
- Arquivo extensions.conf:
... [ligacoesLocais] # # "Ramais" internos exten => 100,1,Dial(SIP/ATA_N) exten => 101,1,Dial(SIP/TelefoneIP_N) exten => 102,1,Dial(SIP/Softphone_N)
# Ligando para a outra central e, na sequência, o "ramal" de destino exten => _0.,1,Dial(SIP/Norte/${EXTEN:1})
PBX Sul
- Arquivo sip.conf:
[general] ... # Definição dos "Ramais" internos [ATA_S] type=friend username=ATA_S host=dynamic insecure=port,invite context=somenteLocal allow=alaw allow=ulaw qualify=yes # [TelefoneIP_S] type=friend username=TelefoneIP_S host=dynamic insecure=port,invite context=somenteLocal allow=alaw allow=ulaw qualify=yes # [Softphone_S] type=friend username=softphone_S host=dynamic insecure=port,invite context=somenteLocal allow=alaw allow=ulaw qualify=yes
# Definição do UAC Norte [Norte] type=friend username=Norte host=dynamic insecure=port,invite context=somenteLocal allow=alaw allow=ulaw qualify=yes
- Arquivo extensions.conf:
... [somenteLocal] # # "Ramais" internos exten => 210,1,Dial(SIP/ATA_S) exten => 211,1,Dial(SIP/TelefoneIP_S) exten => 212,1,Dial(SIP/Softphone_S)
# Ligando para a outra central e, na sequência, o "ramal" de destino exten => _0.,1,Dial(SIP/Norte/${EXTEN:1})
Intervalo de 1 semana
- Leitura recomendada: Skype & Asterisk.
14/10 (2): Descrição de Mídia
- Tópicos: o protocolo SDP e vocoders.
- Referências externas:
- ALMEIDA, A. B. de. Medição de qualidade de voz em wireless utilizando codecs G711, G729, G723 e GSM. Campinas: PUC, 2008.
- Silk (Skype)
21/10 (2): Exercícios com Codecs
- Configure dois canais com os codecs gsm, alaw, e ulaw. Qual codec é escolhido na ligação? Por quê?
- Configure dois canais com apenas um codec, o mesmo para ambos. As mensagens SDP mudaram? E as mensagens SIP?
- Configure dois canais com apenas um codec, sendo G711a para um e G711u para outros. O que acontece? É possível realizar a transcodificação? Como e onde isso é feito?
Identifique as mensagens SDP associadas às mensagens SIP no controle remoto do Asterisk:
> sip set debug peer CANAL
ou
> sip set debug on
e os atributos das liagções correntes:
> core show channel CANAL/ID_DA_LIGAÇÃO
Dica: realize primeiro com os canais-ramais de um mesmo soft PBX. Em seguida, façam os testes utilizando entroncamentos SIP. O que muda? Atenção: que codecs estão ativados no entroncamento? É possível combinar os codecs dos canais-ramais com os canais-entroncamentos? Faça os testes de combinação com codecs iguais e diferentes...
28/10 (2): Transmissão de Mídia
- Tópicos: os protocolos RTP e RTCP, qualidade de serviços e mecanismos de controle (protocolos, compensações, descartes, jitter, etc.), problemas do TCP/IP e alternativas.
- Testes:
- Referência externa: Wireshark.
04/10 (2): Plano de numeração
- Tópicos: plano de numeração, URA/AA.
11/11 (4): Plano de numeração (cont.)
- Tópicos: plano de numeração.
- Numeração "clássica": E.123, E.164, lista dos países.
- Numeração VoIP: ENUM
- URI genérica: RFC 2396
- URI para ligações telefônicas: RFC 2806
- URI para SIP[S]: RFC 3261
- Aplicações:
- URA/AA
- Callback
Capítulo 8
18/11 (4): Projeto final (apresentação e desenvolvimento)
- Tópicos: definição das equipes e temas, leitura dos trabalhos de semestres anteriores, desenvolvimento do projeto final.
Propostas a escolher
- Segurança em VoIP: segurança na sinalização (SIP sobre TLS), segurança na transmissão de mídia (SRTP).
- Proteger as mensagens SIP e/ou a mídia transmitida. Apresentar, ao final, ferramentas e soluções que implementam segurança sobre SIP, SDP e/ou RTP.
- XMPP para sinalização e descrição de mídia, comunicações unificadas.
- Utilizar mensagens XMPP como "BINA": informando na tela do usuário (2) quem está chamando (1).
- Se o destinatário não atender à ligação (3), a ligação é passada ao correio de voz. Uma vez gravada a mensagem, o sistema deverá enviar um email (4) com o áudio, em formato MP3, e uma mensagem XMPP (5) informando o email enviado - incluindo o nome de quem ligou.
digraph FluxoMsg { Asterisk [shape=Mrecord] subgraph clusterUsuario { label="Usuário" VoIP Email XMPP } Asterisk -> VoIP [label=1] Asterisk -> XMPP [label=2] VoIP -> Asterisk [label=3] Asterisk -> Email [label=4] Asterisk -> XMPP [label=5] }
</graphviz>- Telefonia analógica ou digital + VoIP via placas de conversão.
- Implementar a sinalização R2D (R2 Digital) em duas placas E1 diretamente conectadas (fabricantes distintos).
- Realizar pelo menos 3 ligações simultâneas entre terminais SIP via esse enlace E1.
graph E1 { rankdir=LR Esquerdo [shape=Mrecord] Direito [shape=Mrecord] 1 -- Esquerdo [label=SIP] 2 -- Esquerdo [label=SIP] 3 -- Esquerdo [label=SIP] Esquerdo -- Direito [label=E1] Direito -- 4 [label=SIP] Direito -- 5 [label=SIP] Direito -- 6 [label=SIP] }
</graphviz>- Implementação de gateways de redes VoIP: Google Talk, Skype, Fone@RNP e outros.
- Concentração de várias redes VoIP em um ponto: o soft PBX. O mesmo canal SIP escolherá o caminho de saída das ligações.
- Pelo menos 10 salas de conferências entre as pessoas das várias redes.
digraph gateway { Asterisk [shape=Mrecord] subgraph clusterSdC { label="Salas de Conferência" 01 [shape=plaintext] 02 [shape=plaintext] 03 [shape=plaintext] 04 [shape=plaintext] 05 [shape=plaintext] 06 [shape=plaintext] 07 [shape=plaintext] 08 [shape=plaintext] 09 [shape=plaintext] 10 [shape=plaintext] } "Skype (opcional)" -> Asterisk Google_Talk -> Asterisk "fone@RNP" -> Asterisk "Ramais" -> Asterisk Asterisk -> "01" Asterisk -> "02" Asterisk -> "03" Asterisk -> "04" Asterisk -> "05" Asterisk -> "06" Asterisk -> "07" Asterisk -> "08" Asterisk -> "09" Asterisk -> "10" }
</graphviz>- URA/AA com filas de atendimento e ligação de retorno (callback).
- Cliente liga para a central de atendimento, que conta com 3 atendentes. Se todos os atendentes estiverem ocupados, o cliente poderá esperar por até 1min (com música ao fundo). Passando desse limite, é agendada uma ligação de retorno assim que alguém ficar livre (invertendo o sentido da ligação original).
digraph Fluxo { Asterisk [shape=Mrecord] subgraph clusterAtendentes { label=Atendentes 1 2 3 } Cliente -> Asterisk Asterisk -> Fila Fila -> 1 Fila -> 2 Fila -> 3 }
</graphviz>Obrigatório a todos os projetos
- As ligações funcionam apenas em horário comercial. Demais ligações devem ser encaminhadas diretamente ao correio de voz.
- Todos os PBXs deverão estar interconectados, gerando uma malha fechada (cada um conecta-se a todos os outros), permitindo a comunicação entre quaisquer ramais.
- Definição dos codecs utilizados para cada canal.
- Os testes serão realizados pelos canais SIP das outras equipes (sorteadas no momento da apresentação).
Equipes e Propostas Escolhidas
A seguir, uma descrição mais detalhada no cenário a ser montado como projeto final da disciplina.
Equipe 1
- Integrantes: Caroline, Edgar, Fabio e Maykon.
- Propostas escolhidas: XMPP e redes VoIP.
- Funcionalidades do sistema:
- Pelo menos 10 salas de conferência com controle de acesso (com senha) feito pelo primeiro canal que se conectar.
- Servidor interno de email e mensagem instantânea.
- Envio de mensagens instantâneas para recebimento de chamadas e gravação de mensagens de voz.
- Identificação dos usuário com um único endereço: o seu email.
- Localização dos usuário por agenda Web:
Pessoa | Email (SMTP) | Mensagem (XMPP) | VoIP (SIP) |
João | mailto:joao@tat.edu.br | xmpp:joao@tat.edu.br | sip:joao@tat.edu.br |
Maria | mailto:maria@tat.edu.br | xmpp:maria@tat.edu.br | sip:maria@tat.edu.br |
José | mailto:jose@tat.edu.br | xmpp:jose@tat.edu.br | sip:jose@tat.edu.br |
Equipe 2
- Integrantes: Claudir, Cleiton, Diego e Lucas.
- Propostas escolhidas: telefonia digital com placa de conversão e central de atendimento.
- Funcionalidades do sistema:
25/11 (4): Projeto final (desenvolvimento)
- Tópicos: canais e plano de numeração, desenvolvimento do projeto final.
02/12 (4): Projeto final (desenvolvimento)
- Tópicos: serviços adicionais (correio de voz, sala de conferência, etc.), desenvolvimento do projeto final.
09/12 (4): Projeto final (desenvolvimento)
- Tópicos: automatização (callback, etc.), desenvolvimento do projeto final, avaliação escrita.
16/12 (4): Projeto final (apresentação)
- Tópicos: apresentação do projeto final, futuro do VoIP, recuperação da avaliação escrita.