Académique Documents
Professionnel Documents
Culture Documents
Presence Protocol
Sistemi per la Collaborazione in Rete
2006-07
Fabio Calefato
A bit of History
Jabber project started in 1999 by Jeremie Miller
to develop an open alternative to IM systems
04/01/1999: 1st release of the Jabberd server
XMPP
eXtensible Messaging and Presence Protocol
Promoted by Jabber Software Foundation
Aims at being the standard for Instant Messaging
XMPP Architecture
XMPP Architecture
Communication happens client to server and server
to server.
Port: 5222-3
Port: 5269
XMPP addresses can be associated not only with people but also
with any other network-aware entity (devices, terminals, routers)
Dott. Fabio Calefato
montague.lit
capulet.lit
JID: romeo@montague.lit/pda
Priority: 5
:-)
JID: romeo@montague.lit/office
Priority: 3
JID: juliet@capulet.lit/home
Priority: 0
Core Stanzas
<message/>
push mechanism through which one entity pushes
information to another
<presence/>
a basic publish-subscribe to broadcast an entitys
network availability (online, busy)
<iq/>
(info/query) is a request/response mechanism,
similar to HTTP, that lets entities make requests of
and receive responses from each other
Dott. Fabio Calefato
10
11
12
jabber.montague.lit
Conn. Established: 5222
jabber.shakespeare.lit
13
Romeo e Giulietta
jabber.capulet.lit
Stream
Stream
jabber.montague.lit
<iq type=get
from=romeo@montague.lit/pda>
<query xmlns=jabber:iq:roster/>
</iq>
14
Romeo e Giulietta
jabber.capulet.lit
iq: Roster
iq: Roster
jabber.montague.lit
Conn. Established: 5222
<iq type=result
to=romeo@montague.lit/pda>
<query xmlns=jabber:iq:roster>
<item jid=juliet@capulet.lit/>
<item jid=mercutio@shakespeare.lit/>
<item jid=benvolio@shakespeare.lit/>
jabber.shakespeare.lit
</query>
</iq>
15
Romeo e Giulietta
Presence
<presence
from=romeo@montague.lit/pda
to=juliet@capulet.lit/>
jabber.shakespeare.lit
<presence
from=romeo@montague.lit/pda
to=mercutio@shakespeare.lit/>
16
Romeo e Giulietta
Presence
jabber.montague.lit
Conn. fissa: 5222
<presence
jabber.capulet.lit
to=romeo@montague.lit/pda
from=juliet@capulet.lit/balcony/>
<presence
to=romeo@montague.lit/pda
from=juliet@capulet.lit/chamber/>
<presence
jabber.shakespeare.lit
to=romeo@montague.lit/pda
from=mercutio@shakespeare.lit/
home/>
17
Romeo e Giulietta
Message
<message
from=romeo@montague.lit/pda
jabber.capulet.lit
to=juliet@capulet.lit>
<body>hi!</body>
</message>
Message
Message
jabber.montague.lit
Conn. fissa: 5222
<message from=juliet@capulet.
lit/balcony to=romeo@montague.
lit/pda>
jabber.shakespeare.lit
<body>hi yourself!</body>
</message>
18
References
19
10