Software /
code /
prosody
Annotate
doc/roster_format.txt @ 13015:46c05c2e34f7
moduleapi: Add module:once() to execute a function after module load/startup
It is a common pattern for modules to do something like check for
prosody.start_time, and execute code immediately if it is present, or wait for
the server-started event if it isn't yet. For example, this allows you to run
code after all other modules/hosts have been loaded, that are going to be
loaded.
Such code can now be replaced with a simple call to this method.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Sat, 01 Apr 2023 11:59:50 +0100 |
parent | 132:9a4aa57af367 |
rev | line source |
---|---|
100
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
1 |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
2 This file documents the structure of the roster object. |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
3 |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
4 table roster { |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
5 [string bare_jid] = roster_item |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
6 } |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
7 |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
8 table roster_item { |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
9 string subscription = "none" | "to" | "from" | "both" |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
10 string name = Opaque string set by client. (optional) |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
11 set groups = a set of opaque strings set by the client |
132 | 12 boolean ask = nil | "subscribe" - a value of true indicates subscription is pending |
100
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
13 } |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
14 |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
15 The roster is available as |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
16 hosts[host].sessions[username].roster |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
17 and a copy is made to session.roster for all sessions. |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
18 |
ca7bad346cde
Documented the roster object's structure
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
19 All modifications to a roster should be done through the rostermanager. |