golang-im聊天
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

61 lines
1.3 KiB

  1. syntax = "proto3";
  2. package pb;
  3. option go_package = "gim/pkg/pb/";
  4. service BusinessExt {
  5. // 登录
  6. rpc SignIn (SignInReq) returns (SignInResp);
  7. // 获取用户信息
  8. rpc GetUser (GetUserReq) returns (GetUserResp);
  9. // 更新用户信息
  10. rpc UpdateUser (UpdateUserReq) returns (Empty);
  11. // 搜索用户(这里简单数据库实现,生产环境建议使用ES)
  12. rpc SearchUser (SearchUserReq) returns (SearchUserResp);
  13. }
  14. message Empty{}
  15. message SignInReq {
  16. string phone_number = 1; // 手机号
  17. string code = 2; // 验证码
  18. int64 device_id = 3; // 设备id
  19. }
  20. message SignInResp {
  21. bool is_new = 1; // 是否是新用户
  22. int64 user_id = 2; // 用户id
  23. string token = 3; // token
  24. }
  25. message User {
  26. int64 user_id = 1; // 用户id
  27. string nickname = 2; // 昵称
  28. int32 sex = 3; // 性别
  29. string avatar_url = 4; // 头像地址
  30. string extra = 5; // 附加字段
  31. int64 create_time = 6; // 创建时间
  32. int64 update_time = 7; // 更新时间
  33. }
  34. message GetUserReq {
  35. int64 user_id = 1; // 用户id
  36. }
  37. message GetUserResp {
  38. User user = 1; // 用户信息
  39. }
  40. message UpdateUserReq {
  41. string nickname = 1; // 昵称
  42. int32 sex = 2; // 性别
  43. string avatar_url = 3; // 头像地址
  44. string extra = 4; // 附加字段
  45. }
  46. message SearchUserReq{
  47. string key = 1;
  48. }
  49. message SearchUserResp{
  50. repeated User users = 1;
  51. }