mirror of
https://github.com/element-hq/synapse
synced 2024-06-30 18:23:28 +00:00
Fixed presence results not returning offline users on initial sync
This commit is contained in:
parent
9edb725ebc
commit
9e99edfa42
1
changelog.d/17231.bugfix
Normal file
1
changelog.d/17231.bugfix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Fixed presence results not returning offline users on initial sync. Contributed by @Michael-Hollister.
|
|
@ -2281,16 +2281,13 @@ class SyncHandler:
|
||||||
|
|
||||||
since_token = sync_result_builder.since_token
|
since_token = sync_result_builder.since_token
|
||||||
presence_key = None
|
presence_key = None
|
||||||
include_offline = False
|
|
||||||
if since_token and not sync_result_builder.full_state:
|
if since_token and not sync_result_builder.full_state:
|
||||||
presence_key = since_token.presence_key
|
presence_key = since_token.presence_key
|
||||||
include_offline = True
|
|
||||||
|
|
||||||
presence, presence_key = await presence_source.get_new_events(
|
presence, presence_key = await presence_source.get_new_events(
|
||||||
user=user,
|
user=user,
|
||||||
from_key=presence_key,
|
from_key=presence_key,
|
||||||
is_guest=sync_config.is_guest,
|
is_guest=sync_config.is_guest,
|
||||||
include_offline=include_offline,
|
|
||||||
)
|
)
|
||||||
assert presence_key
|
assert presence_key
|
||||||
sync_result_builder.now_token = now_token.copy_and_replace(
|
sync_result_builder.now_token = now_token.copy_and_replace(
|
||||||
|
|
|
@ -916,7 +916,7 @@ def _test_sending_local_online_presence_to_local_user(
|
||||||
presence_updates, sync_token = sync_presence(
|
presence_updates, sync_token = sync_presence(
|
||||||
test_case, test_case.presence_receiver_id
|
test_case, test_case.presence_receiver_id
|
||||||
)
|
)
|
||||||
test_case.assertEqual(len(presence_updates), 1)
|
test_case.assertEqual(len(presence_updates), 2)
|
||||||
|
|
||||||
presence_update: UserPresenceState = presence_updates[0]
|
presence_update: UserPresenceState = presence_updates[0]
|
||||||
test_case.assertEqual(presence_update.user_id, test_case.presence_sender_id)
|
test_case.assertEqual(presence_update.user_id, test_case.presence_sender_id)
|
||||||
|
|
Loading…
Reference in a new issue