sync.proto 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. syntax = "proto3";
  2. package protos;
  3. import "userinfo.proto";
  4. import "result.proto";
  5. // 载入游戏请求
  6. message RestoreRequest {
  7. }
  8. // 载入游戏响应
  9. message RestoreResponse {
  10. repeated UserInfo Users = 1;
  11. uint64 Step = 2;
  12. map<string, bytes> state = 3;
  13. }
  14. // 同步消息
  15. message SyncRequest {
  16. uint64 Step = 1;
  17. map<string, bytes> Values = 2;
  18. }
  19. // 同步消息响应
  20. message SyncResponse {
  21. bool Status = 1;
  22. uint64 Step = 2; // status=false时才有值
  23. map<string, bytes> Values = 3; // status=false时才有值
  24. uint64 T = 4; // 服务器收到sync request的时间戳(毫秒)
  25. }
  26. // 客户端发送实时消息
  27. message DMessageRequest {
  28. repeated uint32 UserIDs = 1;
  29. map<string, bytes> Values = 2;
  30. }
  31. // 服务器响应用户实时消息结果
  32. message DMessageResponse {
  33. Result Result = 1;
  34. }
  35. // 服务器转发实时消息
  36. message DMessagePush {
  37. map<string, bytes> Values = 1;
  38. }
  39. // 同步消息推送
  40. message SyncPush {
  41. uint64 Step = 1;
  42. map<string, bytes> Values = 2;
  43. uint64 T = 3; // 服务器开始推送时间戳
  44. }
  45. // 服务器合并用户操作给master
  46. message MasterPush {
  47. uint64 Step = 1;
  48. map<string, bytes> Values = 2;
  49. uint64 T = 3; // 服务器开始推送时间戳
  50. }
  51. // 主机广播消息给flower
  52. message MasterNotify {
  53. uint64 Step = 1;
  54. map<string, bytes> Values = 2;
  55. }
  56. // 主机广播消息给flower
  57. message MasterNotifyResponse {
  58. uint64 T = 1; // 服务器收到MasterNotify的时间戳(毫秒)
  59. }
  60. // 主机存储状态
  61. message MasterStoreNotify {
  62. map<string, bytes> Values = 1;
  63. }
  64. // 主机读取状态
  65. message MasterLoadRequest {}
  66. // 同步消息响应
  67. message MasterLoadResponse {
  68. Result Result = 1;
  69. map<string, bytes> Values = 2;
  70. }