server_state.proto 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. syntax = "proto3";
  2. package chatto.api.v1;
  3. // Request for the authenticated message of the day.
  4. message GetMotdRequest {}
  5. // Authenticated message of the day response.
  6. message GetMotdResponse {
  7. // Optional message of the day shown to authenticated members.
  8. optional string motd = 1;
  9. }
  10. // Authenticated server runtime settings used by clients.
  11. message ServerRuntimeConfig {
  12. // Whether Web Push notifications are fully configured.
  13. bool push_notifications_enabled = 1;
  14. // Optional VAPID public key for Web Push registration.
  15. optional string vapid_public_key = 2;
  16. // Optional LiveKit URL for voice and video calls.
  17. optional string livekit_url = 3;
  18. reserved 4;
  19. reserved "direct_registration_enabled";
  20. // Whether video processing is enabled.
  21. bool video_processing_enabled = 5;
  22. // Maximum general upload size in bytes.
  23. int64 max_upload_size = 6;
  24. // Maximum video upload size in bytes.
  25. int64 max_video_upload_size = 7;
  26. // Message edit window in seconds.
  27. int32 message_edit_window_seconds = 8;
  28. }
  29. // Request for authenticated server runtime configuration.
  30. message GetRuntimeConfigRequest {}
  31. // Authenticated server runtime configuration response.
  32. message GetRuntimeConfigResponse {
  33. // Authenticated runtime settings used by clients.
  34. ServerRuntimeConfig runtime = 1;
  35. }
  36. // Provides authenticated server-wide reads.
  37. service ServerService {
  38. // Returns the authenticated message of the day.
  39. rpc GetMotd(GetMotdRequest) returns (GetMotdResponse);
  40. // Returns authenticated runtime settings used by clients.
  41. rpc GetRuntimeConfig(GetRuntimeConfigRequest) returns (GetRuntimeConfigResponse);
  42. }