Commit graph

8 commits

Author SHA1 Message Date
Neil Alexander 8f1e01b2d6
Refresh the notifier - I don't like this but for some reason tests aren't happy without it :/ 2022-04-26 15:56:31 +01:00
Neil Alexander de55581092
Refactor populatePresence some more 2022-04-26 15:51:38 +01:00
Neil Alexander 7143ef20a1
Don't refresh notifier, use the memberships from the join response instead so that it doesn't load presence for members we are ommitting due to LL 2022-04-26 14:38:45 +01:00
Neil Alexander 9d34f9738c
Maybe placate the tests 2022-04-26 14:33:45 +01:00
Neil Alexander 9953df0e8b
Only send recent presence updates (last 5 minutes) when doing a complete sync 2022-04-26 13:24:36 +01:00
Neil Alexander 99ef547295
Simplify presence stringification (should help with vector-im/element-android#5712) 2022-04-07 10:10:28 +01:00
Neil Alexander 602818460d
Reduce allocations in /sync presence stream (#2326)
* Reduce allocations on presence

* Try to reduce allocations further

* Tweak `IsSharedUser` some more

* Take map lock
2022-04-06 13:31:44 +01:00
Till e5e3350ce1
Add presence module V2 (#2312)
* Syncapi presence

* Clientapi http presence handler

* Why is this here?

* Missing files

* FederationAPI presence implementation

* Add new presence stream

* Pinecone update

* Pinecone update

* Add passing tests

* Make linter happy

* Add presence producer

* Add presence config option

* Set user to unavailable after x minutes

* Only set currently_active if online
Avoid unneeded presence updates when syncing

* Tweaks

* Query devices for last_active_ts
Fixes & tweaks

* Export SharedUsers/SharedUsers

* Presence stream in MemoryStorage

* Remove status_msg_nil

* Fix sytest crashes

* Make presence types const and use stringer for it

* Change options to allow inbound/outbound presence

* Fix option & typo

* Update configs

Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-04-06 13:11:19 +02:00