bilibili-backup/app/service/main/spy/api/api.proto
2019-04-22 02:59:20 +00:00

187 lines
3.8 KiB
Protocol Buffer

syntax = "proto3";
package account.spy;
option go_package = "v1";
message ClearReliveTimesReply {
}
message ClearReliveTimesReq {
ModelArgReset arg = 1;
}
message HandleEventReply {
}
message HandleEventReq {
ModelEventMessage event_msg = 1;
}
message ModelArgReset {
int64 mid = 1;
bool re_live_time = 2;
bool event_score = 3;
bool base_score = 4;
string operator = 5;
}
message ModelEventMessage {
int64 time = 1;
string ip = 2;
string service = 3;
string event = 4;
int64 active_mid = 5;
int64 target_mid = 6;
int64 target_id = 7;
//FIXME type model. args = 8;
string result = 9;
string effect = 10;
int32 risk_level = 11;
}
message ModelStatistics {
int64 quantity = 1;
int64 event_id = 2;
string event_name = 3;
}
message ModelUserInfo {
int64 id = 1;
int64 mid = 2;
int32 score = 3;
int32 base_score = 4;
int32 event_score = 5;
int32 state = 6;
int32 relive_times = 7;
int64 ctime = 8;
int64 mtime = 9;
}
message PingReply {
}
message PingReq {
}
message PurgeUserReply {
}
message PurgeUserReq {
int64 mid = 1;
string action = 2;
}
message ReBuildPortraitReply {
}
message ReBuildPortraitReq {
int64 mid = 1;
string reason = 2;
}
message RefreshBaseScoreReply {
}
message RefreshBaseScoreReq {
ModelArgReset arg = 1;
}
message StatByIDGroupEventReply {
repeated ModelStatistics res = 1;
}
message StatByIDGroupEventReq {
int64 mid = 1;
int64 id = 2;
}
message StatByIDReply {
repeated ModelStatistics stat = 1;
}
message StatByIDReq {
int64 mid = 1;
int64 id = 2;
}
message UpdateBaseScoreReply {
}
message UpdateBaseScoreReq {
ModelArgReset arg = 1;
}
message UpdateEventScoreReply {
}
message UpdateEventScoreReq {
ModelArgReset arg = 1;
}
message UpdateUserScoreReply {
}
message UpdateUserScoreReq {
int64 mid = 1;
string ip = 2;
string effect = 3;
}
message UserInfoAsynReply {
ModelUserInfo ui = 1;
}
message UserInfoAsynReq {
int64 mid = 1;
}
message UserInfoReply {
ModelUserInfo ui = 1;
}
message UserInfoReq {
int64 mid = 1;
string ip = 2;
}
message InfoReq {
int64 mid = 1;
}
message InfoReply {
ModelUserInfo ui = 1;
}
service Spy {
// Ping check dao health.
rpc Ping(PingReq) returns(PingReply);
// Info get user info by mid.
rpc Info(InfoReq) returns(InfoReply);
// StatByID spy stat by id or mid.
rpc StatByID(StatByIDReq) returns(StatByIDReply);
// StatByIDGroupEvent spy stat by id or mid.
rpc StatByIDGroupEvent(StatByIDGroupEventReq) returns(StatByIDGroupEventReply);
// PurgeUser purge user info
rpc PurgeUser(PurgeUserReq) returns(PurgeUserReply);
// HandleEvent handle spy-event.
rpc HandleEvent(HandleEventReq) returns(HandleEventReply);
// UserInfo get UserInfo by mid , from cache or db or generate.
rpc UserInfo(UserInfoReq) returns(UserInfoReply);
// UserInfoAsyn get UserInfo by mid , from cache or db or asyn generate.
rpc UserInfoAsyn(UserInfoAsynReq) returns(UserInfoAsynReply);
// ReBuildPortrait reBuild user info.
rpc ReBuildPortrait(ReBuildPortraitReq) returns(ReBuildPortraitReply);
// UpdateUserScore update user score
rpc UpdateUserScore(UpdateUserScoreReq) returns(UpdateUserScoreReply);
// RefreshBaseScore refresh base score.
rpc RefreshBaseScore(RefreshBaseScoreReq) returns(RefreshBaseScoreReply);
// UpdateBaseScore update base score.
rpc UpdateBaseScore(UpdateBaseScoreReq) returns(UpdateBaseScoreReply);
// UpdateEventScore update event score.
rpc UpdateEventScore(UpdateEventScoreReq) returns(UpdateEventScoreReply);
// ClearReliveTimes clear times.
rpc ClearReliveTimes(ClearReliveTimesReq) returns(ClearReliveTimesReply);
}