mirror of
https://github.com/TeaOSLab/EdgeCommon.git
synced 2025-12-16 05:46:34 +08:00
128 lines
2.7 KiB
Protocol Buffer
128 lines
2.7 KiB
Protocol Buffer
syntax = "proto3";
|
||
option go_package = "./pb";
|
||
|
||
package pb;
|
||
|
||
import "models/rpc_messages.proto";
|
||
import "models/model_ip_item.proto";
|
||
|
||
// IP条目管理
|
||
service IPItemService {
|
||
// 创建IP
|
||
rpc createIPItem (CreateIPItemRequest) returns (CreateIPItemResponse);
|
||
|
||
// 修改IP
|
||
rpc updateIPItem (UpdateIPItemRequest) returns (RPCSuccess);
|
||
|
||
// 删除IP
|
||
rpc deleteIPItem (DeleteIPItemRequest) returns (RPCSuccess);
|
||
|
||
// 计算IP数量
|
||
rpc countIPItemsWithListId (CountIPItemsWithListIdRequest) returns (RPCCountResponse);
|
||
|
||
// 列出单页的IP
|
||
rpc listIPItemsWithListId (ListIPItemsWithListIdRequest) returns (ListIPItemsWithListIdResponse);
|
||
|
||
// 查找单个IP
|
||
rpc findEnabledIPItem (FindEnabledIPItemRequest) returns (FindEnabledIPItemResponse);
|
||
|
||
// 根据版本列出一组IP
|
||
rpc listIPItemsAfterVersion (ListIPItemsAfterVersionRequest) returns (ListIPItemsAfterVersionResponse);
|
||
|
||
// 检查IP状态
|
||
rpc checkIPItemStatus (CheckIPItemStatusRequest) returns (CheckIPItemStatusResponse);
|
||
|
||
// 检查IP是否存在
|
||
rpc existsEnabledIPItem (ExistsEnabledIPItemRequest) returns (ExistsEnabledIPItemResponse);
|
||
}
|
||
|
||
// 创建IP
|
||
message CreateIPItemRequest {
|
||
int64 ipListId = 1; // IP列表ID
|
||
string ipFrom = 2; // 开始IP
|
||
string ipTo = 3; // 结束IP(可选)
|
||
int64 expiredAt = 4; // 过期时间戳(可选)
|
||
string reason = 5; // 加入理由(可选)
|
||
string type = 6; // 类型
|
||
string eventLevel = 7; // 级别
|
||
}
|
||
|
||
message CreateIPItemResponse {
|
||
int64 ipItemId = 1;
|
||
}
|
||
|
||
// 修改IP
|
||
message UpdateIPItemRequest {
|
||
int64 ipItemId = 1;
|
||
string ipFrom = 2;
|
||
string ipTo = 3;
|
||
int64 expiredAt = 4;
|
||
string reason = 5;
|
||
string type = 6; // 类型
|
||
string eventLevel = 7; // 级别
|
||
}
|
||
|
||
// 删除IP
|
||
message DeleteIPItemRequest {
|
||
int64 ipItemId = 1;
|
||
}
|
||
|
||
// 计算IP数量
|
||
message CountIPItemsWithListIdRequest {
|
||
int64 ipListId = 1;
|
||
}
|
||
|
||
// 列出单页的IP
|
||
message ListIPItemsWithListIdRequest {
|
||
int64 ipListId = 1;
|
||
int64 offset = 2;
|
||
int64 size = 3;
|
||
}
|
||
|
||
message ListIPItemsWithListIdResponse {
|
||
repeated IPItem ipItems = 1;
|
||
}
|
||
|
||
// 查找单个IP
|
||
message FindEnabledIPItemRequest {
|
||
int64 ipItemId = 1;
|
||
}
|
||
|
||
message FindEnabledIPItemResponse {
|
||
IPItem ipItem = 1;
|
||
}
|
||
|
||
// 根据版本列出一组IP
|
||
message ListIPItemsAfterVersionRequest {
|
||
int64 version = 1;
|
||
int64 size = 2;
|
||
}
|
||
|
||
message ListIPItemsAfterVersionResponse {
|
||
repeated IPItem ipItems = 1;
|
||
}
|
||
|
||
// 检查IP状态
|
||
message CheckIPItemStatusRequest {
|
||
int64 ipListId = 1;
|
||
string ip = 2;
|
||
}
|
||
|
||
message CheckIPItemStatusResponse {
|
||
bool isOk = 1; // 是否查询成功
|
||
string error = 2;
|
||
bool isFound = 3; // 是否找到
|
||
bool isAllowed = 4; // 是否允许
|
||
IPItem ipItem = 5; // 匹配的IPItem
|
||
}
|
||
|
||
// 检查IP是否存在
|
||
message ExistsEnabledIPItemRequest {
|
||
int64 ipItemId = 1;
|
||
}
|
||
|
||
message ExistsEnabledIPItemResponse {
|
||
bool exists = 1;
|
||
}
|
||
|
||
// |