matrix-xmpp-filter
                   +---------------------------------------------------+
                   |                                                   |
Matrix             |  +-------------+    +-----------+   +----------+  |
homeserver1 <---------|             |    |           |   | libqxmpp |  |
homeserver2 <---------| libQuotient |----| filtering |---|          |  |
...                |  |             |    | rules     |   |          |  |
homeserverN <---------|             |    +-----------+   +----------+  |
                   |  +-------------+                      ^    ^      |
                   |                                       |    |      |
                   +---------------------------------------|----|------+
                                                           |    |
                                                           |    |
                          +--------------------------------+    |
                          |                                     |
                      +--------+                         +--------+
                      | XMPP   |                         | XMPP   |
                      | client |                         | client |
                      | (no    |                         | (no    |
                      | MUC    |                         | MUC    |
                      | support|                         | support|
                      | needed)|                         | needed)|
                      |        |                         |        |
                      |        |                         |        |
                      +--------+                         +--------+

Matrix-xmpp-filter forwards messages between a Matrix room and an XMPP conversation. It can be used with XMPP clients that do not support MUC (multi user chat). Motivation for writing it was built-in XMPP support of Sailfish (Telepathy gabble) which does pretty good job keeping the phone connected to xmpp server.

Run matrix-xmpp-filter on a server and you don't need to remember to keep a Matrix application running on a Sailfish phone. Matrix messages are forwarded to XMPP and you can reply to Matrix messages and change filter settings by sending XMPP messages back to the filter.

Clone this repository with

git clone https://k2c42.dy.fi/matrix-xmpp-filter.git
and read more from the README file. Compiling requires Qt5 (tested with 5.11), libqxmpp (tested with 1.3.1), libidn11, libQuotient, olm (tested with git versions about July 2020)

Join #matrix-xmpp-filter:ellipsis.fi