doc/session.txt
author Kim Alvefur <zash@zash.se>
Thu, 28 Mar 2024 15:26:57 +0100
changeset 13472 98806cac64c3
parent 8731 41c959c5c84b
permissions -rw-r--r--
MUC: Switch to official XEP-0317 namespace for Hats (including compat) (thanks nicoco)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
55
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     1
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     2
Structure of a session:
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     3
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     4
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     5
session {
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     6
	-- properties --
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     7
	conn -- the tcp connection
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     8
	notopen -- true if stream has not been initiated, removed after receiving <stream:steam>
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
     9
	type -- the connection type. Valid values include:
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
    10
			-- "c2s_unauthed" - connection has not been authenticated yet
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
    11
			-- "c2s" - from a local client to the server
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
    12
	username -- the node part of the client's jid (not defined before auth)
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
    13
	host -- the host part of the client's jid (not defined before stream initiation)
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
    14
	resource -- the resource part of the client's full jid (not defined before resource binding)
61
Matthew Wild <mwild1@gmail.com>
parents: 55
diff changeset
    15
	full_jid -- convenience for the above 3 as string in username@host/resource form (not defined before resource binding)
199
eccf66b42bd7 Added resource priority handling, etc
Waqas Hussain <waqas20@gmail.com>
parents: 116
diff changeset
    16
	priority -- the resource priority, default: 0
eccf66b42bd7 Added resource priority handling, etc
Waqas Hussain <waqas20@gmail.com>
parents: 116
diff changeset
    17
	presence -- the last non-directed presence with no type attribute. initially nil. reset to nil on unavailable presence.
8731
41c959c5c84b Fix spelling throughout the codebase [codespell]
Kim Alvefur <zash@zash.se>
parents: 7538
diff changeset
    18
	interested -- true if the resource requested the roster. Interested resources receive roster updates. Initially nil.
116
72e698cdabd7 Updated and fixed session documentation
Waqas Hussain <waqas20@gmail.com>
parents: 115
diff changeset
    19
	roster -- the user's roster. Loaded as soon as the resource is bound (session becomes a connected resource).
55
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
    20
	
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
    21
	-- methods --
4edb942e9dff Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
    22
	send(x) -- converts x to a string, and writes it to the connection
7538
4a3a3098d9bb doc/session: As far as I remember, sessions have had a close method, not disconnect
Kim Alvefur <zash@zash.se>
parents: 199
diff changeset
    23
	close(x) -- Disconnect the user and clean up the session, best call sessionmanager.destroy_session() instead of this in most cases
61
Matthew Wild <mwild1@gmail.com>
parents: 55
diff changeset
    24
}
115
db048883a522 Updated session documentation
Waqas Hussain <waqas20@gmail.com>
parents: 61
diff changeset
    25
116
72e698cdabd7 Updated and fixed session documentation
Waqas Hussain <waqas20@gmail.com>
parents: 115
diff changeset
    26
if session.full_jid (also session.roster and session.resource) then this is a "connected resource"
199
eccf66b42bd7 Added resource priority handling, etc
Waqas Hussain <waqas20@gmail.com>
parents: 116
diff changeset
    27
if session.presence then this is an "available resource" (all available resources are connected resources)
eccf66b42bd7 Added resource priority handling, etc
Waqas Hussain <waqas20@gmail.com>
parents: 116
diff changeset
    28
if session.interested then this is an "interested resource" (all interested resources are connected resources)