summary refs log tree commit diff
path: root/synapse/config/server.py
diff options
context:
space:
mode:
authorAndrew Ferrazzutti <andrewf@element.io>2024-09-23 08:33:48 -0400
committerGitHub <noreply@github.com>2024-09-23 13:33:48 +0100
commit5173741c71b42f36ea7fc169f38c53466e660a01 (patch)
treee45545bc0e9d413af745ef6d123e0205de26a67a /synapse/config/server.py
parentSpeed up sorting of sliding sync rooms in initial request (#17734) (diff)
downloadsynapse-5173741c71b42f36ea7fc169f38c53466e660a01.tar.xz
Support MSC4140: Delayed events (Futures) (#17326)
Diffstat (limited to 'synapse/config/server.py')
-rw-r--r--synapse/config/server.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/synapse/config/server.py b/synapse/config/server.py

index 488604a30c..6a8c7cb1c9 100644 --- a/synapse/config/server.py +++ b/synapse/config/server.py
@@ -2,7 +2,7 @@ # This file is licensed under the Affero General Public License (AGPL) version 3. # # Copyright 2014-2021 The Matrix.org Foundation C.I.C. -# Copyright (C) 2023 New Vector, Ltd +# Copyright (C) 2023-2024 New Vector, Ltd # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -780,6 +780,17 @@ class ServerConfig(Config): else: self.delete_stale_devices_after = None + # The maximum allowed delay duration for delayed events (MSC4140). + max_event_delay_duration = config.get("max_event_delay_duration") + if max_event_delay_duration is not None: + self.max_event_delay_ms: Optional[int] = self.parse_duration( + max_event_delay_duration + ) + if self.max_event_delay_ms <= 0: + raise ConfigError("max_event_delay_duration must be a positive value") + else: + self.max_event_delay_ms = None + def has_tls_listener(self) -> bool: return any(listener.is_tls() for listener in self.listeners)