Software /
code /
prosody
Annotate
doc/stanza.txt @ 10813:4a9ff4f61796
mod_presence: Send unavailable presence in current thread run
`session:dispatch_stanza(pres)` enqueues processing of the stanza in the
sessions async thread, but becasue the entire stream close handling is
now in that thread it would process the presence after the stream and
session was completely closed, leading to weird errors "sent to a
resting session".
We call core_process_stanza() since this is what :dispatch_stanza calls
in the end.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 09 May 2020 00:28:10 +0200 |
parent | 55:4edb942e9dff |
rev | line source |
---|---|
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 stanza: |
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 stanza { |
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 tags -- array of tags |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
8 |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
9 --- static methods --- |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
10 iq(attrs) -- |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
11 |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
12 --- read-only methods --- |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
13 reply -- return new stanza with attributes of current stanza |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
14 child_with_name(string name) -- return the first child of the current tag with the matching name |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
15 |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
16 --- write methods --- |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
17 tag(name, sttrs) -- create a new child of the current tag, and set the child as current |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
18 up() -- move to the parent of the current tag |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
19 text(string) -- append a new text node to the current tag |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
20 } |