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