syntax = "proto2";

// 2021 年度 红包玩法
package RedPacketRainResult;

option java_package = "com.miaole.live.protocol.response";
option java_outer_classname = "RedPacketRainResult";

// 01 房间内红包雨信息(进房主动获取,变化广播推送)
message RoomRedPacketRainInfo{
  optional int32 num = 1;                                     // 房间内正在进行中红包雨场数
  optional string rainId = 2;                                 // 红包雨场次ID
  optional int32 type = 3;                                    // 红包雨类型:1=年度号角,2=年度穿云箭
  optional int32 countdown = 4;                               // 倒计时
  optional bool isOnePieceHorn = 5;                           // 是否为航海活动启航号角（type=1，兼容旧版本年度号角前端样式）
}

// 02 房间内红包雨信息
message RoomRedPacketRainInfoList{
  repeated RoomRedPacketRainItem infoList = 1;                // 房间内正在等待的红包雨信息
}

// 房间内正在等待的红包雨信息
message RoomRedPacketRainItem{
  optional string rainId = 1;                                 // 红包雨场次ID
  optional string userId = 2;                                 // 红包雨发起者ID
  optional int32 type = 3;                                    // 礼物类型:1=年度号角（兼容航海活动-启航号角）,2=年度穿云箭
  optional string nickName = 4;                               // 红包雨发起者名字
  optional string anchorId = 5;                               // 关联主播id
  optional string anchorName = 6;                             // 关联主播昵称
  optional string userHeadPortrait = 7;                       // 关联用户头像
  optional string anchorHeadPortrait = 8;                     // 关联主播头像
  optional string rainDesc = 9;                               // 红包雨礼物名称

}

// 03 获取红包雨的中奖结果(到点推送公屏,主动获取)
message RoomRedPacketRainResult{
  optional string rainId = 1;                                 // 红包雨场次ID
  repeated ResultItem resultList = 2;                         // 中奖者名单列表
  optional int32 type = 3;                                    // 红包雨类型:1=年度号角,2=年度穿云箭
  optional string rainDesc = 4;                               // 红包雨礼物名称
}

// 中奖者名单
message ResultItem{
  optional string userId = 1;                                 // 中奖者ID
  optional string headUrl = 2;                                // 中奖者头像
  optional string nickname = 3;                               // 中奖者昵称
  optional int32 type = 4;                                    // 奖品类型:1=大年度票,2=年度票
  optional int32 num = 5;                                     // 奖品数量
  optional bool isWarriorCloak = 6;                           //是否开启勇者斗篷
}

// 红包雨点中奖通知结果
message RoomRedPacketRainResultNotice{
  optional int32 noticeType = 1;                              // 通知类型:1=中奖通知,2=未中奖通知
  optional int32 type = 2;                                    // 奖品类型:1=大年度票,2=年度票(noticeType=1,才有值)
  optional int32 num = 3;                                     // 奖品数量(noticeType=1,才有值)
  optional string thanking = 4;                               // 感谢语(noticeType=1,才有值)
  repeated ResultItem resultList = 5;                         // 中奖者名单列表(noticeType=1,才有值)
  optional int32 rainType = 6;                                // 红包雨类型:1=年度号角,2=年度穿云箭
  optional string rainDesc = 7;                               // 红包雨礼物名称
}

// 红包开启与结束通知
//message RainStartAndEndNotice{
//  optional string rainId = 1;                                 // 红包雨场次ID
//  optional int32 status = 2;                                  // 1=红包开始,2=红包结束
//  optional string roomId = 3;                                 // 房间id
//  optional string anchorId = 4;                               // 主播id
//  optional string h5Url = 5;                                  // 红包雨动效链接
//}
