fix: send presence updates when going offline
remaining bug: conduit sends presence updates every 5 minutes even if the user is already offlinenext
parent
b4818716b8
commit
d45d033bf1
|
@ -386,8 +386,6 @@ impl RoomEdus {
|
|||
.take_while(|(_, timestamp)| current_timestamp - timestamp > 5 * 60_000)
|
||||
// 5 Minutes
|
||||
{
|
||||
self.userid_lastpresenceupdate.remove(&user_id_bytes)?;
|
||||
|
||||
// Send new presence events to set the user offline
|
||||
let count = globals.next_count()?.to_be_bytes();
|
||||
let user_id = utils::string_from_bytes(&user_id_bytes)
|
||||
|
@ -421,6 +419,11 @@ impl RoomEdus {
|
|||
.expect("PresenceEvent can be serialized"),
|
||||
)?;
|
||||
}
|
||||
|
||||
self.userid_lastpresenceupdate.insert(
|
||||
&user_id.to_string().as_bytes(),
|
||||
&utils::millis_since_unix_epoch().to_be_bytes(),
|
||||
)?;
|
||||
}
|
||||
|
||||
Ok(())
|
||||
|
|
Loading…
Reference in New Issue