view mod_muc_offline_delivery/README.md @ 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 3b7847c9bd26
children
line wrap: on
line source

---
labels:
- 'Stage-Alpha'
summary: 'Support for sending MUC messages to offline users'
...

Introduction
============

This module implements support for sending messages in a MUC to affiliated users
who are not in the room. This is a custom extension by Tigase to allow push notifications
from MUCs to users who are not currently connected.

It is planned that this will evolve to a XEP in the near future.

The protocol is described below. It is implemented in the Siskin client for iOS.

Details
=======

Add to modules_enabled under your MUC component (i.e. **not** the global modules_enabled
list). There are no configuration options.

Compatibility
=============

Requires Prosody trunk (0.12) for the API introduced in commit 336cba957c88.

Protocol
========

To enable this feature, a client must fetch the registration form from a MUC,
as per XEP-0045. The form will include the usual field for nickname (this is
required), and also a boolean field named `{http://tigase.org/protocol/muc}offline`.

Submit the form with that field set to true, and the MUC will forward messages
to your bare JID when you are not connected to the room. Two things to note:

1. This will achieve nothing unless your server is capable of handling these
    messages correctly.
2. Messages are only sent when you are not in the room. This includes other
    resources of the same account.