Commit graph

93 commits

Author SHA1 Message Date
e55aa4b85c Restructure code base for API requests/responses 2021-09-09 17:26:40 +02:00
f565383468 Federate client profile requests 2021-09-09 16:00:58 +02:00
213980a5be Implement client profile information endpoint 2021-09-08 20:21:55 +02:00
af40cebc01 Implement client get/set display name endpoint
Add ability to unset avatar URL/display name
2021-09-08 17:32:10 +02:00
3e1a377226 Implement client get/set avatar URL endpoint 2021-09-08 16:27:31 +02:00
b12872fe2c Remove joined_rooms table 2021-09-08 14:22:40 +02:00
46b4199618 Add membership table 2021-09-08 12:03:41 +02:00
7a1bf01869 Add initial implementatin of client /sync endpoint without 'since'
parameter
2021-09-07 20:24:06 +02:00
34da9da261 Implement client capabilities endpoint 2021-09-06 20:33:23 +02:00
5f6476df57 Add specs 2021-09-06 16:17:45 +02:00
224201ae2f Validate 'from' and 'to' tokens in client /messages endpoint 2021-09-06 16:08:49 +02:00
659fa17053 Fix client /messages endpoint event response format 2021-09-06 14:29:32 +02:00
e4a6d36200 Fix event unsigned having default empty map in db 2021-09-05 23:09:29 +02:00
27c673e07a Add missing fields to events
Fix Dialyzer issues
2021-09-05 16:39:52 +02:00
0871c3cdd9 Implement client room messages endpoint 2021-09-05 12:51:25 +02:00
40f3eeff7c Improve primary keys usage 2021-09-04 16:40:17 +02:00
232df26b85 Rename repository 2021-09-01 14:43:55 +02:00
c42fc7c350 Implement client send message endpoint
Fix state res and authorization to handle missing state_keys
2021-08-31 16:32:04 +02:00
5b3ec55f8b Format code 2021-08-30 22:55:01 +02:00
cf9f53e446 Change code for idiomatic Elixir 2021-08-30 22:53:10 +02:00
91a06aff1b Change primary keys for accounts and devices table 2021-08-30 22:36:01 +02:00
072ef27480 Move event generators to seperate modules 2021-08-30 14:12:28 +02:00
de950fc769 Implement get/set visibility client endpoints 2021-08-27 15:09:17 +02:00
2088f0a869 Implement client ban and unban endpoints 2021-08-26 22:09:45 +02:00
bb7c3b07e9 Implement client kick endpoint 2021-08-26 14:32:24 +02:00
07d3326c07 Create function to add a single event to a room 2021-08-26 11:08:54 +02:00
ae860a768c Implement client leave endpoint
Add documentation and type specs
2021-08-26 11:01:19 +02:00
a1475c1a46 Fix updating joined rooms when event is inserted in history 2021-08-25 16:44:39 +02:00
658efa228f Implement client join endpoint 2021-08-25 12:25:14 +02:00
941eb685b4 Also remove joined rooms associations
Add some more documentation to room server
2021-08-25 11:46:35 +02:00
bcc6cbb24b Implement client invite endpoint
Refactor room server to automatically determine auth events
Add documentation in various places
2021-08-25 01:27:03 +02:00
6f8c224d50 Implement client joined rooms endpoint
Track which rooms a local account has joined
Add some documentation to modules
2021-08-23 12:59:12 +02:00
9d40f8bc8b Add some documentation 2021-08-22 15:19:48 +02:00
a44595bb99 Implement state_ids federation endpoint 2021-08-22 12:19:47 +02:00
ba3e290bf1 Implement federation room state snapshot endpoint 2021-08-21 21:39:28 +02:00
e510c3bb6a Implement retrieving a single event over federation
Fix url encoding during homeserver signature check
2021-08-21 11:25:36 +02:00
1881b7f3d6 Add more type checking 2021-08-19 23:42:24 +02:00
4b60a145ca Split Identifier struct into seperate types 2021-08-19 16:31:03 +02:00
24f0657710 Fix get_action_power_level for redact and kick actions 2021-08-18 23:23:47 +02:00
58d3e17259 Add dialyzer dependency
Add typespecs to several functions
2021-08-18 23:22:04 +02:00
7b011123f8 Fix prev events not being hashed and signed during room creation. 2021-08-18 19:04:09 +02:00
1781575e75 Calculate and set event id using reference hash 2021-08-18 13:54:18 +02:00
8696b0fb96 Restructure router rules 2021-08-17 22:50:15 +02:00
02edff90e7 Add function to query whether server participates in a room
Move from integer timestamps to datetimes
2021-08-16 19:30:47 +02:00
5d75244bc0 Add common struct to represent matrix identifiers
Use identifier struct in profile query validation
2021-08-16 14:29:01 +02:00
46231b9b09 Sign body contents for federation request if present 2021-08-14 17:15:02 +02:00
be9860f7d0 Create tesla middleware for adding signature to federation requests
Change repo structure
2021-08-14 15:20:42 +02:00
214293323c Fix urlencoded path in federation client signature check 2021-08-13 20:44:35 +02:00
c5de486dba Handle enacl exceptions during signature checks
Fix usage of undecoded signing key during server authentication
Fix several bugs in profile query endpoint
2021-08-13 17:36:34 +02:00
ff3dd38369 Verify signatures of signing keys 2021-08-13 13:45:10 +02:00