aboutsummaryrefslogtreecommitdiff
path: root/keyserver/api
diff options
context:
space:
mode:
authorKegsay <kegan@matrix.org>2020-08-04 11:32:14 +0100
committerGitHub <noreply@github.com>2020-08-04 11:32:14 +0100
commit0c4e8f6d4f0f39d2bd72807675295e4fad70479c (patch)
tree9560b73d1aa1a62d0bff700523b1ea9586cdb7cf /keyserver/api
parentfb56bbf0b7d4b21da3f55b066e71d24bf4599887 (diff)
Send device list updates to servers (outbound only) (#1237)
* Add QueryDeviceMessages to serve up device keys and stream IDs * Consume key change events in fedsender Don't yet send them to destinations as we haven't worked them out yet * Send device list updates to all required servers * Glue it all together
Diffstat (limited to 'keyserver/api')
-rw-r--r--keyserver/api/api.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/keyserver/api/api.go b/keyserver/api/api.go
index 080d0e5f..c864b328 100644
--- a/keyserver/api/api.go
+++ b/keyserver/api/api.go
@@ -32,6 +32,7 @@ type KeyInternalAPI interface {
QueryKeys(ctx context.Context, req *QueryKeysRequest, res *QueryKeysResponse)
QueryKeyChanges(ctx context.Context, req *QueryKeyChangesRequest, res *QueryKeyChangesResponse)
QueryOneTimeKeys(ctx context.Context, req *QueryOneTimeKeysRequest, res *QueryOneTimeKeysResponse)
+ QueryDeviceMessages(ctx context.Context, req *QueryDeviceMessagesRequest, res *QueryDeviceMessagesResponse)
}
// KeyError is returned if there was a problem performing/querying the server
@@ -188,3 +189,14 @@ type QueryOneTimeKeysResponse struct {
Count OneTimeKeysCount
Error *KeyError
}
+
+type QueryDeviceMessagesRequest struct {
+ UserID string
+}
+
+type QueryDeviceMessagesResponse struct {
+ // The latest stream ID
+ StreamID int
+ Devices []DeviceMessage
+ Error *KeyError
+}