summary refs log tree commit diff
path: root/synapse/handlers/initial_sync.py
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2017-03-15 14:27:34 +0000
committerErik Johnston <erik@matrix.org>2017-03-15 14:27:34 +0000
commit6c82de51002575e974907ab0a7d4fc6b0123bc8f (patch)
tree7338a0d9c64ae83255404a7527bbdf90705a1a44 /synapse/handlers/initial_sync.py
parentMerge pull request #1997 from matrix-org/dbkr/cas_partialdownload (diff)
downloadsynapse-6c82de51002575e974907ab0a7d4fc6b0123bc8f.tar.xz
Format presence events on the edges instead of reformatting them multiple times
Diffstat (limited to 'synapse/handlers/initial_sync.py')
-rw-r--r--synapse/handlers/initial_sync.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/synapse/handlers/initial_sync.py b/synapse/handlers/initial_sync.py

index e0ade4c164..10f5f35a69 100644 --- a/synapse/handlers/initial_sync.py +++ b/synapse/handlers/initial_sync.py
@@ -19,6 +19,7 @@ from synapse.api.constants import EventTypes, Membership from synapse.api.errors import AuthError, Codes from synapse.events.utils import serialize_event from synapse.events.validator import EventValidator +from synapse.handlers.presence import format_user_presence_state from synapse.streams.config import PaginationConfig from synapse.types import ( UserID, StreamToken, @@ -225,9 +226,17 @@ class InitialSyncHandler(BaseHandler): "content": content, }) + now = self.clock.time_msec() + ret = { "rooms": rooms_ret, - "presence": presence, + "presence": [ + { + "type": "m.presence", + "content": format_user_presence_state(event, now), + } + for event in presence + ], "account_data": account_data_events, "receipts": receipt, "end": now_token.to_string(),