Mercurial > prosody-modules
comparison mod_groups_internal/mod_groups_internal.lua @ 4424:679be18e6a5e
mod_groups_internal: emit events for group membership changes
author | Jonas Schäfer <jonas@wielicki.name> |
---|---|
date | Wed, 03 Feb 2021 18:02:39 +0100 |
parents | ca821df93cb9 |
children | 71c495fa03f3 |
comparison
equal
deleted
inserted
replaced
4423:ca821df93cb9 | 4424:679be18e6a5e |
---|---|
214 module:log("debug", "set user %s to be member in %s and sent invite", username, group_info.muc_jid); | 214 module:log("debug", "set user %s to be member in %s and sent invite", username, group_info.muc_jid); |
215 else | 215 else |
216 module:log("warn", "failed to update affiliation for %s in %s", username, group_info.muc_jid); | 216 module:log("warn", "failed to update affiliation for %s in %s", username, group_info.muc_jid); |
217 end | 217 end |
218 end | 218 end |
219 module:fire_event( | |
220 "group-user-added", | |
221 { | |
222 id = group_id, | |
223 user = username, | |
224 host = host, | |
225 group_info = group_info, | |
226 } | |
227 ) | |
219 if not delay_update then | 228 if not delay_update then |
220 do_all_group_subscriptions_by_group(group_id); | 229 do_all_group_subscriptions_by_group(group_id); |
221 end | 230 end |
222 return true; | 231 return true; |
223 end | 232 end |
237 room:set_affiliation(true, user_jid, nil); | 246 room:set_affiliation(true, user_jid, nil); |
238 else | 247 else |
239 module:log("warn", "failed to update affiliation for %s in %s", username, group_info.muc_jid); | 248 module:log("warn", "failed to update affiliation for %s in %s", username, group_info.muc_jid); |
240 end | 249 end |
241 end | 250 end |
251 module:fire_event( | |
252 "group-user-removed", | |
253 { | |
254 id = group_id, | |
255 user = username, | |
256 host = host, | |
257 group_info = group_info, | |
258 } | |
259 ) | |
242 return true; | 260 return true; |
243 end | 261 end |
244 | 262 |
245 function sync(group_id) | 263 function sync(group_id) |
246 do_all_group_subscriptions_by_group(group_id); | 264 do_all_group_subscriptions_by_group(group_id); |