Mercurial > prosody-modules
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" |
