XMPP Hands-On

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Group

    XMPP Hands-On - Presentation Transcript

    1. XMPP - Mão na Coisa 11/19/08 11:55 AM XMPP Mão na Coisa Pedro Melo simplicidade.org / evolui.com Código e apresentação disponível em http://github.com/melo/codebits/ O Gustavo, o Delfim, e eu estamos pelo Codebits para dúvidas de XMPP. Procurem as T-Shirts com XMPP à frente. Resumo Conversa da treta Preliminares Mão na Coisa Coisa na Mão Coisa na Coisa Resumo (agora a sério) Breve explicação do ambiente Modelo de programação Blocos básicos Pequenos bots Real-time feeds Sincronização de processos Ambiente OpenFire no tabuleiro Perl: Net::XMPP2 Python: Twisted + Wokkel (Hi Jack!) Ruby: EventMachine? Simple::Bot? xmpp4r? Java: Smack C, Loudmouth: Strophe PHP, Class::XMPP JavaScript: Strophe, JsJac Modelo de Programação Event-driven Nada é garantido, timeouts em todo o lado Closures (em linguagens que as tenham) file:///Users/melo/Documents/Work/projects/codebits/2008/xmpp-hands-on/presentation/xmpp-mao_na_coisa.html Page 1 of 4
    2. XMPP - Mão na Coisa 11/19/08 11:55 AM Event loop: se os tiverem, usem Enviar pedido, callback para quando a resposta chegar Hooks para responder a novos pedidos Blocos básicos Três blocos básicos message: fire and forget iq: pergunta/resposta presence: broadcast, gestão de buddies Cada um deles tem atributos comuns to from type id Mas o X em XMPP é de Extensible Blocos básicos: <mesage> Uma mensagem comum 01. <message to=\"melopt@gmail.com/res\" from=\"melo@simplcidade.org/Tabuleiro\" type= 02. <body>Recebes-te uma mensagem do Paulo! (link)</body> 03. </message> Blocos básicos: <mesage> Agora com uma extensão 01. <message to=\"melopt@gmail.com/res\" from=\"melo@simplcidade.org/Tabuleiro\" type= 02. <body>Recebes-te uma mensagem do Paulo! (link)</body> 03. <n xmlns=\"org.simplicidade.proj1\"> 04. <from>Paulo</from> 05. <link>link</link> 06. <reply>reply_link</reply> 07. </n> 08. </message> Blocos básicos: <mesage> E já agora para não ficar guardada offline 01. <message to=\"melopt@gmail.com/res\" from=\"melo@simplcidade.org/Tabuleiro\" type= 02. <body>Recebes-te uma mensagem do Paulo! (link)</body> 03. <n xmlns=\"org.simplicidade.proj1\"> 04. <from>Paulo</from> 05. <link>link</link> file:///Users/melo/Documents/Work/projects/codebits/2008/xmpp-hands-on/presentation/xmpp-mao_na_coisa.html Page 2 of 4
    3. XMPP - Mão na Coisa 11/19/08 11:55 AM 06. <reply>reply_link</reply> 07. </n> 08. </message> Blocos básicos: <iq> (get) Pergunta... 01. <iq to=\"melopt@gmail.com/res\" from=\"melo@simplicidade.org/Tabuleiro\" type=\"get\" 02. <query xmlns=\"org.simplicidade.proj1.proto1\" /> 03. </iq> Blocos básicos: <iq> Resposta... 01. <iq to=\"melopt@gmail.com/res\" from=\"melo@simplicidade.org/Tabuleiro\" type=\"result\" 02. <query xmlns=\"org.simplicidade.proj1.proto1\"> 03. <campo1>valor 1</campo1> 04. <campo2>valor 2</campo2> 05. <campo3>valor 3</campo3> 06. <campo4>valor 4</campo4> 07. </query> 08. </iq> Blocos básicos: <iq> (set) Alteração... 01. <iq to=\"melopt@gmail.com/res\" from=\"melo@simplicidade.org/Tabuleiro\" type=\"set\" 02. <query xmlns=\"org.simplicidade.proj1.proto1\"> 03. <campo1>valor 1</campo1> 04. <campo2>valor 2</campo2> 05. <campo3>valor 3</campo3> 06. <campo4>valor 4</campo4> 07. </query> 08. </iq> Blocos básicos: <iq> Resposta... 01. <iq to=\"melopt@gmail.com/res\" from=\"melo@simplicidade.org/Tabuleiro\" type=\"result\" 02. <query xmlns=\"org.simplicidade.proj1.proto1\" /> 03. </iq> file:///Users/melo/Documents/Work/projects/codebits/2008/xmpp-hands-on/presentation/xmpp-mao_na_coisa.html Page 3 of 4
    4. XMPP - Mão na Coisa 11/19/08 11:55 AM Tipos de ligação Cliente-Servidor: usadas por utilizadores Apenas um Jabber ID: local@domain/resource Limitado em termos de números de buddies Mas vários promenores são tratados por nós Component-Servidor: usadas por aplicações mais avançadas Represente um ou mais dominios (ex. teste.simplicidade.org) Ilimitado em termos de buddies ou de users @teste.simplicidade.org Responsabilidade de implementar o protocolo todo Pequenos bots http2xmpp.pl Subscrição automática Mensagem de boas vindas HTTP POST => XMPP message Arrancar o http2xmpp-N.pl e aceder ao interface web Real-time feeds e Sync de procs process_sync-N.pl Liga-se a um chat-room Comandos simples Comandos para fazer stream de dados Sincronizaçao de tarefas Arrancar o process_sync-N.pl e aceder à sala sync@conference.test.simplicidade.org file:///Users/melo/Documents/Work/projects/codebits/2008/xmpp-hands-on/presentation/xmpp-mao_na_coisa.html Page 4 of 4

    + codebitscodebits, 2 years ago

    custom

    477 views, 0 favs, 0 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 477
      • 477 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 2
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories

    Tags