SAPO Messenger

4,417 views
4,310 views

Published on

XMPP como API.
Serviços do SAPO via IM.
SAPO Messenger M5.
Demonstração prática: construir um Bot.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
4,417
On SlideShare
0
From Embeds
0
Number of Embeds
38
Actions
Shares
0
Downloads
38
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

SAPO Messenger

  1. 1. SAPO MSG^H^Hessenger Arquitectura Clientes Protocolo Demo Party Delfim Machado ✉ dbcm@sl.pt ☺dbcm@sapo.pt Gustavo Carvalho ✉ gustavo@co.sapo.pt ☺gustavo@sapo.pt
  2. 2. SAPO MSG Arquitectura • Ejabberd / Erlang • Perl / PHP • Mnesia / MySQL • Always on / Code upgrade non-stop • Open Source / Open Mind
  3. 3. SAPO MSG Arquitectura X Outros serviços de Outros servidores messaging XMPP Clientes XMPP MSN, ICQ, AIM ... Socket HTTP Transportes S2S C2S (Server 2 Server) Client 2 Server XML Parsing Modulos externos Routing Mnesia API MySQL Modulos Internos EJABBERD
  4. 4. SAPO MSG Clientes • Windows • OS X • Web
  5. 5. SAPO MSG Clientes ➧ Windows • Delphi • Protocolo XMPP implementado por nós • VOIP: SIP assegurado por SDK Counterpath • 200k + linhas
  6. 6. SAPO MSG Clientes ➧ OS X • Objective-C/ C++ • Lib PSI • 40k + linhas
  7. 7. SAPO MSG Clientes ➧ Web • Javascript • Lib jsjac • HTTP-Binding • Spot, Mail • http://webmsg.sapo.pt/
  8. 8. SAPO MSG Protocolo • XMPP - eXtensible Messaging and Presence Protocol (vulgo Jabber) • Protocolo aberto : RFC 3920 e 3921 • http://www.jabber.org/ http://www.xmpp.org/ • XML, extensível
  9. 9. SAPO MSG Protocolo ➧ Tipo Mensagens • Message : Uma mensagem • Presence : Informação de estado • IQ (Information Query) : Perguntar / Alterar
  10. 10. SAPO MSG Protocolo ➧ Mensagem <message type=quot;chatquot; to=quot;codebitas@sapo.ptquot; id=quot;aaf3aquot; > <body>ding</body> </message>
  11. 11. SAPO MSG Protocolo ➧ Presença <presence /> <presence type=”unavailable” />
  12. 12. SAPO MSG Protocolo ➧ IQ (Information Query) <iq type=quot;getquot; to=quot;sapo.ptquot; id=quot;aae7aquot; > <query xmlns=quot;http://jabber.org/protocol/ disco#infoquot;/> </iq>
  13. 13. SAPO MSG Protocolo ➧ IQ Result <iq from=quot;sapo.ptquot; type=quot;resultquot; to=quot;shrike@sapo.pt/ Macquot; id=quot;aae7aquot; > <query xmlns=quot;http://jabber.org/protocol/disco#infoquot;> <feature var=”iq” /> ... </query> </iq>
  14. 14. SAPO MSG Demo Party • Bot Calculadora • Bot SAPO Pesquisa
  15. 15. SAPO MSG Demo Party ➧ Bot Calculadora • Perl • Net::XMPP2 • Math::Expression::Evaluator • bot_calc (baseado em sample/talkbot) • calc <expression> || c <expression>
  16. 16. SAPO MSG Demo Party ➧ Bot Pesquisa • Perl • Net::XMPP2 • XML::RAI (RSS Abstraction Interface) • bot_pesq (baseado em sample/talkbot) • pesq <words> || p <words>
  17. 17. Obrigado Muitas ideias e boa noitada!
  18. 18. • SAPO MSG - http://messenger.sapo.pt/ • XMPP - http://www.xmpp.org/ • Erlang - http://www.erlang.org/ • Ejabberd - http://www.process-one.net/en/ejabberd/ • Perl & Modulos - http://search.cpan.org/ • Workshop Bots code - codebits intra sessões 28 Delfim Machado ✉ dbcm@sl.pt ☺dbcm@sapo.pt Gustavo Carvalho ✉ gustavo@co.sapo.pt ☺gustavo@sapo.pt

×