2 Structure of a session:
\r
7 conn -- the tcp connection
\r
8 notopen -- true if stream has not been initiated, removed after receiving <stream:steam>
\r
9 type -- the connection type. Valid values include:
\r
10 -- "c2s_unauthed" - connection has not been authenticated yet
\r
11 -- "c2s" - from a local client to the server
\r
12 username -- the node part of the client's jid (not defined before auth)
\r
13 host -- the host part of the client's jid (not defined before stream initiation)
\r
14 resource -- the resource part of the client's full jid (not defined before resource binding)
\r
15 full_jid -- convenience for the above 3 as string in username@host/resource form (not defined before resource binding)
\r
16 priority -- the resource priority, default: 0 (not defined before initial presence)
\r
17 presence -- the last non-directed presence. initially nil.
\r
18 interested -- true if the resource requested the roster. Interested resources recieve roster updates. Initially nil.
\r
19 roster -- the user's roster. Loaded as soon as the resource is bound (session becomes a connected resource).
\r
22 send(x) -- converts x to a string, and writes it to the connection
\r
23 disconnect(x) -- Disconnect the user and clean up the session, best call sessionmanager.destroy_session() instead of this in most cases
\r
26 if session.full_jid (also session.roster and session.resource) then this is a "connected resource"
\r
27 if session.presence then this is an "available resource"
\r
28 if session.interested then this is an "interested resource"
\r