syntax = "proto2";

package CenterCmd;

//option optimize_for = LITE_RUNTIME;

option java_package = "com.miaole.live.protocol.request";
option java_outer_classname = "CenterCmd";

//获取公会列表:返回UnionResult.UnionList
message getUnionList {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
}

//查找公会列表:返回UnionResult.UnionList
message searchUnion {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
}

//获取公会列表:返回UnionResult.UnionList
message getPetUnionList {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
  optional string serverId = 4; //区服id
}

//查找公会列表:返回PetUnionResult.UnionList
message searchPetUnion {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
}

//查找信息:返回CommonResult.SearchData
message searchData {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
  optional int32 start = 3; //获取起始数据
  optional int32 end = 4; //获取结束数据
}

//查找信息:返回CommonResult.SearchData
message searchUser {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
  optional int32 start = 3; //获取起始数据
  optional int32 end = 4; //获取结束数据
  optional int32 type = 5; // 0 所有用户 1 非主播用户 2 主播用户
  optional int32 source = 6; // 来源 0：默认 1: 超管创建公会搜索指定用户 2：BD邀请创建公会搜索指定用户
}

//获取公会排行榜,按成员人数排:返回UnionResult.UnionList
message getUnionRank {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
}

//获取房间列表:返回RoomResult.RoomList
message getRoomList {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
  optional string gameId = 4; //只获取某游戏的开黑房间
}

//查找房间列表:返回RoomResult.RoomList
message searchRoom {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
}

//查找娱乐房间列表:返回FunRoomResult.RoomList
message searchFunRoom {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
  optional int32 index = 3;//分页下标
}

//查找娱乐房间和视频直播间列表:返回CommonResult.SearchRoomList
message searchLiveRoomAndFunRoom {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
  optional int32 index = 3;//分页下标
  optional bool isMP = 4; // 是否为小程序调用，APP默认为false
  optional int32 type = 5;// 搜索类型:1 从视频区搜索 2 从语音区搜索
}

//获取开黑大厅在线随机10人:返回CommonResult.StringArrayResult
message getRandomOnlines {/**NO_AUTH**/
  optional string userId = 1; //玩家id
}

//获取公会随机30:返回UnionResult.RandomUnionResult
message getRandomUnions {/**NO_AUTH**/
  optional string userId = 1; //玩家id
}

//获取公会大牛游戏排行:返回GameResult.GameList
message getGameUnionRank {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
}

//排行榜类型 当rankType为IRank.TYPE1和IRank.TYPE3之间返回:RankResult.RankList 其他情况返回RankResult.LiveRankList
message getRankList {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 rankType = 2; //排行榜类型
  optional int32 start = 3; //获取起始数据
  optional int32 end = 4; //获取结束数据
}

//获取游戏榜单数据,返回GameResult.GameRankingList
message getGameRanking {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 rankingType = 2; //榜单类型:1:飙升榜,2:经典榜
}

//获取游戏推荐数据,返回GameResult.GameRecommendList
message getGameRecommend {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string gameId = 2;
}

//获取直播主页数据:返回LiveResult.MainData
message getLiveMainData {/**NO_AUTH**/
  optional string userId = 1; //玩家id
}

//获取直播房间列表,返回LiveResult.LiveRoomList
message getLiveRoomList {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
  optional int32 type = 4;//分类 0是默认推荐分类
  optional bool isTrial = 5;// 是否提审包，默认false
}

//获取附近直播房间列表,返回LiveResult.LiveRoomList
message getNearLiveRoomList {
  optional int32 start = 1; //获取起始数据
  optional int32 end = 2; //获取结束数据
}

//获取直播房间分类列表,返回LiveResult.LiveRoomList
message getLiveRoomListForType {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
  optional int32 type = 4;//分类 0是默认推荐分类
}

//查找家族列表:返回LiveResult.FamilyList
message searchFamily {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
  optional int32 start = 3; //获取起始数据
  optional int32 end = 4; //获取结束数据
}

//查找家族列表:返回RankResult.LiveRankList
message getLiveRoomRankList {/**NO_AUTH**/
  optional string roomId = 1; //房间ID
  optional int32 rankType = 2; //排行榜类型
  optional int32 start = 3; //获取起始数据
  optional int32 end = 4; //获取结束数据
  optional bool isDefault = 5;// 是否取默认，不传默认为false
}

//查找个人房间列表:返回CommonResult.SearchData
message searchPrivateRoom {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string keyword = 2; //查找的关键字
  optional int32 start = 3; //获取起始数据
  optional int32 end = 4; //获取结束数据
  optional string gameId = 5; //匹配的游戏ID
}

//获得快速匹配的数据 : 返回RoomResult.MatchRoomData
message getMatchRoomData {/**NO_AUTH**/
  optional string gameId = 1; //匹配的游戏ID
}

//获得快速匹配的数据
message matchRoom {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional string gameId = 2; //匹配的游戏ID
  optional string zone = 3; //区服
  optional string os = 4; //操作系统
  optional int32 sex = 5; //玩家性别
}

//取消匹配
message cancelMatchRoom {/**NO_AUTH**/
  optional string userId = 1; //玩家id
}

//获取公会日榜信息（人气榜以及消费棒）家族列表:返回RankResult.UnionDayRankList
message getFunTypeUnionRankList {/**NO_AUTH**/
  optional string unionId = 1; //房间ID
  optional int32 rankType = 2; //排行榜类型
  optional int32 start = 3; //获取起始数据
  optional int32 end = 4; //获取结束数据
}

//公会推荐列表 返回UnionResult.UnionList
message getRecommendUnionList {/**NO_AUTH**/

}

//家族推荐列表 返回LiveResult.FamilyList
message getRecommendFamilyList {/**NO_AUTH**/

}

//家族推荐列表 返回LiveResult.FamilyList
message getFamilyList {/**NO_AUTH**/
  optional int32 page = 1;//分页 1开始
}

//公会或房间搜索，精确ID搜索：返回CommonResult.SearchData
message searchUnionOrRoom {/**NO_AUTH**/
  optional string userId = 1; //玩家id
  optional int32 searchType = 2; //搜索类型 1-公会 2-房间
  optional string keyword = 3; //查找的关键字
}
//好友广场  返回: LiveResult.SeekFriendSquareLstRet
message getSeekFriendSquareData {/**NO_AUTH**/
  optional string userId = 1;
}
//发送寻友广场数据
message sendTalkData {/**NO_AUTH**/
  optional string roomId = 1; //
  optional string talk = 2; //聊天内容,不要超过10个，超过，需要截断
  optional int32 roomNum = 3; //房间人数
  optional string userId = 4;
}
//进入寻友广场
message enterSeekFriendSquare {/**NO_AUTH**/
  optional string userId = 1;
}
//离开寻友广场
message leaveSeekFriendSquare {/**NO_AUTH**/
  optional string userId = 1;
}

// 获得指定寻友消息，返回SeekFriendList
message getSeekFriendList {/**NO_AUTH**/
  optional int32 size = 1; // 返回条数，不传默认取首30条
  optional string lastRoomId = 2; // 本地最后一条房间记录Id
}

// 获得最新寻友消息，返回： SeekFriendInfo
message getNewSeekFriendInfo {/**NO_AUTH**/
  optional string newestRoomId = 1; // 本地最新一条房间记录Id
}

//获得娱乐房间的列表 返回：FunRoomResult.RoomList
message getFunRoomList {/**NO_AUTH**/
  optional int32 type = 1; //类型
  optional int32 index = 2; //分页下标
  optional string appId = 3; // APP包名
  optional int32 pageSize = 4;// 分页大小
}

//获得关注的人的开播中的娱乐房间 返回：FunRoomResult.FollowRoomList
message getFollowRoomList {/**NO_AUTH**/
  repeated string userIds = 1; //关注的用户ID(限100)
  optional bool isEliminate = 2; // 是否需要排除某用户，此字段与以下字段需要同时有值
  optional string eliminateUserId = 3; // 排除的用户id
}

// 获取在线真实用户信息列表，返回：UserResult.OnlineUserList
message getOnlineUserInfoList {/**NO_AUTH**/
  optional int32 sex = 1;// 0-全部，1-男，2-女
  optional int64 loginTime = 2;// 最后一条记录登录时间
  optional string overLookUserId = 3;// 忽略用户Id
  optional int32 rows = 4;// 查询条数
}

// 获取最新登录的在线真实用户信息列表，返回：UserResult.OnlineUserList
message getNewLoginUserInfoList {/**NO_AUTH**/
  optional string overLookUserId = 1;// 忽略用户Id
  optional int32 rows = 2;// 查询条数
}

// 获取推荐真实用户信息列表，返回：UserResult.OnlineUserList
message getRecommendUserInfoList {/**NO_AUTH**/
  optional string overLookUserId = 1;//玩家id
  optional string keyword = 2; //查找的关键字
  optional int32 start = 3;// 获取起始数据
  optional int32 end = 4;// 获取结束数据
  optional int32 type = 5; // 用户类型 0 所有, 1 非主播用户 2 主播用户
}

// 获取用户信息，返回：UserResult.GiftPackageMallUserInfo
message getUserInfoById {
  optional string id = 1; // 靓号或者原始ID
  optional string packageMallId = 2; // 套装ID
  optional int32 type = 3; // 1-赠礼场景 2-索要场景
}

// 获得音乐库列表，ResourceResult.Musics
message getMusicList {/**NO_AUTH**/
  optional string keyword = 1; //查找的关键字
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
}

// 获取推荐主播列表，返回：UserResult.RecommendAnchorList
message getRecommendAnchorList {/**NO_AUTH**/
}

//获得关注的人的开播中的数据  返回：FunRoomResult.NewFollowRoomList
message getNewFollowRoomList {/**NO_AUTH**/
  repeated string userIds = 1; //关注的用户ID
  optional bool openLive = 2;//是否取开播中的
}

//返回UserResult.UserBase
message searchUserFullMatch {/**NO_AUTH**/
  optional string keyword = 1; //查找的关键字
}

// 获取小程序中推荐房间卡片信息，返回FunRoomResult.FunRoomCardInfoList
message getFunRoomCardInfos {/**NO_AUTH**/
}

// 获取语音房卡片信息，返回FunRoomResult.FunRoomCardInfoList
message listFunRoomCards{

}

// 换房，可分为随机进入在线人数前5的房间和进入在线人数最多的房间，返回FunRoomResult.enterRoomId
message changeRoom {/**NO_AUTH**/
  optional bool isRandom = 1; // 是否随机，此值为true时roomId为空，为false时roomId需有值
  optional string roomId = 2; // 当前房间ID
}

// 推荐的语音房列表，返回FunRoomResult.RecommendFunRoomList
message getRecommendFunRoomList{/**NO_AUTH**/
}

// 小程序的视频房列表，返回LiveResult.MainData
message getMPLiveRoomList {/**NO_AUTH**/
}

// 获取小程序加载更多直播房间列表,返回LiveResult.LiveRoomList
message getMPMoreLiveRoomList {/**NO_AUTH**/
  optional int32 start = 1; //获取起始数据
  optional int32 end = 2; //获取结束数据
}

//获得小程序的娱乐房间的列表 返回：FunRoomResult.RoomList
message getMPFunRoomList {/**NO_AUTH**/
  optional int32 type = 1; //类型
  optional int32 index = 2; //分页下标
  optional string appId = 3; // APP包名
}

// 获取符合条件的在线主播列表，返回CommonResult.SearchAnchorList
message searchAnchorList {/**NO_AUTH**/
  optional string keyword = 1; //查找的关键字
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
  optional string overLookUserId = 4; //
}

//获得公会语音频道列表 （包括推荐房间）返回 UnionVoiceRoomResult.VoiceRoomList
message getVoiceRoomList{
  optional string unionid = 1;//公会Id
  optional string roomId = 2;//所在房间Id
}

//获得热门搜索数据 返回UserResult.UserBaseList
message getHotSearch {

}

// 获取语音pc版热门搜索数据 返回UserResult.UserBaseList
message listHotSearchForVoice{

}

// 获取符合条件的在线主播列表，返回CommonResult.SearchAnchorList
message searchAnchorListForVoice{
  optional string keyword = 1; //查找的关键字
  optional int32 start = 2; //获取起始数据
  optional int32 end = 3; //获取结束数据
}

// 获取pc端开关状态列表 1 正常 2 拒绝/完全不上报 3 不上报文件  ，返回CommonResult.IntDatas  列表组成 ws tcp uploadLogFile
message listPCSwitchState{

}

//获取推荐主播列表，返回：RoomResult.recommendedRoomInfo
message listRecommendedAnchor{

}

//获取送礼面板 互动 选项显示开关 返回 CommonResult.BoolResult
message getInteractionSwitch{

}

//获取印章列表  返回 CommonResult.stampConfig
message getStampConfig{

}

//获得语音房间大厅橱窗推荐位数据:返回 FunRoomResult.RoomRecommendSeatResult
message getVoiceRoomRecommendSeat {/**NO_AUTH**/

}


//获得视频房间大厅轮播推荐位数据:返回 LiveResult.VideoCarouselRoomList
message getVideoCarouselRoomList {

}

//获得国家列表 返回 CommonResult.CountryList
message getCountryList {/**NO_AUTH**/
  optional int32 targetType = 1;// 0：当前IP所在国家取用户最后登陆的IP所在国家（默认） 1 当前IP所在国家取用户注册的IP所在国家
  optional string targetId = 2;// targetType=0|1时 指定取那个目标用户数据 ,传取调用接口的用户
}

//获得多个排行榜的前N数据 返回 RankResult.MultiTopRankResult
message getMultiTopRankList {/**NO_AUTH**/
  repeated int32 rankType = 1; // 排行榜类型
  optional int32 topN = 2; // 前N数据
}
