synapse-product/synapse/handlers
Erik Johnston 197fae1639 Use event streams to calculate presence
Primarily this fixes a bug in the handling of remote users joining a
room where the server sent out the presence for all local users in the
room to all servers in the room.

We also change to using the state delta stream, rather than the
distributor, as it will make it easier to split processing out of the
master process (as well as being more flexible).

Finally, when sending presence states to newly joined servers we filter
out old presence states to reduce the number sent. Initially we filter
out states that are offline and have a last active more than a week ago,
though this can be changed down the line.

Fixes #3962
2019-03-27 13:41:36 +00:00
..
__init__.py Fix registration on workers (#4682) 2019-02-20 18:47:31 +11:00
_base.py Use flags 2019-03-20 17:40:29 +00:00
account_data.py
acme.py Fetch ACME domain into an instance member 2019-02-19 10:54:33 +00:00
admin.py run isort 2018-07-09 16:09:20 +10:00
appservice.py Remove unnecessary extra function call layer 2018-10-08 14:06:19 +01:00
auth.py Support 3PID login in password providers (#4931) 2019-03-26 17:48:30 +00:00
deactivate_account.py Use flags 2019-03-20 17:40:29 +00:00
device.py Merge pull request #4829 from matrix-org/erikj/device_list_seen_updates 2019-03-08 09:54:54 +00:00
devicemessage.py run isort 2018-07-09 16:09:20 +10:00
directory.py Disable publishing to room list when its disabled 2019-03-20 14:30:36 +00:00
e2e_keys.py Replaced all occurences of e.message with str(e) 2018-09-27 13:38:50 +02:00
e2e_room_keys.py make sure version is in body and wrap in linearizer queue 2019-02-08 01:32:45 -05:00
events.py Deny peeking into rooms that have been blocked 2019-03-21 11:20:13 +00:00
federation.py Factor out soft fail checks 2019-03-08 11:26:33 +00:00
groups_local.py Correctly handle RequestSendFailed exceptions 2019-02-14 14:01:04 +00:00
identity.py sign_request -> build_auth_headers (#4408) 2019-01-17 12:40:09 +00:00
initial_sync.py Deny peeking into rooms that have been blocked 2019-03-21 11:20:13 +00:00
message.py Revert spurious delete 2019-03-20 17:51:27 +00:00
pagination.py Log tracebacks correctly 2019-02-25 16:56:41 +00:00
presence.py Use event streams to calculate presence 2019-03-27 13:41:36 +00:00
profile.py Support 3PID login in password providers (#4931) 2019-03-26 17:48:30 +00:00
read_marker.py Rename async to async_helpers because async is a keyword on Python 3.7 (#3678) 2018-08-10 23:50:21 +10:00
receipts.py Batch up outgoing read-receipts to reduce federation traffic. (#4890) 2019-03-20 16:02:25 +00:00
register.py Support 3PID login in password providers (#4931) 2019-03-26 17:48:30 +00:00
room_list.py Pull out config option 2019-03-20 14:25:58 +00:00
room_member_worker.py Use new helper base class for membership requests 2018-07-31 14:32:23 +01:00
room_member.py Use flags 2019-03-20 17:40:29 +00:00
room.py lint 2019-02-18 18:23:37 +00:00
search.py Apply suggestions from code review 2019-01-24 17:22:09 +00:00
set_password.py run isort 2018-07-09 16:09:20 +10:00
state_deltas.py Refactor out state delta handling into its own class (#4917) 2019-03-25 20:37:08 +11:00
sync.py Merge pull request #4815 from matrix-org/erikj/docstrings 2019-03-06 18:59:28 +00:00
typing.py Avoid rebuilding Edu objects in worker mode (#4770) 2019-03-04 12:57:44 +00:00
user_directory.py Refactor out state delta handling into its own class (#4917) 2019-03-25 20:37:08 +11:00