diff options
author | Michael Hollister <michael.s.hollister@protonmail.com> | 2024-07-23 04:59:24 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-23 09:59:24 +0000 |
commit | a9ee832e4899fefcfd27fba475091e1ffaa069b8 (patch) | |
tree | 5e5922d2aaf6c388150a978905bc001653b954ab /synapse/handlers/sync.py | |
parent | Bump hiredis from 2.3.2 to 3.0.0 (#17464) (diff) | |
download | synapse-a9ee832e4899fefcfd27fba475091e1ffaa069b8.tar.xz |
Fixed presence results not returning offline users on initial sync (#17231)
This is to address an issue in which `m.presence` results on initial sync are not returning entries of users who are currently offline. The original behaviour was from https://github.com/element-hq/synapse/issues/1535 This change is useful for applications that use the presence system for tracking user profile information/updates (e.g. https://github.com/element-hq/synapse/pull/16992 or for profile status messages). This is gated behind a new configuration option to avoid performance impact for applications that don't need this, as a pragmatic solution for now.
Diffstat (limited to '')
-rw-r--r-- | synapse/handlers/sync.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/synapse/handlers/sync.py b/synapse/handlers/sync.py index de227faec3..ede014180c 100644 --- a/synapse/handlers/sync.py +++ b/synapse/handlers/sync.py @@ -2270,7 +2270,11 @@ class SyncHandler: user=user, from_key=presence_key, is_guest=sync_config.is_guest, - include_offline=include_offline, + include_offline=( + True + if self.hs_config.server.presence_include_offline_users_on_sync + else include_offline + ), ) assert presence_key sync_result_builder.now_token = now_token.copy_and_replace( |