Room.proto 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. syntax = "proto3";
  2. package room.v1;
  3. option go_package = "v1";
  4. service Room {
  5. /** 根据房间id获取房间信息
  6. *
  7. */
  8. rpc get_info_by_id (RoomGetInfoByIdReq) returns (RoomGetInfoByIdResp);
  9. /** 获取房间基本信息接口,前端/移动端房间页使用
  10. *
  11. */
  12. rpc get_info (RoomGetInfoReq) returns (RoomGetInfoResp);
  13. }
  14. message RoomGetInfoByIdReq {
  15. repeated int64 ids = 1; // 房间id, 可以为短号
  16. repeated string fields = 2; // 需要哪些字段, 不传默认所有
  17. }
  18. message RoomGetInfoByIdResp {
  19. int64 code = 1; // code
  20. string msg = 2; // msg
  21. map<string, RoomInfo> data = 3; // 房间信息map
  22. message RoomInfo {
  23. int64 roomid = 1; // 房间id
  24. string uname = 2; // 用户名, 不可靠.
  25. string cover = 3; // 封面
  26. int64 uid = 4; // 用户id
  27. string live_time = 5; // 开播时间
  28. int64 round_status = 6; // 轮播状态
  29. int64 on_flag = 7; // 是否开播
  30. string title = 8; // 直播间标题
  31. string lock_status = 9; // 锁定到时间
  32. string hidden_status = 10; // 隐藏到时间
  33. string user_cover = 11; // 也是封面...
  34. int64 short_id = 12; // 短号
  35. int64 online = 13; // 在线人数
  36. int64 area = 14; // 分区id
  37. int64 area_v2_id = 15; // 分区v2 id
  38. int64 area_v2_parent_id = 16; // 分区v2 父分区id
  39. string area_v2_name = 17; // 分区v2名字 fields加了该字段才会给
  40. string area_v2_parent_name = 18; // 分区v2父分区名字 fields加了该字段才会给
  41. int64 attentions = 19; // 关注人数
  42. }
  43. }
  44. message RoomGetInfoReq {
  45. int64 id = 1; // 房间号或者短号
  46. string from = 2; // 来源 房间页:room link中心: link_center
  47. }
  48. message RoomGetInfoResp {
  49. int64 code = 1; // code
  50. string msg = 2; // msg
  51. Data data = 3; //
  52. message PendantWithDesc {
  53. string name = 1; // 名字、标识
  54. int64 position = 2; // 位置0无1左上2右上3右下4左下
  55. string value = 3; // name对应的value,可以是挂件的展示名字/对应的图片地址
  56. string desc = 4; // 描述
  57. }
  58. message Pendant {
  59. string name = 1; // 名字、标识
  60. int64 position = 2; // 位置0无1左上2右上3右下4左下
  61. string value = 3; // name对应的value,可以是挂件的展示名字/对应的图片地址
  62. }
  63. message Pendants {
  64. PendantWithDesc frame = 1; // web端房间页头像边框
  65. PendantWithDesc badge = 2; // web端房间页头像角标
  66. Pendant mobile_frame = 3; // 移动端房间页头像边框
  67. Pendant mobile_badge = 4; // 移动端房间页头像角标
  68. }
  69. message Data {
  70. int64 uid = 1; //
  71. int64 room_id = 2; // 房间id
  72. int64 short_id = 3; // 短号
  73. string keyframe = 4; // 关键帧
  74. int64 online = 5; // 在线人数
  75. bool is_portrait = 6; // true为竖屏
  76. string room_silent_type = 7; // 禁言类型 member medal level 或者空字符串
  77. int64 room_silent_second = 8; // 剩余禁言时间,秒数
  78. int64 room_silent_level = 9; // 禁言等级
  79. int64 live_status = 10; // 闲置中0 直播中1 轮播中2
  80. int64 area_id = 11; // 分区id
  81. int64 parent_area_id = 12; // 父分区id
  82. string area_name = 13; // 分区名字
  83. string parent_area_name = 14; // 父分区名字
  84. int64 old_area_id = 15; // 老分区id
  85. string background = 16; // 背景url
  86. string title = 17; // 房间标题
  87. bool is_strict_room = 18; // 是否是限制房间 如果是 应该不连接弹幕 不展示礼物等等
  88. string user_cover = 19; // 房间封面
  89. string live_time = 20; // 开播时间
  90. string pendants = 21; // 挂件列表
  91. string area_pendants = 22; // 分区第一标志, 待定.
  92. string description = 23; // 房间简介.
  93. string tags = 24; // 房间标签, 逗号分隔字符串
  94. string verify = 25; // 认证信息 没认证为空字符串
  95. repeated string hot_words = 26; // 弹幕热词
  96. int64 allow_change_area_time = 27; // 允许修改分区时间戳(主播可能被审核禁止修改分区),0表示没有限制 主播才有此字段
  97. int64 allow_upload_cover_time = 28; // 允许上传封面的时间 0表示没有限制 主播才有此字段gs
  98. Pendants new_pendants = 29; // 新挂件
  99. string up_session = 30; // 一次开播标记
  100. int64 pk_status = 31; // 0为该房间不处于pk中 1表示处于pk中(需调用pk基础信息接口获取pk信息)
  101. }
  102. }