MatrixSynapse/docs
Andrew Morgan 04819239ba
Add a Synapse Module for configuring presence update routing (#9491)
At the moment, if you'd like to share presence between local or remote users, those users must be sharing a room together. This isn't always the most convenient or useful situation though.

This PR adds a module to Synapse that will allow deployments to set up extra logic on where presence updates should be routed. The module must implement two methods, `get_users_for_states` and `get_interested_users`. These methods are given presence updates or user IDs and must return information that Synapse will use to grant passing presence updates around.

A method is additionally added to `ModuleApi` which allows triggering a set of users to receive the current, online presence information for all users they are considered interested in. This is the equivalent of that user receiving presence information during an initial sync. 

The goal of this module is to be fairly generic and useful for a variety of applications, with hard requirements being:

* Sending state for a specific set or all known users to a defined set of local and remote users.
* The ability to trigger an initial sync for specific users, so they receive all current state.
2021-04-06 14:38:30 +01:00
..
admin_api Add `order_by` to list user admin API (#9691) 2021-04-01 11:28:53 +01:00
dev Refactor the CAS handler in prep for using the abstracted SSO code. (#8958) 2020-12-18 13:09:45 -05:00
privacy_policy_templates/en
systemd-with-workers example systemd config: propagate reloads to units (#9463) 2021-02-22 18:43:17 +00:00
.sample_config_header.yaml
ACME.md
CAPTCHA_SETUP.md
MSC1711_certificates_FAQ.md
README.md
ancient_architecture_notes.md
application_services.md
architecture.md
auth_chain_diff.dot Use a chain cover index to efficiently calculate auth chain difference (#8868) 2021-01-11 16:09:22 +00:00
auth_chain_diff.dot.png Use a chain cover index to efficiently calculate auth chain difference (#8868) 2021-01-11 16:09:22 +00:00
auth_chain_difference_algorithm.md Use a chain cover index to efficiently calculate auth chain difference (#8868) 2021-01-11 16:09:22 +00:00
code_style.md Replace `room_invite_state_types` with `room_prejoin_state` (#9700) 2021-03-30 12:12:44 +01:00
consent_tracking.md
delegate.md
deprecation_policy.md Add deprecation policy doc (#9723) 2021-04-06 13:07:36 +01:00
federate.md
jwt.md
log_contexts.md
manhole.md
media_repository.md
message_retention_policies.md
metrics-howto.md Improve documentation how to configure prometheus for workers (#8822) 2020-11-26 10:42:55 +00:00
openid.md Add support for stable MSC2858 API (#9617) 2021-03-16 11:21:26 +00:00
opentracing.md
password_auth_providers.md Fix typo in password_auth_providers doc 2020-12-01 10:34:52 +00:00
postgres.md Quote pip install with brackets to avoid shell interpretation. (#9151) 2021-01-18 11:12:20 -05:00
presence_router_module.md Add a Synapse Module for configuring presence update routing (#9491) 2021-04-06 14:38:30 +01:00
replication.md
reverse_proxy.md Preserve host in example apache config (#9696) 2021-03-26 10:38:31 +00:00
room_and_user_statistics.md
sample_config.yaml Add a Synapse Module for configuring presence update routing (#9491) 2021-04-06 14:38:30 +01:00
sample_log_config.yaml
server_notices.md
spam_checker.md Pass SSO IdP information to spam checker's registration function (#9626) 2021-03-16 12:41:41 +00:00
sso_mapping_providers.md Implement a username picker for synapse (#8942) 2020-12-18 14:19:46 +00:00
structured_logging.md
synctl_workers.md
tcp_replication.md Fix deleting pushers when using sharded pushers. (#9465) 2021-02-22 21:14:42 +00:00
turn-howto.md Correct `matrix-synapse.service` reference in TURN howto docs. (#9308) 2021-02-04 11:22:44 -05:00
url_previews.md
user_directory.md
workers.md docs: fallback/web endpoint does not appear to be mounted on workers (#9679) 2021-03-24 11:43:04 +00:00

README.md

Synapse Documentation

This directory contains documentation specific to the synapse homeserver.

All matrix-generic documentation now lives in its own project, located at matrix-org/matrix-doc

(Note: some items here may be moved to matrix-org/matrix-doc at some point in the future.)