doc/roster_format.txt

Tue, 18 Nov 2008 17:52:33 +0000

author
Matthew Wild <mwild1@gmail.com>
date
Tue, 18 Nov 2008 17:52:33 +0000
changeset 331
830fd67f9378
parent 132
9a4aa57af367
permissions
-rw-r--r--

Quite some changes, to:

- Small logging fix for s2smanager
- Send a stream error if an incoming s2s connection is to an unrecognised hostname (fixes #11)
- init_xmlhandlers now takes a table of callbacks (includes changes to net/xmpp*_listener for this)
- Move sending of unavailable presence to where it should be, sessionmanager.destroy_session
- Fix sending of stream errors to wrong connection


This file documents the structure of the roster object.

table roster {
  [string bare_jid] = roster_item
}

table roster_item {
  string subscription = "none" | "to" | "from" | "both"
  string name = Opaque string set by client. (optional)
  set groups = a set of opaque strings set by the client
  boolean ask = nil | "subscribe" - a value of true indicates subscription is pending
}

The roster is available as
 hosts[host].sessions[username].roster
and a copy is made to session.roster for all sessions.

All modifications to a roster should be done through the rostermanager.

mercurial