mirror of
				https://github.com/TeaOSLab/EdgeCommon.git
				synced 2025-11-04 05:00:24 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			800 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
			
		
		
	
	
			800 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
syntax = "proto3";
 | 
						||
option go_package = "./pb";
 | 
						||
 | 
						||
package pb;
 | 
						||
 | 
						||
import "models/model_server.proto";
 | 
						||
import "models/model_dns_domain.proto";
 | 
						||
import "models/model_server_name_auditing_result.proto";
 | 
						||
import "models/rpc_messages.proto";
 | 
						||
import "models/model_user_plan.proto";
 | 
						||
 | 
						||
// 网站服务相关服务
 | 
						||
service ServerService {
 | 
						||
	// 创建网站
 | 
						||
	rpc createServer (CreateServerRequest) returns (CreateServerResponse);
 | 
						||
 | 
						||
	// 快速创建基本的HTTP网站
 | 
						||
	rpc createBasicHTTPServer(CreateBasicHTTPServerRequest) returns (CreateBasicHTTPServerResponse);
 | 
						||
 | 
						||
	// 快速创建基本的TCP网站
 | 
						||
	rpc createBasicTCPServer(CreateBasicTCPServerRequest) returns (CreateBasicTCPServerResponse);
 | 
						||
 | 
						||
	// 为网站添加源站
 | 
						||
	rpc addServerOrigin(AddServerOriginRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 从网站中删除某个源站
 | 
						||
	rpc deleteServerOrigin(DeleteServerOriginRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站基本信息
 | 
						||
	rpc updateServerBasic (UpdateServerBasicRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站所在分组
 | 
						||
	rpc updateServerGroupIds(UpdateServerGroupIdsRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站是否启用
 | 
						||
	rpc updateServerIsOn (UpdateServerIsOnRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的HTTP设置
 | 
						||
	rpc updateServerHTTP (UpdateServerHTTPRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的HTTPS设置
 | 
						||
	rpc updateServerHTTPS (UpdateServerHTTPSRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的TCP设置
 | 
						||
	rpc updateServerTCP (UpdateServerTCPRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的TLS设置
 | 
						||
	rpc updateServerTLS (UpdateServerTLSRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的UDP设置
 | 
						||
	rpc updateServerUDP (UpdateServerUDPRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的Web设置
 | 
						||
	rpc updateServerWeb (UpdateServerWebRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的反向代理设置
 | 
						||
	rpc updateServerReverseProxy (UpdateServerReverseProxyRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 查找网站的域名设置
 | 
						||
	rpc findServerNames (FindServerNamesRequest) returns (FindServerNamesResponse);
 | 
						||
 | 
						||
	// 修改网站的域名设置
 | 
						||
	rpc updateServerNames (UpdateServerNamesRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 审核网站的域名设置
 | 
						||
	rpc updateServerNamesAuditing (UpdateServerNamesAuditingRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的DNS相关设置
 | 
						||
	rpc updateServerDNS(UpdateServerDNSRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 重新生成CNAME
 | 
						||
	rpc regenerateServerDNSName(RegenerateServerDNSNameRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站的CNAME
 | 
						||
	rpc updateServerDNSName(UpdateServerDNSNameRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 使用CNAME查找网站
 | 
						||
	rpc findServerIdWithDNSName(FindServerIdWithDNSNameRequest) returns (FindServerIdWithDNSNameResponse);
 | 
						||
 | 
						||
	// 计算匹配的网站数量
 | 
						||
	rpc countAllEnabledServersMatch (CountAllEnabledServersMatchRequest) returns (RPCCountResponse);
 | 
						||
 | 
						||
	// 列出单页网站
 | 
						||
	rpc listEnabledServersMatch (ListEnabledServersMatchRequest) returns (ListEnabledServersMatchResponse);
 | 
						||
 | 
						||
	// 删除某网站
 | 
						||
	rpc deleteServer (DeleteServerRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 删除一组网站
 | 
						||
	rpc deleteServers(DeleteServersRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 查找单个网站
 | 
						||
	rpc findEnabledServer (FindEnabledServerRequest) returns (FindEnabledServerResponse);
 | 
						||
 | 
						||
	// 查找网站配置
 | 
						||
	rpc findEnabledServerConfig (FindEnabledServerConfigRequest) returns (FindEnabledServerConfigResponse);
 | 
						||
 | 
						||
	// 查找网站的网站类型
 | 
						||
	rpc findEnabledServerType (FindEnabledServerTypeRequest) returns (FindEnabledServerTypeResponse);
 | 
						||
 | 
						||
	// 查找反向代理设置
 | 
						||
	rpc findAndInitServerReverseProxyConfig (FindAndInitServerReverseProxyConfigRequest) returns (FindAndInitServerReverseProxyConfigResponse);
 | 
						||
 | 
						||
	// 初始化Web设置
 | 
						||
	rpc findAndInitServerWebConfig (FindAndInitServerWebConfigRequest) returns (FindAndInitServerWebConfigResponse);
 | 
						||
 | 
						||
	// 计算使用某个SSL证书的网站数量
 | 
						||
	rpc countAllEnabledServersWithSSLCertId (CountAllEnabledServersWithSSLCertIdRequest) returns (RPCCountResponse);
 | 
						||
 | 
						||
	// 查找使用某个SSL证书的所有网站
 | 
						||
	rpc findAllEnabledServersWithSSLCertId (FindAllEnabledServersWithSSLCertIdRequest) returns (FindAllEnabledServersWithSSLCertIdResponse);
 | 
						||
 | 
						||
	// 计算运行在某个集群上的所有网站数量
 | 
						||
	rpc countAllEnabledServersWithNodeClusterId (CountAllEnabledServersWithNodeClusterIdRequest) returns (RPCCountResponse);
 | 
						||
 | 
						||
	// 计算使用某个分组的网站数量
 | 
						||
	rpc countAllEnabledServersWithServerGroupId (CountAllEnabledServersWithServerGroupIdRequest) returns (RPCCountResponse);
 | 
						||
 | 
						||
	// 通知更新
 | 
						||
	rpc notifyServersChange (NotifyServersChangeRequest) returns (NotifyServersChangeResponse);
 | 
						||
 | 
						||
	// 取得某个集群下的所有网站相关的DNS
 | 
						||
	rpc findAllEnabledServersDNSWithNodeClusterId (FindAllEnabledServersDNSWithNodeClusterIdRequest) returns (FindAllEnabledServersDNSWithNodeClusterIdResponse);
 | 
						||
 | 
						||
	// 查找单个网站的DNS信息
 | 
						||
	rpc findEnabledServerDNS (FindEnabledServerDNSRequest) returns (FindEnabledServerDNSResponse);
 | 
						||
 | 
						||
	// 检查网站是否属于某个用户
 | 
						||
	rpc checkUserServer (CheckUserServerRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 查找一个用户下的所有域名列表
 | 
						||
	rpc findAllEnabledServerNamesWithUserId (FindAllEnabledServerNamesWithUserIdRequest) returns (FindAllEnabledServerNamesWithUserIdResponse);
 | 
						||
 | 
						||
	// 计算一个用户下的所有域名数量
 | 
						||
	rpc countAllServerNamesWithUserId (CountAllServerNamesWithUserIdRequest) returns (RPCCountResponse);
 | 
						||
 | 
						||
	// 计算某个网站下的域名数量
 | 
						||
	rpc countServerNames(CountServerNamesRequest) returns (RPCCountResponse);
 | 
						||
 | 
						||
	// 查找一个用户下的所有网站
 | 
						||
	rpc findAllUserServers(FindAllUserServersRequest) returns (FindAllUserServersResponse);
 | 
						||
 | 
						||
	// 计算一个用户下的所有网站数量
 | 
						||
	rpc countAllUserServers(CountAllUserServersRequest) returns (RPCCountResponse);
 | 
						||
 | 
						||
	// 查找某个用户下的网站配置
 | 
						||
	rpc composeAllUserServersConfig(ComposeAllUserServersConfigRequest) returns (ComposeAllUserServersConfigResponse);
 | 
						||
 | 
						||
	// 查找用户网站基本信息
 | 
						||
	rpc findEnabledUserServerBasic (FindEnabledUserServerBasicRequest) returns (FindEnabledUserServerBasicResponse);
 | 
						||
 | 
						||
	// 修改用户网站基本信息
 | 
						||
	rpc updateEnabledUserServerBasic (UpdateEnabledUserServerBasicRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 上传HTTP请求待统计数据
 | 
						||
	rpc uploadServerHTTPRequestStat (UploadServerHTTPRequestStatRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 检查域名是否在集群中已经存在
 | 
						||
	rpc checkServerNameDuplicationInNodeCluster (CheckServerNameDuplicationInNodeClusterRequest) returns (CheckServerNameDuplicationInNodeClusterResponse);
 | 
						||
 | 
						||
	// 检查域名是否在网站中已经绑定
 | 
						||
	rpc checkServerNameInServer(CheckServerNameInServerRequest) returns (CheckServerNameInServerResponse);
 | 
						||
 | 
						||
	// 查找最近访问的网站
 | 
						||
	rpc findLatestServers (FindLatestServersRequest) returns (FindLatestServersResponse);
 | 
						||
 | 
						||
	// 查找某个网站附近的网站
 | 
						||
	rpc findNearbyServers(FindNearbyServersRequest) returns (FindNearbyServersResponse);
 | 
						||
 | 
						||
	// 清除缓存
 | 
						||
	rpc purgeServerCache(PurgeServerCacheRequest) returns (PurgeServerCacheResponse);
 | 
						||
 | 
						||
	// 查找流量限制
 | 
						||
	rpc findEnabledServerTrafficLimit(FindEnabledServerTrafficLimitRequest) returns (FindEnabledServerTrafficLimitResponse);
 | 
						||
 | 
						||
	// 设置流量限制
 | 
						||
	rpc updateServerTrafficLimit(UpdateServerTrafficLimitRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站套餐
 | 
						||
	rpc updateServerUserPlan(UpdateServerUserPlanRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 获取网站套餐信息
 | 
						||
	rpc findServerUserPlan(FindServerUserPlanRequest) returns (FindServerUserPlanResponse);
 | 
						||
 | 
						||
	// 获取网站配置
 | 
						||
	rpc composeServerConfig(ComposeServerConfigRequest) returns (ComposeServerConfigResponse);
 | 
						||
 | 
						||
	// 修改网站UAM设置
 | 
						||
	rpc updateServerUAM(UpdateServerUAMRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 查找网站UAM设置
 | 
						||
	rpc findEnabledServerUAM(FindEnabledServerUAMRequest) returns (FindEnabledServerUAMResponse);
 | 
						||
 | 
						||
	// 修改网站所属用户
 | 
						||
	rpc updateServerUser(UpdateServerUserRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 修改网站名称
 | 
						||
	rpc updateServerName(UpdateServerNameRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 在网站之间复制配置
 | 
						||
	rpc copyServerConfig(CopyServerConfigRequest) returns (RPCSuccess);
 | 
						||
 | 
						||
	// 获取域名审核时的提示文字
 | 
						||
	rpc findServerAuditingPrompt(FindServerAuditingPromptRequest) returns (FindServerAuditingPromptResponse);
 | 
						||
}
 | 
						||
 | 
						||
// 创建网站
 | 
						||
message CreateServerRequest {
 | 
						||
	int64 userId = 1; // 可选项,用户ID,如果不想指定用户,此值可以为0
 | 
						||
	int64 adminId = 2; // 可选项,管理员ID
 | 
						||
	string type = 3; // 类型:httpProxy(HTTP反向代理,一般CDN服务都选这个)、httpWeb(静态文件服务,只会从服务器上读取文件内容,不会转发到源站)、tcpProxy(TCP反向代理)、udpProxy(UDP反向代理)
 | 
						||
	string name = 4; // 网站名称,通常可以是一个域名
 | 
						||
	string description = 5; // 可选项,网站描述
 | 
						||
 | 
						||
	// 配置相关
 | 
						||
	bytes serverNamesJSON = 8; // 域名列表 @link json:server_names
 | 
						||
	bytes serverNamesJON = 19 [deprecated = true]; // 已过期,请使用 serverNamesJSON 代替
 | 
						||
	bytes httpJSON = 9; // HTTP协议设置,当type为httpProxy或者httpWeb时填写 @link json:http_protocol
 | 
						||
	bytes httpsJSON = 10;  // HTTPS协议设置,当type为httpProxy或者httpWeb时填写 @link json:https_protocol
 | 
						||
	bytes tcpJSON = 11;  // TCP协议设置,当type为tcpProxy时填写 @link json:tcp_protocol
 | 
						||
	bytes tlsJSON = 12;  // TLS协议设置,当type为tcpProxy时填写 @link json:tls_protocol
 | 
						||
	bytes udpJSON = 14; // UDP协议设置,当type为udpProxy时填写 @link json:udp_protocol
 | 
						||
	int64 webId = 15; // 可选项,Web配置ID,当type为httpProxy或者httpWeb时填写,可以通过 /HTTPWebService/createHTTPWeb 接口创建;如果你需要配置缓存等信息时需要在 HTTPWebService 接口操作
 | 
						||
	bytes reverseProxyJSON = 16; // 反向代理(包含源站)配置引用,此项可以在创建网站后再设置 @link json:reverse_proxy_ref
 | 
						||
	repeated int64 serverGroupIds = 17; // 可选项,所属网站分组ID列表
 | 
						||
	int64 userPlanId = 18; // 可选项,套餐ID
 | 
						||
 | 
						||
	int64 nodeClusterId = 30; // 所部署的集群ID
 | 
						||
	bytes includeNodesJSON = 31; // 备用参数,不用填写
 | 
						||
	bytes excludeNodesJSON = 32; // 备用参数,不用填写
 | 
						||
}
 | 
						||
 | 
						||
message CreateServerResponse {
 | 
						||
	int64 serverId = 1; // 所创建的网站ID
 | 
						||
}
 | 
						||
 | 
						||
// 快速创建基本的HTTP网站
 | 
						||
message CreateBasicHTTPServerRequest {
 | 
						||
	int64 nodeClusterId = 1; // 部署的集群ID,用户创建时不需要指定此项
 | 
						||
	int64 userId = 2; // 管理员创建网站时可以指定此用户ID,也可以为0表示不指定
 | 
						||
	repeated string domains = 3; // 域名列表
 | 
						||
	repeated int64 sslCertIds = 4; // HTTPS用到的证书ID列表
 | 
						||
	repeated string originAddrs = 5; // 源站地址列表,每一个源站地址需要带协议部分,比如 http://example.com
 | 
						||
 | 
						||
	bool enableWebsocket = 6; // 可选项,是否启用Websocket
 | 
						||
}
 | 
						||
 | 
						||
message CreateBasicHTTPServerResponse {
 | 
						||
	int64 serverId = 1; // 所创建的网站ID
 | 
						||
}
 | 
						||
 | 
						||
// 快速创建基本的TCP网站
 | 
						||
message CreateBasicTCPServerRequest {
 | 
						||
	int64 nodeClusterId = 1; // 部署的集群ID,用户创建时不需要指定此项
 | 
						||
	int64 userId = 2; // 管理员创建网站时可以指定此用户ID,也可以为0表示不指定
 | 
						||
	repeated int32 tcpPorts = 3; // TCP端口
 | 
						||
	repeated int32 tlsPorts = 4; // TLS端口
 | 
						||
	repeated int64 sslCertIds = 5; // TLS用到的证书ID列表
 | 
						||
	repeated string originAddrs = 6; // 源站地址列表,每一个源站地址需要带协议部分,比如 tcp://example.com, tls://example.com
 | 
						||
}
 | 
						||
 | 
						||
message CreateBasicTCPServerResponse {
 | 
						||
	int64 serverId = 1; // 所创建的网站ID
 | 
						||
}
 | 
						||
 | 
						||
// 为网站添加源站
 | 
						||
message AddServerOriginRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	int64 originId = 2; // 源站ID,通过 OriginService 创建和查询
 | 
						||
	bool isPrimary = 3; // 是否为主要源站
 | 
						||
}
 | 
						||
 | 
						||
// 从网站中删除某个源站
 | 
						||
message DeleteServerOriginRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	int64 originId = 2; // 源站ID,通过 OriginService 创建和查询
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站基本信息
 | 
						||
message UpdateServerBasicRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	string name = 2; // 网站名称
 | 
						||
	string description = 3; // 可选项,网站描述
 | 
						||
	int64 nodeClusterId = 4; // 集群ID
 | 
						||
	bool keepOldConfigs = 7; // 可选项,是否在老节点上保留一段时间配置
 | 
						||
	bool isOn = 5; // 是否启用
 | 
						||
	repeated int64 serverGroupIds = 6; // 可选项,网站分组ID列表
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站所在分组
 | 
						||
message UpdateServerGroupIdsRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	repeated int64 serverGroupIds = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站启是否启用
 | 
						||
message UpdateServerIsOnRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bool isOn = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站的HTTP等设置
 | 
						||
message UpdateServerHTTPRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes httpJSON = 2; // HTTP协议设置,当type为httpProxy或者httpWeb时填写 @link json:http_protocol
 | 
						||
}
 | 
						||
 | 
						||
message UpdateServerHTTPSRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes httpsJSON = 2; // HTTPS协议设置,当type为httpProxy或者httpWeb时填写 @link json:https_protocol
 | 
						||
}
 | 
						||
 | 
						||
message UpdateServerTCPRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes tcpJSON = 2; // TCP协议设置,当type为tcpProxy时填写 @link json:tcp_protocol
 | 
						||
}
 | 
						||
 | 
						||
message UpdateServerTLSRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes tlsJSON = 2; // TLS协议设置,当type为tcpProxy时填写 @link json:tls_protocol
 | 
						||
}
 | 
						||
 | 
						||
message UpdateServerUDPRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes udpJSON = 2; // UDP协议设置,当type为udpProxy时填写 @link json:udp_protocol
 | 
						||
}
 | 
						||
 | 
						||
message UpdateServerWebRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	int64 webId = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站的反向代理设置
 | 
						||
message UpdateServerReverseProxyRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes reverseProxyJSON = 2; // 反向代理(包含源站)配置引用,此项可以在创建网站后再设置 @link json:reverse_proxy_ref
 | 
						||
}
 | 
						||
 | 
						||
// 查找网站的域名设置
 | 
						||
message FindServerNamesRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindServerNamesResponse {
 | 
						||
	bytes serverNamesJSON = 1; // 域名列表 @link json:server_names
 | 
						||
	bool isAuditing = 2;
 | 
						||
	int64 auditingAt = 5;
 | 
						||
	bytes auditingServerNamesJSON = 3;
 | 
						||
	ServerNameAuditingResult auditingResult = 4;
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站的域名设置
 | 
						||
message UpdateServerNamesRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes serverNamesJSON = 2; // 域名列表 @link json:server_names
 | 
						||
}
 | 
						||
 | 
						||
// 审核网站的域名设置
 | 
						||
message UpdateServerNamesAuditingRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	ServerNameAuditingResult auditingResult = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站的DNS相关设置
 | 
						||
message UpdateServerDNSRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bool supportCNAME = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 重新生成CNAME
 | 
						||
message RegenerateServerDNSNameRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站的CNAME
 | 
						||
message UpdateServerDNSNameRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	string dnsName = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 使用CNAME查找网站
 | 
						||
message FindServerIdWithDNSNameRequest {
 | 
						||
	int64 nodeClusterId = 1;
 | 
						||
	string dnsName = 2;
 | 
						||
}
 | 
						||
 | 
						||
message FindServerIdWithDNSNameResponse {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
// 计算网站数量
 | 
						||
message CountAllEnabledServersMatchRequest {
 | 
						||
	int64 serverGroupId = 1; // 网站分组ID,如果为-1表示查找未分组
 | 
						||
	string keyword = 2;
 | 
						||
	int64 userId = 3;
 | 
						||
	int64 nodeClusterId = 4;
 | 
						||
	int32 auditingFlag = 5;
 | 
						||
	string protocolFamily = 6;
 | 
						||
	int64 userPlanId = 7; // 用户套餐ID
 | 
						||
}
 | 
						||
 | 
						||
// 列出单页网站
 | 
						||
message ListEnabledServersMatchRequest {
 | 
						||
	int64 offset = 1;
 | 
						||
	int64 size = 2;
 | 
						||
	int64 serverGroupId = 3;  // 网站分组ID,如果为-1表示查找未分组
 | 
						||
	string keyword = 4;
 | 
						||
	int64 userId = 5;
 | 
						||
	int64 nodeClusterId = 6;
 | 
						||
	int32 auditingFlag = 7;
 | 
						||
	string protocolFamily = 8;
 | 
						||
	bool trafficOutAsc = 9; // 是否流量正排序
 | 
						||
	bool trafficOutDesc = 10; // 是否流量倒排序
 | 
						||
	bool requestsAsc = 13; // 请求数正排序
 | 
						||
	bool requestsDesc = 14; // 请求数倒排序
 | 
						||
	bool attackRequestsAsc = 15; // 攻击请求数正排序
 | 
						||
	bool attackRequestsDesc = 16; // 攻击请求数倒排序
 | 
						||
	bool ignoreServerNames = 11; // 忽略域名
 | 
						||
	bool ignoreSSLCerts = 12; // 忽略证书
 | 
						||
}
 | 
						||
 | 
						||
message ListEnabledServersMatchResponse {
 | 
						||
	repeated Server servers = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 删除某网站
 | 
						||
message DeleteServerRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
// 删除一组网站
 | 
						||
message DeleteServersRequest {
 | 
						||
	repeated int64 serverIds = 1; // 网站ID列表:[1, 2, ...]
 | 
						||
}
 | 
						||
 | 
						||
// 查找单个网站
 | 
						||
message FindEnabledServerRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bool ignoreSSLCerts = 2; // 忽略SSL证书数据
 | 
						||
}
 | 
						||
 | 
						||
message FindEnabledServerResponse {
 | 
						||
	Server server = 1; // 网站信息
 | 
						||
}
 | 
						||
 | 
						||
// 查找网站配置
 | 
						||
message FindEnabledServerConfigRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindEnabledServerConfigResponse {
 | 
						||
	bytes serverJSON = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 查找网站的网站类型
 | 
						||
message FindEnabledServerTypeRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindEnabledServerTypeResponse {
 | 
						||
	string type = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 查找反向代理设置
 | 
						||
message FindAndInitServerReverseProxyConfigRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindAndInitServerReverseProxyConfigResponse {
 | 
						||
	bytes reverseProxyJSON = 1;
 | 
						||
	bytes reverseProxyRefJSON = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 初始化Web设置
 | 
						||
message FindAndInitServerWebConfigRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindAndInitServerWebConfigResponse {
 | 
						||
	bytes webJSON = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 计算使用某个SSL证书的网站数量
 | 
						||
message CountAllEnabledServersWithSSLCertIdRequest {
 | 
						||
	int64 sslCertId = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 查找使用某个SSL证书的所有网站
 | 
						||
message FindAllEnabledServersWithSSLCertIdRequest {
 | 
						||
	int64 sslCertId = 1;
 | 
						||
}
 | 
						||
 | 
						||
message FindAllEnabledServersWithSSLCertIdResponse {
 | 
						||
	repeated Server servers = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 计算运行在某个集群上的所有网站数量
 | 
						||
message CountAllEnabledServersWithNodeClusterIdRequest {
 | 
						||
	int64 nodeClusterId = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 计算使用某个分组的网站数量
 | 
						||
message CountAllEnabledServersWithServerGroupIdRequest {
 | 
						||
	int64 serverGroupId = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 通知更新
 | 
						||
message NotifyServersChangeRequest {
 | 
						||
 | 
						||
}
 | 
						||
 | 
						||
message NotifyServersChangeResponse {
 | 
						||
 | 
						||
}
 | 
						||
 | 
						||
// 取得某个集群下的所有网站相关的DNS
 | 
						||
message FindAllEnabledServersDNSWithNodeClusterIdRequest {
 | 
						||
	int64 nodeClusterId = 1;
 | 
						||
}
 | 
						||
 | 
						||
message FindAllEnabledServersDNSWithNodeClusterIdResponse {
 | 
						||
	repeated ServerDNSInfo servers = 1;
 | 
						||
}
 | 
						||
 | 
						||
message ServerDNSInfo {
 | 
						||
	int64 id = 1;
 | 
						||
	string name = 2;
 | 
						||
	string dnsName = 3;
 | 
						||
}
 | 
						||
 | 
						||
// 查找单个网站的DNS信息
 | 
						||
message FindEnabledServerDNSRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindEnabledServerDNSResponse {
 | 
						||
	string dnsName = 1;
 | 
						||
	DNSDomain domain = 2;
 | 
						||
	bool supportCNAME = 3;
 | 
						||
}
 | 
						||
 | 
						||
// 检查网站是否属于某个用户
 | 
						||
message CheckUserServerRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
// 查找一个用户下的所有域名列表
 | 
						||
message FindAllEnabledServerNamesWithUserIdRequest {
 | 
						||
	int64 userId = 1;
 | 
						||
}
 | 
						||
 | 
						||
message FindAllEnabledServerNamesWithUserIdResponse {
 | 
						||
	repeated string serverNames = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 计算一个用户下的所有域名数量
 | 
						||
message CountAllServerNamesWithUserIdRequest {
 | 
						||
	int64 userId = 1; // 用户ID
 | 
						||
	int64 userPlanId = 2; // 用户套餐ID
 | 
						||
}
 | 
						||
 | 
						||
// 计算某个网站下的域名数量
 | 
						||
message CountServerNamesRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
// 查找一个用户下的所有网站
 | 
						||
message FindAllUserServersRequest {
 | 
						||
	int64 userId = 1;
 | 
						||
}
 | 
						||
 | 
						||
message FindAllUserServersResponse {
 | 
						||
	repeated Server servers = 1; // 只返回一些简要信息
 | 
						||
}
 | 
						||
 | 
						||
// 计算一个用户下的所有网站数量
 | 
						||
message CountAllUserServersRequest {
 | 
						||
	int64 userId = 1; // 用户ID
 | 
						||
	int64 userPlanId = 2; // 用户套餐ID
 | 
						||
}
 | 
						||
 | 
						||
// 查找某个用户下的网站配置
 | 
						||
message ComposeAllUserServersConfigRequest {
 | 
						||
	int64 userId = 1;
 | 
						||
}
 | 
						||
 | 
						||
message ComposeAllUserServersConfigResponse {
 | 
						||
	bytes serversConfigJSON = 1; // [server config1, server config2, ...]
 | 
						||
}
 | 
						||
 | 
						||
// 查找用户网站基本信息
 | 
						||
message FindEnabledUserServerBasicRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindEnabledUserServerBasicResponse {
 | 
						||
	Server server = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 修改用户网站基本信息
 | 
						||
message UpdateEnabledUserServerBasicRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	string name = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 上传HTTP请求待统计数据
 | 
						||
message UploadServerHTTPRequestStatRequest {
 | 
						||
	string month = 1;
 | 
						||
	string day = 2;
 | 
						||
	repeated RegionCity regionCities = 3;
 | 
						||
	repeated RegionProvider regionProviders = 4;
 | 
						||
	repeated System systems = 5;
 | 
						||
	repeated Browser browsers = 6;
 | 
						||
	repeated HTTPFirewallRuleGroup httpFirewallRuleGroups = 7;
 | 
						||
 | 
						||
	message RegionCity {
 | 
						||
		int64 serverId = 1; // 网站ID
 | 
						||
		int64 countRequests = 5;
 | 
						||
		int64 bytes = 6;
 | 
						||
		int64 countAttackRequests = 7;
 | 
						||
		int64 attackBytes = 8;
 | 
						||
		int64 countryId = 9;
 | 
						||
		int64 provinceId = 10;
 | 
						||
		int64 cityId = 11;
 | 
						||
	}
 | 
						||
 | 
						||
	message RegionProvider {
 | 
						||
		int64 serverId = 1; // 网站ID
 | 
						||
		int64 count = 3;
 | 
						||
		int64 providerId = 4;
 | 
						||
	}
 | 
						||
 | 
						||
	message System {
 | 
						||
		int64 serverId = 1; // 网站ID
 | 
						||
		string name = 2;
 | 
						||
		string version = 3;
 | 
						||
		int64 count = 4;
 | 
						||
	}
 | 
						||
 | 
						||
	message Browser {
 | 
						||
		int64 serverId = 1; // 网站ID
 | 
						||
		string name = 2;
 | 
						||
		string version = 3;
 | 
						||
		int64 count = 4;
 | 
						||
	}
 | 
						||
 | 
						||
	message HTTPFirewallRuleGroup {
 | 
						||
		int64 serverId = 1; // 网站ID
 | 
						||
		int64 httpFirewallRuleGroupId = 2;
 | 
						||
		string action = 3;
 | 
						||
		int64 count = 4;
 | 
						||
	}
 | 
						||
}
 | 
						||
 | 
						||
// 检查域名是否在集群中已经存在
 | 
						||
message CheckServerNameDuplicationInNodeClusterRequest {
 | 
						||
	int64 nodeClusterId = 1;
 | 
						||
	repeated string serverNames = 2; // 可以同时检查一批域名
 | 
						||
	int64 excludeServerId = 3; // 要排除的网站ID
 | 
						||
	bool supportWildcard = 4;// 支持泛解析
 | 
						||
}
 | 
						||
 | 
						||
message CheckServerNameDuplicationInNodeClusterResponse {
 | 
						||
	repeated string duplicatedServerNames = 1;
 | 
						||
}
 | 
						||
 | 
						||
 | 
						||
// 检查域名是否在网站中已经绑定
 | 
						||
message CheckServerNameInServerRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	string serverName = 2; // 域名
 | 
						||
}
 | 
						||
 | 
						||
message CheckServerNameInServerResponse {
 | 
						||
	bool exists = 1; // 是否存在
 | 
						||
}
 | 
						||
 | 
						||
// 查找最近访问的网站
 | 
						||
message FindLatestServersRequest {
 | 
						||
	int64 size = 1;
 | 
						||
}
 | 
						||
 | 
						||
message FindLatestServersResponse {
 | 
						||
	repeated Server servers = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 查找某个网站附近的网站
 | 
						||
message FindNearbyServersRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindNearbyServersResponse {
 | 
						||
	string scope = 1; // 范围 cluster|group
 | 
						||
	repeated GroupInfo groups = 2;
 | 
						||
 | 
						||
	message GroupInfo {
 | 
						||
		string name = 1;
 | 
						||
		repeated Server servers = 2;
 | 
						||
	}
 | 
						||
}
 | 
						||
 | 
						||
// 清除缓存
 | 
						||
message PurgeServerCacheRequest {
 | 
						||
	repeated string keys = 2;
 | 
						||
	repeated string prefixes = 3;
 | 
						||
	string description = 4; // 任务描述
 | 
						||
}
 | 
						||
 | 
						||
message PurgeServerCacheResponse {
 | 
						||
	bool isOk = 1;
 | 
						||
	string message = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 查找流量限制
 | 
						||
message FindEnabledServerTrafficLimitRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindEnabledServerTrafficLimitResponse {
 | 
						||
	bytes trafficLimitJSON = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 设置流量限制
 | 
						||
message UpdateServerTrafficLimitRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes trafficLimitJSON = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站套餐
 | 
						||
message UpdateServerUserPlanRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	int64 userPlanId = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 获取网站套餐信息
 | 
						||
message FindServerUserPlanRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindServerUserPlanResponse {
 | 
						||
	UserPlan userPlan = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 获取网站配置
 | 
						||
message ComposeServerConfigRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message ComposeServerConfigResponse {
 | 
						||
	bytes serverConfigJSON = 1;
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站UAM(5秒盾)设置
 | 
						||
message UpdateServerUAMRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	bytes uamJSON = 2;
 | 
						||
}
 | 
						||
 | 
						||
// 查找网站UAM(5秒盾)设置
 | 
						||
message FindEnabledServerUAMRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindEnabledServerUAMResponse {
 | 
						||
	bytes uamJSON = 1; // UAM设置
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站所属用户
 | 
						||
message UpdateServerUserRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	int64 userId = 2; // 用户ID
 | 
						||
}
 | 
						||
 | 
						||
// 修改网站名称
 | 
						||
message UpdateServerNameRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
	string name = 2; // 网站名称
 | 
						||
}
 | 
						||
 | 
						||
// 在网站之间复制配置
 | 
						||
message CopyServerConfigRequest {
 | 
						||
	int64 serverId = 1; // 被复制网站ID
 | 
						||
	string configCode = 2; // 要拷贝的配置代号:stat 统计;charset 字符编码;userAgent UA名单;referers 防盗链;webp WebP配置;accessLog 访问日志;cc CC配置;hostRedirects URL跳转;root ROOT配置;remoteAddr 访客设置;requestLimit 请求限制;compression 内容压缩设置;optimization 页面优化设置;cache 缓存设置;uam 五秒盾设置;websocket Websocket设置;pages 自定义页面设置;auth 访问鉴权;reverseProxy 反向代理设置;waf WAF设置
 | 
						||
	string targetType = 3; // 目标类型:servers, groups, cluster(当前集群下所有网站,只有管理员才有权限)、user(当前用户下所有网站)
 | 
						||
	repeated int64 targetServerIds = 4; // 目标网站ID列表
 | 
						||
	repeated int64 targetServerGroupIds = 5; // 目标网站分组ID列表
 | 
						||
	int64 targetClusterId = 6; // 目标集群ID
 | 
						||
	int64 targetUserId = 7; // 目标用户ID
 | 
						||
 | 
						||
	bool wafCopyRegions = 30; // 可选项,WAF独立配置:是否拷贝区域封禁设置
 | 
						||
}
 | 
						||
 | 
						||
// 获取域名审核时的提示文字
 | 
						||
message FindServerAuditingPromptRequest {
 | 
						||
	int64 serverId = 1; // 网站ID
 | 
						||
}
 | 
						||
 | 
						||
message FindServerAuditingPromptResponse {
 | 
						||
	string promptText = 1; // 提示文字
 | 
						||
} |