Upload
valerian-saliou
View
314
Download
3
Embed Size (px)
Citation preview
XMPP Architecture
jappix.comjabber.org
talkr.im
Not encrypted
PLAIN
gmail.com googlemail.com
Encrypted
TLS v1.0+
NO SSL (v3-)
XMPP Architecture
jappix.comjabber.org
talkr.im
[email protected]@jabber.org
Pidgin Beem
AdiumJappix
IM+IM+
XMPP Architecture
jappix.comjabber.org
talkr.im
[email protected]@jabber.org
Pidgin Beem
AdiumJappix
IM+IM+
Client to server
TCP 5222Outbound + Inbound
XMPP Architecture
jappix.comjabber.org
talkr.im
[email protected]@jabber.org
Pidgin Beem
AdiumJappix
IM+IM+
Web to proxy to server
TCP 5280Outbound + Inbound
XMPP Architecture
jappix.comjabber.org
talkr.im
[email protected]@jabber.org
Pidgin [email protected]/Computer [email protected]/Mobile
Adium
[email protected]/[email protected]/Jappix Web
JappixIM+
[email protected]/iPhoneIM+
[email protected]/iPad
XMPP Architecture
jappix.comjabber.org
talkr.im
[email protected]@jabber.org
Pidgin [email protected]/Computer [email protected]/Mobile
Adium
[email protected]/[email protected]/Jappix Web
JappixIM+
[email protected]/iPhoneIM+
[email protected]/iPad
XMPP Architecture
jappix.comjabber.org
talkr.im
[email protected]@jabber.org
+25K users
gmail.com
+425M users!
googlemail.com
XMPP Architecturejappix.com
muc.jappix.com
pubsub.jappix.com
vjud.jappix.com
XMPP Components
websocket.jappix.com
XMPP Architecturejappix.com
muc.jappix.com
pubsub.jappix.com
vjud.jappix.com
XMPP Components XMPP Gateways
skype.jappix.com
msn.jappix.com
websocket.jappix.com
XMPP Architecturejappix.com
muc.jappix.com
pubsub.jappix.com
vjud.jappix.com
XMPP Components XMPP Gateways
skype.jappix.com
msn.jappix.com
Non-XMPP services
stun.jappix.com
turn.jappix.com
websocket.jappix.com
XMPP Architecture
Everything is a node
Server = node Gateway = node
Client = node Bot = node
Component = node
XMPP Architecture
Full JID = [email protected]/resource Bare JID = [email protected]
XMPP Architecture
to = sender user from = receiving user type = stanza purpose id = stanza identifier
XMPP Core
<message type=‘chat’ from=‘[email protected]/Mac’ to=‘[email protected]/Gajim’ id=‘sz_ab_11’> <body>Hello buddy!</body></message>
XMPP Core
<presence type=‘available’ to=‘[email protected]‘ id=‘sz_ab_12’> <show>away</show></presence>
XMPP Core
<iq type='get' from=‘[email protected]/iPhone‘ to='[email protected]/Jappix' id=‘sz_ab_292’> <query xmlns='jabber:iq:version'/></iq>
XEP Statuses
Active
Draft
Obsolete
DeprecatedDeferred
Experimental
Final
Proposed
Rejected Retracted
XMPP Extensions
session-accept
Romeo Juliet
session-initiate
ACK
session-accept
ACK
session-info
ACK
session established
XMPP EcosystemXMPP JavaScript
<iq type='get' id=‘jsjac_23’> <prefs xmlns='urn:xmpp:mam:0'/></iq>
JSJaC.js
Now mostly geeky Future can help unify communications, trash PSTN avoid communications to be PSTN-dependant
Thanks!
Jappix - jappix.com
XMPP - xmpp.org
Giggle.js - github.com/valeriansaliou/giggle