Apresentacao Mobicents

741 visualizações

Publicada em

Apresentação feita no Evento JBoss in Bossa 2010 por André Pantalião e Antonio Anderson

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
741
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
13
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide
  • Antonio... adicionar tags que você ache pertinente
  • +  de 10 anos de Voice Technology trabalhando juntos
  • Antes de continuarmos, iremos fazer algumas perguntas para saber o que cada um sabe sobre assuntos abordados na palestra. 
  • JBOSS - a maioria aqui deve manjar mais do que a gente de JBOSS hehe
  • Telefonia?  Alguém já fez projetos aqui que envolveram telefonia de alguma forma?  Telefonia IP?  Próprio ou de terceiros? 
  • Protocolo SIP Alguém manja? 
  • Mobicents alguém já viu? Já mexeu? 
  • Mobicents alguém já viu? Já mexeu? 
  • Antes de falarmos sobre o Mobicents, é interessante que a gente fale um pouco sobre o protocolo SIP, que é essencial para nossa aplicação telef6onica. 
  • O SIP é  um protocolo de sessão utilizado para sinalização de telefonia através de uma rede. O SIP se tornou muito popular com a maior adoção do VOIP pelas empresas.  Tanto servidores como telefones falam SIP.  Agora iremos falar de algumas mensagens importantes do protocolo SIP.
  • O REGISTER é um registro mesmo. Nada de novo.  O cliente se identifica ao servidor informando usuário, senha e domínio...  O servidor (PABX) armazena que usuário X está online e se alguma chamada chegar ele enviará os dados desta chamada para ele.  O servidor vai ficar com uma lista de diretório sabendo quem está disponível e em qual endereço. 
  • Como o nome diz é um convite. Convite para uma nova chamada.  Usuário envia este pacote para o servidor que redireciona para o destino. 
  • Antes da chamada ser atendida, alguns pacotes são trocados entre cliente e servidor.  Informando que o PABX está tentando achar o usuário, que o  telefone já começou a tocar e que a chamada foi atendida...  Status da chamada...  Só para ilustrar, o ringing é um bom exemplo de como o mundo SIP é diferente do convencional.  O áudio não trafega pela rede... só é gerado para conforto do usuário. 
  • BYE... Alguém envia porque a ligação acabou... morreu. 
  • Todo comando SIP recebe uma resposta...  elas são agrupadas...  Somente as mensagens que começam com 1 não são finais, só de status. 
  • Falamos de pacotes.  Pacotes de dados.  E o áudio para onde vai.  O áudio é bem mais pesado que esta sinalização.  E ele é que vai determinar a qualidade da chamada. Tem que ser otimizado sempre que possível. 
  • O áudio e os dados seguem caminhos diferentes.  A não ser que o servidor precise  saber se o áudio será gravado. ele não precisa deste áudio...  Então... se possível... se um cliente enxergar o outro... eles irão seguir caminhos diferentes...  Eles não trafegam pela mesma porta.
  • tá... mas o assunto desta palestra é mobicents...  Vamos lá!
  • O Mobicents é uma plataforma de desenvolvimento JAVA voltada para programadores.  É voltada para quem sabe programar, para quem usa JBOSS ou usa JAVA.  Muito poderosa, robusta e bem construída. 
  • E no que é diferente programar um sistema simples Web e para telefonia, por exemplo
  • Ela traz ao J2EE e Ao JBoss a possibilidade de fazer aplicações de voz, vídeos e dados relacionados com telefonia. 
  • o mesmo que HTTP servlet só que para SIP...  Ele inclusive compartilha a mesma sessão.  A sessão é útil para guardar informações da ligação. 
  • o Resource Adaptor pode fazer com que a chamada de entrada seja SIP, XMPP, Asterisk  ou alguma outra implementação.  
  • Toca Arquivo, Grava, faz conferências...  Para uma ura vamos precisar do media server... numa simples conversa não precisaríamos. 
  • E com isso você une dois mundos não muito próximos alguns anos atrás... TI e telefonia.  Ultimamente eles estão cada vez mais próximos... mas com o Mobicents... ele se aproveita de todos os recursos e ferramentas de monitoração e gerenciamento do JBOSS...  Você já vai ter alguém na sua rede que sabe administrar um JBOSS. 
  • Mas o JBOSS é indicado se você deseja desenvolver a solução, se você quer aproveitar a lógica de negócio que você já tem...  Quer menos trabalho? Não quer fazer algo do zero? Quer uma aplicação pequena?  Asterisk é uma boa...  tem o Free Switch...  você consegue implementar um atendimento eletrônico, pabx praticamente sem código.  Ou então contrate um especialista... ele se integrará ao seu sistema e deverá fornecer as ferramentas para gerenciamento...  Se quiser, fique à vontade para contratar a Voice! (Momento Jabá).... existem diversas empresas neste mercado. 
  • Ele deixa mais fácil o desenvolvimento de aplicações de telefonia.  Deixando muito mais simples diversas atividades chatas que deveriam ser codificadas.  Mas ainda assim... você tem que conhecer bem o protocolo SIP, o que ele faz.
  • Vamos agora para a nossa demonstração.  Mostrar uma aplicação funcionando.  O exemplo completo é bem comprido, então iremos focar inicialmente na parte de telefonia... para garantir que todos entendam. 
  • Telefonia é toda implementada pelo Mobicents.  Aqui iremos ver porque temos que conhecer as mensagens SIP, porque o áudio vem em um stream diferente.  Porém, ele fornece diversas ferramentas para deixar este trabalho mais fácil. 
  • A nossa aplicação irá acessar as mensagens que um determinado usuário tem no Twitter e vocalizá-la.   
  • e as mensagens serão vocalizadas através de TTS.  Text To Speech está muito evoluído e apresenta um áudio de muita qualidade.  Temos, por exemplo, utilizado o TTS para vocalizar toda a jurisprudência de um tribunal em Brasília. 
  • Bom... falamos bastante...  espero ter dado uma base...  mas as pessoas aqui vieram em um workshop porque queriam ver mais que bla-bla-bla
  • Bom... falamos bastante...  espero ter dado uma base...  mas as pessoas aqui vieram em um workshop porque queriam ver mais que bla-bla-bla
  • Apresentacao Mobicents

    1. 1. @antonioams RTP Métodos Ágeis OpenSips JBoss Java Open Source SAAS Asterisk SIP Negócios Discadores Voice Ruby Palestras
    2. 2. @andre_pantaliao Equipe bacana URA OpenSips Scrum Ruby Vídeo Chamada VB FINEP Surdos Call Center Voice Palestras
    3. 3. JBOSS
    4. 4. Telefonia
    5. 5. SIP
    6. 6. Mobicents
    7. 7. SEAM
    8. 8. SIP O que é?
    9. 9. R E G I S T E R
    10. 10. INVITE
    11. 11. Trying Ringing Answered
    12. 12. Respostas SIP 1xx - Informativas SIP 2xx - Sucesso SIP 3xx - Redirecionamento SIP 4xx - Falha no cliente SIP 5xx - Falha no Servidor SIP 6xx - Falha Global
    13. 13. E o áudio ?
    14. 14. O que é ?
    15. 15. História
    16. 16. Demanda uma arquitetura orientada a eventos Alto volume, baixa latência Atrasos são facilmente percebidos.
    17. 17. J2SLEE Java Service Logic Execution Environment é o padrão Java para o SLEE da telecomunicação, ou seja, baixa latência (< 100ms) e alto throughput. Otimizado para processamento assíncrono.
    18. 18. JSLEE J2EE
    19. 19. SIP SERVLET Seam Telco Framework
    20. 20. RESOURCE ADAPTOR
    21. 21. MEDIA SERVER
    22. 22. DEMO
    23. 23. Código fonte do projeto: http://github.com/antonioams/social-network-by-phone Tutorial Sobre Seam Telco Framework http://ensinar.wordpress.com/2010/05/06/colocando-o- mobicents-com-seamtelcoframework-para-rodar/ Mais sobre Mobicents http://pt-br.wordpress.com/tag/mobicents/

    ×