mirror of https://github.com/zulip/zulip.git
Add comment about sending presence updates
(imported from commit da9c521a6ad652e4dbcaabcc3a24b3e23376f545)
This commit is contained in:
parent
83e517fcf9
commit
1836d8958e
|
@ -1085,7 +1085,14 @@ def do_update_user_presence(user_profile, client, log_time, status):
|
||||||
if not user_profile.realm.domain == "mit.edu" and (created or became_online):
|
if not user_profile.realm.domain == "mit.edu" and (created or became_online):
|
||||||
# Push event to all users in the realm so they see the new user
|
# Push event to all users in the realm so they see the new user
|
||||||
# appear in the presence list immediately, or the newly online
|
# appear in the presence list immediately, or the newly online
|
||||||
# user without delay
|
# user without delay. Note that we won't send an update here for a
|
||||||
|
# timestamp update, because we rely on the browser to ping us every 50
|
||||||
|
# seconds for realm-wide status updates, and those updates should have
|
||||||
|
# recent timestamps, which means the browser won't think active users
|
||||||
|
# have gone idle. If we were more aggressive in this function about
|
||||||
|
# sending timestamp updates, we could eliminate the ping responses, but
|
||||||
|
# that's not a high priority for now, considering that most of our non-MIT
|
||||||
|
# realms are pretty small.
|
||||||
send_presence_changed(user_profile, presence)
|
send_presence_changed(user_profile, presence)
|
||||||
|
|
||||||
def update_user_activity_interval(user_profile, log_time):
|
def update_user_activity_interval(user_profile, log_time):
|
||||||
|
|
|
@ -260,9 +260,7 @@ def update_user_presence_cache(sender, **kwargs):
|
||||||
# For any status update, flush the user's realm's entry in the
|
# For any status update, flush the user's realm's entry in the
|
||||||
# UserPresence cache to avoid giving out stale state. Since we
|
# UserPresence cache to avoid giving out stale state. Since we
|
||||||
# get a lot of presence updates, we are likely to get cache misses
|
# get a lot of presence updates, we are likely to get cache misses
|
||||||
# when new messages come in, but the query is pretty quick, and we
|
# when new messages come in, but the query is pretty quick.
|
||||||
# no longer have the issue of Tornado needing to go the cache or DB
|
|
||||||
# to get presence info.
|
|
||||||
user_profile = kwargs['instance'].user_profile
|
user_profile = kwargs['instance'].user_profile
|
||||||
djcache.delete(KEY_PREFIX + status_dict_cache_key(user_profile))
|
djcache.delete(KEY_PREFIX + status_dict_cache_key(user_profile))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue