golang-im聊天
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 

89 wiersze
2.2 KiB

  1. syntax = "proto3";
  2. package pb;
  3. option go_package = "gim/pkg/pb/";
  4. import "common.ext.proto";
  5. service BusinessExt {
  6. // 登录
  7. rpc SignIn (SignInReq) returns (SignInResp);
  8. // 获取用户信息
  9. rpc GetUser (GetUserReq) returns (GetUserResp);
  10. // 更新用户信息
  11. rpc UpdateUser (UpdateUserReq) returns (Empty);
  12. // 搜索用户(这里简单数据库实现,生产环境建议使用ES)
  13. rpc SearchUser (SearchUserReq) returns (SearchUserResp);
  14. // 上传文件至云端
  15. rpc CloudUploadFile (CloudUploadFileReq) returns (CloudUploadFileResp);
  16. // 获取表情
  17. rpc EmoticonList (Empty) returns (EmoticonListResp);
  18. }
  19. message Emoticon {
  20. string name = 1; // 名称
  21. string img_url = 2; // 图片地址
  22. string memo = 3; // 备注
  23. int32 sort = 4; // 排序
  24. }
  25. message EmoticonListResp {
  26. repeated Emoticon emoticons = 1;
  27. }
  28. message SignInReq {
  29. string phone_number = 1; // 手机号
  30. string code = 2; // 验证码
  31. int64 device_id = 3; // 设备id
  32. int64 master_id = 4; // 站长id
  33. string push_alia = 5; // 极光推送-别名
  34. }
  35. message SignInResp {
  36. bool is_new = 1; // 是否是新用户
  37. int64 user_id = 2; // 用户id
  38. string token = 3; // token
  39. int64 master_id = 4; // 站长id
  40. }
  41. message CloudUploadFileReq {
  42. string dir = 1; // 目录名
  43. string file_name = 2; // 上传原文件名称
  44. string file_size = 3; // 文件大小
  45. }
  46. message CloudUploadFileResp {
  47. string method = 1; // 请求方式
  48. string host = 2; // 域名
  49. string key = 3; // key
  50. string token = 4; // token
  51. }
  52. message User {
  53. int64 user_id = 1; // 用户id
  54. string nickname = 2; // 昵称
  55. int32 sex = 3; // 性别
  56. string avatar_url = 4; // 头像地址
  57. string extra = 5; // 附加字段
  58. int64 create_time = 6; // 创建时间
  59. int64 update_time = 7; // 更新时间
  60. int64 master_id = 8; // 更新时间
  61. }
  62. message GetUserReq {
  63. int64 user_id = 1; // 用户id
  64. }
  65. message GetUserResp {
  66. User user = 1; // 用户信息
  67. }
  68. message UpdateUserReq {
  69. string nickname = 1; // 昵称
  70. int32 sex = 2; // 性别
  71. string avatar_url = 3; // 头像地址
  72. string extra = 4; // 附加字段
  73. }
  74. message SearchUserReq{
  75. string key = 1;
  76. int64 master_id = 2;
  77. }
  78. message SearchUserResp{
  79. repeated User users = 1;
  80. }