mirror of
https://git.anonymousland.org/anonymousland/synapse-product.git
synced 2024-12-20 05:34:19 -05:00
Remember to hook up the typing event stream to the notifier as well
This commit is contained in:
parent
20beed9dd4
commit
0c1deca574
@ -146,7 +146,11 @@ class Notifier(object):
|
|||||||
Will wake up all listeners for the given users and rooms.
|
Will wake up all listeners for the given users and rooms.
|
||||||
"""
|
"""
|
||||||
yield run_on_reactor()
|
yield run_on_reactor()
|
||||||
|
|
||||||
|
# TODO(paul): This is horrible, having to manually list every event
|
||||||
|
# source here individually
|
||||||
presence_source = self.event_sources.sources["presence"]
|
presence_source = self.event_sources.sources["presence"]
|
||||||
|
typing_source = self.event_sources.sources["typing"]
|
||||||
|
|
||||||
listeners = set()
|
listeners = set()
|
||||||
|
|
||||||
@ -158,19 +162,33 @@ class Notifier(object):
|
|||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def notify(listener):
|
def notify(listener):
|
||||||
events, end_key = yield presence_source.get_new_events_for_user(
|
presence_events, presence_end_key = (
|
||||||
|
yield presence_source.get_new_events_for_user(
|
||||||
listener.user,
|
listener.user,
|
||||||
listener.from_token.presence_key,
|
listener.from_token.presence_key,
|
||||||
listener.limit,
|
listener.limit,
|
||||||
)
|
)
|
||||||
|
)
|
||||||
|
typing_events, typing_end_key = (
|
||||||
|
yield typing_source.get_new_events_for_user(
|
||||||
|
listener.user,
|
||||||
|
listener.from_token.typing_key,
|
||||||
|
listener.limit,
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
if events:
|
if presence_events or typing_events:
|
||||||
end_token = listener.from_token.copy_and_replace(
|
end_token = listener.from_token.copy_and_replace(
|
||||||
"presence_key", end_key
|
"presence_key", presence_end_key
|
||||||
|
).copy_and_replace(
|
||||||
|
"typing_key", typing_end_key
|
||||||
)
|
)
|
||||||
|
|
||||||
listener.notify(
|
listener.notify(
|
||||||
self, events, listener.from_token, end_token
|
self,
|
||||||
|
presence_events + typing_events,
|
||||||
|
listener.from_token,
|
||||||
|
end_token
|
||||||
)
|
)
|
||||||
|
|
||||||
def eb(failure):
|
def eb(failure):
|
||||||
|
Loading…
Reference in New Issue
Block a user