syntax = "proto3";

package bilibili.account.fission.v1;

//Fission裂变
service Fission {
    // 活动入口
    rpc Entrance (EntranceReq) returns (EntranceReply);
    // 首页弹窗
    rpc Window (WindowReq) returns (WindowReply);
}

// 活动入口-请求
message EntranceReq {}

// 活动入口-响应
message EntranceReply {
    // 展示图标
    string icon = 1;
    // 活动名称
    string name = 2;
    // 活动跳转链接
    string url = 3;
    // 动画效果
    AnimateIcon animate_icon = 4;
}

// 首页弹窗-请求
message WindowReq {}

//首页弹窗-响应
message WindowReply {
    // 弹窗类型
    // 0:弹窗 1:普通页面
    int32 type = 1;
    // 跳转链接
    string url = 2;
    // 上报数据字段
    string report_data = 3;
}

//动画效果
message AnimateIcon {
    // icon文件
    string icon = 1;
    // 动效json文件
    string json = 2;
}