view mod_csi_muc_priorities/README.markdown @ 5418:f2c7bb3af600

mod_http_oauth2: Add role selector to consent page List includes all roles available to the user, if more than one. Defaults to either the first role in the scope string or the users primary role. Earlier draft listed all roles, but having options that can't be selected is bad UX and the entire list of all roles on the server could be long, and perhaps even sensitive. Allows e.g. picking a role with fewer permissions than what might otherwise have been selected. UX wise, doing this with more checkboxes or possibly radio buttons would have been confusion and/or looked messier. Fixes the previous situation where unselecting a role would default to the primary role, which could be more permissions than requested.
author Kim Alvefur <zash@zash.se>
date Fri, 05 May 2023 01:23:13 +0200
parents 562d3b219876
children
line wrap: on
line source

# Introduction

This module lets users specify which of the group chats they are in are
less important. This influences when
[mod_csi_simple][doc:modules:mod_csi_simple] decides to send
stanzas vs waiting until there is more to send. Users in many large
public channels might benefit from this.

# Configuration

The module is configured via ad-hoc an command called *Configure group
chat priorities* that should appear in the menus of compatible clients.

The command presents a form that accepts a list of XMPP addresses.
Currently there is a single priority, *Lower priority*, which is
suitable for e.g. noisy public channels. mod_csi_simple considers
groupchat messages important by default on the assumptions that smaller
and more important private chats are more common among most users.

A message of type groupchat from an address in this list will not be
considered important enough to send it to an inactive client, unless it
is from the current user or mentions of their nickname. **Note** that
mention support require the separate module [mod_track_muc_joins]
to also be loaded.

``` {.lua}
modules_enabled = {
    -- other modules etc

    "csi_simple",
    "csi_muc_priorities",
    "track_muc_joins", -- optional
}
```