Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaJázmin Vassné Megváltozta több, mint 10 éve
1
MSN-kompatibilis egyéni emotikonok kezelése XMPP/Jabber-ben Bemutatás Németh Ádám, na556@hszk.bme.huna556@hszk.bme.hu
2
XMPP • eXtensible • Messaging and • Presence • Protocol
3
XMPP • IETF RFC 3920-3923 (20, 21 érdekes) • XML-alapú • Eredeti: Jabberd, 1998, Jeremy Miller, GNU GPL • IM + “általános middleware szolgáltatás” • Sun, Google, Adobe alapprotokoll, IBM SameTime kompatibilis, AOL elvileg lesz, Apple, ISP-k, kormányhivatalok, cégek...
4
XMPP felépítés • Kliensoldalról: kliens-szerver architektúra • Szerveroldal: elosztott monstrum • SMTP-hez hasonló (bárki futtathat saját szervert, user@domain azonosítók) • A protokol kiterjeszthető - XMPP Standards Foundation felügyeli a hivatalosakat • Transportok: csatlakozás más protokollokhoz (MSN, AIM, SIP...)
5
Miért fontos nekünk? • Google Talk, Sun IM, Apple iChat Server, Portugal Telecom, GMX (Németország),... • Webes integráció: Magyarországon először freemailben • SchJabber: 2004 • Gmail.BME? • Többiek: NDA :(
6
XMPP Platformok • Desktop IM / C++, Java,.NET... • Web IM: Flash, JavaScript, újabban XUL • Mobil IM: Symbian, PocketPC, J2ME • Beágyazott, middleware - állítólag ilyen is van • 15+ Platform, 15 szerver, 15 nyelv, 50 lib, 90+ kliens
7
Nyelvi elemek
8
XMPP nyelv • message • Üzenetküldésre • presence • “The ability to communicate” - jelenlétállapotok (az is, mit hallgatsz épp) • iq • minden egyéb: set, get, query
9
Message stanza juliet@capulet.com'> <body>Wherefo Wherefore art thou, Romeo?
10
presence stanza • Küldés: xa Gone home for the evening • Fogadás: Online 1
11
iq stanza • contact list lekérése: • válasz: Friends juliet@example.comromeo@example.net
12
Önlabtéma 2007 ősz • Jabber-kliens van sok • Probléma: ismerősök visszaállnak Google Talkról, mert “nincsenek olyan smiley-k” • Megoldás: csináljunk! • XSF-fel együttműködve (Peter Saint- André) • Deliverables: 1) XEP 2) (esetleg) kliens • Előny: tettünk valamit az emberiségért :) • Hátrány: Nem implementálni szívás, kitalálni
13
Önlab lépései • MSN Protokollanalízis • Létező megoldások felderítése • Protocol proposal draft • Demo implementáció • Protocol proposal
14
MSN Protokoll • SIP-szerű • Üzenet előtt MSNObjectként • Ha nincs meg - file request! • Utólagos kitöltés • Beszélgetésenként más (thread / session)
15
Smiley MSNObject MSG 1 N 232MIME-Version: 1.0Content-Type: text/x-mms- emoticon(tux) alice@example.com (baaha) " Size="691" Type
16
MSNObject XMPP • payload • elé • külön namespace
17
MSNObject XMPP II. First proposal julie@capulet.comt"> <emoticon <emoticon alias="(heart)" type="smiley" filename="heart.png" sha1="Id0n\'tkn0wSH418YH34Rt"/> If my (heart)'s dear love--
18
Fájlátküldés? • Jelenleg: IQ stanza • nincs meg a smiley-> get • válasz (result): smiley fájl base64 encoded • Intelligensebb megoldások: ld. később
19
Demo implementáció • Java -ban (Jive Software Smack) • Küldés-fogadás tesztelésére
20
Demo implementáció Architektúra • EmoticonEntity • EmoticonManager • EmoticonPacketExtension (+Provider) • EmoticonTransferPacket (+Provider) • Sender és Receiver tesztkliens
22
Problémák (küldés) • A használt smiley-kat az üzenet szövege ( )alapján lehet megmondani • Az üzenet a küldés pillanatáig változhat • Ergo PacketExtension toXML()-jében meg kell nézni az üzenetet, ismernie kell azt • De: Csak az EmoticonManager ismeri a smiley-kat, viszont nem tud róla, mikor küldenek üzenetet • Eredmény: mindenki ismer mindenkit :(
23
Problémák (fogadás) • Nehogy már a fogadó processnek kelljen beszereznie a smiley-kat : EmoticonManager! • EM megint ismeri az üzenetet • UPDATE?? • Web?? • MSN-átjáró?
24
Még nincs kész...
25
Intelligens megoldások • SI-Pub (XEP-153) • User Avatar (XEP-84)-szerű (PubSubon keresztül) • SI-Pub csomagolása smiley fejlécbe
26
Eddigi reakciók • Peter Saint-André • Per Erkström
27
További infó tőlem • http://jabbermania.blogspot.com (C++ Jabberkliens, Smack jabberbot, értelmesebb dolgok) http://jabbermania.blogspot.com • Budapest New Technology Meetup Jún. 6 - Egységes Instant Messaging Hálózat Mo.-n • NDA :(
28
Referenciák
29
• jabber.org: kliensek, szerverek, libek... • http://www.ietf.org/rfc/rfc3921.txt http://www.ietf.org/rfc/rfc3921.txt • http://www.xmpp.org/extensions/ - XEP- ek (Jingle, User Tune, Publish-Subscribe etc) http://www.xmpp.org/extensions/ • Jingle bemutatás (Peter Saint-André): http://www.saint- andre.com/jabber/Jingle.pdf http://www.saint- andre.com/jabber/Jingle.pdf • IgniteRealtime.org - Jive szerverek, kliensek
30
Jabber + P2P Jabber + MultiMedia
31
Jingle pre-history • Eredetileg: Kliens-szerver architektúra • Probléma: fájlátvitel, mediastreaming, SIP??? • Első: TINS (XEP-0111): SIP jabberül • (:-() A kliensoldal bonyolult, jabberben nem divat! • (:-)) Könnyű SIP-transportot írni • Most: JINGLE (XEP-0166) - by Google
32
Jingle downsides • Van a Jingle (XEP-0166 - experimental protocol) • Van a libjingle (GNU LGPL lib, C++, by Google) • libjingle nem kompatibilis XEP-0166-tal!!! • Google Talk libjingle alapú • Készül: Jive Spark / Smack Jingle lib (JAVA), de JMF alapú - a Jive szerint is vacak
33
Jingle advantages • XMPP-alapú - hey, it’s a standard • Egyeztetőprotokoll, mint a SIP (“lesz” gw) • Beépített támogatás tűzfalak megkerülésére • ELVILEG mehet webről is (Flash!) • Nem teljesen kínai, de azért...
34
Önlabtéma-variációk
35
Önlabtéma II. • Jingle • Készül egy proto-XEP webre, flash- használattal (“VoIP”, video) • Nincs implementáció • Előny: ismét tettünk valami hasznosat :) • Hátrány: JINGLE ingoványos talaj;előbb- utóbb a ClientSide vagy a Jive úgyis megírja; nincs rendes intelmac IDE hozzá
36
Önlabtéma III. • Még mindig Jingle • Haverok. Buli. Fanta. De máshol! • Megoldás: VideoLAN (videolan.org) • Kéne egy signaling protokoll, meg chat, minél jobb jelenlétkezelés - Jabber- Jingle! • Előny: Nem túl hasznos, de buli • Hátrány: illegális (Gyenge Anikó szerint), Jingle ingoványos, gyenge implementációk • Sok kódolás, sok szívás lehet
37
Önlabtéma n. • XEP-0118 - User Tune: milyen jó lenne, ha bele tudnék hallgatni, másik mit hallgat • Írjunk minél jobb webes klienst • XUL, Anyone? • Mobil: fényképez, fájlt elküld / fogad
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.