comparison mod_groups_internal/README.md @ 6152:8f52eb411737

mod_groups_internal: Use syntax closer to Lua in README
author Rémi Bardon <remi@remibardon.name>
date Fri, 31 Jan 2025 02:09:38 +0100
parents 5250e4cb0b1a
children 9122d5a246c2
comparison
equal deleted inserted replaced
6151:5250e4cb0b1a 6152:8f52eb411737
74 **Parameters:** 74 **Parameters:**
75 75
76 1. `group_id: string`: Node part of the group's JID. 76 1. `group_id: string`: Node part of the group's JID.
77 2. `group_info: { name: string, muc_jid: string | nil }` 77 2. `group_info: { name: string, muc_jid: string | nil }`
78 78
79 **Returns[^pseudo-lua]:** `true | nil, error: string` 79 **Returns:** `true | nil, error: string`
80 80
81 #### `get_members(group_id)` {#get_members} 81 #### `get_members(group_id)` {#get_members}
82 82
83 Retrieves the list of members in a given group. 83 Retrieves the list of members in a given group.
84 84
85 **Parameters:** 85 **Parameters:**
86 86
87 1. `group_id: string`: Node part of the group's JID. 87 1. `group_id: string`: Node part of the group's JID.
88 88
89 **Returns[^pseudo-lua]:** `group_members: [string]` 89 **Returns:** `group_members: {string}`
90 90
91 #### `exists(group_id)` {#exists} 91 #### `exists(group_id)` {#exists}
92 92
93 Returns whether or not a group exists. 93 Returns whether or not a group exists.
94 94
104 104
105 **Parameters:** 105 **Parameters:**
106 106
107 1. `username: string`: Node part of the user's JID. 107 1. `username: string`: Node part of the user's JID.
108 108
109 **Returns[^pseudo-lua]:** `user_groups: [string]` 109 **Returns:** `user_groups: {string}`
110 110
111 #### `delete(group_id)` {#delete} 111 #### `delete(group_id)` {#delete}
112 112
113 Deletes a given group and its associated group chats. 113 Deletes a given group and its associated group chats.
114 114
115 **Parameters:** 115 **Parameters:**
116 116
117 1. `group_id: string`: Node part of the group's JID. 117 1. `group_id: string`: Node part of the group's JID.
118 118
119 **Returns[^pseudo-lua]:** `true | nil, error: string` 119 **Returns:** `true | nil, error: string`
120 120
121 #### `add_member(group_id, username, delay_update)` {#add_member} 121 #### `add_member(group_id, username, delay_update)` {#add_member}
122 122
123 Adds a member to a given group, optionally delaying subscriptions until [`sync`](#sync) is called. 123 Adds a member to a given group, optionally delaying subscriptions until [`sync`](#sync) is called.
124 124
169 **Parameters:** 169 **Parameters:**
170 170
171 1. `group_id: string`: Node part of the group's JID. 171 1. `group_id: string`: Node part of the group's JID.
172 2. `name: string`: Desired name of the group chat. 172 2. `name: string`: Desired name of the group chat.
173 173
174 **Returns[^pseudo-lua]:** 174 **Returns:**
175 175
176 ```lua 176 ```lua
177 muc: { 177 muc: {
178 jid: string, 178 jid: string,
179 name: string, 179 name: string,
192 **Parameters:** 192 **Parameters:**
193 193
194 1. `group_id: string`: Node part of the group's JID. 194 1. `group_id: string`: Node part of the group's JID.
195 2. `muc_id: string`: Node part of the MUC JID. 195 2. `muc_id: string`: Node part of the MUC JID.
196 196
197 **Returns[^pseudo-lua]:** `true | nil, error: string` 197 **Returns:** `true | nil, error: string`
198 198
199 #### `get_group_chats(group_id)` {#get_group_chats} 199 #### `get_group_chats(group_id)` {#get_group_chats}
200 200
201 Lists group chats associated to a given group. 201 Lists group chats associated to a given group.
202 202
206 206
207 **Parameters:** 207 **Parameters:**
208 208
209 1. `group_id: string`: Node part of the group's JID. 209 1. `group_id: string`: Node part of the group's JID.
210 210
211 **Returns[^pseudo-lua]:** 211 **Returns:**
212 212
213 ```lua 213 ```lua
214 group_chats: [ 214 group_chats: {
215 { 215 {
216 id: string, -- muc_id (node part of the MUC JID) 216 id: string, -- muc_id (node part of the MUC JID)
217 jid: string, 217 jid: string,
218 name: string, 218 name: string,
219 deleted = boolean, 219 deleted: boolean,
220 } 220 }
221 ] 221 }
222 | nil 222 | nil
223 ``` 223 ```
224 224
225 #### `emit_member_events(group_id)` {#emit_member_events} 225 #### `emit_member_events(group_id)` {#emit_member_events}
226 226
228 228
229 **Parameters:** 229 **Parameters:**
230 230
231 1. `group_id: string`: Node part of the group's JID. 231 1. `group_id: string`: Node part of the group's JID.
232 232
233 **Returns[^pseudo-lua]:** `true | false, error: string` 233 **Returns:** `true | false, error: string`
234 234
235 #### `groups()` {#groups} 235 #### `groups()` {#groups}
236 236
237 Returns info about all groups (for every `group_id` key, the value is the equivalent of calling `get_info(group_id)`). 237 Returns info about all groups (for every `group_id` key, the value is the equivalent of calling `get_info(group_id)`).
238 238
239 **Returns[^pseudo-lua]:** 239 **Returns:**
240 240
241 ```lua 241 ```lua
242 groups: { 242 groups: {
243 [<group_id>]: { 243 <group_id>: {
244 name: string, 244 name: string,
245 muc_jid: string | nil 245 muc_jid: string | nil
246 } 246 }
247 } 247 }
248 ``` 248 ```
263 user: string, -- username (node part of the user's JID) 263 user: string, -- username (node part of the user's JID)
264 host: string, -- <module.host> 264 host: string, -- <module.host>
265 group_info: { 265 group_info: {
266 name: string, 266 name: string,
267 muc_jid: string | nil, 267 muc_jid: string | nil,
268 mucs: [string] | nil, 268 mucs: {string} | nil,
269 }, 269 },
270 } 270 }
271 ``` 271 ```
272 272
273 #### `group-user-removed` {#group-user-removed} 273 #### `group-user-removed` {#group-user-removed}
282 user: string, -- username (node part of the user's JID) 282 user: string, -- username (node part of the user's JID)
283 host: string, -- <module.host> 283 host: string, -- <module.host>
284 group_info: { 284 group_info: {
285 name: string, 285 name: string,
286 muc_jid: string | nil, 286 muc_jid: string | nil,
287 mucs: [string] | nil, 287 mucs: {string} | nil,
288 }, 288 },
289 } 289 }
290 ``` 290 ```
291 291
292 #### `group-chat-added` {#group-chat-added} 292 #### `group-chat-added` {#group-chat-added}
298 ```lua 298 ```lua
299 { 299 {
300 group_id: string, 300 group_id: string,
301 group_info: { 301 group_info: {
302 name: string, 302 name: string,
303 mucs: [string], 303 mucs: {string},
304 }, 304 },
305 muc: { 305 muc: {
306 jid: string, 306 jid: string,
307 name: string, 307 name: string,
308 }, 308 },
318 ```lua 318 ```lua
319 { 319 {
320 group_id: string, -- group_id (node part of the group's JID) 320 group_id: string, -- group_id (node part of the group's JID)
321 group_info: { 321 group_info: {
322 name: string, 322 name: string,
323 mucs: [string], 323 mucs: {string},
324 }, 324 },
325 muc: { 325 muc: {
326 id: string, -- muc_id (node part of the MUC JID) 326 id: string, -- muc_id (node part of the MUC JID)
327 jid: string, 327 jid: string,
328 }, 328 },
329 } 329 }
330 ``` 330 ```
331 331
332 [^pseudo-lua]: As "pseudo-Lua" code. `[…]` represents a list and `[…]` as a map key means `0..n` times the key (it's not just one element).
333
334 [`mod_groups`]: https://prosody.im/doc/modules/mod_groups "mod_groups – Prosody IM" 332 [`mod_groups`]: https://prosody.im/doc/modules/mod_groups "mod_groups – Prosody IM"