matrixprotofiles

A Repo containing .proto files for the matrix protocol. Used in https://github.com/MTRNord/MatrixProtoBuf
git clone git://archive.git.mtrnord.blog/Nordgedanken/matrixprotofiles.git
Log | Files | Refs | README | LICENSE

server.proto (1223B)


      1 syntax = "proto3";
      2 package matrixProtos_Server;
      3 
      4 service FederationService {
      5     rpc Versions (VersionRequest) returns (VersionsResponse);
      6     rpc Keys (KeyRequest) returns (KeyResponse);
      7 }
      8 
      9 message VersionRequest {
     10 }
     11 
     12 message VersionsResponse {
     13     repeated Version versions = 1;
     14 }
     15 
     16 message Version {
     17     string name = 1;
     18     string version = 2;
     19 }
     20 
     21 message KeyRequest {
     22 }
     23 
     24 message KeyResponse {
     25     repeated OldVerifyKey old_verify_keys = 1;
     26     string server_name = 2;
     27     repeated Signature signatures = 3;
     28     repeated TlsFingerprint tls_fingerprints = 4;
     29     int64 valid_until_ts = 5;
     30     repeated VerifyKey verify_keys = 6;
     31 }
     32 
     33 message OldVerifyKey {
     34     string type = 1;
     35     int64  expiredTS = 2;
     36     string key = 3;
     37 }
     38 
     39 message Signature {
     40     string server_name = 1;
     41     string type = 2;
     42     string signature = 3;
     43 }
     44 
     45 message TlsFingerprint {
     46     string sha256 = 1;
     47 }
     48 
     49 message VerifyKey {
     50     string type = 1;
     51     string key = 3;
     52 }
     53 
     54 message PDU {
     55     string room_id = 1;
     56     string sender = 2;
     57     string origin = 3;
     58     string event_id = 4;
     59     int64 origin_server_ts = 5;
     60     string type = 6;
     61     string state_key = 7;
     62     Content content = 8;
     63     repeated Event prev_events = 9;
     64     int64 depth = 10;
     65     //Todo
     66 }