diff options
author | Andrej Shadura <andrewsh@debian.org> | 2021-06-29 12:59:58 +0200 |
---|---|---|
committer | Andrej Shadura <andrewsh@debian.org> | 2021-06-29 12:59:58 +0200 |
commit | 364c37238258580e132178cc7b35acabce3ff326 (patch) | |
tree | dadc23431f7f55fd8bcd8780c64b519dae7d5a76 /synapse/appservice/api.py | |
parent | 219af4a8aef838c5e3689a2aa71cf72f2fd75aa2 (diff) |
New upstream version 1.37.0
Diffstat (limited to 'synapse/appservice/api.py')
-rw-r--r-- | synapse/appservice/api.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/synapse/appservice/api.py b/synapse/appservice/api.py index fe04d7a6..61152b2c 100644 --- a/synapse/appservice/api.py +++ b/synapse/appservice/api.py @@ -17,7 +17,7 @@ from typing import TYPE_CHECKING, List, Optional, Tuple from prometheus_client import Counter -from synapse.api.constants import EventTypes, ThirdPartyEntityKind +from synapse.api.constants import EventTypes, Membership, ThirdPartyEntityKind from synapse.api.errors import CodeMessageException from synapse.events import EventBase from synapse.events.utils import serialize_event @@ -247,9 +247,14 @@ class ApplicationServiceApi(SimpleHttpClient): e, time_now, as_client_event=True, - is_invite=( + # If this is an invite or a knock membership event, and we're interested + # in this user, then include any stripped state alongside the event. + include_stripped_room_state=( e.type == EventTypes.Member - and e.membership == "invite" + and ( + e.membership == Membership.INVITE + or e.membership == Membership.KNOCK + ) and service.is_interested_in_user(e.state_key) ), ) |