Mercurial > prosody-modules
view mod_muc_markers/README.markdown @ 4362:116c88c28532
mod_http_admin_api: restructure group-related info in API
- Return the members of the group right in the get_group_by_id
call. This is an O(1) of extra work.
- Remove the groups attribute from get_user_by_name as that is
O(n) of work and rarely immediately needed.
The replacement for the group membership information in the user
is for now to use the group API and iterate; future work may fix
that.
author | Jonas Schäfer <jonas@wielicki.name> |
---|---|
date | Wed, 20 Jan 2021 15:30:29 +0100 |
parents | 0227fb4d1b40 |
children |
line wrap: on
line source
# Introduction This module adds an internal Prosody API to retrieve the last displayed message by MUC occupants. ## Requirements The clients must support XEP-0333, and the users to be tracked must be affiliated with the room. Currently due to lack of clarity about which id to use in acknowledgements in XEP-0333, this module rewrites the id attribute of stanzas to match the stanza (archive) id assigned by the MUC server. Oh yeah, and mod_muc_mam is required (or another module that adds a stanza-id), otherwise this module won't do anything. # Configuring ## Enabling ``` {.lua} Component "rooms.example.net" "muc" modules_enabled = { "muc_markers"; "muc_mam"; } ``` ## Settings | Name | Description | Default | |----------------------------|--------------------------------------------------------------------------------------|-------------| | muc_marker_summary_on_join | Whether a summary of all the latest markers should be sent to someone entering a MUC | true | | muc_marker_type | The type of marker to track (displayed/received/acknowledged) | "displayed" | # Developers ## Example usage ``` local muc_markers = module:depends("muc_markers"); function something() local last_displayed_id = muc_markers.get_user_read_marker("user@localhost", "room@conference.localhost"); end ```