Commit Graph

50 Commits (0b263208e39a735fcb6970d168494783ff9994a7)

Author SHA1 Message Date
Timo Kösters f7816b11de
feat: send messages over federation 4 years ago
Timo Kösters e6b1f54857
Merge remote-tracking branch 'origin/master' into federation 4 years ago
Timo Kösters 12a8c9badd
fix: join rooms over federation 4 years ago
Faelar df55e8ed0b
Add room upgrade. 4 years ago
Timo 4954df3cc3
feat: handle txn ids 4 years ago
Timo 33215d6099
fix: send notification count updates when private read receipts change 4 years ago
Devin Ragotzy d73c6aa8ad Add roomid_statehash tree, clean up review issues 4 years ago
Devin Ragotzy c4f5a0a631 Keep track of State at event for state resolution
feat: first steps towards joining rooms over federation
Add state-res as a dependency of conduit
Add reverse_topological_power_sort before append_pdu
Implement statehashstatid_pduid tree for keeping track of state
Clean up implementation of state_hash as key for tracking state
4 years ago
Timo 804d097a18
fix: wake up /sync for typing events 4 years ago
timokoesters e457e19088
feat: search pdus 4 years ago
timokoesters ce460ea159
fix: send device list updates when user is in no rooms 4 years ago
timokoesters b67372b11b
refactor: make all mods in database pub
Now they can easily export their own structs
4 years ago
Devin Ragotzy d948f896c0
Turn append_pdu args into struct PduBuilder 4 years ago
Devin Ragotzy 1c6f211933
Create media::FileMeta to represent a file and meta data 4 years ago
timokoesters e0d0fb4703
fix: only send device_one_time_keys_count when there are updates 4 years ago
timokoesters d891bbb5dc
improve: presence 4 years ago
timokoesters 489cbc0a93
refactor: use <_> instead of <_parameter_name> 4 years ago
timokoesters a49a572d76
feat: cross-signing 4 years ago
timokoesters 2368a90584
refactor: better error handling 4 years ago
timokoesters 0067f49d52
feat: close registration with ROCKET_REGISTRATION_DISABLED=true 4 years ago
timokoesters c85d363d71
feat: user interactive authentication 4 years ago
timokoesters d404f902bf
fix: send presence too often 4 years ago
timokoesters 168f2281fd
improvement: bundle typing events and only send on changes
Fixes #67 and #49
4 years ago
gnieto ed9b544ace Implement devices API (#20)
small improvements

Cargo fmt

Simplify insert and update methods

Review feedback

Remove has_device method calls

Load all devices with a single db call

Remove device as in logout

Put all metadata on the same tree

Create userdevice key fucntion

Implement devices API

Implement all the devices endpoints. There's a couple of pending tasks:

- Integrate the "logout" logic once it lands to master (this should
  remove the given device from the database).
- Track and store last seen timestamp and IP.

Co-authored-by: timokoesters <timo@koesters.xyz>
Co-authored-by: Guillem Nieto <gnieto.talo@gmail.com>
4 years ago
timokoesters 4e507ef706
feat: room visibility and aliases 4 years ago
timokoesters 821c608c6a
feat: media 4 years ago
timokoesters 42ae433b25
fix: send devicekeyupdate users in /sync 4 years ago
timokoesters 7fc71b3968
feat: end to end encryption 4 years ago
Rudi Floren 00a9424719
feat: sytests 4 years ago
timokoesters 1dbde0e1c1
improvement: add option to get device id from token 4 years ago
timokoesters ee0d6940bd
feat: presence updates 4 years ago
timokoesters 551308e9a8
Update dependencies and send displayname updates again 4 years ago
timokoesters 8f67c01efd
refactor: split database into multiple files, more error handling, cleaner code 4 years ago
timokoesters b02c568941
feat: notifications, simple permission systems 4 years ago
timokoesters 169dbe6c37
fix: send full state after joining a room 4 years ago
timokoesters b0d9ccdb2d
Signing, basis for federation 4 years ago
timokoesters 80ddf80f17
work 4 years ago
timokoesters abcce95dd8
feat: invites, better public room dir, user search 4 years ago
timokoesters 3debb6203c
feat: handle typing events 4 years ago
timokoesters 3b9cadeec2
feat: read receipts 4 years ago
timokoesters ab8c2f1e5e
Rename pduid_pdus to pduid_pdu 4 years ago
timokoesters 040296c711
Add test support and impl dummy /read_markers 4 years ago
timo 3f2bf208a9
Merge pull request 'Add displayname and avatar_url endpoints' (#5) from MTRNord/matrixserver:accountdata into master 4 years ago
Marcel 49fe5e3271 Rename userid_avatar_url to userid_avatarurl and fix debug print
Run cargo fmt

Took 5 minutes
4 years ago
Marcel b1284fd509 Replace profile_* with userid_*
Add a missing dot in the errormessage
Require mxc:// to be present at the start of an avatar_url
Update mxc check TODO
Show displayname or avatar_url if either is available when getting the profile Endpoint
Return the correct data in case of a empty displayname or an empty avatar_url

Took 50 minutes

Took 34 seconds
4 years ago
timokoesters cd55220a75
fix: room directory duplicates 4 years ago
Marcel 062c5521f0 Add displayname and avatar_url endpoints
Add PUT and GET /_matrix/client/r0/profile/{userId}/displayname Endpoint
Add PUT and GET /_matrix/client/r0/profile/{userId}/avatar_url Endpoint
Add GET /_matrix/client/r0/profile/{userId} Endpoint

Took 2 hours 16 minutes
4 years ago
timokoesters 10bb96fcf7
feat: room joining, room based /sync responses 4 years ago
timokoesters fa3226898c
feat: save pdus
PDUs are saved in a pduid -> pdus map. roomid -> pduleaves keeps track
of the leaves of the event graph and eventid -> pduid maps event ids to
pdus.
4 years ago
timokoesters dba6c46667
Use sled::Tree::prefix_search for deviceids 4 years ago