syntax = "proto2";

package HongBaoRainResult;

//option optimize_for = LITE_RUNTIME;

option java_package = "com.miaole.live.protocol.response";
option java_outer_classname = "HongBaoRainResult";


// 房间红包信息|红包变化信息
message RoomHongBaoRainInfo {
	optional string roomId = 1;//房间id
	optional int64 leftTime = 2;//下一个红包雨倒计时时间(毫秒)
	optional int32 hongBaoNum = 3;//红包个数
	optional string anchorId = 4;//唤起红包雨的主播(红包变化时服务端主动推送)
	optional string nickName = 5;//唤起红包雨的主播(红包变化时服务端主动推送)
	optional string content = 6;//横幅文案(红包变化时服务端主动推送)
	optional string resourceName = 7;//横幅资源名(红包变化时服务端主动推送)
	optional int32 level = 8;// 红包等级
}

// 红包雨开始播放动画-广播
message HongBaoRainStart {
    optional string roomId = 1;//房间id
    optional string hongbaoId = 2;//红包id
    optional string anchorId = 3;//主播id
    optional string h5Url = 4;//红包雨动效链接
	optional int32 level = 5;// 红包等级
}

// 红包雨开奖结果-广播
message HongBaoRainResultBroadcast {
    optional int32 myGotNum = 1;// 本人抢到的数量
    optional string roomId = 2;//房间id
    optional string anchorId = 3;//唤起红包雨的主播
    optional string anchorNickName = 4;//唤起红包雨的主播
    optional string hongbaoId = 5;//红包id
    repeated HongBaoRainUserDetails rankList = 6;//红包榜(只有myGotNum>0此字段才会设值)
}

// 红包雨开奖结果-用户详情
message HongBaoRainUserDetails {
    optional string userId = 1;
    optional string nickName = 2;
    optional string headUrl = 3;
    optional int32 logoTime = 4;
    optional int32 gotNum = 5;//抢到的数量
}

// 红包雨开奖结果-公频广播
message HongBaoRainResultOnPanel {
    optional string hongbaoId = 1;//红包id
}

// 红包雨开奖结果-排行榜
message HongBaoRainResultRank{
    repeated HongBaoRainUserDetails rankList = 1;//红包榜
}

// 红包雨开奖通知
message HongBaoOpenBroadcast {
	optional string hongbaoId = 1;//红包id
	optional bool hadAward = 2;// 是否获得奖励
}

// 红包雨开奖结果信息
message HongBaoOpenInfo {
	optional string hongbaoId = 1;//红包id
	optional int32 level = 2;// 红包等级
	optional string image = 3;// 奖励图片
	optional string text = 4;// 奖励文案
	optional string userId = 5;// 触发红包用户id
	optional string userName = 6;// 触发红包用户名
	optional string anchorId = 7;// 触发红包主播id
	optional string anchorName = 8;// 触发红包主播名
	repeated HongBaoRainUserDetails rankList = 9;// 红包榜
	optional string activityId = 10;//活动id
	optional int32 periodIndex = 11;//活动期数
}

// 有红包雨房间列表
message HongBaoRainRooms {
	repeated HongBaoRainRoom list = 1;
}

// 有红包雨房间信息
message HongBaoRainRoom {
	optional string roomId = 1;// 房间id
	optional int32 level = 2;// 红包等级
	optional string resource = 3; //角标资源
}

// 用户红包等级
message UserHongBaoLevelInfo {
	optional int64 score = 1;// 分数
	optional int32 level = 2;// 红包等级
	optional int64 nextLimit = 3;// 下级分数
	optional string activityId = 4;//活动id
	optional int32 periodIndex = 5;//活动期数
}

// 房间准备触发红包雨列表
message RoomHongBaoList {
	repeated RoomHongBaoMessage list = 1;
}

// 房间准备触发红包雨记录
message RoomHongBaoMessage {
	optional string hongbaoId = 1;//红包id
	repeated string texts = 2;// 说明文案数组
	optional int32 level = 3;// 红包等级
	optional int32 hongbaoStatus = 4; //红包状态，0-待开始; 1-倒计时开始; 2-动画广播开始; 3-结束开奖
}

// 房间红包信息|红包变化信息（兼容旧包处理）
message RoomHongBaoRainInfoNew {
	optional string roomId = 1;//房间id
	optional int64 leftTime = 2;//下一个红包雨倒计时时间(毫秒)
	optional int32 hongBaoNum = 3;//红包个数
	optional string anchorId = 4;//唤起红包雨的主播(红包变化时服务端主动推送)
	optional string nickName = 5;//唤起红包雨的主播(红包变化时服务端主动推送)
	optional string content = 6;//横幅文案(红包变化时服务端主动推送)
	optional string resourceName = 7;//横幅资源名(红包变化时服务端主动推送)
	optional int32 level = 8;// 红包等级
}

// 红包雨开始播放动画-广播（兼容旧包处理）
message HongBaoRainStartNew {
    optional string roomId = 1;//房间id
    optional string hongbaoId = 2;//红包id
    optional string anchorId = 3;//主播id
    optional string h5Url = 4;//红包雨动效链接
	optional int32 level = 5;// 红包等级
}

// 红包雨开奖结果-公频广播（兼容旧包处理）
message HongBaoRainResultOnPanelNew {
    optional string hongbaoId = 1;//红包id
}

//用户累计活动任务详情（没有用, 用了UserHongBaoLevelInfo）
message UserHongbaoTaskDetail{
		optional int32 currentScore = 1;//当前分值
		optional int32 completeScore = 2;//达标分值
}

//房间红包雨信息， 房间左上角的内容
message RoomCornerRainInfo{
		optional string roomId = 1; //房间id
		optional int32 level = 2; //红包等级
		optional int64 leftTime = 3;//下一个红包雨倒计时时间(毫秒)
		optional int32 hongBaoNum = 4;//红包个数
		optional string activityId = 5; //活动id
		optional int32 periodIndex = 6; //活动期数
	  optional string resource = 7; //角标资源
}

//查询大厅包含红包雨的房间ids
message HallRoomLevelInfo {
		optional string activityId = 1; //活动id
		optional int32 periodIndex = 2; //活动期数
		repeated HongBaoRainRoom list = 3; //有红包雨的房间id列表
}

// 红包雨开始播放动画-广播
message HongBaoRainStartBroadcast {
	optional string activityId = 1; //活动id
	optional int32 periodIndex = 2; //活动期数
	optional string roomId = 3;//房间id
	optional string hongbaoId = 4;//红包id
	optional string h5Url = 5;//红包雨动效链接
	optional int32 level = 6;// 红包等级
}

// 红包雨开奖通知
message HongBaoRainAwardBroadcast {
	optional string activityId = 1; //活动id
	optional int32 periodIndex = 2; //活动期数
	optional string hongbaoId = 3;//红包id
	optional bool hadAward = 4;// 是否获得奖励
}

// 红包雨开奖结果-公频广播
message HongBaoRainOpenResultBroadcast {
	optional string activityId = 1; //活动id
	optional int32 periodIndex = 2; //活动期数
	optional string hongbaoId = 3;//红包id
}