diff --git a/synapse-module/nginx.nix b/synapse-module/nginx.nix index c8341bb..3c1ebac 100644 --- a/synapse-module/nginx.nix +++ b/synapse-module/nginx.nix @@ -21,89 +21,89 @@ in map $uri $synapse_uri_group { # Sync requests - ^/_matrix/client/(r0|v3)/sync$ $synapse_unknown_sync; - ^/_matrix/client/(api/v1|r0|v3)/event$ synapse_normal_sync; - ^/_matrix/client/(api/v1|r0|v3)/initialSync$ synapse_initial_sync; - ^/_matrix/client/(api/v1|r0|v3)/rooms/[^/]+/initialSync$ synapse_initial_sync; + ~^/_matrix/client/(r0|v3)/sync$ $synapse_unknown_sync; + ~^/_matrix/client/(api/v1|r0|v3)/event$ synapse_normal_sync; + ~^/_matrix/client/(api/v1|r0|v3)/initialSync$ synapse_initial_sync; + ~^/_matrix/client/(api/v1|r0|v3)/rooms/[^/]+/initialSync$ synapse_initial_sync; # Federation requests - ^/_matrix/federation/v1/event/ synapse_federation; - ^/_matrix/federation/v1/state/ synapse_federation; - ^/_matrix/federation/v1/state_ids/ synapse_federation; - ^/_matrix/federation/v1/backfill/ synapse_federation; - ^/_matrix/federation/v1/get_missing_events/ synapse_federation; - ^/_matrix/federation/v1/publicRooms synapse_federation; - ^/_matrix/federation/v1/query/ synapse_federation; - ^/_matrix/federation/v1/make_join/ synapse_federation; - ^/_matrix/federation/v1/make_leave/ synapse_federation; - ^/_matrix/federation/(v1|v2)/send_join/ synapse_federation; - ^/_matrix/federation/(v1|v2)/send_leave/ synapse_federation; - ^/_matrix/federation/(v1|v2)/invite/ synapse_federation; - ^/_matrix/federation/v1/event_auth/ synapse_federation; - ^/_matrix/federation/v1/timestamp_to_event/ synapse_federation; - ^/_matrix/federation/v1/exchange_third_party_invite/ synapse_federation; - ^/_matrix/federation/v1/user/devices/ synapse_federation; - ^/_matrix/key/v2/query synapse_federation; - ^/_matrix/federation/v1/hierarchy/ synapse_federation; + ~^/_matrix/federation/v1/event/ synapse_federation; + ~^/_matrix/federation/v1/state/ synapse_federation; + ~^/_matrix/federation/v1/state_ids/ synapse_federation; + ~^/_matrix/federation/v1/backfill/ synapse_federation; + ~^/_matrix/federation/v1/get_missing_events/ synapse_federation; + ~^/_matrix/federation/v1/publicRooms synapse_federation; + ~^/_matrix/federation/v1/query/ synapse_federation; + ~^/_matrix/federation/v1/make_join/ synapse_federation; + ~^/_matrix/federation/v1/make_leave/ synapse_federation; + ~^/_matrix/federation/(v1|v2)/send_join/ synapse_federation; + ~^/_matrix/federation/(v1|v2)/send_leave/ synapse_federation; + ~^/_matrix/federation/(v1|v2)/invite/ synapse_federation; + ~^/_matrix/federation/v1/event_auth/ synapse_federation; + ~^/_matrix/federation/v1/timestamp_to_event/ synapse_federation; + ~^/_matrix/federation/v1/exchange_third_party_invite/ synapse_federation; + ~^/_matrix/federation/v1/user/devices/ synapse_federation; + ~^/_matrix/key/v2/query synapse_federation; + ~^/_matrix/federation/v1/hierarchy/ synapse_federation; # Inbound federation transaction request - ^/_matrix/federation/v1/send/ synapse_federation_transaction; + ~^/_matrix/federation/v1/send/ synapse_federation_transaction; # Client API requests - ^/_matrix/client/(api/v1|r0|v3|unstable)/createRoom$ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/publicRooms$ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/joined_members$ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/context/.*$ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/members$ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/state$ synapse_client_interaction; - ^/_matrix/client/v1/rooms/.*/hierarchy$ synapse_client_interaction; - ^/_matrix/client/(v1|unstable)/rooms/.*/relations/ synapse_client_interaction; - ^/_matrix/client/v1/rooms/.*/threads$ synapse_client_interaction; - ^/_matrix/client/unstable/org.matrix.msc2716/rooms/.*/batch_send$ synapse_client_interaction; - ^/_matrix/client/unstable/im.nheko.summary/rooms/.*/summary$ synapse_client_interaction; - ^/_matrix/client/(r0|v3|unstable)/account/3pid$ synapse_client_interaction; - ^/_matrix/client/(r0|v3|unstable)/account/whoami$ synapse_client_interaction; - ^/_matrix/client/(r0|v3|unstable)/devices$ synapse_client_interaction; - ^/_matrix/client/versions$ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/voip/turnServer$ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/event/ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/joined_rooms$ synapse_client_interaction; - ^/_matrix/client/v1/rooms/.*/timestamp_to_event$ synapse_client_interaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/search$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/createRoom$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/publicRooms$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/joined_members$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/context/.*$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/members$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/state$ synapse_client_interaction; + ~^/_matrix/client/v1/rooms/.*/hierarchy$ synapse_client_interaction; + ~^/_matrix/client/(v1|unstable)/rooms/.*/relations/ synapse_client_interaction; + ~^/_matrix/client/v1/rooms/.*/threads$ synapse_client_interaction; + ~^/_matrix/client/unstable/org.matrix.msc2716/rooms/.*/batch_send$ synapse_client_interaction; + ~^/_matrix/client/unstable/im.nheko.summary/rooms/.*/summary$ synapse_client_interaction; + ~^/_matrix/client/(r0|v3|unstable)/account/3pid$ synapse_client_interaction; + ~^/_matrix/client/(r0|v3|unstable)/account/whoami$ synapse_client_interaction; + ~^/_matrix/client/(r0|v3|unstable)/devices$ synapse_client_interaction; + ~^/_matrix/client/versions$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/voip/turnServer$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/event/ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/joined_rooms$ synapse_client_interaction; + ~^/_matrix/client/v1/rooms/.*/timestamp_to_event$ synapse_client_interaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/search$ synapse_client_interaction; # Encryption requests - ^/_matrix/client/(r0|v3|unstable)/keys/query$ synapse_client_encryption; - ^/_matrix/client/(r0|v3|unstable)/keys/changes$ synapse_client_encryption; - ^/_matrix/client/(r0|v3|unstable)/keys/claim$ synapse_client_encryption; - ^/_matrix/client/(r0|v3|unstable)/room_keys/ synapse_client_encryption; - ^/_matrix/client/(r0|v3|unstable)/keys/upload/ synapse_client_encryption; + ~^/_matrix/client/(r0|v3|unstable)/keys/query$ synapse_client_encryption; + ~^/_matrix/client/(r0|v3|unstable)/keys/changes$ synapse_client_encryption; + ~^/_matrix/client/(r0|v3|unstable)/keys/claim$ synapse_client_encryption; + ~^/_matrix/client/(r0|v3|unstable)/room_keys/ synapse_client_encryption; + ~^/_matrix/client/(r0|v3|unstable)/keys/upload/ synapse_client_encryption; # Registration/login requests - ^/_matrix/client/(api/v1|r0|v3|unstable)/login$ synapse_client_login; - ^/_matrix/client/(r0|v3|unstable)/register$ synapse_client_login; - ^/_matrix/client/v1/register/m.login.registration_token/validity$ synapse_client_login; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/login$ synapse_client_login; + ~^/_matrix/client/(r0|v3|unstable)/register$ synapse_client_login; + ~^/_matrix/client/v1/register/m.login.registration_token/validity$ synapse_client_login; # Event sending requests - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/redact synapse_client_transaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/send synapse_client_transaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/state/ synapse_client_transaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/(join|invite|leave|ban|unban|kick)$ synapse_client_transaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/join/ synapse_client_transaction; - ^/_matrix/client/(api/v1|r0|v3|unstable)/profile/ synapse_client_transaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/redact synapse_client_transaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/send synapse_client_transaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/state/ synapse_client_transaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/(join|invite|leave|ban|unban|kick)$ synapse_client_transaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/join/ synapse_client_transaction; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/profile/ synapse_client_transaction; # Account data requests - ^/_matrix/client/(r0|v3|unstable)/.*/tags synapse_client_data; - ^/_matrix/client/(r0|v3|unstable)/.*/account_data synapse_client_data; + ~^/_matrix/client/(r0|v3|unstable)/.*/tags synapse_client_data; + ~^/_matrix/client/(r0|v3|unstable)/.*/account_data synapse_client_data; # Receipts requests - ^/_matrix/client/(r0|v3|unstable)/rooms/.*/receipt synapse_client_interaction; - ^/_matrix/client/(r0|v3|unstable)/rooms/.*/read_markers synapse_client_interaction; + ~^/_matrix/client/(r0|v3|unstable)/rooms/.*/receipt synapse_client_interaction; + ~^/_matrix/client/(r0|v3|unstable)/rooms/.*/read_markers synapse_client_interaction; # Presence requests - ^/_matrix/client/(api/v1|r0|v3|unstable)/presence/ synapse_client_presence; + ~^/_matrix/client/(api/v1|r0|v3|unstable)/presence/ synapse_client_presence; # User directory search requests; - ^/_matrix/client/(r0|v3|unstable)/user_directory/search$ synapse_client_search; + ~^/_matrix/client/(r0|v3|unstable)/user_directory/search$ synapse_client_search; } #Plugboard for url -> workers