mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2024-09-09 14:22:02 +00:00
Properly handle presence events for application services. (#8656)
This commit is contained in:
parent
437a99fb99
commit
5eda018561
1
changelog.d/8656.bugfix
Normal file
1
changelog.d/8656.bugfix
Normal file
@ -0,0 +1 @@
|
|||||||
|
Fix a bug introduced in v1.22.0rc1 where presence events were not properly passed to application services.
|
@ -238,7 +238,7 @@ class ApplicationServicesHandler:
|
|||||||
|
|
||||||
async def _handle_presence(
|
async def _handle_presence(
|
||||||
self, service: ApplicationService, users: Collection[UserID]
|
self, service: ApplicationService, users: Collection[UserID]
|
||||||
):
|
) -> List[JsonDict]:
|
||||||
events = [] # type: List[JsonDict]
|
events = [] # type: List[JsonDict]
|
||||||
presence_source = self.event_sources.sources["presence"]
|
presence_source = self.event_sources.sources["presence"]
|
||||||
from_key = await self.store.get_type_stream_id_for_appservice(
|
from_key = await self.store.get_type_stream_id_for_appservice(
|
||||||
@ -252,7 +252,7 @@ class ApplicationServicesHandler:
|
|||||||
user=user, service=service, from_key=from_key,
|
user=user, service=service, from_key=from_key,
|
||||||
)
|
)
|
||||||
time_now = self.clock.time_msec()
|
time_now = self.clock.time_msec()
|
||||||
presence_events = [
|
events.extend(
|
||||||
{
|
{
|
||||||
"type": "m.presence",
|
"type": "m.presence",
|
||||||
"sender": event.user_id,
|
"sender": event.user_id,
|
||||||
@ -261,8 +261,9 @@ class ApplicationServicesHandler:
|
|||||||
),
|
),
|
||||||
}
|
}
|
||||||
for event in presence_events
|
for event in presence_events
|
||||||
]
|
)
|
||||||
events = events + presence_events
|
|
||||||
|
return events
|
||||||
|
|
||||||
async def query_user_exists(self, user_id):
|
async def query_user_exists(self, user_id):
|
||||||
"""Check if any application service knows this user_id exists.
|
"""Check if any application service knows this user_id exists.
|
||||||
|
Loading…
Reference in New Issue
Block a user