File

mod_muc_offline_delivery/README.md @ 6191:94399ad6b5ab

mod_invites_register_api: Use set_password() for password resets Previously the code relied on the (weird) behaviour of create_user(), which would update the password for a user account if it already existed. This has several issues, and we plan to deprecate this behaviour of create_user(). The larger issue is that this route does not trigger the user-password-changed event, which can be a security problem. For example, it did not disconnect existing user sessions (this occurs in mod_c2s in response to the event). Switching to set_password() is the right thing to do.
author Matthew Wild <mwild1@gmail.com>
date Thu, 06 Feb 2025 10:13:39 +0000
parent 4339:3b7847c9bd26
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.