Compare commits

..

13 Commits

Author SHA1 Message Date
刘祥超
2177f97bdb WAF记录IP动作中IP名单如果为空时,默认为全局黑名单 2023-10-15 09:34:33 +08:00
刘祥超
5340e5ad52 取消反向代理中默认自动50x尝试 2023-10-15 09:02:48 +08:00
刘祥超
06a3db911c 增加修改消息任务状态API 2023-10-14 18:16:13 +08:00
刘祥超
a7ae7ea2db 优化消息通知相关代码 2023-10-14 17:15:52 +08:00
刘祥超
f949e31c0f 优化消息发送API 2023-10-12 20:11:34 +08:00
刘祥超
d0e1dfe1af 支持批量复制WAF设置 2023-10-09 19:52:44 +08:00
刘祥超
083ccfed7d 申请证书任务列表区分管理员和用户 2023-10-09 16:18:40 +08:00
刘祥超
347bbe1b96 证书列表区分管理员和用户证书 2023-10-09 15:54:11 +08:00
刘祥超
16cf11b366 完善API文档 2023-10-09 08:45:44 +08:00
刘祥超
01e211560d WAF策略中默认不启用SynFlood检测 2023-10-08 16:01:50 +08:00
刘祥超
96ce664202 集群设置中增加“自动调节系统参数”选项 2023-10-08 16:01:21 +08:00
刘祥超
2b8191001b 将全局设置的TCP相关设置移到“集群设置--网站设置”中 2023-09-18 16:55:30 +08:00
刘祥超
6799f3f9ae 将全局的通用设置--域名审核设置移到“集群设置--网站设置”中 2023-09-18 16:09:46 +08:00
48 changed files with 3897 additions and 5053 deletions

View File

@@ -261,6 +261,17 @@
"admin"
],
"isDeprecated": false
},
{
"name": "findACMETaskUser",
"requestMessageName": "FindACMETaskUserRequest",
"responseMessageName": "FindACMETaskUserResponse",
"code": "rpc findACMETaskUser(FindACMETaskUserRequest) returns (FindACMETaskUserResponse);",
"doc": "查找任务所属用户",
"roles": [
"admin"
],
"isDeprecated": false
}
],
"filename": "service_acme_task.proto",
@@ -1002,7 +1013,6 @@
"dns",
"user",
"node",
"monitor",
"admin"
],
"isDeprecated": false
@@ -4358,17 +4368,6 @@
],
"isDeprecated": false
},
{
"name": "updateMessageMedias",
"requestMessageName": "UpdateMessageMediasRequest",
"responseMessageName": "RPCSuccess",
"code": "rpc updateMessageMedias (UpdateMessageMediasRequest) returns (RPCSuccess);",
"doc": "设置所有支持的媒介",
"roles": [
"monitor"
],
"isDeprecated": false
},
{
"name": "sendMediaMessage",
"requestMessageName": "SendMediaMessageRequest",
@@ -4482,6 +4481,17 @@
],
"isDeprecated": false
},
{
"name": "findAllEnabledMessageReceiversWithMessageRecipientId",
"requestMessageName": "FindAllEnabledMessageReceiversWithMessageRecipientIdRequest",
"responseMessageName": "FindAllEnabledMessageReceiversWithMessageRecipientIdResponse",
"code": "rpc findAllEnabledMessageReceiversWithMessageRecipientId (FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) returns (FindAllEnabledMessageReceiversWithMessageRecipientIdResponse);",
"doc": "根据接收人查找关联的接收者",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "deleteMessageReceiver",
"requestMessageName": "DeleteMessageReceiverRequest",
@@ -4657,28 +4667,6 @@
],
"isDeprecated": false
},
{
"name": "findSendingMessageTasks",
"requestMessageName": "FindSendingMessageTasksRequest",
"responseMessageName": "FindSendingMessageTasksResponse",
"code": "rpc findSendingMessageTasks (FindSendingMessageTasksRequest) returns (FindSendingMessageTasksResponse);",
"doc": "查找要发送的消息任务",
"roles": [
"monitor"
],
"isDeprecated": false
},
{
"name": "updateMessageTaskStatus",
"requestMessageName": "UpdateMessageTaskStatusRequest",
"responseMessageName": "RPCSuccess",
"code": "rpc updateMessageTaskStatus (UpdateMessageTaskStatusRequest) returns (RPCSuccess);",
"doc": "修改消息任务状态",
"roles": [
"monitor"
],
"isDeprecated": false
},
{
"name": "deleteMessageTask",
"requestMessageName": "DeleteMessageTaskRequest",
@@ -4722,6 +4710,26 @@
"admin"
],
"isDeprecated": false
},
{
"name": "sendMessageTask",
"requestMessageName": "SendMessageTaskRequest",
"responseMessageName": "SendMessageTaskResponse",
"code": "rpc sendMessageTask(SendMessageTaskRequest) returns (SendMessageTaskResponse);",
"doc": "发送某个消息任务",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "updateMessageTaskStatus",
"requestMessageName": "UpdateMessageTaskStatusRequest",
"responseMessageName": "RPCSuccess",
"code": "rpc updateMessageTaskStatus(UpdateMessageTaskStatusRequest) returns (RPCSuccess);",
"doc": "修改消息任务状态",
"roles": [],
"isDeprecated": false
}
],
"filename": "service_message_task.proto",
@@ -4942,112 +4950,6 @@
"filename": "service_metric_stat.proto",
"doc": "指标统计数据相关服务"
},
{
"name": "MonitorNodeService",
"methods": [
{
"name": "createMonitorNode",
"requestMessageName": "CreateMonitorNodeRequest",
"responseMessageName": "CreateMonitorNodeResponse",
"code": "rpc createMonitorNode (CreateMonitorNodeRequest) returns (CreateMonitorNodeResponse);",
"doc": "创建监控节点",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "updateMonitorNode",
"requestMessageName": "UpdateMonitorNodeRequest",
"responseMessageName": "RPCSuccess",
"code": "rpc updateMonitorNode (UpdateMonitorNodeRequest) returns (RPCSuccess);",
"doc": "修改监控节点",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "deleteMonitorNode",
"requestMessageName": "DeleteMonitorNodeRequest",
"responseMessageName": "RPCSuccess",
"code": "rpc deleteMonitorNode (DeleteMonitorNodeRequest) returns (RPCSuccess);",
"doc": "删除监控节点",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "findAllEnabledMonitorNodes",
"requestMessageName": "FindAllEnabledMonitorNodesRequest",
"responseMessageName": "FindAllEnabledMonitorNodesResponse",
"code": "rpc findAllEnabledMonitorNodes (FindAllEnabledMonitorNodesRequest) returns (FindAllEnabledMonitorNodesResponse);",
"doc": "列出所有可用监控节点",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "countAllEnabledMonitorNodes",
"requestMessageName": "CountAllEnabledMonitorNodesRequest",
"responseMessageName": "RPCCountResponse",
"code": "rpc countAllEnabledMonitorNodes (CountAllEnabledMonitorNodesRequest) returns (RPCCountResponse);",
"doc": "计算监控节点数量",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "listEnabledMonitorNodes",
"requestMessageName": "ListEnabledMonitorNodesRequest",
"responseMessageName": "ListEnabledMonitorNodesResponse",
"code": "rpc listEnabledMonitorNodes (ListEnabledMonitorNodesRequest) returns (ListEnabledMonitorNodesResponse);",
"doc": "列出单页的监控节点",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "findEnabledMonitorNode",
"requestMessageName": "FindEnabledMonitorNodeRequest",
"responseMessageName": "FindEnabledMonitorNodeResponse",
"code": "rpc findEnabledMonitorNode (FindEnabledMonitorNodeRequest) returns (FindEnabledMonitorNodeResponse);",
"doc": "根据ID查找节点",
"roles": [
"admin"
],
"isDeprecated": false
},
{
"name": "findCurrentMonitorNode",
"requestMessageName": "FindCurrentMonitorNodeRequest",
"responseMessageName": "FindCurrentMonitorNodeResponse",
"code": "rpc findCurrentMonitorNode (FindCurrentMonitorNodeRequest) returns (FindCurrentMonitorNodeResponse);",
"doc": "获取当前监控节点信息",
"roles": [
"monitor"
],
"isDeprecated": false
},
{
"name": "updateMonitorNodeStatus",
"requestMessageName": "UpdateMonitorNodeStatusRequest",
"responseMessageName": "RPCSuccess",
"code": "rpc updateMonitorNodeStatus (UpdateMonitorNodeStatusRequest) returns (RPCSuccess);",
"doc": "更新节点状态",
"roles": [
"monitor"
],
"isDeprecated": false
}
],
"filename": "service_monitor_node.proto",
"doc": "监控节点管理服务"
},
{
"name": "NodeService",
"methods": [
@@ -10973,6 +10875,18 @@
"user"
],
"isDeprecated": false
},
{
"name": "findServerAuditingPrompt",
"requestMessageName": "FindServerAuditingPromptRequest",
"responseMessageName": "FindServerAuditingPromptResponse",
"code": "rpc findServerAuditingPrompt(FindServerAuditingPromptRequest) returns (FindServerAuditingPromptResponse);",
"doc": "获取域名审核时的提示文字",
"roles": [
"admin",
"user"
],
"isDeprecated": false
}
],
"filename": "service_server.proto",
@@ -11745,6 +11659,17 @@
"node"
],
"isDeprecated": false
},
{
"name": "findSSLCertUser",
"requestMessageName": "FindSSLCertUserRequest",
"responseMessageName": "FindSSLCertUserResponse",
"code": "rpc findSSLCertUser(FindSSLCertUserRequest) returns (FindSSLCertUserResponse);",
"doc": "查找证书所属用户",
"roles": [
"admin"
],
"isDeprecated": false
}
],
"filename": "service_ssl_cert.proto",
@@ -11803,8 +11728,7 @@
"code": "rpc SysLockerLock (SysLockerLockRequest) returns (SysLockerLockResponse);",
"doc": "获得锁",
"roles": [
"admin",
"monitor"
"admin"
],
"isDeprecated": false
},
@@ -11815,8 +11739,7 @@
"code": "rpc SysLockerUnlock (SysLockerUnlockRequest) returns (RPCSuccess);",
"doc": "释放锁",
"roles": [
"admin",
"monitor"
"admin"
],
"isDeprecated": false
}
@@ -13970,7 +13893,7 @@
},
{
"name": "ComposeAdminDashboardResponse",
"code": "message ComposeAdminDashboardResponse {\n\tint64 countNodeClusters = 1;\n\tint64 countNodes = 2;\n\tint64 countOfflineNodes = 9;\n\tint64 countServers = 3;\n\tint64 countAuditingServers = 13;\n\tint64 countUsers = 4;\n\tint64 countAPINodes = 5;\n\tint64 countOfflineAPINodes = 10;\n\tint64 countDBNodes = 6;\n\tint64 countOfflineDBNodes = 11;\n\tint64 countUserNodes = 7;\n\tint64 countOfflineUserNodes = 12;\n\tint64 defaultNodeClusterId = 8;\n\n\trepeated DailyTrafficStat dailyTrafficStats = 30;\n\trepeated HourlyTrafficStat hourlyTrafficStats = 31;\n\n\tUpgradeInfo nodeUpgradeInfo = 32;\n\tUpgradeInfo apiNodeUpgradeInfo = 33;\n\tUpgradeInfo monitorNodeUpgradeInfo = 34;\n\tUpgradeInfo userNodeUpgradeInfo = 35;\n\tUpgradeInfo authorityNodeUpgradeInfo = 36;\n\tUpgradeInfo nsNodeUpgradeInfo = 37;\n\tUpgradeInfo reportNodeUpgradeInfo = 41;\n\n\trepeated NodeStat topNodeStats = 38;\n\trepeated DomainStat topDomainStats = 39;\n\trepeated CountryStat topCountryStats = 42;\n\n\trepeated MetricDataChart metricDataCharts = 40;\n\n\n\tmessage DailyTrafficStat {\n\t\tstring day = 1;\n\t\tint64 bytes = 2;\n\t\tint64 cachedBytes = 3;\n\t\tint64 countRequests = 4;\n\t\tint64 countCachedRequests = 5;\n\t\tint64 countAttackRequests = 6;\n\t\tint64 attackBytes = 7;\n\t}\n\n\n\tmessage HourlyTrafficStat {\n\t\tstring hour = 1;\n\t\tint64 bytes = 2;\n\t\tint64 cachedBytes = 3;\n\t\tint64 countRequests = 4;\n\t\tint64 countCachedRequests = 5;\n\t\tint64 countAttackRequests = 6;\n\t\tint64 attackBytes = 7;\n\t}\n\n\n\tmessage NodeStat {\n\t\tint64 nodeId = 1;\n\t\tstring nodeName = 2;\n\t\tint64 countRequests = 3;\n\t\tint64 bytes = 4;\n\t}\n\n\n\tmessage DomainStat {\n\t\tint64 serverId = 1;\n\t\tstring domain = 2;\n\t\tint64 countRequests = 3;\n\t\tint64 bytes = 4;\n\t}\n\n\n\tmessage CountryStat {\n\t\tstring countryName = 1;\n\t\tint64 bytes = 2;\n\t\tint64 countRequests = 3;\n\t\tfloat percent = 4; // 流量占比\n\t\tint64 countAttackRequests = 6;\n\t\tint64 attackBytes = 7;\n\t}\n\n\t// 节点升级信息\n\n\tmessage UpgradeInfo {\n\t\tint64 countNodes = 1; // 节点数\n\t\tstring newVersion = 2; // 新版本\n\t}\n}",
"code": "message ComposeAdminDashboardResponse {\n\tint64 countNodeClusters = 1;\n\tint64 countNodes = 2;\n\tint64 countOfflineNodes = 9;\n\tint64 countServers = 3;\n\tint64 countAuditingServers = 13;\n\tint64 countUsers = 4;\n\tint64 countAPINodes = 5;\n\tint64 countOfflineAPINodes = 10;\n\tint64 countDBNodes = 6;\n\tint64 countOfflineDBNodes = 11;\n\tint64 countUserNodes = 7;\n\tint64 countOfflineUserNodes = 12;\n\tint64 defaultNodeClusterId = 8;\n\n\trepeated DailyTrafficStat dailyTrafficStats = 30;\n\trepeated HourlyTrafficStat hourlyTrafficStats = 31;\n\n\tUpgradeInfo nodeUpgradeInfo = 32;\n\tUpgradeInfo apiNodeUpgradeInfo = 33;\n\tUpgradeInfo userNodeUpgradeInfo = 35;\n\tUpgradeInfo authorityNodeUpgradeInfo = 36;\n\tUpgradeInfo nsNodeUpgradeInfo = 37;\n\tUpgradeInfo reportNodeUpgradeInfo = 41;\n\n\trepeated NodeStat topNodeStats = 38;\n\trepeated DomainStat topDomainStats = 39;\n\trepeated CountryStat topCountryStats = 42;\n\n\trepeated MetricDataChart metricDataCharts = 40;\n\n\n\tmessage DailyTrafficStat {\n\t\tstring day = 1;\n\t\tint64 bytes = 2;\n\t\tint64 cachedBytes = 3;\n\t\tint64 countRequests = 4;\n\t\tint64 countCachedRequests = 5;\n\t\tint64 countAttackRequests = 6;\n\t\tint64 attackBytes = 7;\n\t}\n\n\n\tmessage HourlyTrafficStat {\n\t\tstring hour = 1;\n\t\tint64 bytes = 2;\n\t\tint64 cachedBytes = 3;\n\t\tint64 countRequests = 4;\n\t\tint64 countCachedRequests = 5;\n\t\tint64 countAttackRequests = 6;\n\t\tint64 attackBytes = 7;\n\t}\n\n\n\tmessage NodeStat {\n\t\tint64 nodeId = 1;\n\t\tstring nodeName = 2;\n\t\tint64 countRequests = 3;\n\t\tint64 bytes = 4;\n\t}\n\n\n\tmessage DomainStat {\n\t\tint64 serverId = 1;\n\t\tstring domain = 2;\n\t\tint64 countRequests = 3;\n\t\tint64 bytes = 4;\n\t}\n\n\n\tmessage CountryStat {\n\t\tstring countryName = 1;\n\t\tint64 bytes = 2;\n\t\tint64 countRequests = 3;\n\t\tfloat percent = 4; // 流量占比\n\t\tint64 countAttackRequests = 6;\n\t\tint64 attackBytes = 7;\n\t}\n\n\t// 节点升级信息\n\n\tmessage UpgradeInfo {\n\t\tint64 countNodes = 1; // 节点数\n\t\tstring newVersion = 2; // 新版本\n\t}\n}",
"doc": ""
},
{
@@ -14105,7 +14028,7 @@
},
{
"name": "CopyServerConfigRequest",
"code": "message CopyServerConfigRequest {\n\tint64 serverId = 1; // 被复制网站ID\n\tstring 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 反向代理设置\n\tstring targetType = 3; // 目标类型servers, groups, cluster当前集群下所有网站只有管理员才有权限、user当前用户下所有网站\n\trepeated int64 targetServerIds = 4; // 目标网站ID列表\n\trepeated int64 targetServerGroupIds = 5; // 目标网站分组ID列表\n\tint64 targetClusterId = 6; // 目标集群ID\n\tint64 targetUserId = 7; // 目标用户ID\n}",
"code": "message CopyServerConfigRequest {\n\tint64 serverId = 1; // 被复制网站ID\n\tstring 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设置\n\tstring targetType = 3; // 目标类型servers, groups, cluster当前集群下所有网站只有管理员才有权限、user当前用户下所有网站\n\trepeated int64 targetServerIds = 4; // 目标网站ID列表\n\trepeated int64 targetServerGroupIds = 5; // 目标网站分组ID列表\n\tint64 targetClusterId = 6; // 目标集群ID\n\tint64 targetUserId = 7; // 目标用户ID\n\n\tbool wafCopyRegions = 30; // 可选项WAF独立配置是否拷贝区域封禁设置\n}",
"doc": "在网站之间复制配置"
},
{
@@ -14150,7 +14073,7 @@
},
{
"name": "CountAllEnabledACMETasksRequest",
"code": "message CountAllEnabledACMETasksRequest {\n\tint64 adminId = 1;\n\tint64 userId = 2;\n\tbool isAvailable = 3;\n\tbool isExpired = 4;\n\tint32 expiringDays = 5;\n\tstring keyword = 6;\n}",
"code": "message CountAllEnabledACMETasksRequest {\n\tint64 adminId = 1;\n\tint64 userId = 2;\n\tbool isAvailable = 3;\n\tbool isExpired = 4;\n\tint32 expiringDays = 5;\n\tstring keyword = 6;\n\tbool userOnly = 7; // 可选项,是否只列出用户上传的证书\n}",
"doc": "计算所有任务数量"
},
{
@@ -14215,7 +14138,7 @@
},
{
"name": "CountAllEnabledMessageReceiversRequest",
"code": "message CountAllEnabledMessageReceiversRequest {\n\tstring role = 4;\n\tint64 nodeClusterId = 1;\n\tint64 nodeId = 2;\n\tint64 serverId = 3;\n}",
"code": "message CountAllEnabledMessageReceiversRequest {\n\tstring role = 4; // 集群角色node 或 dns\n\tint64 nodeClusterId = 1; // 集群ID\n\tint64 nodeId = 2; // 节点ID\n\tint64 serverId = 3; // 网站ID\n}",
"doc": "计算接收者数量"
},
{
@@ -14228,11 +14151,6 @@
"code": "message CountAllEnabledMetricItemsRequest {\n\tstring category = 1;\n}",
"doc": "计算指标数量"
},
{
"name": "CountAllEnabledMonitorNodesRequest",
"code": "message CountAllEnabledMonitorNodesRequest {\n\n}",
"doc": "计算监控节点数量"
},
{
"name": "CountAllEnabledNodeClusterFirewallActionsRequest",
"code": "message CountAllEnabledNodeClusterFirewallActionsRequest {\n\tint64 nodeClusterId = 1;\n}",
@@ -14580,7 +14498,7 @@
},
{
"name": "CountSSLCertRequest",
"code": "message CountSSLCertRequest {\n\tbool isCA = 1; // 可选项是否为CA证书\n\tbool isAvailable = 2; // 可选项,是否可用(在有效期内)\n\tbool isExpired = 3; // 可选项,是否已过期\n\tint32 expiringDays = 4; // 可选项,离过期日的天数\n\tstring keyword = 5; // 可选项,关键词\n\tint64 userId = 6; // 可选项用户ID不填则表示读取管理员上传的证书\n\trepeated string domains = 7; // 可选项,搜索使用的域名列表\n}",
"code": "message CountSSLCertRequest {\n\tbool isCA = 1; // 可选项是否为CA证书\n\tbool isAvailable = 2; // 可选项,是否可用(在有效期内)\n\tbool isExpired = 3; // 可选项,是否已过期\n\tint32 expiringDays = 4; // 可选项,离过期日的天数\n\tstring keyword = 5; // 可选项,关键词\n\tint64 userId = 6; // 可选项用户ID不填则表示读取管理员上传的证书\n\trepeated string domains = 7; // 可选项,搜索使用的域名列表\n\tbool userOnly = 8; // 可选项,只列出用户上传的证书\n}",
"doc": "计算匹配的证书数量"
},
{
@@ -14985,7 +14903,7 @@
},
{
"name": "CreateIPItemRequest",
"code": "message CreateIPItemRequest {\n\tint64 ipListId = 1; // IP列表ID\n\tstring ipFrom = 2; // 开始IP\n\tstring ipTo = 3; // 结束IP可选\n\tint64 expiredAt = 4; // 过期时间戳(可选)\n\tstring reason = 5; // 加入理由(可选)\n\tstring type = 6; // 类型\n\tstring eventLevel = 7; // 级别\n\n\tint64 nodeId = 8; // 所属节点ID\n\tint64 serverId = 9; // 所属服务ID\n\n\tint64 sourceNodeId = 10;\n\tint64 sourceServerId = 11;\n\tint64 sourceHTTPFirewallPolicyId = 12;\n\tint64 sourceHTTPFirewallRuleGroupId = 13;\n\tint64 sourceHTTPFirewallRuleSetId = 14;\n}",
"code": "message CreateIPItemRequest {\n\tint64 ipListId = 1; // 所属IP列表ID\n\tstring ipFrom = 2; // 开始IP\n\tstring ipTo = 3; // 结束IP可选\n\tint64 expiredAt = 4; // 过期时间戳(可选)\n\tstring reason = 5; // 加入理由(可选)\n\tstring type = 6; // IP类型值为ipv4或ipv6\n\tstring eventLevel = 7; // 级别debug, notice, warning, error, critical, fatal\n\n\tint64 nodeId = 8; // 可选项,所属节点ID\n\tint64 serverId = 9; // 可选项,所属网站ID\n\n\tint64 sourceNodeId = 10; // 可选项,来源节点\n\tint64 sourceServerId = 11; // 可选项来源网站ID\n\tint64 sourceHTTPFirewallPolicyId = 12; // 可选项来源WAF策略ID\n\tint64 sourceHTTPFirewallRuleGroupId = 13; // 可选项来源WAF规则分组ID\n\tint64 sourceHTTPFirewallRuleSetId = 14; // 可选项来源WAF规则集ID\n}",
"doc": "创建IP"
},
{
@@ -15075,7 +14993,7 @@
},
{
"name": "CreateMessageRecipientRequest",
"code": "message CreateMessageRecipientRequest {\n\tint64 adminId = 1;\n\tint64 messageMediaInstanceId = 2;\n\trepeated int64 messageRecipientGroupIds = 3;\n\tstring description = 4;\n\tstring user = 5;\n\tstring timeFrom = 6;\n\tstring timeTo = 7;\n}",
"code": "message CreateMessageRecipientRequest {\n\tint64 adminId = 1; // 关联的管理员ID\n\tint64 messageMediaInstanceId = 2; // 媒介实例ID\n\trepeated int64 messageRecipientGroupIds = 3; // 所属分组ID列表\n\tstring description = 4; // 可选项,备注描述\n\tstring user = 5; // 用户标识\n\tstring timeFrom = 6; // 可选项,接收消息的,开始时间\n\tstring timeTo = 7; // 可选项,接收消息的,结束时间\n\n\trepeated int64 nodeClusterIds = 8; // 关联的CDN边缘节点集群ID列表\n}",
"doc": "创建接收人"
},
{
@@ -15085,12 +15003,12 @@
},
{
"name": "CreateMessageTaskRequest",
"code": "message CreateMessageTaskRequest {\n\tint64 recipientId = 1;\n\tint64 instanceId = 2;\n\tstring user = 3;\n\tstring subject = 4;\n\tstring body = 5;\n\tbool isPrimary = 6;\n}",
"code": "message CreateMessageTaskRequest {\n\tint64 messageRecipientId = 1; // 接收人ID\n\tint64 messageMediaInstanceId = 2; // 媒介实例ID\n\tstring user = 3; // 用户标识\n\tstring subject = 4; // 标题\n\tstring body = 5; // 内容\n\tbool isPrimary = 6; // 是否优先发送\n}",
"doc": "创建消息任务"
},
{
"name": "CreateMessageTaskResponse",
"code": "message CreateMessageTaskResponse {\n\tint64 messageTaskId = 1;\n}",
"code": "message CreateMessageTaskResponse {\n\tint64 messageTaskId = 1; // 消息任务ID\n}",
"doc": ""
},
{
@@ -15113,16 +15031,6 @@
"code": "message CreateMetricItemResponse {\n\tint64 metricItemId = 1;\n}",
"doc": ""
},
{
"name": "CreateMonitorNodeRequest",
"code": "message CreateMonitorNodeRequest {\n\tstring name = 1;\n\tstring description = 2;\n\tbool isOn = 3;\n}",
"doc": "创建监控节点"
},
{
"name": "CreateMonitorNodeResponse",
"code": "message CreateMonitorNodeResponse {\n\tint64 monitorNodeId = 1;\n}",
"doc": ""
},
{
"name": "CreateNSAccessLogsRequest",
"code": "message CreateNSAccessLogsRequest {\n\trepeated NSAccessLog nsAccessLogs = 1;\n}",
@@ -15285,7 +15193,7 @@
},
{
"name": "CreateNodeClusterRequest",
"code": "message CreateNodeClusterRequest {\n\tstring name = 1;\n\tint64 nodeGrantId = 2;\n\tstring installDir = 3;\n\tint64 dnsDomainId = 4;\n\tstring dnsName = 5;\n\tint32 dnsTTL = 9;\n\tint64 httpCachePolicyId = 6;\n\tint64 httpFirewallPolicyId = 7;\n\tbytes systemServicesJSON = 8; // 系统服务设置\n\tbytes globalServerConfigJSON = 10; // 服务全局设置\n\tbool autoInstallNftables = 11; // 自动安装nftables\n}",
"code": "message CreateNodeClusterRequest {\n\tstring name = 1;\n\tint64 nodeGrantId = 2;\n\tstring installDir = 3;\n\tint64 dnsDomainId = 4;\n\tstring dnsName = 5;\n\tint32 dnsTTL = 9;\n\tint64 httpCachePolicyId = 6;\n\tint64 httpFirewallPolicyId = 7;\n\tbytes systemServicesJSON = 8; // 系统服务设置\n\tbytes globalServerConfigJSON = 10; // 服务全局设置\n\tbool autoInstallNftables = 11; // 自动安装nftables\n\tbool autoSystemTuning = 12; // 是否自动调节系统参数\n}",
"doc": "创建集群"
},
{
@@ -15875,7 +15783,7 @@
},
{
"name": "DeleteMessageReceiverRequest",
"code": "message DeleteMessageReceiverRequest {\n\tint64 messageReceiverId = 1;\n}",
"code": "message DeleteMessageReceiverRequest {\n\tint64 messageReceiverId = 1; // 接收者ID\n}",
"doc": "删除接收者"
},
{
@@ -15890,7 +15798,7 @@
},
{
"name": "DeleteMessageTaskRequest",
"code": "message DeleteMessageTaskRequest {\n\tint64 messageTaskId = 1;\n}",
"code": "message DeleteMessageTaskRequest {\n\tint64 messageTaskId = 1; // 消息任务ID\n}",
"doc": "删除消息任务"
},
{
@@ -15903,11 +15811,6 @@
"code": "message DeleteMetricItemRequest {\n\tint64 metricItemId = 1;\n}",
"doc": "删除指标"
},
{
"name": "DeleteMonitorNodeRequest",
"code": "message DeleteMonitorNodeRequest {\n\tint64 monitorNodeId = 1;\n}",
"doc": "删除监控节点"
},
{
"name": "DeleteNSCluster",
"code": "message DeleteNSCluster {\n\tint64 nsClusterId = 1;\n}",
@@ -16338,6 +16241,16 @@
"code": "message FindACMEProviderWithCodeResponse {\n\tACMEProvider acmeProvider = 1;\n}",
"doc": ""
},
{
"name": "FindACMETaskUserRequest",
"code": "message FindACMETaskUserRequest {\n\tint64 acmeTaskId = 1; // 任务ID\n}",
"doc": "查找任务所属用户"
},
{
"name": "FindACMETaskUserResponse",
"code": "message FindACMETaskUserResponse {\n\tUser user = 1; // 用户信息,只包含几个基本的信息\n}",
"doc": ""
},
{
"name": "FindADNetworkRequest",
"code": "message FindADNetworkRequest {\n\tint64 adNetworkId = 1;\n}",
@@ -16795,7 +16708,7 @@
},
{
"name": "FindAllEnabledMessageReceiversRequest",
"code": "message FindAllEnabledMessageReceiversRequest {\n\tstring role = 4;\n\tint64 nodeClusterId = 1;\n\tint64 nodeId = 2;\n\tint64 serverId = 3;\n}",
"code": "message FindAllEnabledMessageReceiversRequest {\n\tstring role = 4; // 集群角色node 或 dns\n\tint64 nodeClusterId = 1; // 集群ID\n\tint64 nodeId = 2; // 节点ID\n\tint64 serverId = 3; // 网站ID\n}",
"doc": "查找接收者"
},
{
@@ -16803,6 +16716,16 @@
"code": "message FindAllEnabledMessageReceiversResponse {\n\trepeated MessageReceiver messageReceivers = 1;\n}",
"doc": ""
},
{
"name": "FindAllEnabledMessageReceiversWithMessageRecipientIdRequest",
"code": "message FindAllEnabledMessageReceiversWithMessageRecipientIdRequest {\n\tint64 messageRecipientId = 1; // 关联的接收人ID\n}",
"doc": "根据接收人查找关联的接收者"
},
{
"name": "FindAllEnabledMessageReceiversWithMessageRecipientIdResponse",
"code": "message FindAllEnabledMessageReceiversWithMessageRecipientIdResponse {\n\trepeated MessageReceiver messageReceivers = 1;\n}",
"doc": ""
},
{
"name": "FindAllEnabledMessageRecipientGroupsRequest",
"code": "message FindAllEnabledMessageRecipientGroupsRequest {\n\n}",
@@ -16813,16 +16736,6 @@
"code": "message FindAllEnabledMessageRecipientGroupsResponse {\n\trepeated MessageRecipientGroup messageRecipientGroups = 1;\n}",
"doc": ""
},
{
"name": "FindAllEnabledMonitorNodesRequest",
"code": "message FindAllEnabledMonitorNodesRequest {\n\n}",
"doc": "列出所有可用监控节点"
},
{
"name": "FindAllEnabledMonitorNodesResponse",
"code": "message FindAllEnabledMonitorNodesResponse {\n\trepeated MonitorNode monitorNodes = 1;\n}",
"doc": ""
},
{
"name": "FindAllEnabledNSPlansRequest",
"code": "message FindAllEnabledNSPlansRequest {\n\n}",
@@ -17588,16 +17501,6 @@
"code": "message FindCurrentAPINodeVersionResponse {\n\tstring version = 1; // 版本号\n\tstring os = 2; // 系统代号比如linux\n\tstring arch = 3; // 架构比如amd64\n\tstring role = 4; // 角色通常为api\n}",
"doc": ""
},
{
"name": "FindCurrentMonitorNodeRequest",
"code": "message FindCurrentMonitorNodeRequest {\n\n}",
"doc": "获取当前监控节点"
},
{
"name": "FindCurrentMonitorNodeResponse",
"code": "message FindCurrentMonitorNodeResponse {\n\tMonitorNode monitorNode = 1;\n}",
"doc": ""
},
{
"name": "FindCurrentNSNodeConfigRequest",
"code": "message FindCurrentNSNodeConfigRequest {\n\n}",
@@ -18040,12 +17943,12 @@
},
{
"name": "FindEnabledMessageTaskRequest",
"code": "message FindEnabledMessageTaskRequest {\n\tint64 messageTaskId = 1;\n}",
"code": "message FindEnabledMessageTaskRequest {\n\tint64 messageTaskId = 1; // 消息任务ID\n}",
"doc": "读取消息任务状态"
},
{
"name": "FindEnabledMessageTaskResponse",
"code": "message FindEnabledMessageTaskResponse {\n\tMessageTask messageTask = 1;\n}",
"code": "message FindEnabledMessageTaskResponse {\n\tMessageTask messageTask = 1; // 消息任务信息\n}",
"doc": ""
},
{
@@ -18068,16 +17971,6 @@
"code": "message FindEnabledMetricItemResponse {\n\tMetricItem metricItem = 1;\n}",
"doc": ""
},
{
"name": "FindEnabledMonitorNodeRequest",
"code": "message FindEnabledMonitorNodeRequest {\n\tint64 monitorNodeId = 1;\n}",
"doc": "根据ID查找节点"
},
{
"name": "FindEnabledMonitorNodeResponse",
"code": "message FindEnabledMonitorNodeResponse {\n\tMonitorNode monitorNode = 1;\n}",
"doc": ""
},
{
"name": "FindEnabledNodeClusterConfigInfoRequest",
"code": "message FindEnabledNodeClusterConfigInfoRequest {\n\tint64 nodeClusterId = 1;\n}",
@@ -18491,11 +18384,11 @@
{
"name": "FindEnabledServerUAMRequest",
"code": "message FindEnabledServerUAMRequest {\n\tint64 serverId = 1; // 网站ID\n}",
"doc": "查找网站UAM设置"
"doc": "查找网站UAM5秒盾设置"
},
{
"name": "FindEnabledServerUAMResponse",
"code": "message FindEnabledServerUAMResponse {\n\tbytes uamJSON = 1;\n}",
"code": "message FindEnabledServerUAMResponse {\n\tbytes uamJSON = 1; // UAM设置\n}",
"doc": ""
},
{
@@ -19489,13 +19382,13 @@
"doc": ""
},
{
"name": "FindSendingMessageTasksRequest",
"code": "message FindSendingMessageTasksRequest {\n\tint64 size = 1;\n}",
"doc": "查找要发送的消息任务"
"name": "FindSSLCertUserRequest",
"code": "message FindSSLCertUserRequest {\n\tint64 sslCertId = 1; // 证书ID\n}",
"doc": "查找证书所属用户"
},
{
"name": "FindSendingMessageTasksResponse",
"code": "message FindSendingMessageTasksResponse {\n\trepeated MessageTask messageTasks = 1;\n}",
"name": "FindSSLCertUserResponse",
"code": "message FindSSLCertUserResponse {\n\tUser user = 1; // 用户信息,只包含几个基本的信息\n}",
"doc": ""
},
{
@@ -19508,6 +19401,16 @@
"code": "message FindServer5MinutelyStatsWithDayResponse {\n\trepeated Stat stats = 1;\n\n\n\tmessage Stat {\n\t\tstring day = 1;\n\t\tstring timeFrom = 2;\n\t\tstring timeTo = 3;\n\t\tint64 bytes = 4;\n\t\tint64 cachedBytes = 5;\n\t\tint64 countRequests = 6;\n\t\tint64 countCachedRequests = 7;\n\t}\n}",
"doc": ""
},
{
"name": "FindServerAuditingPromptRequest",
"code": "message FindServerAuditingPromptRequest {\n\tint64 serverId = 1; // 网站ID\n}",
"doc": "获取域名审核时的提示文字"
},
{
"name": "FindServerAuditingPromptResponse",
"code": "message FindServerAuditingPromptResponse {\n\tstring promptText = 1; // 提示文字\n}",
"doc": ""
},
{
"name": "FindServerBandwidthStatsRequest",
"code": "message FindServerBandwidthStatsRequest {\n\tint64 serverId = 1; // 服务ID\n\tstring month = 2; // YYYYMMmonth和day二选一\n\tstring day = 3; // YYYYMMDD\n\tstring algo = 4; // 带宽算法目前支持secondly和avg\n}",
@@ -20050,7 +19953,7 @@
},
{
"name": "ListEnabledACMETasksRequest",
"code": "message ListEnabledACMETasksRequest {\n\tint64 adminId = 1;\n\tint64 userId = 2;\n\tint64 offset = 3;\n\tint64 size = 4;\n\tbool isAvailable = 5;\n\tbool isExpired = 6;\n\tint32 expiringDays = 7;\n\tstring keyword = 8;\n}",
"code": "message ListEnabledACMETasksRequest {\n\tint64 adminId = 1;\n\tint64 userId = 2;\n\tint64 offset = 3;\n\tint64 size = 4;\n\tbool isAvailable = 5;\n\tbool isExpired = 6;\n\tint32 expiringDays = 7;\n\tstring keyword = 8;\n\tbool userOnly = 9; // 可选项,是否只列出用户上传的证书\n}",
"doc": "列出单页任务"
},
{
@@ -20168,16 +20071,6 @@
"code": "message ListEnabledMetricItemsResponse {\n\trepeated MetricItem metricItems = 1;\n}",
"doc": ""
},
{
"name": "ListEnabledMonitorNodesRequest",
"code": "message ListEnabledMonitorNodesRequest {\n\tint64 offset = 1;\n\tint64 size = 2;\n}",
"doc": "列出单页的监控节点"
},
{
"name": "ListEnabledMonitorNodesResponse",
"code": "message ListEnabledMonitorNodesResponse {\n\trepeated MonitorNode monitorNodes = 1;\n}",
"doc": ""
},
{
"name": "ListEnabledNodeClustersRequest",
"code": "message ListEnabledNodeClustersRequest {\n\tint64 offset = 1;\n\tint64 size = 2;\n\tstring keyword = 3;\n}",
@@ -20575,7 +20468,7 @@
},
{
"name": "ListSSLCertsRequest",
"code": "message ListSSLCertsRequest {\n\tbool isCA = 1; // 可选项是否为CA证书\n\tbool isAvailable = 2; // 可选项,是否可用(在有效期内)\n\tbool isExpired = 3; //可选项, 是否已过期\n\tint32 expiringDays = 4; // 可选项,离过期日的天数\n\tstring keyword = 5; // 可选项,关键词\n\tint64 userId = 8; // 可选项用户ID不填则表示读取管理员上传的证书\n\trepeated string domains = 9; // 可选项,搜索使用的域名列表\n\tint64 offset = 6; // 读取位置\n\tint64 size = 7; // 读取长度不能小于0\n}",
"code": "message ListSSLCertsRequest {\n\tbool isCA = 1; // 可选项是否为CA证书\n\tbool isAvailable = 2; // 可选项,是否可用(在有效期内)\n\tbool isExpired = 3; //可选项, 是否已过期\n\tint32 expiringDays = 4; // 可选项,离过期日的天数\n\tstring keyword = 5; // 可选项,关键词\n\tint64 userId = 8; // 可选项用户ID不填则表示读取管理员上传的证书\n\trepeated string domains = 9; // 可选项,搜索使用的域名列表\n\tint64 offset = 6; // 读取位置\n\tint64 size = 7; // 读取长度不能小于0\n\tbool userOnly = 10; // 可选项,只列出用户上传的证书\n}",
"doc": "列出单页匹配的证书"
},
{
@@ -20795,7 +20688,7 @@
},
{
"name": "MessageReceiver",
"code": "message MessageReceiver {\n\tint64 id = 1;\n\tint64 clusterId = 2;\n\tint64 nodeId = 3;\n\tint64 serverId = 4;\n\tstring type = 5;\n\tbytes paramsJSON = 6;\n\tMessageRecipient messageRecipient = 7;\n\tMessageRecipientGroup messageRecipientGroup = 8;\n}",
"code": "message MessageReceiver {\n\tint64 id = 1;\n\tint64 clusterId = 2;\n\tint64 nodeId = 3;\n\tint64 serverId = 4;\n\tstring type = 5;\n\tbytes paramsJSON = 6;\n\tstring role = 9; // 集群角色node 或 dns\n\n\tMessageRecipient messageRecipient = 7;\n\tMessageRecipientGroup messageRecipientGroup = 8;\n}",
"doc": ""
},
{
@@ -20843,11 +20736,6 @@
"code": "message MetricStat {\n\tint64 id = 1;\n\tstring hash = 2;\n\tint64 serverId = 3;\n\tint64 itemId = 4;\n\trepeated string keys = 5;\n\tfloat value = 6;\n\tstring time = 7;\n\tint32 version = 8;\n\n\tNodeCluster nodeCluster = 30;\n\tNode node = 31;\n\tServer server = 32;\n\n\tint64 sumCount = 40;\n\tfloat sumTotal = 41;\n}",
"doc": "统计数据"
},
{
"name": "MonitorNode",
"code": "message MonitorNode {\n\tint64 id = 1;\n\tbool isOn = 2;\n\tstring uniqueId = 3;\n\tstring secret = 4;\n\tstring name = 5;\n\tstring description = 6;\n\tbytes statusJSON = 7;\n}",
"doc": ""
},
{
"name": "NSAccessLog",
"code": "message NSAccessLog {\n\tint64 nsNodeId = 1;\n\tint64 nsDomainId = 2;\n\tint64 nsRecordId = 3;\n\trepeated int64 nsRouteIds = 4 [deprecated = true];\n\trepeated string nsRouteCodes = 17;\n\trepeated NSRoute nsRoutes = 18; // 仅供查看访问日志时使用\n\tstring remoteAddr = 5;\n\tstring questionName = 6;\n\tstring questionType = 7;\n\tstring recordName = 8;\n\tstring recordType = 9;\n\tstring recordValue = 10;\n\tstring networking = 11;\n\tstring serverAddr = 12;\n\tint64 timestamp = 13;\n\tstring requestId = 14;\n\tstring timeLocal = 15;\n\tstring error = 16;\n\tbool isRecursive = 19;\n}",
@@ -20940,7 +20828,7 @@
},
{
"name": "NodeCluster",
"code": "message NodeCluster {\n\tint64 id = 1;\n\tstring name = 2;\n\tint64 createdAt = 3;\n\tint64 nodeGrantId = 4;\n\tstring installDir = 5;\n\tstring uniqueId = 6;\n\tstring secret = 7;\n\tstring dnsName = 8;\n\tint64 dnsDomainId = 9;\n\tstring dnsDefaultRoute = 22; // DNS默认线路\n\tint64 httpCachePolicyId = 10;\n\tint64 httpFirewallPolicyId = 11;\n\tbool isOn = 12;\n\tstring timeZone = 13;\n\tint32 nodeMaxThreads = 14;\n\tbool autoOpenPorts = 16;\n\tbool isPinned = 17;\n\tbytes clockJSON = 18;\n\tbool autoRemoteStart = 19;\n\tbool autoInstallNftables = 20;\n\tbytes sshParamsJSON = 21;\n}",
"code": "message NodeCluster {\n\tint64 id = 1;\n\tstring name = 2;\n\tint64 createdAt = 3;\n\tint64 nodeGrantId = 4;\n\tstring installDir = 5;\n\tstring uniqueId = 6;\n\tstring secret = 7;\n\tstring dnsName = 8;\n\tint64 dnsDomainId = 9;\n\tstring dnsDefaultRoute = 22; // DNS默认线路\n\tint64 httpCachePolicyId = 10;\n\tint64 httpFirewallPolicyId = 11;\n\tbool isOn = 12;\n\tstring timeZone = 13;\n\tint32 nodeMaxThreads = 14;\n\tbool autoOpenPorts = 16;\n\tbool isPinned = 17;\n\tbytes clockJSON = 18;\n\tbool autoRemoteStart = 19;\n\tbool autoInstallNftables = 20;\n\tbytes sshParamsJSON = 21;\n\tbool autoSystemTuning = 23; // 是否自动调节系统参数\n}",
"doc": ""
},
{
@@ -21288,6 +21176,16 @@
"code": "message SendMediaMessageRequest {\n\tstring mediaType = 1; // 媒介类型\n\tbytes optionsJSON = 2; // 媒介参数\n\tstring user = 3; // 接收用户\n\tstring subject = 4; // 标题\n\tstring body = 5; // 内容\n}",
"doc": "发送媒介信息"
},
{
"name": "SendMessageTaskRequest",
"code": "message SendMessageTaskRequest {\n\tint64 messageMediaInstanceId = 1; // 媒介实例ID\n\tstring user = 2; // 用户标识\n\tstring subject = 3; // 标题\n\tstring body = 4; // 内容\n}",
"doc": "发送某个消息任务\n与创建消息任务放入到后台任务队列不同此API是直接发送"
},
{
"name": "SendMessageTaskResponse",
"code": "message SendMessageTaskResponse {\n\tbool isOk = 1; // 是否成功\n\tstring error = 2; // 失败时的提示信息\n\tstring response = 3; // 发送成功后响应内容\n}",
"doc": ""
},
{
"name": "SendUserEmailVerificationRequest",
"code": "message SendUserEmailVerificationRequest {\n\tstring email = 1; // 待验证邮箱\n}",
@@ -21983,11 +21881,6 @@
"code": "message UpdateMessageMediaInstanceRequest {\n\tint64 messageMediaInstanceId = 1;\n\tstring name = 2;\n\tstring mediaType = 3;\n\tbytes paramsJSON = 4;\n\tstring description = 5;\n\tbytes rateJSON = 7;\n\tint32 hashLife = 8;\n\tbool isOn = 6;\n}",
"doc": "修改接收人"
},
{
"name": "UpdateMessageMediasRequest",
"code": "message UpdateMessageMediasRequest {\n\trepeated MessageMedia messageMedias = 2;\n}",
"doc": "设置所有支持的媒介"
},
{
"name": "UpdateMessageReadRequest",
"code": "message UpdateMessageReadRequest {\n\tint64 messageId = 1;\n\tbool isRead = 2;\n}",
@@ -21995,7 +21888,7 @@
},
{
"name": "UpdateMessageReceiversRequest",
"code": "message UpdateMessageReceiversRequest {\n\tstring role = 7;\n\tint64 nodeClusterId = 1;\n\tint64 nodeId = 2;\n\tint64 serverId = 3;\n\tbytes paramsJSON = 5;\n\tmap\u003cstring, RecipientOptions\u003e recipientOptions = 6; // type =\u003e options\n\n\n\tmessage RecipientOption {\n\t\tint64 messageRecipientId = 1;\n\t\tint64 messageRecipientGroupId = 2;\n\t}\n\n\n\tmessage RecipientOptions {\n\t\trepeated RecipientOption recipientOptions = 1;\n\t}\n}",
"code": "message UpdateMessageReceiversRequest {\n\tstring role = 7;\n\tint64 nodeClusterId = 1;\n\tint64 nodeId = 2;\n\tint64 serverId = 3;\n\tbytes paramsJSON = 5;\n\tmap\u003cstring, RecipientOptions\u003e recipientOptions = 6; // type =\u003e optionstype为recipient或者group\n\n\n\tmessage RecipientOption {\n\t\tint64 messageRecipientId = 1;\n\t\tint64 messageRecipientGroupId = 2;\n\t}\n\n\n\tmessage RecipientOptions {\n\t\trepeated RecipientOption recipientOptions = 1;\n\t}\n}",
"doc": "修改接收者"
},
{
@@ -22005,14 +21898,9 @@
},
{
"name": "UpdateMessageRecipientRequest",
"code": "message UpdateMessageRecipientRequest {\n\tint64 messageRecipientId = 1;\n\tint64 adminId = 2;\n\tint64 messageMediaInstanceId = 3;\n\trepeated int64 messageRecipientGroupIds = 4;\n\tstring description = 5;\n\tbool isOn = 6;\n\tstring user = 7;\n\tstring timeFrom = 8;\n\tstring timeTo = 9;\n}",
"code": "message UpdateMessageRecipientRequest {\n\tint64 messageRecipientId = 1;\n\tint64 adminId = 2;\n\tint64 messageMediaInstanceId = 3;\n\trepeated int64 messageRecipientGroupIds = 4;\n\tstring description = 5;\n\tbool isOn = 6;\n\tstring user = 7;\n\tstring timeFrom = 8;\n\tstring timeTo = 9;\n\n\trepeated int64 nodeClusterIds = 10; // 关联的CDN边缘节点集群ID列表\n}",
"doc": "修改接收人"
},
{
"name": "UpdateMessageTaskStatusRequest",
"code": "message UpdateMessageTaskStatusRequest {\n\tint64 messageTaskId = 1;\n\tint32 status = 2;\n\tMessageTaskResult result = 3;\n}",
"doc": "修改消息任务状态"
},
{
"name": "UpdateMessagesReadRequest",
"code": "message UpdateMessagesReadRequest {\n\trepeated int64 messageIds = 1;\n\tbool isRead = 2;\n}",
@@ -22028,16 +21916,6 @@
"code": "message UpdateMetricItemRequest {\n\tint64 metricItemId = 1;\n\tstring name = 2;\n\trepeated string keys = 3;\n\tint32 period = 4;\n\tstring periodUnit = 5;\n\tint32 expiresPeriod = 9;\n\tstring value = 6;\n\tbool isOn = 7;\n\tbool isPublic = 8;\n}",
"doc": "修改指标"
},
{
"name": "UpdateMonitorNodeRequest",
"code": "message UpdateMonitorNodeRequest {\n\tint64 monitorNodeId = 1;\n\tstring name = 2;\n\tstring description = 3;\n\tbool isOn = 4;\n}",
"doc": "修改监控节点"
},
{
"name": "UpdateMonitorNodeStatusRequest",
"code": "message UpdateMonitorNodeStatusRequest {\n\tint64 monitorNodeId = 1;\n\tbytes statusJSON = 2;\n}",
"doc": "更新监控状态"
},
{
"name": "UpdateNSClusterAccessLogRequest",
"code": "message UpdateNSClusterAccessLogRequest {\n\tint64 nsClusterId = 1;\n\tbytes accessLogJSON = 2;\n}",
@@ -22285,7 +22163,7 @@
},
{
"name": "UpdateNodeClusterRequest",
"code": "message UpdateNodeClusterRequest {\n\tint64 nodeClusterId = 1;\n\tstring name = 2;\n\tint64 nodeGrantId = 3;\n\tstring installDir = 4;\n\tstring timeZone = 5;\n\tint32 nodeMaxThreads = 6;\n\tbool autoOpenPorts = 8;\n\tbytes clockJSON = 9;\n\tbool autoRemoteStart = 10;\n\tbool autoInstallNftables = 11;\n\tbytes sshParamsJSON = 12;\n}",
"code": "message UpdateNodeClusterRequest {\n\tint64 nodeClusterId = 1;\n\tstring name = 2;\n\tint64 nodeGrantId = 3;\n\tstring installDir = 4;\n\tstring timeZone = 5;\n\tint32 nodeMaxThreads = 6;\n\tbool autoOpenPorts = 8;\n\tbytes clockJSON = 9;\n\tbool autoRemoteStart = 10;\n\tbool autoInstallNftables = 11;\n\tbytes sshParamsJSON = 12;\n\tbool autoSystemTuning = 13; // 是否自动调节系统参数\n}",
"doc": "修改集群"
},
{
@@ -22636,7 +22514,7 @@
{
"name": "UpdateServerUAMRequest",
"code": "message UpdateServerUAMRequest {\n\tint64 serverId = 1; // 网站ID\n\tbytes uamJSON = 2;\n}",
"doc": "修改网站UAM设置"
"doc": "修改网站UAM5秒盾设置"
},
{
"name": "UpdateServerUDPRequest",
@@ -22655,7 +22533,7 @@
},
{
"name": "UpdateServerUserRequest",
"code": "message UpdateServerUserRequest {\n\tint64 serverId = 1; // 网站ID\n\tint64 userId = 2;\n}",
"code": "message UpdateServerUserRequest {\n\tint64 serverId = 1; // 网站ID\n\tint64 userId = 2; // 用户ID\n}",
"doc": "修改网站所属用户"
},
{

View File

@@ -234,12 +234,14 @@ const (
MessageMediaInstance_LogCreateMessageMediaInstance langs.MessageCode = "message_media_instance@log_create_message_media_instance" // 创建消息媒介 %d
MessageMediaInstance_LogDeleteMessageMediaInstance langs.MessageCode = "message_media_instance@log_delete_message_media_instance" // 删除消息媒介 %d
MessageMediaInstance_LogUpdateMessageMediaInstance langs.MessageCode = "message_media_instance@log_update_message_media_instance" // 修改消息媒介 %d
MessageReceiver_LogDeleteReceiver langs.MessageCode = "message_receiver@log_delete_receiver" // 删除接收人关联关系 %d
MessageReceiver_LogUpdateClusterMessageReceivers langs.MessageCode = "message_receiver@log_update_cluster_message_receivers" // 修改集群 %d 消息接收人
MessageRecipient_LogCreateMessageRecipient langs.MessageCode = "message_recipient@log_create_message_recipient" // 创建媒介接收人 %d
MessageRecipient_LogDeleteMessageRecipient langs.MessageCode = "message_recipient@log_delete_message_recipient" // 删除媒介接收人 %d
MessageRecipient_LogUpdateMessageRecipient langs.MessageCode = "message_recipient@log_update_message_recipient" // 修改媒介接收人 %d
MessageTask_LogCreateTestingMessageTask langs.MessageCode = "message_task@log_create_testing_message_task" // 创建媒介测试任务 %d
MessageTask_LogDeleteMessageTask langs.MessageCode = "message_task@log_delete_message_task" // 删除消息发送任务 %d
MessageTask_LogUpdateMessageTaskStatus langs.MessageCode = "message_task@log_update_message_task_status" // 修改消息任务 %d 状态为 %d
MetricChart_LogCreateMetricChart langs.MessageCode = "metric_chart@log_create_metric_chart" // 创建指标图表 %d
MetricChart_LogDeleteMetricChart langs.MessageCode = "metric_chart@log_delete_metric_chart" // 删除指标图表 %d
MetricChart_LogUpdateMetricChart langs.MessageCode = "metric_chart@log_update_metric_chart" // 修改指标图表 %d

View File

@@ -235,12 +235,14 @@ func init() {
"message_media_instance@log_create_message_media_instance": "创建消息媒介 %d",
"message_media_instance@log_delete_message_media_instance": "删除消息媒介 %d",
"message_media_instance@log_update_message_media_instance": "修改消息媒介 %d",
"message_receiver@log_delete_receiver": "删除接收人关联关系 %d",
"message_receiver@log_update_cluster_message_receivers": "修改集群 %d 消息接收人",
"message_recipient@log_create_message_recipient": "创建媒介接收人 %d",
"message_recipient@log_delete_message_recipient": "删除媒介接收人 %d",
"message_recipient@log_update_message_recipient": "修改媒介接收人 %d",
"message_task@log_create_testing_message_task": "创建媒介测试任务 %d",
"message_task@log_delete_message_task": "删除消息发送任务 %d",
"message_task@log_update_message_task_status": "修改消息任务 %d 状态为 %d",
"metric_chart@log_create_metric_chart": "创建指标图表 %d",
"metric_chart@log_delete_metric_chart": "删除指标图表 %d",
"metric_chart@log_update_metric_chart": "修改指标图表 %d",

View File

@@ -1,3 +1,4 @@
{
"log_update_cluster_message_receivers": "修改集群 %d 消息接收人"
"log_update_cluster_message_receivers": "修改集群 %d 消息接收人",
"log_delete_receiver": "删除接收人关联关系 %d"
}

View File

@@ -1,4 +1,5 @@
{
"log_delete_message_task": "删除消息发送任务 %d",
"log_create_testing_message_task": "创建媒介测试任务 %d"
"log_create_testing_message_task": "创建媒介测试任务 %d",
"log_update_message_task_status": "修改消息任务 %d 状态为 %d"
}

View File

@@ -74,7 +74,6 @@ type NodeConfig struct {
ParentNodes map[int64][]*ParentNodeConfig `yaml:"parentNodes" json:"parentNodes"` // clusterId => []*ParentNodeConfig
// 全局配置
GlobalConfig *serverconfigs.GlobalConfig `yaml:"globalConfig" json:"globalConfig"` // 全局配置
GlobalServerConfig *serverconfigs.GlobalServerConfig `yaml:"globalServerConfig" json:"globalServerConfig"` // 服务全局配置,用来替代 GlobalConfig
ProductConfig *ProductConfig `yaml:"productConfig" json:"productConfig"`
@@ -88,6 +87,7 @@ type NodeConfig struct {
AutoOpenPorts bool `yaml:"autoOpenPorts" json:"autoOpenPorts"` // 自动开放所需端口
Clock *ClockConfig `yaml:"clock" json:"clock"` // 时钟配置
AutoInstallNftables bool `yaml:"autoInstallNftables" json:"autoInstallNftables"` // 自动安装nftables
AutoSystemTuning bool `yaml:"autoSystemTuning" json:"autoSystemTuning"` // 自动调整系统参数
// 指标
MetricItems []*serverconfigs.MetricItemConfig `yaml:"metricItems" json:"metricItems"`
@@ -263,14 +263,6 @@ func (this *NodeConfig) Init(ctx context.Context) (err error, serverErrors []*Se
}
}
// global config
if this.GlobalConfig != nil {
err = this.GlobalConfig.Init()
if err != nil {
return
}
}
// cache policy
if len(this.HTTPCachePolicies) > 0 {
for _, policy := range this.HTTPCachePolicies {
@@ -774,4 +766,4 @@ func (this *NodeConfig) SecretHash() string {
// HasConnTimeoutSettings 检查是否有连接超时设置
func (this *NodeConfig) HasConnTimeoutSettings() bool {
return this.GlobalServerConfig != nil && (this.GlobalServerConfig.Performance.AutoReadTimeout || this.GlobalServerConfig.Performance.AutoWriteTimeout)
}
}

View File

@@ -196,12 +196,14 @@ func (this *HTTPFirewallPolicyDAO) FindHTTPFirewallActionConfigs(ctx context.Con
switch action.Code {
case firewallconfigs.HTTPFirewallActionRecordIP:
listId := action.Options.GetInt64("ipListId")
var listId = action.Options.GetInt64("ipListId")
listResp, err := this.RPC().IPListRPC().FindEnabledIPList(ctx, &pb.FindEnabledIPListRequest{IpListId: listId})
if err != nil {
return nil, err
}
if listResp.IpList != nil {
if listId == 0 {
action.Options["ipListName"] = "全局黑名单"
} else if listResp.IpList != nil {
action.Options["ipListName"] = listResp.IpList.Name
} else {
action.Options["ipListName"] = action.Options.GetString("ipListName") + "(已删除)"

View File

@@ -1,41 +0,0 @@
package dao
import (
"context"
"encoding/json"
"github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs"
)
type SettingCode = string
const (
SettingCodeServerGlobalConfig SettingCode = "serverGlobalConfig" // 服务相关全局设置
SettingCodeNodeMonitor SettingCode = "nodeMonitor" // 监控节点状态
SettingCodeClusterHealthCheck SettingCode = "clusterHealthCheck" // 集群健康检查
SettingCodeIPListVersion SettingCode = "ipListVersion" // IP名单的版本号
SettingCodeAdminSecurityConfig SettingCode = "adminSecurityConfig" // 管理员安全设置
)
var SharedSysSettingDAO = new(SysSettingDAO)
type SysSettingDAO struct {
BaseDAO
}
// 读取服务全局配置
func (this *SysSettingDAO) ReadGlobalConfig(ctx context.Context) (*serverconfigs.GlobalConfig, error) {
globalConfigResp, err := this.RPC().SysSettingRPC().ReadSysSetting(ctx, &pb.ReadSysSettingRequest{Code: SettingCodeServerGlobalConfig})
if err != nil {
return nil, err
}
if len(globalConfigResp.ValueJSON) == 0 {
return nil, nil
}
globalConfig := &serverconfigs.GlobalConfig{}
err = json.Unmarshal(globalConfigResp.ValueJSON, globalConfig)
if err != nil {
return nil, err
}
return globalConfig, nil
}

View File

@@ -31,6 +31,7 @@ type MessageReceiver struct {
ServerId int64 `protobuf:"varint,4,opt,name=serverId,proto3" json:"serverId,omitempty"`
Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type,omitempty"`
ParamsJSON []byte `protobuf:"bytes,6,opt,name=paramsJSON,proto3" json:"paramsJSON,omitempty"`
Role string `protobuf:"bytes,9,opt,name=role,proto3" json:"role,omitempty"` // 集群角色node 或 dns
MessageRecipient *MessageRecipient `protobuf:"bytes,7,opt,name=messageRecipient,proto3" json:"messageRecipient,omitempty"`
MessageRecipientGroup *MessageRecipientGroup `protobuf:"bytes,8,opt,name=messageRecipientGroup,proto3" json:"messageRecipientGroup,omitempty"`
}
@@ -109,6 +110,13 @@ func (x *MessageReceiver) GetParamsJSON() []byte {
return nil
}
func (x *MessageReceiver) GetRole() string {
if x != nil {
return x.Role
}
return ""
}
func (x *MessageReceiver) GetMessageRecipient() *MessageRecipient {
if x != nil {
return x.MessageRecipient
@@ -133,7 +141,7 @@ var file_models_model_message_receiver_proto_rawDesc = []byte{
0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
0x2a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f,
0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xba, 0x02, 0x0a, 0x0f,
0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xce, 0x02, 0x0a, 0x0f,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12,
0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12,
0x1c, 0x0a, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01,
@@ -144,17 +152,18 @@ var file_models_model_message_receiver_proto_rawDesc = []byte{
0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x4a,
0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d,
0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x40, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x14, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69,
0x70, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x4f, 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70,
0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75,
0x70, 0x52, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69,
0x65, 0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x09, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x40, 0x0a, 0x10, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x4f, 0x0a, 0x15, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x47,
0x72, 0x6f, 0x75, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x62, 0x2e,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74,
0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x06, 0x5a, 0x04,
0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

View File

@@ -1,200 +0,0 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.31.0
// protoc v3.19.4
// source: models/model_monitor_node.proto
package pb
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type MonitorNode struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
IsOn bool `protobuf:"varint,2,opt,name=isOn,proto3" json:"isOn,omitempty"`
UniqueId string `protobuf:"bytes,3,opt,name=uniqueId,proto3" json:"uniqueId,omitempty"`
Secret string `protobuf:"bytes,4,opt,name=secret,proto3" json:"secret,omitempty"`
Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
StatusJSON []byte `protobuf:"bytes,7,opt,name=statusJSON,proto3" json:"statusJSON,omitempty"`
}
func (x *MonitorNode) Reset() {
*x = MonitorNode{}
if protoimpl.UnsafeEnabled {
mi := &file_models_model_monitor_node_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MonitorNode) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MonitorNode) ProtoMessage() {}
func (x *MonitorNode) ProtoReflect() protoreflect.Message {
mi := &file_models_model_monitor_node_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MonitorNode.ProtoReflect.Descriptor instead.
func (*MonitorNode) Descriptor() ([]byte, []int) {
return file_models_model_monitor_node_proto_rawDescGZIP(), []int{0}
}
func (x *MonitorNode) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *MonitorNode) GetIsOn() bool {
if x != nil {
return x.IsOn
}
return false
}
func (x *MonitorNode) GetUniqueId() string {
if x != nil {
return x.UniqueId
}
return ""
}
func (x *MonitorNode) GetSecret() string {
if x != nil {
return x.Secret
}
return ""
}
func (x *MonitorNode) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *MonitorNode) GetDescription() string {
if x != nil {
return x.Description
}
return ""
}
func (x *MonitorNode) GetStatusJSON() []byte {
if x != nil {
return x.StatusJSON
}
return nil
}
var File_models_model_monitor_node_proto protoreflect.FileDescriptor
var file_models_model_monitor_node_proto_rawDesc = []byte{
0x0a, 0x1f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6d,
0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0xbb, 0x01, 0x0a, 0x0b, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
0x72, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x02, 0x20,
0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x6e, 0x69,
0x71, 0x75, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69,
0x71, 0x75, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18,
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4a, 0x53, 0x4f,
0x4e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4a,
0x53, 0x4f, 0x4e, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
}
var (
file_models_model_monitor_node_proto_rawDescOnce sync.Once
file_models_model_monitor_node_proto_rawDescData = file_models_model_monitor_node_proto_rawDesc
)
func file_models_model_monitor_node_proto_rawDescGZIP() []byte {
file_models_model_monitor_node_proto_rawDescOnce.Do(func() {
file_models_model_monitor_node_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_monitor_node_proto_rawDescData)
})
return file_models_model_monitor_node_proto_rawDescData
}
var file_models_model_monitor_node_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_models_model_monitor_node_proto_goTypes = []interface{}{
(*MonitorNode)(nil), // 0: pb.MonitorNode
}
var file_models_model_monitor_node_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_models_model_monitor_node_proto_init() }
func file_models_model_monitor_node_proto_init() {
if File_models_model_monitor_node_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_models_model_monitor_node_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MonitorNode); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_models_model_monitor_node_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_models_model_monitor_node_proto_goTypes,
DependencyIndexes: file_models_model_monitor_node_proto_depIdxs,
MessageInfos: file_models_model_monitor_node_proto_msgTypes,
}.Build()
File_models_model_monitor_node_proto = out.File
file_models_model_monitor_node_proto_rawDesc = nil
file_models_model_monitor_node_proto_goTypes = nil
file_models_model_monitor_node_proto_depIdxs = nil
}

View File

@@ -46,6 +46,7 @@ type NodeCluster struct {
AutoRemoteStart bool `protobuf:"varint,19,opt,name=autoRemoteStart,proto3" json:"autoRemoteStart,omitempty"`
AutoInstallNftables bool `protobuf:"varint,20,opt,name=autoInstallNftables,proto3" json:"autoInstallNftables,omitempty"`
SshParamsJSON []byte `protobuf:"bytes,21,opt,name=sshParamsJSON,proto3" json:"sshParamsJSON,omitempty"`
AutoSystemTuning bool `protobuf:"varint,23,opt,name=autoSystemTuning,proto3" json:"autoSystemTuning,omitempty"` // 是否自动调节系统参数
}
func (x *NodeCluster) Reset() {
@@ -227,12 +228,19 @@ func (x *NodeCluster) GetSshParamsJSON() []byte {
return nil
}
func (x *NodeCluster) GetAutoSystemTuning() bool {
if x != nil {
return x.AutoSystemTuning
}
return false
}
var File_models_model_node_cluster_proto protoreflect.FileDescriptor
var file_models_model_node_cluster_proto_rawDesc = []byte{
0x0a, 0x1f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e,
0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0xc7, 0x05, 0x0a, 0x0b, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c,
0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0xf3, 0x05, 0x0a, 0x0b, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c,
0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65,
@@ -276,8 +284,11 @@ var file_models_model_node_cluster_proto_rawDesc = []byte{
0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x61, 0x75, 0x74, 0x6f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c,
0x6c, 0x4e, 0x66, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x73, 0x68,
0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0c,
0x52, 0x0d, 0x73, 0x73, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x42,
0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x52, 0x0d, 0x73, 0x73, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12,
0x2a, 0x0a, 0x10, 0x61, 0x75, 0x74, 0x6f, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x54, 0x75, 0x6e,
0x69, 0x6e, 0x67, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x75, 0x74, 0x6f, 0x53,
0x79, 0x73, 0x74, 0x65, 0x6d, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x42, 0x06, 0x5a, 0x04, 0x2e,
0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

View File

@@ -128,6 +128,7 @@ type CountAllEnabledACMETasksRequest struct {
IsExpired bool `protobuf:"varint,4,opt,name=isExpired,proto3" json:"isExpired,omitempty"`
ExpiringDays int32 `protobuf:"varint,5,opt,name=expiringDays,proto3" json:"expiringDays,omitempty"`
Keyword string `protobuf:"bytes,6,opt,name=keyword,proto3" json:"keyword,omitempty"`
UserOnly bool `protobuf:"varint,7,opt,name=userOnly,proto3" json:"userOnly,omitempty"` // 可选项,是否只列出用户上传的证书
}
func (x *CountAllEnabledACMETasksRequest) Reset() {
@@ -204,6 +205,13 @@ func (x *CountAllEnabledACMETasksRequest) GetKeyword() string {
return ""
}
func (x *CountAllEnabledACMETasksRequest) GetUserOnly() bool {
if x != nil {
return x.UserOnly
}
return false
}
// 列出单页任务
type ListEnabledACMETasksRequest struct {
state protoimpl.MessageState
@@ -218,6 +226,7 @@ type ListEnabledACMETasksRequest struct {
IsExpired bool `protobuf:"varint,6,opt,name=isExpired,proto3" json:"isExpired,omitempty"`
ExpiringDays int32 `protobuf:"varint,7,opt,name=expiringDays,proto3" json:"expiringDays,omitempty"`
Keyword string `protobuf:"bytes,8,opt,name=keyword,proto3" json:"keyword,omitempty"`
UserOnly bool `protobuf:"varint,9,opt,name=userOnly,proto3" json:"userOnly,omitempty"` // 可选项,是否只列出用户上传的证书
}
func (x *ListEnabledACMETasksRequest) Reset() {
@@ -308,6 +317,13 @@ func (x *ListEnabledACMETasksRequest) GetKeyword() string {
return ""
}
func (x *ListEnabledACMETasksRequest) GetUserOnly() bool {
if x != nil {
return x.UserOnly
}
return false
}
type ListEnabledACMETasksResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -856,6 +872,101 @@ func (x *FindEnabledACMETaskResponse) GetAcmeTask() *ACMETask {
return nil
}
// 查找任务所属用户
type FindACMETaskUserRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AcmeTaskId int64 `protobuf:"varint,1,opt,name=acmeTaskId,proto3" json:"acmeTaskId,omitempty"` // 任务ID
}
func (x *FindACMETaskUserRequest) Reset() {
*x = FindACMETaskUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_acme_task_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindACMETaskUserRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindACMETaskUserRequest) ProtoMessage() {}
func (x *FindACMETaskUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_acme_task_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindACMETaskUserRequest.ProtoReflect.Descriptor instead.
func (*FindACMETaskUserRequest) Descriptor() ([]byte, []int) {
return file_service_acme_task_proto_rawDescGZIP(), []int{13}
}
func (x *FindACMETaskUserRequest) GetAcmeTaskId() int64 {
if x != nil {
return x.AcmeTaskId
}
return 0
}
type FindACMETaskUserResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
User *User `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` // 用户信息,只包含几个基本的信息
}
func (x *FindACMETaskUserResponse) Reset() {
*x = FindACMETaskUserResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_acme_task_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindACMETaskUserResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindACMETaskUserResponse) ProtoMessage() {}
func (x *FindACMETaskUserResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_acme_task_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindACMETaskUserResponse.ProtoReflect.Descriptor instead.
func (*FindACMETaskUserResponse) Descriptor() ([]byte, []int) {
return file_service_acme_task_proto_rawDescGZIP(), []int{14}
}
func (x *FindACMETaskUserResponse) GetUser() *User {
if x != nil {
return x.User
}
return nil
}
var File_service_acme_task_proto protoreflect.FileDescriptor
var file_service_acme_task_proto_rawDesc = []byte{
@@ -864,157 +975,174 @@ var file_service_acme_task_proto_rawDesc = []byte{
0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73,
0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x61, 0x63, 0x6d, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x4f, 0x0a, 0x2d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41,
0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73,
0x6b, 0x73, 0x57, 0x69, 0x74, 0x68, 0x41, 0x43, 0x4d, 0x45, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55,
0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d,
0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x2d, 0x43, 0x6f, 0x75, 0x6e, 0x74,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73,
0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49,
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x6e, 0x73, 0x50,
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x22, 0xd1,
0x01, 0x0a, 0x1f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c,
0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06,
0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73,
0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61,
0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69,
0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70,
0x69, 0x72, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67,
0x44, 0x61, 0x79, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69,
0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77,
0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f,
0x72, 0x64, 0x22, 0xf9, 0x01, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c,
0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06,
0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73,
0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03,
0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04,
0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65,
0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18,
0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x18,
0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64,
0x12, 0x22, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73,
0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67,
0x44, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18,
0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x4a,
0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d,
0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a,
0x0a, 0x09, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52,
0x09, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x22, 0x81, 0x02, 0x0a, 0x15, 0x43,
0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x08,
0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a,
0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d,
0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20,
0x01, 0x28, 0x03, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75,
0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x61,
0x75, 0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x74, 0x68,
0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68,
0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x52, 0x4c, 0x18,
0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x52, 0x4c, 0x22, 0x38,
0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63,
0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0xed, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b,
0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64,
0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72,
0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72,
0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6e, 0x73, 0x44,
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73,
0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73,
0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x18, 0x06, 0x20,
0x01, 0x28, 0x08, 0x52, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x12, 0x18,
0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x52, 0x4c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x52, 0x4c, 0x22, 0x37, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65,
0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49,
0x64, 0x22, 0x34, 0x0a, 0x12, 0x52, 0x75, 0x6e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54,
0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x5d, 0x0a, 0x13, 0x52, 0x75, 0x6e, 0x41, 0x43,
0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12,
0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73,
0x4f, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43,
0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c,
0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x1a, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61,
0x73, 0x6b, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x1b, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x08, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x43, 0x4d, 0x45, 0x54,
0x61, 0x73, 0x6b, 0x52, 0x08, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x32, 0x84, 0x06,
0x0a, 0x0f, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
0x65, 0x12, 0x71, 0x0a, 0x26, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x57, 0x69, 0x74,
0x68, 0x41, 0x43, 0x4d, 0x45, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x31, 0x2e, 0x70, 0x62,
0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x57, 0x69, 0x74, 0x68, 0x41, 0x43, 0x4d,
0x45, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x26, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x57, 0x69, 0x74,
0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x31,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d,
0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0x4f, 0x0a, 0x2d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c,
0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x57, 0x69, 0x74, 0x68, 0x41,
0x43, 0x4d, 0x45, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64,
0x22, 0x55, 0x0a, 0x2d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53,
0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x18, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61,
0x73, 0x6b, 0x73, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c,
0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59,
0x0a, 0x14, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d,
0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74,
0x74, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f,
0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x22, 0xed, 0x01, 0x0a, 0x1f, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54,
0x61, 0x73, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64,
0x6d, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a,
0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01,
0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12,
0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01,
0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x12, 0x22, 0x0a,
0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73, 0x18, 0x05, 0x20,
0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79,
0x73, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01,
0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75,
0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x75,
0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x95, 0x02, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73,
0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x63, 0x72, 0x65,
0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x19, 0x2e, 0x70, 0x62,
0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45,
0x54, 0x61, 0x73, 0x6b, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12,
0x3b, 0x0a, 0x0e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73,
0x6b, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x43, 0x4d,
0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70,
0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3e, 0x0a, 0x0b,
0x72, 0x75, 0x6e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x16, 0x2e, 0x70, 0x62,
0x2e, 0x52, 0x75, 0x6e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x75, 0x6e, 0x41, 0x43, 0x4d, 0x45,
0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x13,
0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54,
0x61, 0x73, 0x6b, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49,
0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66,
0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65,
0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c,
0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76,
0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70,
0x69, 0x72, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x78,
0x70, 0x69, 0x72, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e,
0x67, 0x44, 0x61, 0x79, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70,
0x69, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79,
0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77,
0x6f, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x18,
0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x22,
0x4a, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43,
0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x2a, 0x0a, 0x09, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b,
0x52, 0x09, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x22, 0x81, 0x02, 0x0a, 0x15,
0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18,
0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a,
0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x24, 0x0a,
0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69,
0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03,
0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61,
0x75, 0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x74,
0x68, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x75, 0x74,
0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x52, 0x4c,
0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x52, 0x4c, 0x22,
0x38, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73,
0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61,
0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0xed, 0x01, 0x0a, 0x15, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73,
0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x55, 0x73, 0x65,
0x72, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64,
0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x50,
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6e, 0x73,
0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e,
0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69,
0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x18, 0x06,
0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x12,
0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x52, 0x4c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x52, 0x4c, 0x22, 0x37, 0x0a, 0x15, 0x44, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b,
0x49, 0x64, 0x22, 0x34, 0x0a, 0x12, 0x52, 0x75, 0x6e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73,
0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63,
0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x5d, 0x0a, 0x13, 0x52, 0x75, 0x6e, 0x41,
0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69,
0x73, 0x4f, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c,
0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73,
0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x1a, 0x46, 0x69, 0x6e, 0x64, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73,
0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x6d, 0x65, 0x54,
0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x1b, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x08, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x43, 0x4d, 0x45,
0x54, 0x61, 0x73, 0x6b, 0x52, 0x08, 0x61, 0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x22, 0x39,
0x0a, 0x17, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x55, 0x73,
0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x6d,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61,
0x63, 0x6d, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x38, 0x0a, 0x18, 0x46, 0x69, 0x6e,
0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75,
0x73, 0x65, 0x72, 0x32, 0xd3, 0x06, 0x0a, 0x0f, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b,
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x71, 0x0a, 0x26, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61,
0x73, 0x6b, 0x73, 0x57, 0x69, 0x74, 0x68, 0x41, 0x43, 0x4d, 0x45, 0x55, 0x73, 0x65, 0x72, 0x49,
0x64, 0x12, 0x31, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x57,
0x69, 0x74, 0x68, 0x41, 0x43, 0x4d, 0x45, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75,
0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x26, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61,
0x73, 0x6b, 0x73, 0x57, 0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64,
0x65, 0x72, 0x49, 0x64, 0x12, 0x31, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x57,
0x69, 0x74, 0x68, 0x44, 0x4e, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a,
0x18, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x43,
0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43,
0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x14, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x1f, 0x2e, 0x70,
0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d,
0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e,
0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43,
0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x47, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73,
0x6b, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d,
0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70,
0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0e, 0x75, 0x70, 0x64, 0x61,
0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41,
0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65,
0x73, 0x73, 0x12, 0x3e, 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73,
0x6b, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x75, 0x6e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61,
0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x52,
0x75, 0x6e, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x56, 0x0a, 0x13, 0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x46,
0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61,
0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46,
0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61,
0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x10, 0x66, 0x69,
0x6e, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1b,
0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b,
0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62,
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x43, 0x4d, 0x45, 0x54, 0x61, 0x73, 0x6b, 0x55, 0x73, 0x65,
0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70,
0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -1029,7 +1157,7 @@ func file_service_acme_task_proto_rawDescGZIP() []byte {
return file_service_acme_task_proto_rawDescData
}
var file_service_acme_task_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
var file_service_acme_task_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
var file_service_acme_task_proto_goTypes = []interface{}{
(*CountAllEnabledACMETasksWithACMEUserIdRequest)(nil), // 0: pb.CountAllEnabledACMETasksWithACMEUserIdRequest
(*CountEnabledACMETasksWithDNSProviderIdRequest)(nil), // 1: pb.CountEnabledACMETasksWithDNSProviderIdRequest
@@ -1044,36 +1172,42 @@ var file_service_acme_task_proto_goTypes = []interface{}{
(*RunACMETaskResponse)(nil), // 10: pb.RunACMETaskResponse
(*FindEnabledACMETaskRequest)(nil), // 11: pb.FindEnabledACMETaskRequest
(*FindEnabledACMETaskResponse)(nil), // 12: pb.FindEnabledACMETaskResponse
(*ACMETask)(nil), // 13: pb.ACMETask
(*RPCCountResponse)(nil), // 14: pb.RPCCountResponse
(*RPCSuccess)(nil), // 15: pb.RPCSuccess
(*FindACMETaskUserRequest)(nil), // 13: pb.FindACMETaskUserRequest
(*FindACMETaskUserResponse)(nil), // 14: pb.FindACMETaskUserResponse
(*ACMETask)(nil), // 15: pb.ACMETask
(*User)(nil), // 16: pb.User
(*RPCCountResponse)(nil), // 17: pb.RPCCountResponse
(*RPCSuccess)(nil), // 18: pb.RPCSuccess
}
var file_service_acme_task_proto_depIdxs = []int32{
13, // 0: pb.ListEnabledACMETasksResponse.acmeTasks:type_name -> pb.ACMETask
13, // 1: pb.FindEnabledACMETaskResponse.acmeTask:type_name -> pb.ACMETask
0, // 2: pb.ACMETaskService.countAllEnabledACMETasksWithACMEUserId:input_type -> pb.CountAllEnabledACMETasksWithACMEUserIdRequest
1, // 3: pb.ACMETaskService.countEnabledACMETasksWithDNSProviderId:input_type -> pb.CountEnabledACMETasksWithDNSProviderIdRequest
2, // 4: pb.ACMETaskService.countAllEnabledACMETasks:input_type -> pb.CountAllEnabledACMETasksRequest
3, // 5: pb.ACMETaskService.listEnabledACMETasks:input_type -> pb.ListEnabledACMETasksRequest
5, // 6: pb.ACMETaskService.createACMETask:input_type -> pb.CreateACMETaskRequest
7, // 7: pb.ACMETaskService.updateACMETask:input_type -> pb.UpdateACMETaskRequest
8, // 8: pb.ACMETaskService.deleteACMETask:input_type -> pb.DeleteACMETaskRequest
9, // 9: pb.ACMETaskService.runACMETask:input_type -> pb.RunACMETaskRequest
11, // 10: pb.ACMETaskService.findEnabledACMETask:input_type -> pb.FindEnabledACMETaskRequest
14, // 11: pb.ACMETaskService.countAllEnabledACMETasksWithACMEUserId:output_type -> pb.RPCCountResponse
14, // 12: pb.ACMETaskService.countEnabledACMETasksWithDNSProviderId:output_type -> pb.RPCCountResponse
14, // 13: pb.ACMETaskService.countAllEnabledACMETasks:output_type -> pb.RPCCountResponse
4, // 14: pb.ACMETaskService.listEnabledACMETasks:output_type -> pb.ListEnabledACMETasksResponse
6, // 15: pb.ACMETaskService.createACMETask:output_type -> pb.CreateACMETaskResponse
15, // 16: pb.ACMETaskService.updateACMETask:output_type -> pb.RPCSuccess
15, // 17: pb.ACMETaskService.deleteACMETask:output_type -> pb.RPCSuccess
10, // 18: pb.ACMETaskService.runACMETask:output_type -> pb.RunACMETaskResponse
12, // 19: pb.ACMETaskService.findEnabledACMETask:output_type -> pb.FindEnabledACMETaskResponse
11, // [11:20] is the sub-list for method output_type
2, // [2:11] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name
15, // 0: pb.ListEnabledACMETasksResponse.acmeTasks:type_name -> pb.ACMETask
15, // 1: pb.FindEnabledACMETaskResponse.acmeTask:type_name -> pb.ACMETask
16, // 2: pb.FindACMETaskUserResponse.user:type_name -> pb.User
0, // 3: pb.ACMETaskService.countAllEnabledACMETasksWithACMEUserId:input_type -> pb.CountAllEnabledACMETasksWithACMEUserIdRequest
1, // 4: pb.ACMETaskService.countEnabledACMETasksWithDNSProviderId:input_type -> pb.CountEnabledACMETasksWithDNSProviderIdRequest
2, // 5: pb.ACMETaskService.countAllEnabledACMETasks:input_type -> pb.CountAllEnabledACMETasksRequest
3, // 6: pb.ACMETaskService.listEnabledACMETasks:input_type -> pb.ListEnabledACMETasksRequest
5, // 7: pb.ACMETaskService.createACMETask:input_type -> pb.CreateACMETaskRequest
7, // 8: pb.ACMETaskService.updateACMETask:input_type -> pb.UpdateACMETaskRequest
8, // 9: pb.ACMETaskService.deleteACMETask:input_type -> pb.DeleteACMETaskRequest
9, // 10: pb.ACMETaskService.runACMETask:input_type -> pb.RunACMETaskRequest
11, // 11: pb.ACMETaskService.findEnabledACMETask:input_type -> pb.FindEnabledACMETaskRequest
13, // 12: pb.ACMETaskService.findACMETaskUser:input_type -> pb.FindACMETaskUserRequest
17, // 13: pb.ACMETaskService.countAllEnabledACMETasksWithACMEUserId:output_type -> pb.RPCCountResponse
17, // 14: pb.ACMETaskService.countEnabledACMETasksWithDNSProviderId:output_type -> pb.RPCCountResponse
17, // 15: pb.ACMETaskService.countAllEnabledACMETasks:output_type -> pb.RPCCountResponse
4, // 16: pb.ACMETaskService.listEnabledACMETasks:output_type -> pb.ListEnabledACMETasksResponse
6, // 17: pb.ACMETaskService.createACMETask:output_type -> pb.CreateACMETaskResponse
18, // 18: pb.ACMETaskService.updateACMETask:output_type -> pb.RPCSuccess
18, // 19: pb.ACMETaskService.deleteACMETask:output_type -> pb.RPCSuccess
10, // 20: pb.ACMETaskService.runACMETask:output_type -> pb.RunACMETaskResponse
12, // 21: pb.ACMETaskService.findEnabledACMETask:output_type -> pb.FindEnabledACMETaskResponse
14, // 22: pb.ACMETaskService.findACMETaskUser:output_type -> pb.FindACMETaskUserResponse
13, // [13:23] is the sub-list for method output_type
3, // [3:13] is the sub-list for method input_type
3, // [3:3] is the sub-list for extension type_name
3, // [3:3] is the sub-list for extension extendee
0, // [0:3] is the sub-list for field type_name
}
func init() { file_service_acme_task_proto_init() }
@@ -1083,6 +1217,7 @@ func file_service_acme_task_proto_init() {
}
file_models_rpc_messages_proto_init()
file_models_model_acme_task_proto_init()
file_models_model_user_proto_init()
if !protoimpl.UnsafeEnabled {
file_service_acme_task_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CountAllEnabledACMETasksWithACMEUserIdRequest); i {
@@ -1240,6 +1375,30 @@ func file_service_acme_task_proto_init() {
return nil
}
}
file_service_acme_task_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindACMETaskUserRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_acme_task_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindACMETaskUserResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
@@ -1247,7 +1406,7 @@ func file_service_acme_task_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_acme_task_proto_rawDesc,
NumEnums: 0,
NumMessages: 13,
NumMessages: 15,
NumExtensions: 0,
NumServices: 1,
},

View File

@@ -28,6 +28,7 @@ const (
ACMETaskService_DeleteACMETask_FullMethodName = "/pb.ACMETaskService/deleteACMETask"
ACMETaskService_RunACMETask_FullMethodName = "/pb.ACMETaskService/runACMETask"
ACMETaskService_FindEnabledACMETask_FullMethodName = "/pb.ACMETaskService/findEnabledACMETask"
ACMETaskService_FindACMETaskUser_FullMethodName = "/pb.ACMETaskService/findACMETaskUser"
)
// ACMETaskServiceClient is the client API for ACMETaskService service.
@@ -52,6 +53,8 @@ type ACMETaskServiceClient interface {
RunACMETask(ctx context.Context, in *RunACMETaskRequest, opts ...grpc.CallOption) (*RunACMETaskResponse, error)
// 查找单个任务信息
FindEnabledACMETask(ctx context.Context, in *FindEnabledACMETaskRequest, opts ...grpc.CallOption) (*FindEnabledACMETaskResponse, error)
// 查找任务所属用户
FindACMETaskUser(ctx context.Context, in *FindACMETaskUserRequest, opts ...grpc.CallOption) (*FindACMETaskUserResponse, error)
}
type aCMETaskServiceClient struct {
@@ -143,6 +146,15 @@ func (c *aCMETaskServiceClient) FindEnabledACMETask(ctx context.Context, in *Fin
return out, nil
}
func (c *aCMETaskServiceClient) FindACMETaskUser(ctx context.Context, in *FindACMETaskUserRequest, opts ...grpc.CallOption) (*FindACMETaskUserResponse, error) {
out := new(FindACMETaskUserResponse)
err := c.cc.Invoke(ctx, ACMETaskService_FindACMETaskUser_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// ACMETaskServiceServer is the server API for ACMETaskService service.
// All implementations should embed UnimplementedACMETaskServiceServer
// for forward compatibility
@@ -165,6 +177,8 @@ type ACMETaskServiceServer interface {
RunACMETask(context.Context, *RunACMETaskRequest) (*RunACMETaskResponse, error)
// 查找单个任务信息
FindEnabledACMETask(context.Context, *FindEnabledACMETaskRequest) (*FindEnabledACMETaskResponse, error)
// 查找任务所属用户
FindACMETaskUser(context.Context, *FindACMETaskUserRequest) (*FindACMETaskUserResponse, error)
}
// UnimplementedACMETaskServiceServer should be embedded to have forward compatible implementations.
@@ -198,6 +212,9 @@ func (UnimplementedACMETaskServiceServer) RunACMETask(context.Context, *RunACMET
func (UnimplementedACMETaskServiceServer) FindEnabledACMETask(context.Context, *FindEnabledACMETaskRequest) (*FindEnabledACMETaskResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindEnabledACMETask not implemented")
}
func (UnimplementedACMETaskServiceServer) FindACMETaskUser(context.Context, *FindACMETaskUserRequest) (*FindACMETaskUserResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindACMETaskUser not implemented")
}
// UnsafeACMETaskServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to ACMETaskServiceServer will
@@ -372,6 +389,24 @@ func _ACMETaskService_FindEnabledACMETask_Handler(srv interface{}, ctx context.C
return interceptor(ctx, in, info, handler)
}
func _ACMETaskService_FindACMETaskUser_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindACMETaskUserRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ACMETaskServiceServer).FindACMETaskUser(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: ACMETaskService_FindACMETaskUser_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ACMETaskServiceServer).FindACMETaskUser(ctx, req.(*FindACMETaskUserRequest))
}
return interceptor(ctx, in, info, handler)
}
// ACMETaskService_ServiceDesc is the grpc.ServiceDesc for ACMETaskService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@@ -415,6 +450,10 @@ var ACMETaskService_ServiceDesc = grpc.ServiceDesc{
MethodName: "findEnabledACMETask",
Handler: _ACMETaskService_FindEnabledACMETask_Handler,
},
{
MethodName: "findACMETaskUser",
Handler: _ACMETaskService_FindACMETaskUser_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "service_acme_task.proto",

View File

@@ -1471,7 +1471,6 @@ type ComposeAdminDashboardResponse struct {
HourlyTrafficStats []*ComposeAdminDashboardResponse_HourlyTrafficStat `protobuf:"bytes,31,rep,name=hourlyTrafficStats,proto3" json:"hourlyTrafficStats,omitempty"`
NodeUpgradeInfo *ComposeAdminDashboardResponse_UpgradeInfo `protobuf:"bytes,32,opt,name=nodeUpgradeInfo,proto3" json:"nodeUpgradeInfo,omitempty"`
ApiNodeUpgradeInfo *ComposeAdminDashboardResponse_UpgradeInfo `protobuf:"bytes,33,opt,name=apiNodeUpgradeInfo,proto3" json:"apiNodeUpgradeInfo,omitempty"`
MonitorNodeUpgradeInfo *ComposeAdminDashboardResponse_UpgradeInfo `protobuf:"bytes,34,opt,name=monitorNodeUpgradeInfo,proto3" json:"monitorNodeUpgradeInfo,omitempty"`
UserNodeUpgradeInfo *ComposeAdminDashboardResponse_UpgradeInfo `protobuf:"bytes,35,opt,name=userNodeUpgradeInfo,proto3" json:"userNodeUpgradeInfo,omitempty"`
AuthorityNodeUpgradeInfo *ComposeAdminDashboardResponse_UpgradeInfo `protobuf:"bytes,36,opt,name=authorityNodeUpgradeInfo,proto3" json:"authorityNodeUpgradeInfo,omitempty"`
NsNodeUpgradeInfo *ComposeAdminDashboardResponse_UpgradeInfo `protobuf:"bytes,37,opt,name=nsNodeUpgradeInfo,proto3" json:"nsNodeUpgradeInfo,omitempty"`
@@ -1633,13 +1632,6 @@ func (x *ComposeAdminDashboardResponse) GetApiNodeUpgradeInfo() *ComposeAdminDas
return nil
}
func (x *ComposeAdminDashboardResponse) GetMonitorNodeUpgradeInfo() *ComposeAdminDashboardResponse_UpgradeInfo {
if x != nil {
return x.MonitorNodeUpgradeInfo
}
return nil
}
func (x *ComposeAdminDashboardResponse) GetUserNodeUpgradeInfo() *ComposeAdminDashboardResponse_UpgradeInfo {
if x != nil {
return x.UserNodeUpgradeInfo
@@ -2373,7 +2365,7 @@ var file_service_admin_proto_rawDesc = []byte{
0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22,
0xc7, 0x16, 0x0a, 0x1d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0xe0, 0x15, 0x0a, 0x1d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c,
0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x63, 0x6f,
@@ -2434,214 +2426,207 @@ var file_service_admin_proto_rawDesc = []byte{
0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e,
0x66, 0x6f, 0x52, 0x12, 0x61, 0x70, 0x69, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61,
0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x65, 0x0a, 0x16, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
0x72, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f,
0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70,
0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64,
0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x16, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x4e, 0x6f,
0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5f, 0x0a,
0x13, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65,
0x49, 0x6e, 0x66, 0x6f, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68,
0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x70,
0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x75, 0x73, 0x65, 0x72, 0x4e,
0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x69,
0x0a, 0x18, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x55,
0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d,
0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52,
0x18, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70,
0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5b, 0x0a, 0x11, 0x6e, 0x73, 0x4e,
0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x25,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73,
0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49,
0x6e, 0x66, 0x6f, 0x52, 0x11, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61,
0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x63, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74,
0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18,
0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65,
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x15, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4e, 0x6f, 0x64, 0x65,
0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4e, 0x0a, 0x0c, 0x74,
0x6f, 0x70, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0c, 0x74,
0x6f, 0x70, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x54, 0x0a, 0x0e, 0x74,
0x6f, 0x70, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x27, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65,
0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5f, 0x0a, 0x13, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x6f,
0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x23, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65,
0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x61,
0x74, 0x52, 0x0e, 0x74, 0x6f, 0x70, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74,
0x73, 0x12, 0x57, 0x0a, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x53,
0x74, 0x61, 0x74, 0x73, 0x18, 0x2a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68,
0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f,
0x75, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x6f,
0x75, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3f, 0x0a, 0x10, 0x6d, 0x65,
0x74, 0x72, 0x69, 0x63, 0x44, 0x61, 0x74, 0x61, 0x43, 0x68, 0x61, 0x72, 0x74, 0x73, 0x18, 0x28,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
0x44, 0x61, 0x74, 0x61, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x10, 0x6d, 0x65, 0x74, 0x72, 0x69,
0x63, 0x44, 0x61, 0x74, 0x61, 0x43, 0x68, 0x61, 0x72, 0x74, 0x73, 0x1a, 0x88, 0x02, 0x0a, 0x10,
0x44, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74,
0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64,
0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x61, 0x63, 0x68,
0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63,
0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63,
0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52,
0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79,
0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63,
0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x1a, 0x8b, 0x02, 0x0a, 0x11, 0x48, 0x6f, 0x75, 0x72, 0x6c,
0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04,
0x68, 0x6f, 0x75, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x75, 0x72,
0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64,
0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x61, 0x63,
0x68, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x30,
0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65,
0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42,
0x79, 0x74, 0x65, 0x73, 0x1a, 0x7a, 0x0a, 0x08, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74,
0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x6f, 0x64, 0x65,
0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65,
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79,
0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73,
0x1a, 0x7c, 0x0a, 0x0a, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1a,
0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f,
0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61,
0x69, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65,
0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x1a, 0xd9,
0x01, 0x0a, 0x0b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x12, 0x20,
0x0a, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65,
0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07,
0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x70,
0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41,
0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20,
0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61,
0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61,
0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x1a, 0x4d, 0x0a, 0x0b, 0x55, 0x70,
0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x77,
0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e,
0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x0a, 0x17, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x54, 0x68, 0x65, 0x6d, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x14,
0x0a, 0x05, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74,
0x68, 0x65, 0x6d, 0x65, 0x32, 0x9a, 0x0a, 0x0a, 0x0c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x65,
0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e,
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x4d, 0x0a, 0x10, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63,
0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x53, 0x0a, 0x12, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55,
0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65,
0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63,
0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x46, 0x75, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x2e, 0x70, 0x62,
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x46, 0x75, 0x6c, 0x6c, 0x6e, 0x61,
0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x46,
0x69, 0x6e, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x46, 0x75, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x64,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x1b, 0x2e, 0x70,
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d,
0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46,
0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x13, 0x63, 0x72, 0x65, 0x61, 0x74,
0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x1e,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x3d, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3f,
0x0a, 0x10, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67,
0x69, 0x6e, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12,
0x56, 0x0a, 0x13, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d,
0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x41, 0x6c, 0x6c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x41, 0x6c, 0x6c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74,
0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74,
0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4f,
0x0a, 0x15, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75,
0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69,
0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52,
0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x50, 0x0a, 0x11, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x73, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x35, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69,
0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x68, 0x0a, 0x19, 0x63, 0x68, 0x65, 0x63,
0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65,
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b,
0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72,
0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x62,
0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4f, 0x54, 0x50, 0x57, 0x69,
0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d,
0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62,
0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73,
0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e,
0x66, 0x6f, 0x52, 0x13, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72,
0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x69, 0x0a, 0x18, 0x61, 0x75, 0x74, 0x68, 0x6f,
0x72, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49,
0x6e, 0x66, 0x6f, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e, 0x43,
0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62,
0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x70, 0x67,
0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x18, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72,
0x69, 0x74, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x5b, 0x0a, 0x11, 0x6e, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72,
0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e,
0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44,
0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x3f, 0x0a, 0x10, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x54,
0x68, 0x65, 0x6d, 0x65, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x41, 0x64, 0x6d, 0x69, 0x6e, 0x54, 0x68, 0x65, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x11, 0x6e, 0x73,
0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12,
0x63, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67,
0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x15, 0x72,
0x65, 0x70, 0x6f, 0x72, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65,
0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4e, 0x0a, 0x0c, 0x74, 0x6f, 0x70, 0x4e, 0x6f, 0x64, 0x65, 0x53,
0x74, 0x61, 0x74, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x62, 0x2e,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68,
0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4e, 0x6f,
0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0c, 0x74, 0x6f, 0x70, 0x4e, 0x6f, 0x64, 0x65, 0x53,
0x74, 0x61, 0x74, 0x73, 0x12, 0x54, 0x0a, 0x0e, 0x74, 0x6f, 0x70, 0x44, 0x6f, 0x6d, 0x61, 0x69,
0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x27, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70,
0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61,
0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0e, 0x74, 0x6f, 0x70, 0x44,
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x57, 0x0a, 0x0f, 0x74, 0x6f,
0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x2a, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65,
0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x74,
0x61, 0x74, 0x52, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x74,
0x61, 0x74, 0x73, 0x12, 0x3f, 0x0a, 0x10, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x61, 0x74,
0x61, 0x43, 0x68, 0x61, 0x72, 0x74, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e,
0x70, 0x62, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x61, 0x74, 0x61, 0x43, 0x68, 0x61,
0x72, 0x74, 0x52, 0x10, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x61, 0x74, 0x61, 0x43, 0x68,
0x61, 0x72, 0x74, 0x73, 0x1a, 0x88, 0x02, 0x0a, 0x10, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x72,
0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x62,
0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65,
0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73,
0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79,
0x74, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x61, 0x63,
0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41,
0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a,
0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01,
0x28, 0x03, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x1a,
0x8b, 0x02, 0x0a, 0x11, 0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69,
0x63, 0x53, 0x74, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x75, 0x72, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x75, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74,
0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12,
0x20, 0x0a, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65,
0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x43, 0x61, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05,
0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65,
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74,
0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61,
0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03,
0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73, 0x1a, 0x7a, 0x0a,
0x08, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x74, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64,
0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49,
0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a,
0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x03,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01,
0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x1a, 0x7c, 0x0a, 0x0a, 0x44, 0x6f, 0x6d,
0x61, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65,
0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65,
0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x63,
0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01,
0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x73, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03,
0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x1a, 0xd9, 0x01, 0x0a, 0x0b, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74,
0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12,
0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12,
0x30, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x63, 0x6f,
0x75, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79, 0x74, 0x65, 0x73,
0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x42, 0x79,
0x74, 0x65, 0x73, 0x1a, 0x4d, 0x0a, 0x0b, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x73,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x6f, 0x64,
0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x22, 0x49, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69,
0x6e, 0x54, 0x68, 0x65, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a,
0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07,
0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x68, 0x65, 0x6d, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x32, 0x9a, 0x0a,
0x0a, 0x0c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3b,
0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x15, 0x2e, 0x70,
0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x10, 0x63,
0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12,
0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45,
0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70,
0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x69, 0x73,
0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x12, 0x63, 0x68,
0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65,
0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55,
0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x50, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x46, 0x75, 0x6c, 0x6c,
0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x46, 0x75, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x6d, 0x69,
0x6e, 0x46, 0x75, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x4d, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x56, 0x0a, 0x13, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x4f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61,
0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x2e, 0x70, 0x62,
0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3f, 0x0a, 0x10, 0x75, 0x70, 0x64, 0x61, 0x74,
0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x1b, 0x2e, 0x70, 0x62,
0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x69,
0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x56, 0x0a, 0x13, 0x66, 0x69, 0x6e, 0x64,
0x41, 0x6c, 0x6c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x12,
0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x6d, 0x69,
0x6e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x6d, 0x69,
0x6e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x3e, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12,
0x16, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x35, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12,
0x16, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4f, 0x0a, 0x15, 0x63, 0x6f, 0x75, 0x6e, 0x74,
0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73,
0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x6c, 0x69, 0x73, 0x74,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x12, 0x1c, 0x2e,
0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64,
0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x64, 0x6d, 0x69,
0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x64, 0x65,
0x6c, 0x65, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x44,
0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73,
0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
0x73, 0x12, 0x68, 0x0a, 0x19, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4f,
0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4f, 0x54,
0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41,
0x64, 0x6d, 0x69, 0x6e, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e,
0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x63,
0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62,
0x6f, 0x61, 0x72, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73,
0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70,
0x6f, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x10, 0x75, 0x70, 0x64,
0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x54, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x1b, 0x2e,
0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x54, 0x68,
0x65, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e,
0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f,
0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -2706,54 +2691,53 @@ var file_service_admin_proto_depIdxs = []int32{
29, // 4: pb.ComposeAdminDashboardResponse.hourlyTrafficStats:type_name -> pb.ComposeAdminDashboardResponse.HourlyTrafficStat
33, // 5: pb.ComposeAdminDashboardResponse.nodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 6: pb.ComposeAdminDashboardResponse.apiNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 7: pb.ComposeAdminDashboardResponse.monitorNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 8: pb.ComposeAdminDashboardResponse.userNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 9: pb.ComposeAdminDashboardResponse.authorityNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 10: pb.ComposeAdminDashboardResponse.nsNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 11: pb.ComposeAdminDashboardResponse.reportNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
30, // 12: pb.ComposeAdminDashboardResponse.topNodeStats:type_name -> pb.ComposeAdminDashboardResponse.NodeStat
31, // 13: pb.ComposeAdminDashboardResponse.topDomainStats:type_name -> pb.ComposeAdminDashboardResponse.DomainStat
32, // 14: pb.ComposeAdminDashboardResponse.topCountryStats:type_name -> pb.ComposeAdminDashboardResponse.CountryStat
36, // 15: pb.ComposeAdminDashboardResponse.metricDataCharts:type_name -> pb.MetricDataChart
0, // 16: pb.AdminService.loginAdmin:input_type -> pb.LoginAdminRequest
2, // 17: pb.AdminService.checkAdminExists:input_type -> pb.CheckAdminExistsRequest
4, // 18: pb.AdminService.checkAdminUsername:input_type -> pb.CheckAdminUsernameRequest
6, // 19: pb.AdminService.findAdminFullname:input_type -> pb.FindAdminFullnameRequest
8, // 20: pb.AdminService.findEnabledAdmin:input_type -> pb.FindEnabledAdminRequest
10, // 21: pb.AdminService.createOrUpdateAdmin:input_type -> pb.CreateOrUpdateAdminRequest
12, // 22: pb.AdminService.updateAdminInfo:input_type -> pb.UpdateAdminInfoRequest
13, // 23: pb.AdminService.updateAdminLogin:input_type -> pb.UpdateAdminLoginRequest
14, // 24: pb.AdminService.findAllAdminModules:input_type -> pb.FindAllAdminModulesRequest
16, // 25: pb.AdminService.createAdmin:input_type -> pb.CreateAdminRequest
18, // 26: pb.AdminService.updateAdmin:input_type -> pb.UpdateAdminRequest
19, // 27: pb.AdminService.countAllEnabledAdmins:input_type -> pb.CountAllEnabledAdminsRequest
20, // 28: pb.AdminService.listEnabledAdmins:input_type -> pb.ListEnabledAdminsRequest
22, // 29: pb.AdminService.deleteAdmin:input_type -> pb.DeleteAdminRequest
23, // 30: pb.AdminService.checkAdminOTPWithUsername:input_type -> pb.CheckAdminOTPWithUsernameRequest
25, // 31: pb.AdminService.composeAdminDashboard:input_type -> pb.ComposeAdminDashboardRequest
27, // 32: pb.AdminService.updateAdminTheme:input_type -> pb.UpdateAdminThemeRequest
1, // 33: pb.AdminService.loginAdmin:output_type -> pb.LoginAdminResponse
3, // 34: pb.AdminService.checkAdminExists:output_type -> pb.CheckAdminExistsResponse
5, // 35: pb.AdminService.checkAdminUsername:output_type -> pb.CheckAdminUsernameResponse
7, // 36: pb.AdminService.findAdminFullname:output_type -> pb.FindAdminFullnameResponse
9, // 37: pb.AdminService.findEnabledAdmin:output_type -> pb.FindEnabledAdminResponse
11, // 38: pb.AdminService.createOrUpdateAdmin:output_type -> pb.CreateOrUpdateAdminResponse
37, // 39: pb.AdminService.updateAdminInfo:output_type -> pb.RPCSuccess
37, // 40: pb.AdminService.updateAdminLogin:output_type -> pb.RPCSuccess
15, // 41: pb.AdminService.findAllAdminModules:output_type -> pb.FindAllAdminModulesResponse
17, // 42: pb.AdminService.createAdmin:output_type -> pb.CreateAdminResponse
37, // 43: pb.AdminService.updateAdmin:output_type -> pb.RPCSuccess
38, // 44: pb.AdminService.countAllEnabledAdmins:output_type -> pb.RPCCountResponse
21, // 45: pb.AdminService.listEnabledAdmins:output_type -> pb.ListEnabledAdminsResponse
37, // 46: pb.AdminService.deleteAdmin:output_type -> pb.RPCSuccess
24, // 47: pb.AdminService.checkAdminOTPWithUsername:output_type -> pb.CheckAdminOTPWithUsernameResponse
26, // 48: pb.AdminService.composeAdminDashboard:output_type -> pb.ComposeAdminDashboardResponse
37, // 49: pb.AdminService.updateAdminTheme:output_type -> pb.RPCSuccess
33, // [33:50] is the sub-list for method output_type
16, // [16:33] is the sub-list for method input_type
16, // [16:16] is the sub-list for extension type_name
16, // [16:16] is the sub-list for extension extendee
0, // [0:16] is the sub-list for field type_name
33, // 7: pb.ComposeAdminDashboardResponse.userNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 8: pb.ComposeAdminDashboardResponse.authorityNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 9: pb.ComposeAdminDashboardResponse.nsNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
33, // 10: pb.ComposeAdminDashboardResponse.reportNodeUpgradeInfo:type_name -> pb.ComposeAdminDashboardResponse.UpgradeInfo
30, // 11: pb.ComposeAdminDashboardResponse.topNodeStats:type_name -> pb.ComposeAdminDashboardResponse.NodeStat
31, // 12: pb.ComposeAdminDashboardResponse.topDomainStats:type_name -> pb.ComposeAdminDashboardResponse.DomainStat
32, // 13: pb.ComposeAdminDashboardResponse.topCountryStats:type_name -> pb.ComposeAdminDashboardResponse.CountryStat
36, // 14: pb.ComposeAdminDashboardResponse.metricDataCharts:type_name -> pb.MetricDataChart
0, // 15: pb.AdminService.loginAdmin:input_type -> pb.LoginAdminRequest
2, // 16: pb.AdminService.checkAdminExists:input_type -> pb.CheckAdminExistsRequest
4, // 17: pb.AdminService.checkAdminUsername:input_type -> pb.CheckAdminUsernameRequest
6, // 18: pb.AdminService.findAdminFullname:input_type -> pb.FindAdminFullnameRequest
8, // 19: pb.AdminService.findEnabledAdmin:input_type -> pb.FindEnabledAdminRequest
10, // 20: pb.AdminService.createOrUpdateAdmin:input_type -> pb.CreateOrUpdateAdminRequest
12, // 21: pb.AdminService.updateAdminInfo:input_type -> pb.UpdateAdminInfoRequest
13, // 22: pb.AdminService.updateAdminLogin:input_type -> pb.UpdateAdminLoginRequest
14, // 23: pb.AdminService.findAllAdminModules:input_type -> pb.FindAllAdminModulesRequest
16, // 24: pb.AdminService.createAdmin:input_type -> pb.CreateAdminRequest
18, // 25: pb.AdminService.updateAdmin:input_type -> pb.UpdateAdminRequest
19, // 26: pb.AdminService.countAllEnabledAdmins:input_type -> pb.CountAllEnabledAdminsRequest
20, // 27: pb.AdminService.listEnabledAdmins:input_type -> pb.ListEnabledAdminsRequest
22, // 28: pb.AdminService.deleteAdmin:input_type -> pb.DeleteAdminRequest
23, // 29: pb.AdminService.checkAdminOTPWithUsername:input_type -> pb.CheckAdminOTPWithUsernameRequest
25, // 30: pb.AdminService.composeAdminDashboard:input_type -> pb.ComposeAdminDashboardRequest
27, // 31: pb.AdminService.updateAdminTheme:input_type -> pb.UpdateAdminThemeRequest
1, // 32: pb.AdminService.loginAdmin:output_type -> pb.LoginAdminResponse
3, // 33: pb.AdminService.checkAdminExists:output_type -> pb.CheckAdminExistsResponse
5, // 34: pb.AdminService.checkAdminUsername:output_type -> pb.CheckAdminUsernameResponse
7, // 35: pb.AdminService.findAdminFullname:output_type -> pb.FindAdminFullnameResponse
9, // 36: pb.AdminService.findEnabledAdmin:output_type -> pb.FindEnabledAdminResponse
11, // 37: pb.AdminService.createOrUpdateAdmin:output_type -> pb.CreateOrUpdateAdminResponse
37, // 38: pb.AdminService.updateAdminInfo:output_type -> pb.RPCSuccess
37, // 39: pb.AdminService.updateAdminLogin:output_type -> pb.RPCSuccess
15, // 40: pb.AdminService.findAllAdminModules:output_type -> pb.FindAllAdminModulesResponse
17, // 41: pb.AdminService.createAdmin:output_type -> pb.CreateAdminResponse
37, // 42: pb.AdminService.updateAdmin:output_type -> pb.RPCSuccess
38, // 43: pb.AdminService.countAllEnabledAdmins:output_type -> pb.RPCCountResponse
21, // 44: pb.AdminService.listEnabledAdmins:output_type -> pb.ListEnabledAdminsResponse
37, // 45: pb.AdminService.deleteAdmin:output_type -> pb.RPCSuccess
24, // 46: pb.AdminService.checkAdminOTPWithUsername:output_type -> pb.CheckAdminOTPWithUsernameResponse
26, // 47: pb.AdminService.composeAdminDashboard:output_type -> pb.ComposeAdminDashboardResponse
37, // 48: pb.AdminService.updateAdminTheme:output_type -> pb.RPCSuccess
32, // [32:49] is the sub-list for method output_type
15, // [15:32] is the sub-list for method input_type
15, // [15:15] is the sub-list for extension type_name
15, // [15:15] is the sub-list for extension extendee
0, // [0:15] is the sub-list for field type_name
}
func init() { file_service_admin_proto_init() }

View File

@@ -26,20 +26,20 @@ type CreateIPItemRequest struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
IpListId int64 `protobuf:"varint,1,opt,name=ipListId,proto3" json:"ipListId,omitempty"` // IP列表ID
IpFrom string `protobuf:"bytes,2,opt,name=ipFrom,proto3" json:"ipFrom,omitempty"` // 开始IP
IpTo string `protobuf:"bytes,3,opt,name=ipTo,proto3" json:"ipTo,omitempty"` // 结束IP可选
ExpiredAt int64 `protobuf:"varint,4,opt,name=expiredAt,proto3" json:"expiredAt,omitempty"` // 过期时间戳(可选)
Reason string `protobuf:"bytes,5,opt,name=reason,proto3" json:"reason,omitempty"` // 加入理由(可选)
Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"` // 类型
EventLevel string `protobuf:"bytes,7,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"` // 级别
NodeId int64 `protobuf:"varint,8,opt,name=nodeId,proto3" json:"nodeId,omitempty"` // 所属节点ID
ServerId int64 `protobuf:"varint,9,opt,name=serverId,proto3" json:"serverId,omitempty"` // 所属服务ID
SourceNodeId int64 `protobuf:"varint,10,opt,name=sourceNodeId,proto3" json:"sourceNodeId,omitempty"`
SourceServerId int64 `protobuf:"varint,11,opt,name=sourceServerId,proto3" json:"sourceServerId,omitempty"`
SourceHTTPFirewallPolicyId int64 `protobuf:"varint,12,opt,name=sourceHTTPFirewallPolicyId,proto3" json:"sourceHTTPFirewallPolicyId,omitempty"`
SourceHTTPFirewallRuleGroupId int64 `protobuf:"varint,13,opt,name=sourceHTTPFirewallRuleGroupId,proto3" json:"sourceHTTPFirewallRuleGroupId,omitempty"`
SourceHTTPFirewallRuleSetId int64 `protobuf:"varint,14,opt,name=sourceHTTPFirewallRuleSetId,proto3" json:"sourceHTTPFirewallRuleSetId,omitempty"`
IpListId int64 `protobuf:"varint,1,opt,name=ipListId,proto3" json:"ipListId,omitempty"` // 所属IP列表ID
IpFrom string `protobuf:"bytes,2,opt,name=ipFrom,proto3" json:"ipFrom,omitempty"` // 开始IP
IpTo string `protobuf:"bytes,3,opt,name=ipTo,proto3" json:"ipTo,omitempty"` // 结束IP可选
ExpiredAt int64 `protobuf:"varint,4,opt,name=expiredAt,proto3" json:"expiredAt,omitempty"` // 过期时间戳(可选)
Reason string `protobuf:"bytes,5,opt,name=reason,proto3" json:"reason,omitempty"` // 加入理由(可选)
Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"` // IP类型值为ipv4或ipv6
EventLevel string `protobuf:"bytes,7,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"` // 级别debug, notice, warning, error, critical, fatal
NodeId int64 `protobuf:"varint,8,opt,name=nodeId,proto3" json:"nodeId,omitempty"` // 可选项,所属节点ID
ServerId int64 `protobuf:"varint,9,opt,name=serverId,proto3" json:"serverId,omitempty"` // 可选项,所属网站ID
SourceNodeId int64 `protobuf:"varint,10,opt,name=sourceNodeId,proto3" json:"sourceNodeId,omitempty"` // 可选项,来源节点
SourceServerId int64 `protobuf:"varint,11,opt,name=sourceServerId,proto3" json:"sourceServerId,omitempty"` // 可选项来源网站ID
SourceHTTPFirewallPolicyId int64 `protobuf:"varint,12,opt,name=sourceHTTPFirewallPolicyId,proto3" json:"sourceHTTPFirewallPolicyId,omitempty"` // 可选项来源WAF策略ID
SourceHTTPFirewallRuleGroupId int64 `protobuf:"varint,13,opt,name=sourceHTTPFirewallRuleGroupId,proto3" json:"sourceHTTPFirewallRuleGroupId,omitempty"` // 可选项来源WAF规则分组ID
SourceHTTPFirewallRuleSetId int64 `protobuf:"varint,14,opt,name=sourceHTTPFirewallRuleSetId,proto3" json:"sourceHTTPFirewallRuleSetId,omitempty"` // 可选项来源WAF规则集ID
}
func (x *CreateIPItemRequest) Reset() {

View File

@@ -106,54 +106,6 @@ func (x *FindAllMessageMediasResponse) GetMessageMedias() []*MessageMedia {
return nil
}
// 设置所有支持的媒介
type UpdateMessageMediasRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MessageMedias []*MessageMedia `protobuf:"bytes,2,rep,name=messageMedias,proto3" json:"messageMedias,omitempty"`
}
func (x *UpdateMessageMediasRequest) Reset() {
*x = UpdateMessageMediasRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_message_media_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateMessageMediasRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateMessageMediasRequest) ProtoMessage() {}
func (x *UpdateMessageMediasRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_message_media_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateMessageMediasRequest.ProtoReflect.Descriptor instead.
func (*UpdateMessageMediasRequest) Descriptor() ([]byte, []int) {
return file_service_message_media_proto_rawDescGZIP(), []int{2}
}
func (x *UpdateMessageMediasRequest) GetMessageMedias() []*MessageMedia {
if x != nil {
return x.MessageMedias
}
return nil
}
// 发送媒介信息
type SendMediaMessageRequest struct {
state protoimpl.MessageState
@@ -170,7 +122,7 @@ type SendMediaMessageRequest struct {
func (x *SendMediaMessageRequest) Reset() {
*x = SendMediaMessageRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_message_media_proto_msgTypes[3]
mi := &file_service_message_media_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -183,7 +135,7 @@ func (x *SendMediaMessageRequest) String() string {
func (*SendMediaMessageRequest) ProtoMessage() {}
func (x *SendMediaMessageRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_message_media_proto_msgTypes[3]
mi := &file_service_message_media_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -196,7 +148,7 @@ func (x *SendMediaMessageRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use SendMediaMessageRequest.ProtoReflect.Descriptor instead.
func (*SendMediaMessageRequest) Descriptor() ([]byte, []int) {
return file_service_message_media_proto_rawDescGZIP(), []int{3}
return file_service_message_media_proto_rawDescGZIP(), []int{2}
}
func (x *SendMediaMessageRequest) GetMediaType() string {
@@ -250,39 +202,29 @@ var file_service_message_media_proto_rawDesc = []byte{
0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d,
0x65, 0x64, 0x69, 0x61, 0x73, 0x22, 0x54, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65,
0x64, 0x69, 0x61, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, 0x0d, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x73, 0x22, 0x9b, 0x01, 0x0a, 0x17,
0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61,
0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69,
0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73,
0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x05, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x32, 0xf8, 0x01, 0x0a, 0x13, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
0x65, 0x12, 0x59, 0x0a, 0x14, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46,
0x65, 0x64, 0x69, 0x61, 0x73, 0x22, 0x9b, 0x01, 0x0a, 0x17, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65,
0x64, 0x69, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12,
0x20, 0x0a, 0x0b, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4a, 0x53, 0x4f,
0x4e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12,
0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62,
0x6f, 0x64, 0x79, 0x32, 0xb1, 0x01, 0x0a, 0x13, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d,
0x65, 0x64, 0x69, 0x61, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x59, 0x0a, 0x14, 0x66,
0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64,
0x69, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x62, 0x2e,
0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65,
0x64, 0x69, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x13,
0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64,
0x69, 0x61, 0x73, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63,
0x65, 0x73, 0x73, 0x12, 0x3f, 0x0a, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x64, 0x69, 0x61,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e,
0x64, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63,
0x63, 0x65, 0x73, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
0x69, 0x61, 0x73, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x73, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c,
0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x4d, 0x65,
0x64, 0x69, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e,
0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -297,29 +239,25 @@ func file_service_message_media_proto_rawDescGZIP() []byte {
return file_service_message_media_proto_rawDescData
}
var file_service_message_media_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_service_message_media_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
var file_service_message_media_proto_goTypes = []interface{}{
(*FindAllMessageMediasRequest)(nil), // 0: pb.FindAllMessageMediasRequest
(*FindAllMessageMediasResponse)(nil), // 1: pb.FindAllMessageMediasResponse
(*UpdateMessageMediasRequest)(nil), // 2: pb.UpdateMessageMediasRequest
(*SendMediaMessageRequest)(nil), // 3: pb.SendMediaMessageRequest
(*MessageMedia)(nil), // 4: pb.MessageMedia
(*RPCSuccess)(nil), // 5: pb.RPCSuccess
(*SendMediaMessageRequest)(nil), // 2: pb.SendMediaMessageRequest
(*MessageMedia)(nil), // 3: pb.MessageMedia
(*RPCSuccess)(nil), // 4: pb.RPCSuccess
}
var file_service_message_media_proto_depIdxs = []int32{
4, // 0: pb.FindAllMessageMediasResponse.messageMedias:type_name -> pb.MessageMedia
4, // 1: pb.UpdateMessageMediasRequest.messageMedias:type_name -> pb.MessageMedia
0, // 2: pb.MessageMediaService.findAllMessageMedias:input_type -> pb.FindAllMessageMediasRequest
2, // 3: pb.MessageMediaService.updateMessageMedias:input_type -> pb.UpdateMessageMediasRequest
3, // 4: pb.MessageMediaService.sendMediaMessage:input_type -> pb.SendMediaMessageRequest
1, // 5: pb.MessageMediaService.findAllMessageMedias:output_type -> pb.FindAllMessageMediasResponse
5, // 6: pb.MessageMediaService.updateMessageMedias:output_type -> pb.RPCSuccess
5, // 7: pb.MessageMediaService.sendMediaMessage:output_type -> pb.RPCSuccess
5, // [5:8] is the sub-list for method output_type
2, // [2:5] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name
3, // 0: pb.FindAllMessageMediasResponse.messageMedias:type_name -> pb.MessageMedia
0, // 1: pb.MessageMediaService.findAllMessageMedias:input_type -> pb.FindAllMessageMediasRequest
2, // 2: pb.MessageMediaService.sendMediaMessage:input_type -> pb.SendMediaMessageRequest
1, // 3: pb.MessageMediaService.findAllMessageMedias:output_type -> pb.FindAllMessageMediasResponse
4, // 4: pb.MessageMediaService.sendMediaMessage:output_type -> pb.RPCSuccess
3, // [3:5] is the sub-list for method output_type
1, // [1:3] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_service_message_media_proto_init() }
@@ -355,18 +293,6 @@ func file_service_message_media_proto_init() {
}
}
file_service_message_media_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateMessageMediasRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_message_media_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SendMediaMessageRequest); i {
case 0:
return &v.state
@@ -385,7 +311,7 @@ func file_service_message_media_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_message_media_proto_rawDesc,
NumEnums: 0,
NumMessages: 4,
NumMessages: 3,
NumExtensions: 0,
NumServices: 1,
},

View File

@@ -20,7 +20,6 @@ const _ = grpc.SupportPackageIsVersion7
const (
MessageMediaService_FindAllMessageMedias_FullMethodName = "/pb.MessageMediaService/findAllMessageMedias"
MessageMediaService_UpdateMessageMedias_FullMethodName = "/pb.MessageMediaService/updateMessageMedias"
MessageMediaService_SendMediaMessage_FullMethodName = "/pb.MessageMediaService/sendMediaMessage"
)
@@ -30,8 +29,6 @@ const (
type MessageMediaServiceClient interface {
// 获取所有支持的媒介
FindAllMessageMedias(ctx context.Context, in *FindAllMessageMediasRequest, opts ...grpc.CallOption) (*FindAllMessageMediasResponse, error)
// 设置所有支持的媒介
UpdateMessageMedias(ctx context.Context, in *UpdateMessageMediasRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 发送媒介信息
SendMediaMessage(ctx context.Context, in *SendMediaMessageRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
}
@@ -53,15 +50,6 @@ func (c *messageMediaServiceClient) FindAllMessageMedias(ctx context.Context, in
return out, nil
}
func (c *messageMediaServiceClient) UpdateMessageMedias(ctx context.Context, in *UpdateMessageMediasRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MessageMediaService_UpdateMessageMedias_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *messageMediaServiceClient) SendMediaMessage(ctx context.Context, in *SendMediaMessageRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MessageMediaService_SendMediaMessage_FullMethodName, in, out, opts...)
@@ -77,8 +65,6 @@ func (c *messageMediaServiceClient) SendMediaMessage(ctx context.Context, in *Se
type MessageMediaServiceServer interface {
// 获取所有支持的媒介
FindAllMessageMedias(context.Context, *FindAllMessageMediasRequest) (*FindAllMessageMediasResponse, error)
// 设置所有支持的媒介
UpdateMessageMedias(context.Context, *UpdateMessageMediasRequest) (*RPCSuccess, error)
// 发送媒介信息
SendMediaMessage(context.Context, *SendMediaMessageRequest) (*RPCSuccess, error)
}
@@ -90,9 +76,6 @@ type UnimplementedMessageMediaServiceServer struct {
func (UnimplementedMessageMediaServiceServer) FindAllMessageMedias(context.Context, *FindAllMessageMediasRequest) (*FindAllMessageMediasResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindAllMessageMedias not implemented")
}
func (UnimplementedMessageMediaServiceServer) UpdateMessageMedias(context.Context, *UpdateMessageMediasRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateMessageMedias not implemented")
}
func (UnimplementedMessageMediaServiceServer) SendMediaMessage(context.Context, *SendMediaMessageRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method SendMediaMessage not implemented")
}
@@ -126,24 +109,6 @@ func _MessageMediaService_FindAllMessageMedias_Handler(srv interface{}, ctx cont
return interceptor(ctx, in, info, handler)
}
func _MessageMediaService_UpdateMessageMedias_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateMessageMediasRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MessageMediaServiceServer).UpdateMessageMedias(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MessageMediaService_UpdateMessageMedias_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MessageMediaServiceServer).UpdateMessageMedias(ctx, req.(*UpdateMessageMediasRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MessageMediaService_SendMediaMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(SendMediaMessageRequest)
if err := dec(in); err != nil {
@@ -173,10 +138,6 @@ var MessageMediaService_ServiceDesc = grpc.ServiceDesc{
MethodName: "findAllMessageMedias",
Handler: _MessageMediaService_FindAllMessageMedias_Handler,
},
{
MethodName: "updateMessageMedias",
Handler: _MessageMediaService_UpdateMessageMedias_Handler,
},
{
MethodName: "sendMediaMessage",
Handler: _MessageMediaService_SendMediaMessage_Handler,

View File

@@ -31,7 +31,7 @@ type UpdateMessageReceiversRequest struct {
NodeId int64 `protobuf:"varint,2,opt,name=nodeId,proto3" json:"nodeId,omitempty"`
ServerId int64 `protobuf:"varint,3,opt,name=serverId,proto3" json:"serverId,omitempty"`
ParamsJSON []byte `protobuf:"bytes,5,opt,name=paramsJSON,proto3" json:"paramsJSON,omitempty"`
RecipientOptions map[string]*UpdateMessageReceiversRequest_RecipientOptions `protobuf:"bytes,6,rep,name=recipientOptions,proto3" json:"recipientOptions,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // type => options
RecipientOptions map[string]*UpdateMessageReceiversRequest_RecipientOptions `protobuf:"bytes,6,rep,name=recipientOptions,proto3" json:"recipientOptions,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // type => optionstype为recipient或者group
}
func (x *UpdateMessageReceiversRequest) Reset() {
@@ -114,10 +114,10 @@ type FindAllEnabledMessageReceiversRequest struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Role string `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"`
NodeClusterId int64 `protobuf:"varint,1,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"`
NodeId int64 `protobuf:"varint,2,opt,name=nodeId,proto3" json:"nodeId,omitempty"`
ServerId int64 `protobuf:"varint,3,opt,name=serverId,proto3" json:"serverId,omitempty"`
Role string `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"` // 集群角色node 或 dns
NodeClusterId int64 `protobuf:"varint,1,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"` // 集群ID
NodeId int64 `protobuf:"varint,2,opt,name=nodeId,proto3" json:"nodeId,omitempty"` // 节点ID
ServerId int64 `protobuf:"varint,3,opt,name=serverId,proto3" json:"serverId,omitempty"` // 网站ID
}
func (x *FindAllEnabledMessageReceiversRequest) Reset() {
@@ -227,19 +227,114 @@ func (x *FindAllEnabledMessageReceiversResponse) GetMessageReceivers() []*Messag
return nil
}
// 根据接收人查找关联的接收者
type FindAllEnabledMessageReceiversWithMessageRecipientIdRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MessageRecipientId int64 `protobuf:"varint,1,opt,name=messageRecipientId,proto3" json:"messageRecipientId,omitempty"` // 关联的接收人ID
}
func (x *FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) Reset() {
*x = FindAllEnabledMessageReceiversWithMessageRecipientIdRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_message_receiver_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) ProtoMessage() {}
func (x *FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_message_receiver_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindAllEnabledMessageReceiversWithMessageRecipientIdRequest.ProtoReflect.Descriptor instead.
func (*FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) Descriptor() ([]byte, []int) {
return file_service_message_receiver_proto_rawDescGZIP(), []int{3}
}
func (x *FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) GetMessageRecipientId() int64 {
if x != nil {
return x.MessageRecipientId
}
return 0
}
type FindAllEnabledMessageReceiversWithMessageRecipientIdResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MessageReceivers []*MessageReceiver `protobuf:"bytes,1,rep,name=messageReceivers,proto3" json:"messageReceivers,omitempty"`
}
func (x *FindAllEnabledMessageReceiversWithMessageRecipientIdResponse) Reset() {
*x = FindAllEnabledMessageReceiversWithMessageRecipientIdResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_message_receiver_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindAllEnabledMessageReceiversWithMessageRecipientIdResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindAllEnabledMessageReceiversWithMessageRecipientIdResponse) ProtoMessage() {}
func (x *FindAllEnabledMessageReceiversWithMessageRecipientIdResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_message_receiver_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindAllEnabledMessageReceiversWithMessageRecipientIdResponse.ProtoReflect.Descriptor instead.
func (*FindAllEnabledMessageReceiversWithMessageRecipientIdResponse) Descriptor() ([]byte, []int) {
return file_service_message_receiver_proto_rawDescGZIP(), []int{4}
}
func (x *FindAllEnabledMessageReceiversWithMessageRecipientIdResponse) GetMessageReceivers() []*MessageReceiver {
if x != nil {
return x.MessageReceivers
}
return nil
}
// 删除接收者
type DeleteMessageReceiverRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MessageReceiverId int64 `protobuf:"varint,1,opt,name=messageReceiverId,proto3" json:"messageReceiverId,omitempty"`
MessageReceiverId int64 `protobuf:"varint,1,opt,name=messageReceiverId,proto3" json:"messageReceiverId,omitempty"` // 接收者ID
}
func (x *DeleteMessageReceiverRequest) Reset() {
*x = DeleteMessageReceiverRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_message_receiver_proto_msgTypes[3]
mi := &file_service_message_receiver_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -252,7 +347,7 @@ func (x *DeleteMessageReceiverRequest) String() string {
func (*DeleteMessageReceiverRequest) ProtoMessage() {}
func (x *DeleteMessageReceiverRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_message_receiver_proto_msgTypes[3]
mi := &file_service_message_receiver_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -265,7 +360,7 @@ func (x *DeleteMessageReceiverRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteMessageReceiverRequest.ProtoReflect.Descriptor instead.
func (*DeleteMessageReceiverRequest) Descriptor() ([]byte, []int) {
return file_service_message_receiver_proto_rawDescGZIP(), []int{3}
return file_service_message_receiver_proto_rawDescGZIP(), []int{5}
}
func (x *DeleteMessageReceiverRequest) GetMessageReceiverId() int64 {
@@ -281,16 +376,16 @@ type CountAllEnabledMessageReceiversRequest struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Role string `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"`
NodeClusterId int64 `protobuf:"varint,1,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"`
NodeId int64 `protobuf:"varint,2,opt,name=nodeId,proto3" json:"nodeId,omitempty"`
ServerId int64 `protobuf:"varint,3,opt,name=serverId,proto3" json:"serverId,omitempty"`
Role string `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"` // 集群角色node 或 dns
NodeClusterId int64 `protobuf:"varint,1,opt,name=nodeClusterId,proto3" json:"nodeClusterId,omitempty"` // 集群ID
NodeId int64 `protobuf:"varint,2,opt,name=nodeId,proto3" json:"nodeId,omitempty"` // 节点ID
ServerId int64 `protobuf:"varint,3,opt,name=serverId,proto3" json:"serverId,omitempty"` // 网站ID
}
func (x *CountAllEnabledMessageReceiversRequest) Reset() {
*x = CountAllEnabledMessageReceiversRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_message_receiver_proto_msgTypes[4]
mi := &file_service_message_receiver_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -303,7 +398,7 @@ func (x *CountAllEnabledMessageReceiversRequest) String() string {
func (*CountAllEnabledMessageReceiversRequest) ProtoMessage() {}
func (x *CountAllEnabledMessageReceiversRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_message_receiver_proto_msgTypes[4]
mi := &file_service_message_receiver_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -316,7 +411,7 @@ func (x *CountAllEnabledMessageReceiversRequest) ProtoReflect() protoreflect.Mes
// Deprecated: Use CountAllEnabledMessageReceiversRequest.ProtoReflect.Descriptor instead.
func (*CountAllEnabledMessageReceiversRequest) Descriptor() ([]byte, []int) {
return file_service_message_receiver_proto_rawDescGZIP(), []int{4}
return file_service_message_receiver_proto_rawDescGZIP(), []int{6}
}
func (x *CountAllEnabledMessageReceiversRequest) GetRole() string {
@@ -359,7 +454,7 @@ type UpdateMessageReceiversRequest_RecipientOption struct {
func (x *UpdateMessageReceiversRequest_RecipientOption) Reset() {
*x = UpdateMessageReceiversRequest_RecipientOption{}
if protoimpl.UnsafeEnabled {
mi := &file_service_message_receiver_proto_msgTypes[6]
mi := &file_service_message_receiver_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -372,7 +467,7 @@ func (x *UpdateMessageReceiversRequest_RecipientOption) String() string {
func (*UpdateMessageReceiversRequest_RecipientOption) ProtoMessage() {}
func (x *UpdateMessageReceiversRequest_RecipientOption) ProtoReflect() protoreflect.Message {
mi := &file_service_message_receiver_proto_msgTypes[6]
mi := &file_service_message_receiver_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -413,7 +508,7 @@ type UpdateMessageReceiversRequest_RecipientOptions struct {
func (x *UpdateMessageReceiversRequest_RecipientOptions) Reset() {
*x = UpdateMessageReceiversRequest_RecipientOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_service_message_receiver_proto_msgTypes[7]
mi := &file_service_message_receiver_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -426,7 +521,7 @@ func (x *UpdateMessageReceiversRequest_RecipientOptions) String() string {
func (*UpdateMessageReceiversRequest_RecipientOptions) ProtoMessage() {}
func (x *UpdateMessageReceiversRequest_RecipientOptions) ProtoReflect() protoreflect.Message {
mi := &file_service_message_receiver_proto_msgTypes[7]
mi := &file_service_message_receiver_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -514,6 +609,21 @@ var file_service_message_receiver_proto_rawDesc = []byte{
0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13,
0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69,
0x76, 0x65, 0x72, 0x52, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65,
0x69, 0x76, 0x65, 0x72, 0x73, 0x22, 0x6d, 0x0a, 0x3b, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
0x52, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
0x6e, 0x74, 0x49, 0x64, 0x22, 0x7f, 0x0a, 0x3c, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63,
0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13,
0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69,
0x76, 0x65, 0x72, 0x52, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65,
0x69, 0x76, 0x65, 0x72, 0x73, 0x22, 0x4c, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
@@ -528,7 +638,7 @@ var file_service_message_receiver_proto_rawDesc = []byte{
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65,
0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64,
0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x32, 0x8e, 0x03, 0x0a,
0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x32, 0xca, 0x04, 0x0a,
0x16, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72,
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4b, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74,
0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72,
@@ -542,19 +652,31 @@ var file_service_message_receiver_proto_rawDesc = []byte{
0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x2a, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65,
0x69, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a,
0x15, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65,
0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x63, 0x0a, 0x1f, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x2e, 0x70, 0x62,
0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x69, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xb9, 0x01,
0x0a, 0x34, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a,
0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x57, 0x69, 0x74, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70,
0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3f, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
0x64, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x15, 0x64, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76,
0x65, 0x72, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63,
0x63, 0x65, 0x73, 0x73, 0x12, 0x63, 0x0a, 0x1f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c,
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75,
0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70,
0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -569,38 +691,43 @@ func file_service_message_receiver_proto_rawDescGZIP() []byte {
return file_service_message_receiver_proto_rawDescData
}
var file_service_message_receiver_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
var file_service_message_receiver_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
var file_service_message_receiver_proto_goTypes = []interface{}{
(*UpdateMessageReceiversRequest)(nil), // 0: pb.UpdateMessageReceiversRequest
(*FindAllEnabledMessageReceiversRequest)(nil), // 1: pb.FindAllEnabledMessageReceiversRequest
(*FindAllEnabledMessageReceiversResponse)(nil), // 2: pb.FindAllEnabledMessageReceiversResponse
(*DeleteMessageReceiverRequest)(nil), // 3: pb.DeleteMessageReceiverRequest
(*CountAllEnabledMessageReceiversRequest)(nil), // 4: pb.CountAllEnabledMessageReceiversRequest
nil, // 5: pb.UpdateMessageReceiversRequest.RecipientOptionsEntry
(*UpdateMessageReceiversRequest_RecipientOption)(nil), // 6: pb.UpdateMessageReceiversRequest.RecipientOption
(*UpdateMessageReceiversRequest_RecipientOptions)(nil), // 7: pb.UpdateMessageReceiversRequest.RecipientOptions
(*MessageReceiver)(nil), // 8: pb.MessageReceiver
(*RPCSuccess)(nil), // 9: pb.RPCSuccess
(*RPCCountResponse)(nil), // 10: pb.RPCCountResponse
(*UpdateMessageReceiversRequest)(nil), // 0: pb.UpdateMessageReceiversRequest
(*FindAllEnabledMessageReceiversRequest)(nil), // 1: pb.FindAllEnabledMessageReceiversRequest
(*FindAllEnabledMessageReceiversResponse)(nil), // 2: pb.FindAllEnabledMessageReceiversResponse
(*FindAllEnabledMessageReceiversWithMessageRecipientIdRequest)(nil), // 3: pb.FindAllEnabledMessageReceiversWithMessageRecipientIdRequest
(*FindAllEnabledMessageReceiversWithMessageRecipientIdResponse)(nil), // 4: pb.FindAllEnabledMessageReceiversWithMessageRecipientIdResponse
(*DeleteMessageReceiverRequest)(nil), // 5: pb.DeleteMessageReceiverRequest
(*CountAllEnabledMessageReceiversRequest)(nil), // 6: pb.CountAllEnabledMessageReceiversRequest
nil, // 7: pb.UpdateMessageReceiversRequest.RecipientOptionsEntry
(*UpdateMessageReceiversRequest_RecipientOption)(nil), // 8: pb.UpdateMessageReceiversRequest.RecipientOption
(*UpdateMessageReceiversRequest_RecipientOptions)(nil), // 9: pb.UpdateMessageReceiversRequest.RecipientOptions
(*MessageReceiver)(nil), // 10: pb.MessageReceiver
(*RPCSuccess)(nil), // 11: pb.RPCSuccess
(*RPCCountResponse)(nil), // 12: pb.RPCCountResponse
}
var file_service_message_receiver_proto_depIdxs = []int32{
5, // 0: pb.UpdateMessageReceiversRequest.recipientOptions:type_name -> pb.UpdateMessageReceiversRequest.RecipientOptionsEntry
8, // 1: pb.FindAllEnabledMessageReceiversResponse.messageReceivers:type_name -> pb.MessageReceiver
7, // 2: pb.UpdateMessageReceiversRequest.RecipientOptionsEntry.value:type_name -> pb.UpdateMessageReceiversRequest.RecipientOptions
6, // 3: pb.UpdateMessageReceiversRequest.RecipientOptions.recipientOptions:type_name -> pb.UpdateMessageReceiversRequest.RecipientOption
0, // 4: pb.MessageReceiverService.updateMessageReceivers:input_type -> pb.UpdateMessageReceiversRequest
1, // 5: pb.MessageReceiverService.findAllEnabledMessageReceivers:input_type -> pb.FindAllEnabledMessageReceiversRequest
3, // 6: pb.MessageReceiverService.deleteMessageReceiver:input_type -> pb.DeleteMessageReceiverRequest
4, // 7: pb.MessageReceiverService.countAllEnabledMessageReceivers:input_type -> pb.CountAllEnabledMessageReceiversRequest
9, // 8: pb.MessageReceiverService.updateMessageReceivers:output_type -> pb.RPCSuccess
2, // 9: pb.MessageReceiverService.findAllEnabledMessageReceivers:output_type -> pb.FindAllEnabledMessageReceiversResponse
9, // 10: pb.MessageReceiverService.deleteMessageReceiver:output_type -> pb.RPCSuccess
10, // 11: pb.MessageReceiverService.countAllEnabledMessageReceivers:output_type -> pb.RPCCountResponse
8, // [8:12] is the sub-list for method output_type
4, // [4:8] is the sub-list for method input_type
4, // [4:4] is the sub-list for extension type_name
4, // [4:4] is the sub-list for extension extendee
0, // [0:4] is the sub-list for field type_name
7, // 0: pb.UpdateMessageReceiversRequest.recipientOptions:type_name -> pb.UpdateMessageReceiversRequest.RecipientOptionsEntry
10, // 1: pb.FindAllEnabledMessageReceiversResponse.messageReceivers:type_name -> pb.MessageReceiver
10, // 2: pb.FindAllEnabledMessageReceiversWithMessageRecipientIdResponse.messageReceivers:type_name -> pb.MessageReceiver
9, // 3: pb.UpdateMessageReceiversRequest.RecipientOptionsEntry.value:type_name -> pb.UpdateMessageReceiversRequest.RecipientOptions
8, // 4: pb.UpdateMessageReceiversRequest.RecipientOptions.recipientOptions:type_name -> pb.UpdateMessageReceiversRequest.RecipientOption
0, // 5: pb.MessageReceiverService.updateMessageReceivers:input_type -> pb.UpdateMessageReceiversRequest
1, // 6: pb.MessageReceiverService.findAllEnabledMessageReceivers:input_type -> pb.FindAllEnabledMessageReceiversRequest
3, // 7: pb.MessageReceiverService.findAllEnabledMessageReceiversWithMessageRecipientId:input_type -> pb.FindAllEnabledMessageReceiversWithMessageRecipientIdRequest
5, // 8: pb.MessageReceiverService.deleteMessageReceiver:input_type -> pb.DeleteMessageReceiverRequest
6, // 9: pb.MessageReceiverService.countAllEnabledMessageReceivers:input_type -> pb.CountAllEnabledMessageReceiversRequest
11, // 10: pb.MessageReceiverService.updateMessageReceivers:output_type -> pb.RPCSuccess
2, // 11: pb.MessageReceiverService.findAllEnabledMessageReceivers:output_type -> pb.FindAllEnabledMessageReceiversResponse
4, // 12: pb.MessageReceiverService.findAllEnabledMessageReceiversWithMessageRecipientId:output_type -> pb.FindAllEnabledMessageReceiversWithMessageRecipientIdResponse
11, // 13: pb.MessageReceiverService.deleteMessageReceiver:output_type -> pb.RPCSuccess
12, // 14: pb.MessageReceiverService.countAllEnabledMessageReceivers:output_type -> pb.RPCCountResponse
10, // [10:15] is the sub-list for method output_type
5, // [5:10] is the sub-list for method input_type
5, // [5:5] is the sub-list for extension type_name
5, // [5:5] is the sub-list for extension extendee
0, // [0:5] is the sub-list for field type_name
}
func init() { file_service_message_receiver_proto_init() }
@@ -648,7 +775,7 @@ func file_service_message_receiver_proto_init() {
}
}
file_service_message_receiver_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteMessageReceiverRequest); i {
switch v := v.(*FindAllEnabledMessageReceiversWithMessageRecipientIdRequest); i {
case 0:
return &v.state
case 1:
@@ -660,7 +787,19 @@ func file_service_message_receiver_proto_init() {
}
}
file_service_message_receiver_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CountAllEnabledMessageReceiversRequest); i {
switch v := v.(*FindAllEnabledMessageReceiversWithMessageRecipientIdResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_message_receiver_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteMessageReceiverRequest); i {
case 0:
return &v.state
case 1:
@@ -672,6 +811,18 @@ func file_service_message_receiver_proto_init() {
}
}
file_service_message_receiver_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CountAllEnabledMessageReceiversRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_message_receiver_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateMessageReceiversRequest_RecipientOption); i {
case 0:
return &v.state
@@ -683,7 +834,7 @@ func file_service_message_receiver_proto_init() {
return nil
}
}
file_service_message_receiver_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
file_service_message_receiver_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateMessageReceiversRequest_RecipientOptions); i {
case 0:
return &v.state
@@ -702,7 +853,7 @@ func file_service_message_receiver_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_message_receiver_proto_rawDesc,
NumEnums: 0,
NumMessages: 8,
NumMessages: 10,
NumExtensions: 0,
NumServices: 1,
},

View File

@@ -19,10 +19,11 @@ import (
const _ = grpc.SupportPackageIsVersion7
const (
MessageReceiverService_UpdateMessageReceivers_FullMethodName = "/pb.MessageReceiverService/updateMessageReceivers"
MessageReceiverService_FindAllEnabledMessageReceivers_FullMethodName = "/pb.MessageReceiverService/findAllEnabledMessageReceivers"
MessageReceiverService_DeleteMessageReceiver_FullMethodName = "/pb.MessageReceiverService/deleteMessageReceiver"
MessageReceiverService_CountAllEnabledMessageReceivers_FullMethodName = "/pb.MessageReceiverService/countAllEnabledMessageReceivers"
MessageReceiverService_UpdateMessageReceivers_FullMethodName = "/pb.MessageReceiverService/updateMessageReceivers"
MessageReceiverService_FindAllEnabledMessageReceivers_FullMethodName = "/pb.MessageReceiverService/findAllEnabledMessageReceivers"
MessageReceiverService_FindAllEnabledMessageReceiversWithMessageRecipientId_FullMethodName = "/pb.MessageReceiverService/findAllEnabledMessageReceiversWithMessageRecipientId"
MessageReceiverService_DeleteMessageReceiver_FullMethodName = "/pb.MessageReceiverService/deleteMessageReceiver"
MessageReceiverService_CountAllEnabledMessageReceivers_FullMethodName = "/pb.MessageReceiverService/countAllEnabledMessageReceivers"
)
// MessageReceiverServiceClient is the client API for MessageReceiverService service.
@@ -33,6 +34,8 @@ type MessageReceiverServiceClient interface {
UpdateMessageReceivers(ctx context.Context, in *UpdateMessageReceiversRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 查找接收者
FindAllEnabledMessageReceivers(ctx context.Context, in *FindAllEnabledMessageReceiversRequest, opts ...grpc.CallOption) (*FindAllEnabledMessageReceiversResponse, error)
// 根据接收人查找关联的接收者
FindAllEnabledMessageReceiversWithMessageRecipientId(ctx context.Context, in *FindAllEnabledMessageReceiversWithMessageRecipientIdRequest, opts ...grpc.CallOption) (*FindAllEnabledMessageReceiversWithMessageRecipientIdResponse, error)
// 删除接收者
DeleteMessageReceiver(ctx context.Context, in *DeleteMessageReceiverRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 计算接收者数量
@@ -65,6 +68,15 @@ func (c *messageReceiverServiceClient) FindAllEnabledMessageReceivers(ctx contex
return out, nil
}
func (c *messageReceiverServiceClient) FindAllEnabledMessageReceiversWithMessageRecipientId(ctx context.Context, in *FindAllEnabledMessageReceiversWithMessageRecipientIdRequest, opts ...grpc.CallOption) (*FindAllEnabledMessageReceiversWithMessageRecipientIdResponse, error) {
out := new(FindAllEnabledMessageReceiversWithMessageRecipientIdResponse)
err := c.cc.Invoke(ctx, MessageReceiverService_FindAllEnabledMessageReceiversWithMessageRecipientId_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *messageReceiverServiceClient) DeleteMessageReceiver(ctx context.Context, in *DeleteMessageReceiverRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MessageReceiverService_DeleteMessageReceiver_FullMethodName, in, out, opts...)
@@ -91,6 +103,8 @@ type MessageReceiverServiceServer interface {
UpdateMessageReceivers(context.Context, *UpdateMessageReceiversRequest) (*RPCSuccess, error)
// 查找接收者
FindAllEnabledMessageReceivers(context.Context, *FindAllEnabledMessageReceiversRequest) (*FindAllEnabledMessageReceiversResponse, error)
// 根据接收人查找关联的接收者
FindAllEnabledMessageReceiversWithMessageRecipientId(context.Context, *FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) (*FindAllEnabledMessageReceiversWithMessageRecipientIdResponse, error)
// 删除接收者
DeleteMessageReceiver(context.Context, *DeleteMessageReceiverRequest) (*RPCSuccess, error)
// 计算接收者数量
@@ -107,6 +121,9 @@ func (UnimplementedMessageReceiverServiceServer) UpdateMessageReceivers(context.
func (UnimplementedMessageReceiverServiceServer) FindAllEnabledMessageReceivers(context.Context, *FindAllEnabledMessageReceiversRequest) (*FindAllEnabledMessageReceiversResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindAllEnabledMessageReceivers not implemented")
}
func (UnimplementedMessageReceiverServiceServer) FindAllEnabledMessageReceiversWithMessageRecipientId(context.Context, *FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) (*FindAllEnabledMessageReceiversWithMessageRecipientIdResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindAllEnabledMessageReceiversWithMessageRecipientId not implemented")
}
func (UnimplementedMessageReceiverServiceServer) DeleteMessageReceiver(context.Context, *DeleteMessageReceiverRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteMessageReceiver not implemented")
}
@@ -161,6 +178,24 @@ func _MessageReceiverService_FindAllEnabledMessageReceivers_Handler(srv interfac
return interceptor(ctx, in, info, handler)
}
func _MessageReceiverService_FindAllEnabledMessageReceiversWithMessageRecipientId_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindAllEnabledMessageReceiversWithMessageRecipientIdRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MessageReceiverServiceServer).FindAllEnabledMessageReceiversWithMessageRecipientId(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MessageReceiverService_FindAllEnabledMessageReceiversWithMessageRecipientId_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MessageReceiverServiceServer).FindAllEnabledMessageReceiversWithMessageRecipientId(ctx, req.(*FindAllEnabledMessageReceiversWithMessageRecipientIdRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MessageReceiverService_DeleteMessageReceiver_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteMessageReceiverRequest)
if err := dec(in); err != nil {
@@ -212,6 +247,10 @@ var MessageReceiverService_ServiceDesc = grpc.ServiceDesc{
MethodName: "findAllEnabledMessageReceivers",
Handler: _MessageReceiverService_FindAllEnabledMessageReceivers_Handler,
},
{
MethodName: "findAllEnabledMessageReceiversWithMessageRecipientId",
Handler: _MessageReceiverService_FindAllEnabledMessageReceiversWithMessageRecipientId_Handler,
},
{
MethodName: "deleteMessageReceiver",
Handler: _MessageReceiverService_DeleteMessageReceiver_Handler,

View File

@@ -26,13 +26,14 @@ type CreateMessageRecipientRequest struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AdminId int64 `protobuf:"varint,1,opt,name=adminId,proto3" json:"adminId,omitempty"`
MessageMediaInstanceId int64 `protobuf:"varint,2,opt,name=messageMediaInstanceId,proto3" json:"messageMediaInstanceId,omitempty"`
MessageRecipientGroupIds []int64 `protobuf:"varint,3,rep,packed,name=messageRecipientGroupIds,proto3" json:"messageRecipientGroupIds,omitempty"`
Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
User string `protobuf:"bytes,5,opt,name=user,proto3" json:"user,omitempty"`
TimeFrom string `protobuf:"bytes,6,opt,name=timeFrom,proto3" json:"timeFrom,omitempty"`
TimeTo string `protobuf:"bytes,7,opt,name=timeTo,proto3" json:"timeTo,omitempty"`
AdminId int64 `protobuf:"varint,1,opt,name=adminId,proto3" json:"adminId,omitempty"` // 关联的管理员ID
MessageMediaInstanceId int64 `protobuf:"varint,2,opt,name=messageMediaInstanceId,proto3" json:"messageMediaInstanceId,omitempty"` // 媒介实例ID
MessageRecipientGroupIds []int64 `protobuf:"varint,3,rep,packed,name=messageRecipientGroupIds,proto3" json:"messageRecipientGroupIds,omitempty"` // 所属分组ID列表
Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"` // 可选项,备注描述
User string `protobuf:"bytes,5,opt,name=user,proto3" json:"user,omitempty"` // 用户标识
TimeFrom string `protobuf:"bytes,6,opt,name=timeFrom,proto3" json:"timeFrom,omitempty"` // 可选项,接收消息的,开始时间
TimeTo string `protobuf:"bytes,7,opt,name=timeTo,proto3" json:"timeTo,omitempty"` // 可选项,接收消息的,结束时间
NodeClusterIds []int64 `protobuf:"varint,8,rep,packed,name=nodeClusterIds,proto3" json:"nodeClusterIds,omitempty"` // 关联的CDN边缘节点集群ID列表
}
func (x *CreateMessageRecipientRequest) Reset() {
@@ -116,6 +117,13 @@ func (x *CreateMessageRecipientRequest) GetTimeTo() string {
return ""
}
func (x *CreateMessageRecipientRequest) GetNodeClusterIds() []int64 {
if x != nil {
return x.NodeClusterIds
}
return nil
}
type CreateMessageRecipientResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -178,6 +186,7 @@ type UpdateMessageRecipientRequest struct {
User string `protobuf:"bytes,7,opt,name=user,proto3" json:"user,omitempty"`
TimeFrom string `protobuf:"bytes,8,opt,name=timeFrom,proto3" json:"timeFrom,omitempty"`
TimeTo string `protobuf:"bytes,9,opt,name=timeTo,proto3" json:"timeTo,omitempty"`
NodeClusterIds []int64 `protobuf:"varint,10,rep,packed,name=nodeClusterIds,proto3" json:"nodeClusterIds,omitempty"` // 关联的CDN边缘节点集群ID列表
}
func (x *UpdateMessageRecipientRequest) Reset() {
@@ -275,6 +284,13 @@ func (x *UpdateMessageRecipientRequest) GetTimeTo() string {
return ""
}
func (x *UpdateMessageRecipientRequest) GetNodeClusterIds() []int64 {
if x != nil {
return x.NodeClusterIds
}
return nil
}
// 删除接收人
type DeleteMessageRecipientRequest struct {
state protoimpl.MessageState
@@ -634,7 +650,7 @@ var file_service_message_recipient_proto_rawDesc = []byte{
0x64, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x69,
0x70, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x6d, 0x6f, 0x64,
0x65, 0x6c, 0x73, 0x2f, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x97, 0x02, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbf, 0x02, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x6d, 0x69,
0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e,
@@ -652,33 +668,38 @@ var file_service_message_recipient_proto_rawDesc = []byte{
0x74, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
0x74, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6d, 0x65,
0x54, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x6f,
0x22, 0x50, 0x0a, 0x1e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63,
0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12,
0x12, 0x26, 0x0a, 0x0e, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49,
0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0e, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c,
0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x50, 0x0a, 0x1e, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x83, 0x03, 0x0a, 0x1d, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69,
0x70, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x12,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74,
0x49, 0x64, 0x22, 0xdb, 0x02, 0x0a, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
0x52, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x36,
0x0a, 0x16, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x18, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49,
0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x03, 0x52, 0x18, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49,
0x64, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x06, 0x20, 0x01,
0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72,
0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08,
0x74, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
0x74, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6d, 0x65,
0x54, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x6f,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07,
0x61, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61,
0x64, 0x6d, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x16, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64,
0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d,
0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x3a,
0x0a, 0x18, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x03,
0x52, 0x18, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04,
0x69, 0x73, 0x4f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e,
0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x75, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6d,
0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6d,
0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
0x52, 0x06, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x6f, 0x12, 0x26, 0x0a, 0x0e, 0x6e, 0x6f, 0x64, 0x65,
0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x03,
0x52, 0x0e, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73,
0x22, 0x4f, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x2e, 0x0a, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69,

File diff suppressed because it is too large Load Diff

View File

@@ -20,12 +20,12 @@ const _ = grpc.SupportPackageIsVersion7
const (
MessageTaskService_CreateMessageTask_FullMethodName = "/pb.MessageTaskService/createMessageTask"
MessageTaskService_FindSendingMessageTasks_FullMethodName = "/pb.MessageTaskService/findSendingMessageTasks"
MessageTaskService_UpdateMessageTaskStatus_FullMethodName = "/pb.MessageTaskService/updateMessageTaskStatus"
MessageTaskService_DeleteMessageTask_FullMethodName = "/pb.MessageTaskService/deleteMessageTask"
MessageTaskService_FindEnabledMessageTask_FullMethodName = "/pb.MessageTaskService/findEnabledMessageTask"
MessageTaskService_CountMessageTasksWithStatus_FullMethodName = "/pb.MessageTaskService/countMessageTasksWithStatus"
MessageTaskService_ListMessageTasksWithStatus_FullMethodName = "/pb.MessageTaskService/listMessageTasksWithStatus"
MessageTaskService_SendMessageTask_FullMethodName = "/pb.MessageTaskService/sendMessageTask"
MessageTaskService_UpdateMessageTaskStatus_FullMethodName = "/pb.MessageTaskService/updateMessageTaskStatus"
)
// MessageTaskServiceClient is the client API for MessageTaskService service.
@@ -34,10 +34,6 @@ const (
type MessageTaskServiceClient interface {
// 创建消息任务
CreateMessageTask(ctx context.Context, in *CreateMessageTaskRequest, opts ...grpc.CallOption) (*CreateMessageTaskResponse, error)
// 查找要发送的消息任务
FindSendingMessageTasks(ctx context.Context, in *FindSendingMessageTasksRequest, opts ...grpc.CallOption) (*FindSendingMessageTasksResponse, error)
// 修改消息任务状态
UpdateMessageTaskStatus(ctx context.Context, in *UpdateMessageTaskStatusRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 删除消息任务
DeleteMessageTask(ctx context.Context, in *DeleteMessageTaskRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 读取消息任务状态
@@ -46,6 +42,10 @@ type MessageTaskServiceClient interface {
CountMessageTasksWithStatus(ctx context.Context, in *CountMessageTasksWithStatusRequest, opts ...grpc.CallOption) (*RPCCountResponse, error)
// 根据状态列出某页任务
ListMessageTasksWithStatus(ctx context.Context, in *ListMessageTasksWithStatusRequest, opts ...grpc.CallOption) (*ListMessageTasksWithStatusResponse, error)
// 发送某个消息任务
SendMessageTask(ctx context.Context, in *SendMessageTaskRequest, opts ...grpc.CallOption) (*SendMessageTaskResponse, error)
// 修改消息任务状态
UpdateMessageTaskStatus(ctx context.Context, in *UpdateMessageTaskStatusRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
}
type messageTaskServiceClient struct {
@@ -65,24 +65,6 @@ func (c *messageTaskServiceClient) CreateMessageTask(ctx context.Context, in *Cr
return out, nil
}
func (c *messageTaskServiceClient) FindSendingMessageTasks(ctx context.Context, in *FindSendingMessageTasksRequest, opts ...grpc.CallOption) (*FindSendingMessageTasksResponse, error) {
out := new(FindSendingMessageTasksResponse)
err := c.cc.Invoke(ctx, MessageTaskService_FindSendingMessageTasks_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *messageTaskServiceClient) UpdateMessageTaskStatus(ctx context.Context, in *UpdateMessageTaskStatusRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MessageTaskService_UpdateMessageTaskStatus_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *messageTaskServiceClient) DeleteMessageTask(ctx context.Context, in *DeleteMessageTaskRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MessageTaskService_DeleteMessageTask_FullMethodName, in, out, opts...)
@@ -119,16 +101,30 @@ func (c *messageTaskServiceClient) ListMessageTasksWithStatus(ctx context.Contex
return out, nil
}
func (c *messageTaskServiceClient) SendMessageTask(ctx context.Context, in *SendMessageTaskRequest, opts ...grpc.CallOption) (*SendMessageTaskResponse, error) {
out := new(SendMessageTaskResponse)
err := c.cc.Invoke(ctx, MessageTaskService_SendMessageTask_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *messageTaskServiceClient) UpdateMessageTaskStatus(ctx context.Context, in *UpdateMessageTaskStatusRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MessageTaskService_UpdateMessageTaskStatus_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// MessageTaskServiceServer is the server API for MessageTaskService service.
// All implementations should embed UnimplementedMessageTaskServiceServer
// for forward compatibility
type MessageTaskServiceServer interface {
// 创建消息任务
CreateMessageTask(context.Context, *CreateMessageTaskRequest) (*CreateMessageTaskResponse, error)
// 查找要发送的消息任务
FindSendingMessageTasks(context.Context, *FindSendingMessageTasksRequest) (*FindSendingMessageTasksResponse, error)
// 修改消息任务状态
UpdateMessageTaskStatus(context.Context, *UpdateMessageTaskStatusRequest) (*RPCSuccess, error)
// 删除消息任务
DeleteMessageTask(context.Context, *DeleteMessageTaskRequest) (*RPCSuccess, error)
// 读取消息任务状态
@@ -137,6 +133,10 @@ type MessageTaskServiceServer interface {
CountMessageTasksWithStatus(context.Context, *CountMessageTasksWithStatusRequest) (*RPCCountResponse, error)
// 根据状态列出某页任务
ListMessageTasksWithStatus(context.Context, *ListMessageTasksWithStatusRequest) (*ListMessageTasksWithStatusResponse, error)
// 发送某个消息任务
SendMessageTask(context.Context, *SendMessageTaskRequest) (*SendMessageTaskResponse, error)
// 修改消息任务状态
UpdateMessageTaskStatus(context.Context, *UpdateMessageTaskStatusRequest) (*RPCSuccess, error)
}
// UnimplementedMessageTaskServiceServer should be embedded to have forward compatible implementations.
@@ -146,12 +146,6 @@ type UnimplementedMessageTaskServiceServer struct {
func (UnimplementedMessageTaskServiceServer) CreateMessageTask(context.Context, *CreateMessageTaskRequest) (*CreateMessageTaskResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CreateMessageTask not implemented")
}
func (UnimplementedMessageTaskServiceServer) FindSendingMessageTasks(context.Context, *FindSendingMessageTasksRequest) (*FindSendingMessageTasksResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindSendingMessageTasks not implemented")
}
func (UnimplementedMessageTaskServiceServer) UpdateMessageTaskStatus(context.Context, *UpdateMessageTaskStatusRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateMessageTaskStatus not implemented")
}
func (UnimplementedMessageTaskServiceServer) DeleteMessageTask(context.Context, *DeleteMessageTaskRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteMessageTask not implemented")
}
@@ -164,6 +158,12 @@ func (UnimplementedMessageTaskServiceServer) CountMessageTasksWithStatus(context
func (UnimplementedMessageTaskServiceServer) ListMessageTasksWithStatus(context.Context, *ListMessageTasksWithStatusRequest) (*ListMessageTasksWithStatusResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListMessageTasksWithStatus not implemented")
}
func (UnimplementedMessageTaskServiceServer) SendMessageTask(context.Context, *SendMessageTaskRequest) (*SendMessageTaskResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SendMessageTask not implemented")
}
func (UnimplementedMessageTaskServiceServer) UpdateMessageTaskStatus(context.Context, *UpdateMessageTaskStatusRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateMessageTaskStatus not implemented")
}
// UnsafeMessageTaskServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to MessageTaskServiceServer will
@@ -194,42 +194,6 @@ func _MessageTaskService_CreateMessageTask_Handler(srv interface{}, ctx context.
return interceptor(ctx, in, info, handler)
}
func _MessageTaskService_FindSendingMessageTasks_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindSendingMessageTasksRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MessageTaskServiceServer).FindSendingMessageTasks(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MessageTaskService_FindSendingMessageTasks_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MessageTaskServiceServer).FindSendingMessageTasks(ctx, req.(*FindSendingMessageTasksRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MessageTaskService_UpdateMessageTaskStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateMessageTaskStatusRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MessageTaskServiceServer).UpdateMessageTaskStatus(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MessageTaskService_UpdateMessageTaskStatus_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MessageTaskServiceServer).UpdateMessageTaskStatus(ctx, req.(*UpdateMessageTaskStatusRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MessageTaskService_DeleteMessageTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteMessageTaskRequest)
if err := dec(in); err != nil {
@@ -302,6 +266,42 @@ func _MessageTaskService_ListMessageTasksWithStatus_Handler(srv interface{}, ctx
return interceptor(ctx, in, info, handler)
}
func _MessageTaskService_SendMessageTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(SendMessageTaskRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MessageTaskServiceServer).SendMessageTask(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MessageTaskService_SendMessageTask_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MessageTaskServiceServer).SendMessageTask(ctx, req.(*SendMessageTaskRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MessageTaskService_UpdateMessageTaskStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateMessageTaskStatusRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MessageTaskServiceServer).UpdateMessageTaskStatus(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MessageTaskService_UpdateMessageTaskStatus_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MessageTaskServiceServer).UpdateMessageTaskStatus(ctx, req.(*UpdateMessageTaskStatusRequest))
}
return interceptor(ctx, in, info, handler)
}
// MessageTaskService_ServiceDesc is the grpc.ServiceDesc for MessageTaskService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@@ -313,14 +313,6 @@ var MessageTaskService_ServiceDesc = grpc.ServiceDesc{
MethodName: "createMessageTask",
Handler: _MessageTaskService_CreateMessageTask_Handler,
},
{
MethodName: "findSendingMessageTasks",
Handler: _MessageTaskService_FindSendingMessageTasks_Handler,
},
{
MethodName: "updateMessageTaskStatus",
Handler: _MessageTaskService_UpdateMessageTaskStatus_Handler,
},
{
MethodName: "deleteMessageTask",
Handler: _MessageTaskService_DeleteMessageTask_Handler,
@@ -337,6 +329,14 @@ var MessageTaskService_ServiceDesc = grpc.ServiceDesc{
MethodName: "listMessageTasksWithStatus",
Handler: _MessageTaskService_ListMessageTasksWithStatus_Handler,
},
{
MethodName: "sendMessageTask",
Handler: _MessageTaskService_SendMessageTask_Handler,
},
{
MethodName: "updateMessageTaskStatus",
Handler: _MessageTaskService_UpdateMessageTaskStatus_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "service_message_task.proto",

File diff suppressed because it is too large Load Diff

View File

@@ -1,421 +0,0 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc v3.19.4
// source: service_monitor_node.proto
package pb
import (
context "context"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
)
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
const (
MonitorNodeService_CreateMonitorNode_FullMethodName = "/pb.MonitorNodeService/createMonitorNode"
MonitorNodeService_UpdateMonitorNode_FullMethodName = "/pb.MonitorNodeService/updateMonitorNode"
MonitorNodeService_DeleteMonitorNode_FullMethodName = "/pb.MonitorNodeService/deleteMonitorNode"
MonitorNodeService_FindAllEnabledMonitorNodes_FullMethodName = "/pb.MonitorNodeService/findAllEnabledMonitorNodes"
MonitorNodeService_CountAllEnabledMonitorNodes_FullMethodName = "/pb.MonitorNodeService/countAllEnabledMonitorNodes"
MonitorNodeService_ListEnabledMonitorNodes_FullMethodName = "/pb.MonitorNodeService/listEnabledMonitorNodes"
MonitorNodeService_FindEnabledMonitorNode_FullMethodName = "/pb.MonitorNodeService/findEnabledMonitorNode"
MonitorNodeService_FindCurrentMonitorNode_FullMethodName = "/pb.MonitorNodeService/findCurrentMonitorNode"
MonitorNodeService_UpdateMonitorNodeStatus_FullMethodName = "/pb.MonitorNodeService/updateMonitorNodeStatus"
)
// MonitorNodeServiceClient is the client API for MonitorNodeService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
type MonitorNodeServiceClient interface {
// 创建监控节点
CreateMonitorNode(ctx context.Context, in *CreateMonitorNodeRequest, opts ...grpc.CallOption) (*CreateMonitorNodeResponse, error)
// 修改监控节点
UpdateMonitorNode(ctx context.Context, in *UpdateMonitorNodeRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 删除监控节点
DeleteMonitorNode(ctx context.Context, in *DeleteMonitorNodeRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 列出所有可用监控节点
FindAllEnabledMonitorNodes(ctx context.Context, in *FindAllEnabledMonitorNodesRequest, opts ...grpc.CallOption) (*FindAllEnabledMonitorNodesResponse, error)
// 计算监控节点数量
CountAllEnabledMonitorNodes(ctx context.Context, in *CountAllEnabledMonitorNodesRequest, opts ...grpc.CallOption) (*RPCCountResponse, error)
// 列出单页的监控节点
ListEnabledMonitorNodes(ctx context.Context, in *ListEnabledMonitorNodesRequest, opts ...grpc.CallOption) (*ListEnabledMonitorNodesResponse, error)
// 根据ID查找节点
FindEnabledMonitorNode(ctx context.Context, in *FindEnabledMonitorNodeRequest, opts ...grpc.CallOption) (*FindEnabledMonitorNodeResponse, error)
// 获取当前监控节点信息
FindCurrentMonitorNode(ctx context.Context, in *FindCurrentMonitorNodeRequest, opts ...grpc.CallOption) (*FindCurrentMonitorNodeResponse, error)
// 更新节点状态
UpdateMonitorNodeStatus(ctx context.Context, in *UpdateMonitorNodeStatusRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
}
type monitorNodeServiceClient struct {
cc grpc.ClientConnInterface
}
func NewMonitorNodeServiceClient(cc grpc.ClientConnInterface) MonitorNodeServiceClient {
return &monitorNodeServiceClient{cc}
}
func (c *monitorNodeServiceClient) CreateMonitorNode(ctx context.Context, in *CreateMonitorNodeRequest, opts ...grpc.CallOption) (*CreateMonitorNodeResponse, error) {
out := new(CreateMonitorNodeResponse)
err := c.cc.Invoke(ctx, MonitorNodeService_CreateMonitorNode_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *monitorNodeServiceClient) UpdateMonitorNode(ctx context.Context, in *UpdateMonitorNodeRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MonitorNodeService_UpdateMonitorNode_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *monitorNodeServiceClient) DeleteMonitorNode(ctx context.Context, in *DeleteMonitorNodeRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MonitorNodeService_DeleteMonitorNode_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *monitorNodeServiceClient) FindAllEnabledMonitorNodes(ctx context.Context, in *FindAllEnabledMonitorNodesRequest, opts ...grpc.CallOption) (*FindAllEnabledMonitorNodesResponse, error) {
out := new(FindAllEnabledMonitorNodesResponse)
err := c.cc.Invoke(ctx, MonitorNodeService_FindAllEnabledMonitorNodes_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *monitorNodeServiceClient) CountAllEnabledMonitorNodes(ctx context.Context, in *CountAllEnabledMonitorNodesRequest, opts ...grpc.CallOption) (*RPCCountResponse, error) {
out := new(RPCCountResponse)
err := c.cc.Invoke(ctx, MonitorNodeService_CountAllEnabledMonitorNodes_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *monitorNodeServiceClient) ListEnabledMonitorNodes(ctx context.Context, in *ListEnabledMonitorNodesRequest, opts ...grpc.CallOption) (*ListEnabledMonitorNodesResponse, error) {
out := new(ListEnabledMonitorNodesResponse)
err := c.cc.Invoke(ctx, MonitorNodeService_ListEnabledMonitorNodes_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *monitorNodeServiceClient) FindEnabledMonitorNode(ctx context.Context, in *FindEnabledMonitorNodeRequest, opts ...grpc.CallOption) (*FindEnabledMonitorNodeResponse, error) {
out := new(FindEnabledMonitorNodeResponse)
err := c.cc.Invoke(ctx, MonitorNodeService_FindEnabledMonitorNode_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *monitorNodeServiceClient) FindCurrentMonitorNode(ctx context.Context, in *FindCurrentMonitorNodeRequest, opts ...grpc.CallOption) (*FindCurrentMonitorNodeResponse, error) {
out := new(FindCurrentMonitorNodeResponse)
err := c.cc.Invoke(ctx, MonitorNodeService_FindCurrentMonitorNode_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *monitorNodeServiceClient) UpdateMonitorNodeStatus(ctx context.Context, in *UpdateMonitorNodeStatusRequest, opts ...grpc.CallOption) (*RPCSuccess, error) {
out := new(RPCSuccess)
err := c.cc.Invoke(ctx, MonitorNodeService_UpdateMonitorNodeStatus_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// MonitorNodeServiceServer is the server API for MonitorNodeService service.
// All implementations should embed UnimplementedMonitorNodeServiceServer
// for forward compatibility
type MonitorNodeServiceServer interface {
// 创建监控节点
CreateMonitorNode(context.Context, *CreateMonitorNodeRequest) (*CreateMonitorNodeResponse, error)
// 修改监控节点
UpdateMonitorNode(context.Context, *UpdateMonitorNodeRequest) (*RPCSuccess, error)
// 删除监控节点
DeleteMonitorNode(context.Context, *DeleteMonitorNodeRequest) (*RPCSuccess, error)
// 列出所有可用监控节点
FindAllEnabledMonitorNodes(context.Context, *FindAllEnabledMonitorNodesRequest) (*FindAllEnabledMonitorNodesResponse, error)
// 计算监控节点数量
CountAllEnabledMonitorNodes(context.Context, *CountAllEnabledMonitorNodesRequest) (*RPCCountResponse, error)
// 列出单页的监控节点
ListEnabledMonitorNodes(context.Context, *ListEnabledMonitorNodesRequest) (*ListEnabledMonitorNodesResponse, error)
// 根据ID查找节点
FindEnabledMonitorNode(context.Context, *FindEnabledMonitorNodeRequest) (*FindEnabledMonitorNodeResponse, error)
// 获取当前监控节点信息
FindCurrentMonitorNode(context.Context, *FindCurrentMonitorNodeRequest) (*FindCurrentMonitorNodeResponse, error)
// 更新节点状态
UpdateMonitorNodeStatus(context.Context, *UpdateMonitorNodeStatusRequest) (*RPCSuccess, error)
}
// UnimplementedMonitorNodeServiceServer should be embedded to have forward compatible implementations.
type UnimplementedMonitorNodeServiceServer struct {
}
func (UnimplementedMonitorNodeServiceServer) CreateMonitorNode(context.Context, *CreateMonitorNodeRequest) (*CreateMonitorNodeResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CreateMonitorNode not implemented")
}
func (UnimplementedMonitorNodeServiceServer) UpdateMonitorNode(context.Context, *UpdateMonitorNodeRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateMonitorNode not implemented")
}
func (UnimplementedMonitorNodeServiceServer) DeleteMonitorNode(context.Context, *DeleteMonitorNodeRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method DeleteMonitorNode not implemented")
}
func (UnimplementedMonitorNodeServiceServer) FindAllEnabledMonitorNodes(context.Context, *FindAllEnabledMonitorNodesRequest) (*FindAllEnabledMonitorNodesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindAllEnabledMonitorNodes not implemented")
}
func (UnimplementedMonitorNodeServiceServer) CountAllEnabledMonitorNodes(context.Context, *CountAllEnabledMonitorNodesRequest) (*RPCCountResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CountAllEnabledMonitorNodes not implemented")
}
func (UnimplementedMonitorNodeServiceServer) ListEnabledMonitorNodes(context.Context, *ListEnabledMonitorNodesRequest) (*ListEnabledMonitorNodesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListEnabledMonitorNodes not implemented")
}
func (UnimplementedMonitorNodeServiceServer) FindEnabledMonitorNode(context.Context, *FindEnabledMonitorNodeRequest) (*FindEnabledMonitorNodeResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindEnabledMonitorNode not implemented")
}
func (UnimplementedMonitorNodeServiceServer) FindCurrentMonitorNode(context.Context, *FindCurrentMonitorNodeRequest) (*FindCurrentMonitorNodeResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindCurrentMonitorNode not implemented")
}
func (UnimplementedMonitorNodeServiceServer) UpdateMonitorNodeStatus(context.Context, *UpdateMonitorNodeStatusRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateMonitorNodeStatus not implemented")
}
// UnsafeMonitorNodeServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to MonitorNodeServiceServer will
// result in compilation errors.
type UnsafeMonitorNodeServiceServer interface {
mustEmbedUnimplementedMonitorNodeServiceServer()
}
func RegisterMonitorNodeServiceServer(s grpc.ServiceRegistrar, srv MonitorNodeServiceServer) {
s.RegisterService(&MonitorNodeService_ServiceDesc, srv)
}
func _MonitorNodeService_CreateMonitorNode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateMonitorNodeRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).CreateMonitorNode(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_CreateMonitorNode_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).CreateMonitorNode(ctx, req.(*CreateMonitorNodeRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MonitorNodeService_UpdateMonitorNode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateMonitorNodeRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).UpdateMonitorNode(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_UpdateMonitorNode_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).UpdateMonitorNode(ctx, req.(*UpdateMonitorNodeRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MonitorNodeService_DeleteMonitorNode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteMonitorNodeRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).DeleteMonitorNode(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_DeleteMonitorNode_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).DeleteMonitorNode(ctx, req.(*DeleteMonitorNodeRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MonitorNodeService_FindAllEnabledMonitorNodes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindAllEnabledMonitorNodesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).FindAllEnabledMonitorNodes(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_FindAllEnabledMonitorNodes_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).FindAllEnabledMonitorNodes(ctx, req.(*FindAllEnabledMonitorNodesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MonitorNodeService_CountAllEnabledMonitorNodes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CountAllEnabledMonitorNodesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).CountAllEnabledMonitorNodes(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_CountAllEnabledMonitorNodes_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).CountAllEnabledMonitorNodes(ctx, req.(*CountAllEnabledMonitorNodesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MonitorNodeService_ListEnabledMonitorNodes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListEnabledMonitorNodesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).ListEnabledMonitorNodes(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_ListEnabledMonitorNodes_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).ListEnabledMonitorNodes(ctx, req.(*ListEnabledMonitorNodesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MonitorNodeService_FindEnabledMonitorNode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindEnabledMonitorNodeRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).FindEnabledMonitorNode(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_FindEnabledMonitorNode_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).FindEnabledMonitorNode(ctx, req.(*FindEnabledMonitorNodeRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MonitorNodeService_FindCurrentMonitorNode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindCurrentMonitorNodeRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).FindCurrentMonitorNode(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_FindCurrentMonitorNode_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).FindCurrentMonitorNode(ctx, req.(*FindCurrentMonitorNodeRequest))
}
return interceptor(ctx, in, info, handler)
}
func _MonitorNodeService_UpdateMonitorNodeStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateMonitorNodeStatusRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(MonitorNodeServiceServer).UpdateMonitorNodeStatus(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: MonitorNodeService_UpdateMonitorNodeStatus_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(MonitorNodeServiceServer).UpdateMonitorNodeStatus(ctx, req.(*UpdateMonitorNodeStatusRequest))
}
return interceptor(ctx, in, info, handler)
}
// MonitorNodeService_ServiceDesc is the grpc.ServiceDesc for MonitorNodeService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var MonitorNodeService_ServiceDesc = grpc.ServiceDesc{
ServiceName: "pb.MonitorNodeService",
HandlerType: (*MonitorNodeServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "createMonitorNode",
Handler: _MonitorNodeService_CreateMonitorNode_Handler,
},
{
MethodName: "updateMonitorNode",
Handler: _MonitorNodeService_UpdateMonitorNode_Handler,
},
{
MethodName: "deleteMonitorNode",
Handler: _MonitorNodeService_DeleteMonitorNode_Handler,
},
{
MethodName: "findAllEnabledMonitorNodes",
Handler: _MonitorNodeService_FindAllEnabledMonitorNodes_Handler,
},
{
MethodName: "countAllEnabledMonitorNodes",
Handler: _MonitorNodeService_CountAllEnabledMonitorNodes_Handler,
},
{
MethodName: "listEnabledMonitorNodes",
Handler: _MonitorNodeService_ListEnabledMonitorNodes_Handler,
},
{
MethodName: "findEnabledMonitorNode",
Handler: _MonitorNodeService_FindEnabledMonitorNode_Handler,
},
{
MethodName: "findCurrentMonitorNode",
Handler: _MonitorNodeService_FindCurrentMonitorNode_Handler,
},
{
MethodName: "updateMonitorNodeStatus",
Handler: _MonitorNodeService_UpdateMonitorNodeStatus_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "service_monitor_node.proto",
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -79,6 +79,7 @@ const (
ServerService_UpdateServerUser_FullMethodName = "/pb.ServerService/updateServerUser"
ServerService_UpdateServerName_FullMethodName = "/pb.ServerService/updateServerName"
ServerService_CopyServerConfig_FullMethodName = "/pb.ServerService/copyServerConfig"
ServerService_FindServerAuditingPrompt_FullMethodName = "/pb.ServerService/findServerAuditingPrompt"
)
// ServerServiceClient is the client API for ServerService service.
@@ -205,6 +206,8 @@ type ServerServiceClient interface {
UpdateServerName(ctx context.Context, in *UpdateServerNameRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 在网站之间复制配置
CopyServerConfig(ctx context.Context, in *CopyServerConfigRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 获取域名审核时的提示文字
FindServerAuditingPrompt(ctx context.Context, in *FindServerAuditingPromptRequest, opts ...grpc.CallOption) (*FindServerAuditingPromptResponse, error)
}
type serverServiceClient struct {
@@ -755,6 +758,15 @@ func (c *serverServiceClient) CopyServerConfig(ctx context.Context, in *CopyServ
return out, nil
}
func (c *serverServiceClient) FindServerAuditingPrompt(ctx context.Context, in *FindServerAuditingPromptRequest, opts ...grpc.CallOption) (*FindServerAuditingPromptResponse, error) {
out := new(FindServerAuditingPromptResponse)
err := c.cc.Invoke(ctx, ServerService_FindServerAuditingPrompt_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// ServerServiceServer is the server API for ServerService service.
// All implementations should embed UnimplementedServerServiceServer
// for forward compatibility
@@ -879,6 +891,8 @@ type ServerServiceServer interface {
UpdateServerName(context.Context, *UpdateServerNameRequest) (*RPCSuccess, error)
// 在网站之间复制配置
CopyServerConfig(context.Context, *CopyServerConfigRequest) (*RPCSuccess, error)
// 获取域名审核时的提示文字
FindServerAuditingPrompt(context.Context, *FindServerAuditingPromptRequest) (*FindServerAuditingPromptResponse, error)
}
// UnimplementedServerServiceServer should be embedded to have forward compatible implementations.
@@ -1065,6 +1079,9 @@ func (UnimplementedServerServiceServer) UpdateServerName(context.Context, *Updat
func (UnimplementedServerServiceServer) CopyServerConfig(context.Context, *CopyServerConfigRequest) (*RPCSuccess, error) {
return nil, status.Errorf(codes.Unimplemented, "method CopyServerConfig not implemented")
}
func (UnimplementedServerServiceServer) FindServerAuditingPrompt(context.Context, *FindServerAuditingPromptRequest) (*FindServerAuditingPromptResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindServerAuditingPrompt not implemented")
}
// UnsafeServerServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to ServerServiceServer will
@@ -2157,6 +2174,24 @@ func _ServerService_CopyServerConfig_Handler(srv interface{}, ctx context.Contex
return interceptor(ctx, in, info, handler)
}
func _ServerService_FindServerAuditingPrompt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindServerAuditingPromptRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ServerServiceServer).FindServerAuditingPrompt(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: ServerService_FindServerAuditingPrompt_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ServerServiceServer).FindServerAuditingPrompt(ctx, req.(*FindServerAuditingPromptRequest))
}
return interceptor(ctx, in, info, handler)
}
// ServerService_ServiceDesc is the grpc.ServiceDesc for ServerService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@@ -2404,6 +2439,10 @@ var ServerService_ServiceDesc = grpc.ServiceDesc{
MethodName: "copyServerConfig",
Handler: _ServerService_CopyServerConfig_Handler,
},
{
MethodName: "findServerAuditingPrompt",
Handler: _ServerService_FindServerAuditingPrompt_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "service_server.proto",

View File

@@ -598,6 +598,7 @@ type CountSSLCertRequest struct {
Keyword string `protobuf:"bytes,5,opt,name=keyword,proto3" json:"keyword,omitempty"` // 可选项,关键词
UserId int64 `protobuf:"varint,6,opt,name=userId,proto3" json:"userId,omitempty"` // 可选项用户ID不填则表示读取管理员上传的证书
Domains []string `protobuf:"bytes,7,rep,name=domains,proto3" json:"domains,omitempty"` // 可选项,搜索使用的域名列表
UserOnly bool `protobuf:"varint,8,opt,name=userOnly,proto3" json:"userOnly,omitempty"` // 可选项,只列出用户上传的证书
}
func (x *CountSSLCertRequest) Reset() {
@@ -681,6 +682,13 @@ func (x *CountSSLCertRequest) GetDomains() []string {
return nil
}
func (x *CountSSLCertRequest) GetUserOnly() bool {
if x != nil {
return x.UserOnly
}
return false
}
// 列出单页匹配的证书
type ListSSLCertsRequest struct {
state protoimpl.MessageState
@@ -696,6 +704,7 @@ type ListSSLCertsRequest struct {
Domains []string `protobuf:"bytes,9,rep,name=domains,proto3" json:"domains,omitempty"` // 可选项,搜索使用的域名列表
Offset int64 `protobuf:"varint,6,opt,name=offset,proto3" json:"offset,omitempty"` // 读取位置
Size int64 `protobuf:"varint,7,opt,name=size,proto3" json:"size,omitempty"` // 读取长度不能小于0
UserOnly bool `protobuf:"varint,10,opt,name=userOnly,proto3" json:"userOnly,omitempty"` // 可选项,只列出用户上传的证书
}
func (x *ListSSLCertsRequest) Reset() {
@@ -793,6 +802,13 @@ func (x *ListSSLCertsRequest) GetSize() int64 {
return 0
}
func (x *ListSSLCertsRequest) GetUserOnly() bool {
if x != nil {
return x.UserOnly
}
return false
}
type ListSSLCertsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1237,6 +1253,101 @@ func (x *ListUpdatedSSLCertOCSPResponse) GetSslCertOCSP() []*ListUpdatedSSLCertO
return nil
}
// 查找证书所属用户
type FindSSLCertUserRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SslCertId int64 `protobuf:"varint,1,opt,name=sslCertId,proto3" json:"sslCertId,omitempty"` // 证书ID
}
func (x *FindSSLCertUserRequest) Reset() {
*x = FindSSLCertUserRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ssl_cert_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindSSLCertUserRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindSSLCertUserRequest) ProtoMessage() {}
func (x *FindSSLCertUserRequest) ProtoReflect() protoreflect.Message {
mi := &file_service_ssl_cert_proto_msgTypes[19]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindSSLCertUserRequest.ProtoReflect.Descriptor instead.
func (*FindSSLCertUserRequest) Descriptor() ([]byte, []int) {
return file_service_ssl_cert_proto_rawDescGZIP(), []int{19}
}
func (x *FindSSLCertUserRequest) GetSslCertId() int64 {
if x != nil {
return x.SslCertId
}
return 0
}
type FindSSLCertUserResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
User *User `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` // 用户信息,只包含几个基本的信息
}
func (x *FindSSLCertUserResponse) Reset() {
*x = FindSSLCertUserResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ssl_cert_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FindSSLCertUserResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FindSSLCertUserResponse) ProtoMessage() {}
func (x *FindSSLCertUserResponse) ProtoReflect() protoreflect.Message {
mi := &file_service_ssl_cert_proto_msgTypes[20]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use FindSSLCertUserResponse.ProtoReflect.Descriptor instead.
func (*FindSSLCertUserResponse) Descriptor() ([]byte, []int) {
return file_service_ssl_cert_proto_rawDescGZIP(), []int{20}
}
func (x *FindSSLCertUserResponse) GetUser() *User {
if x != nil {
return x.User
}
return nil
}
type CreateSSLCertsRequestCert struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1258,7 +1369,7 @@ type CreateSSLCertsRequestCert struct {
func (x *CreateSSLCertsRequestCert) Reset() {
*x = CreateSSLCertsRequestCert{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ssl_cert_proto_msgTypes[19]
mi := &file_service_ssl_cert_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1271,7 +1382,7 @@ func (x *CreateSSLCertsRequestCert) String() string {
func (*CreateSSLCertsRequestCert) ProtoMessage() {}
func (x *CreateSSLCertsRequestCert) ProtoReflect() protoreflect.Message {
mi := &file_service_ssl_cert_proto_msgTypes[19]
mi := &file_service_ssl_cert_proto_msgTypes[21]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1378,7 +1489,7 @@ type ListUpdatedSSLCertOCSPResponse_SSLCertOCSP struct {
func (x *ListUpdatedSSLCertOCSPResponse_SSLCertOCSP) Reset() {
*x = ListUpdatedSSLCertOCSPResponse_SSLCertOCSP{}
if protoimpl.UnsafeEnabled {
mi := &file_service_ssl_cert_proto_msgTypes[20]
mi := &file_service_ssl_cert_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1391,7 +1502,7 @@ func (x *ListUpdatedSSLCertOCSPResponse_SSLCertOCSP) String() string {
func (*ListUpdatedSSLCertOCSPResponse_SSLCertOCSP) ProtoMessage() {}
func (x *ListUpdatedSSLCertOCSPResponse_SSLCertOCSP) ProtoReflect() protoreflect.Message {
mi := &file_service_ssl_cert_proto_msgTypes[20]
mi := &file_service_ssl_cert_proto_msgTypes[22]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1443,246 +1554,263 @@ var file_service_ssl_cert_proto_rawDesc = []byte{
0x64, 0x65, 0x6c, 0x73, 0x2f, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f,
0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x73, 0x73, 0x6c, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe0, 0x02, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53,
0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a,
0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f,
0x6e, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28,
0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a,
0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12,
0x12, 0x0a, 0x04, 0x69, 0x73, 0x43, 0x41, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69,
0x73, 0x43, 0x41, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x18,
0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12,
0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c,
0x52, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x69, 0x6d,
0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b,
0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74,
0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6e, 0x73,
0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x64, 0x6e, 0x73,
0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e,
0x61, 0x6d, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d,
0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x35, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x22, 0xa6,
0x03, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x08, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x62, 0x2e,
0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x63, 0x65, 0x72, 0x74, 0x52, 0x08, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x1a, 0xb8, 0x02, 0x0a,
0x04, 0x63, 0x65, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x01, 0x20,
0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a,
0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12,
0x12, 0x0a, 0x04, 0x69, 0x73, 0x43, 0x41, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69,
0x73, 0x43, 0x41, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x18,
0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12,
0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c,
0x52, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x69, 0x6d,
0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b,
0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74,
0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6e, 0x73,
0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x64, 0x6e, 0x73,
0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e,
0x61, 0x6d, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d,
0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x38, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64,
0x73, 0x22, 0xe6, 0x02, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73,
0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73,
0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e,
0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65,
0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61,
0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x43, 0x41, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08,
0x52, 0x04, 0x69, 0x73, 0x43, 0x41, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x65, 0x72, 0x74, 0x44, 0x61,
0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x44, 0x61,
0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b,
0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28,
0x03, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x74, 0x12, 0x1c,
0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x41, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28,
0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08,
0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08,
0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d,
0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63,
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x3f, 0x0a, 0x1f, 0x46, 0x69,
0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a,
0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
0x52, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x22, 0x44, 0x0a, 0x20, 0x46,
0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x20, 0x0a, 0x0b, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x4a, 0x53, 0x4f,
0x4e, 0x22, 0x34, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64,
0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe0, 0x02,
0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x01,
0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73,
0x65, 0x72, 0x49, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72,
0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76,
0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65,
0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x43, 0x41,
0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x43, 0x41, 0x12, 0x1a, 0x0a, 0x08,
0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08,
0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x44,
0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61,
0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41,
0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67,
0x69, 0x6e, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x41,
0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64,
0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a,
0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20,
0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0b, 0x20,
0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73,
0x22, 0x35, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c,
0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73,
0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x22, 0xd9, 0x01, 0x0a, 0x13, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x12, 0x0a, 0x04, 0x69, 0x73, 0x43, 0x41, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69,
0x73, 0x43, 0x41, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69,
0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72,
0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69,
0x72, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x44,
0x61, 0x79, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72,
0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f,
0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72,
0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d,
0x61, 0x69, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61,
0x69, 0x6e, 0x73, 0x22, 0x85, 0x02, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x69,
0x73, 0x43, 0x41, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x43, 0x41, 0x12,
0x20, 0x0a, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x18, 0x03,
0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x12,
0x22, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73, 0x18,
0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x44,
0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05,
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a,
0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75,
0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73,
0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12,
0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52,
0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18,
0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x3a, 0x0a, 0x14, 0x4c,
0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x4a,
0x53, 0x4f, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x73, 0x6c, 0x43, 0x65,
0x72, 0x74, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x40, 0x0a, 0x24, 0x43, 0x6f, 0x75, 0x6e, 0x74,
0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f,
0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x68, 0x0a, 0x20, 0x4c, 0x69, 0x73,
0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53,
0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a,
0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12,
0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73,
0x69, 0x7a, 0x65, 0x22, 0x4c, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x08, 0x73, 0x73, 0x6c, 0x43,
0x65, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x2e,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x08, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74,
0x73, 0x22, 0x44, 0x0a, 0x22, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x73, 0x6c, 0x43, 0x65,
0x72, 0x74, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x73, 0x6c,
0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x22, 0x43, 0x0a, 0x21, 0x52, 0x65, 0x73, 0x65, 0x74,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50,
0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a,
0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03,
0x52, 0x0a, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x22, 0x26, 0x0a, 0x24,
0x52, 0x65, 0x73, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73,
0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x22, 0x4d, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73,
0x69, 0x7a, 0x65, 0x22, 0xeb, 0x01, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0b, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72,
0x74, 0x4f, 0x43, 0x53, 0x50, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x62,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x0b, 0x73, 0x73, 0x6c,
0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x1a, 0x77, 0x0a, 0x0b, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65,
0x72, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c, 0x43,
0x65, 0x72, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73,
0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74,
0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41,
0x74, 0x32, 0xb2, 0x08, 0x0a, 0x0e, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x53, 0x65, 0x72,
0x76, 0x69, 0x63, 0x65, 0x12, 0x44, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53,
0x4c, 0x43, 0x65, 0x72, 0x74, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x19, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x63, 0x72,
0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x12, 0x19, 0x2e, 0x70,
0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c,
0x43, 0x65, 0x72, 0x74, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x39,
0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x12,
0x18, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52,
0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x65, 0x0a, 0x18, 0x66, 0x69, 0x6e,
0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x62, 0x2e,
0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x3e, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74,
0x73, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e,
0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x41, 0x0a, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73,
0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x4c,
0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x1d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x53,
0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45,
0x72, 0x72, 0x6f, 0x72, 0x12, 0x28, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41,
0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43,
0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14,
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x19, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43,
0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x22, 0xa6, 0x03, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x3a, 0x0a, 0x08, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53,
0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x63,
0x65, 0x72, 0x74, 0x52, 0x08, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x12, 0x16, 0x0a,
0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75,
0x73, 0x65, 0x72, 0x49, 0x64, 0x1a, 0xb8, 0x02, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, 0x12,
0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73,
0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76,
0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65,
0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x43, 0x41,
0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x43, 0x41, 0x12, 0x1a, 0x0a, 0x08,
0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08,
0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x44,
0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61,
0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41,
0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67,
0x69, 0x6e, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x41,
0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64,
0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a,
0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20,
0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0b, 0x20,
0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73,
0x22, 0x38, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x73,
0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0a,
0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x22, 0xe6, 0x02, 0x0a, 0x14, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49,
0x64, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x73,
0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69,
0x73, 0x43, 0x41, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x43, 0x41, 0x12,
0x1a, 0x0a, 0x08, 0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28,
0x0c, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x6b,
0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6b, 0x65,
0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x67,
0x69, 0x6e, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65,
0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x45,
0x6e, 0x64, 0x41, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65,
0x45, 0x6e, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65,
0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65,
0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73,
0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61,
0x6d, 0x65, 0x73, 0x22, 0x3f, 0x0a, 0x1f, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c,
0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72,
0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65,
0x72, 0x74, 0x49, 0x64, 0x22, 0x44, 0x0a, 0x20, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62,
0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x73, 0x6c, 0x43,
0x65, 0x72, 0x74, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73,
0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x34, 0x0a, 0x14, 0x44, 0x65,
0x6c, 0x65, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64,
0x22, 0xf5, 0x01, 0x0a, 0x13, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x43, 0x41,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x43, 0x41, 0x12, 0x20, 0x0a, 0x0b,
0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1c,
0x0a, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c,
0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73, 0x18, 0x04, 0x20, 0x01,
0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73,
0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73,
0x65, 0x72, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72,
0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x07, 0x20,
0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x1a, 0x0a, 0x08,
0x75, 0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
0x75, 0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0xa1, 0x02, 0x0a, 0x13, 0x4c, 0x69, 0x73,
0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x43, 0x41, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04,
0x69, 0x73, 0x43, 0x41, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x76, 0x61,
0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70, 0x69,
0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x45, 0x78, 0x70,
0x69, 0x72, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67,
0x44, 0x61, 0x79, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69,
0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77,
0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f,
0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01,
0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f,
0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d,
0x61, 0x69, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x06,
0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04,
0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65,
0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x18, 0x0a, 0x20, 0x01,
0x28, 0x08, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x3a, 0x0a, 0x14,
0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x73,
0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x73, 0x6c, 0x43,
0x65, 0x72, 0x74, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x40, 0x0a, 0x24, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68,
0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x68, 0x0a, 0x20, 0x4c, 0x69,
0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43,
0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18,
0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73,
0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04,
0x73, 0x69, 0x7a, 0x65, 0x22, 0x4c, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f,
0x72, 0x12, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73,
0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x08, 0x73, 0x73, 0x6c,
0x43, 0x65, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62,
0x2e, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x08, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72,
0x74, 0x73, 0x22, 0x44, 0x0a, 0x22, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f,
0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x73, 0x6c, 0x43,
0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x73,
0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x22, 0x43, 0x0a, 0x21, 0x52, 0x65, 0x73, 0x65,
0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53,
0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55,
0x0a, 0x1b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73,
0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x26, 0x2e,
0x70, 0x62, 0x2e, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74,
0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a,
0x0a, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x03, 0x52, 0x0a, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x73, 0x22, 0x26, 0x0a,
0x24, 0x52, 0x65, 0x73, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74,
0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x53, 0x0a, 0x1a, 0x72, 0x65, 0x73, 0x65, 0x74, 0x53, 0x53,
0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4d, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
0x73, 0x69, 0x7a, 0x65, 0x22, 0xeb, 0x01, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0b, 0x73, 0x73, 0x6c, 0x43, 0x65,
0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70,
0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x53, 0x4c,
0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x2e, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x0b, 0x73, 0x73,
0x6c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x1a, 0x77, 0x0a, 0x0b, 0x53, 0x53, 0x4c,
0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x6c, 0x43,
0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x73, 0x6c,
0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41,
0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73,
0x41, 0x74, 0x22, 0x36, 0x0a, 0x16, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09,
0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
0x09, 0x73, 0x73, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x49, 0x64, 0x22, 0x37, 0x0a, 0x17, 0x46, 0x69,
0x6e, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75,
0x73, 0x65, 0x72, 0x32, 0xfe, 0x08, 0x0a, 0x0e, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x53,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x44, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c,
0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e,
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x12, 0x19,
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43,
0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53,
0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
0x12, 0x39, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x53, 0x4c,
0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62,
0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x65, 0x0a, 0x18, 0x66,
0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70,
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x53, 0x53, 0x4c,
0x43, 0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x3e, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x73, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x53,
0x4c, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70,
0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x73, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43,
0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70, 0x62,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x1d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c,
0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53,
0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x28, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e,
0x74, 0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68,
0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x19, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x53,
0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72,
0x72, 0x6f, 0x72, 0x12, 0x25, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x53,
0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72,
0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e,
0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x59, 0x0a, 0x1d, 0x72, 0x65,
0x73, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69,
0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x28, 0x2e, 0x70, 0x62,
0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74,
0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x5f, 0x0a, 0x16, 0x6c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x12,
0x21, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x72, 0x6f, 0x72, 0x12, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x53, 0x4c,
0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72,
0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x62, 0x2e, 0x4c,
0x69, 0x73, 0x74, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f,
0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x55, 0x0a, 0x1b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72,
0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12,
0x26, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x53, 0x0a, 0x1a, 0x72, 0x65, 0x73, 0x65, 0x74,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50,
0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x25, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50,
0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70,
0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x59, 0x0a, 0x1d,
0x72, 0x65, 0x73, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x73,
0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x28, 0x2e,
0x70, 0x62, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x53, 0x53, 0x4c, 0x43, 0x65,
0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x43, 0x53, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x5f, 0x0a, 0x16, 0x6c, 0x69, 0x73, 0x74, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53,
0x50, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74,
0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x4f, 0x43, 0x53, 0x50,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0f, 0x66, 0x69, 0x6e, 0x64,
0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x70, 0x62,
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x55, 0x73, 0x65, 0x72,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
0x64, 0x53, 0x53, 0x4c, 0x43, 0x65, 0x72, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -1697,7 +1825,7 @@ func file_service_ssl_cert_proto_rawDescGZIP() []byte {
return file_service_ssl_cert_proto_rawDescData
}
var file_service_ssl_cert_proto_msgTypes = make([]protoimpl.MessageInfo, 21)
var file_service_ssl_cert_proto_msgTypes = make([]protoimpl.MessageInfo, 23)
var file_service_ssl_cert_proto_goTypes = []interface{}{
(*CreateSSLCertRequest)(nil), // 0: pb.CreateSSLCertRequest
(*CreateSSLCertResponse)(nil), // 1: pb.CreateSSLCertResponse
@@ -1718,47 +1846,53 @@ var file_service_ssl_cert_proto_goTypes = []interface{}{
(*ResetAllSSLCertsWithOCSPErrorRequest)(nil), // 16: pb.ResetAllSSLCertsWithOCSPErrorRequest
(*ListUpdatedSSLCertOCSPRequest)(nil), // 17: pb.ListUpdatedSSLCertOCSPRequest
(*ListUpdatedSSLCertOCSPResponse)(nil), // 18: pb.ListUpdatedSSLCertOCSPResponse
(*CreateSSLCertsRequestCert)(nil), // 19: pb.CreateSSLCertsRequest.cert
(*ListUpdatedSSLCertOCSPResponse_SSLCertOCSP)(nil), // 20: pb.ListUpdatedSSLCertOCSPResponse.SSLCertOCSP
(*SSLCert)(nil), // 21: pb.SSLCert
(*RPCSuccess)(nil), // 22: pb.RPCSuccess
(*RPCCountResponse)(nil), // 23: pb.RPCCountResponse
(*FindSSLCertUserRequest)(nil), // 19: pb.FindSSLCertUserRequest
(*FindSSLCertUserResponse)(nil), // 20: pb.FindSSLCertUserResponse
(*CreateSSLCertsRequestCert)(nil), // 21: pb.CreateSSLCertsRequest.cert
(*ListUpdatedSSLCertOCSPResponse_SSLCertOCSP)(nil), // 22: pb.ListUpdatedSSLCertOCSPResponse.SSLCertOCSP
(*SSLCert)(nil), // 23: pb.SSLCert
(*User)(nil), // 24: pb.User
(*RPCSuccess)(nil), // 25: pb.RPCSuccess
(*RPCCountResponse)(nil), // 26: pb.RPCCountResponse
}
var file_service_ssl_cert_proto_depIdxs = []int32{
19, // 0: pb.CreateSSLCertsRequest.SSLCerts:type_name -> pb.CreateSSLCertsRequest.cert
21, // 1: pb.ListSSLCertsWithOCSPErrorResponse.sslCerts:type_name -> pb.SSLCert
20, // 2: pb.ListUpdatedSSLCertOCSPResponse.sslCertOCSP:type_name -> pb.ListUpdatedSSLCertOCSPResponse.SSLCertOCSP
0, // 3: pb.SSLCertService.createSSLCert:input_type -> pb.CreateSSLCertRequest
2, // 4: pb.SSLCertService.createSSLCerts:input_type -> pb.CreateSSLCertsRequest
4, // 5: pb.SSLCertService.updateSSLCert:input_type -> pb.UpdateSSLCertRequest
7, // 6: pb.SSLCertService.deleteSSLCert:input_type -> pb.DeleteSSLCertRequest
5, // 7: pb.SSLCertService.findEnabledSSLCertConfig:input_type -> pb.FindEnabledSSLCertConfigRequest
8, // 8: pb.SSLCertService.countSSLCerts:input_type -> pb.CountSSLCertRequest
9, // 9: pb.SSLCertService.listSSLCerts:input_type -> pb.ListSSLCertsRequest
11, // 10: pb.SSLCertService.countAllSSLCertsWithOCSPError:input_type -> pb.CountAllSSLCertsWithOCSPErrorRequest
12, // 11: pb.SSLCertService.listSSLCertsWithOCSPError:input_type -> pb.ListSSLCertsWithOCSPErrorRequest
14, // 12: pb.SSLCertService.ignoreSSLCertsWithOCSPError:input_type -> pb.IgnoreSSLCertsWithOCSPErrorRequest
15, // 13: pb.SSLCertService.resetSSLCertsWithOCSPError:input_type -> pb.ResetSSLCertsWithOCSPErrorRequest
16, // 14: pb.SSLCertService.resetAllSSLCertsWithOCSPError:input_type -> pb.ResetAllSSLCertsWithOCSPErrorRequest
17, // 15: pb.SSLCertService.listUpdatedSSLCertOCSP:input_type -> pb.ListUpdatedSSLCertOCSPRequest
1, // 16: pb.SSLCertService.createSSLCert:output_type -> pb.CreateSSLCertResponse
3, // 17: pb.SSLCertService.createSSLCerts:output_type -> pb.CreateSSLCertsResponse
22, // 18: pb.SSLCertService.updateSSLCert:output_type -> pb.RPCSuccess
22, // 19: pb.SSLCertService.deleteSSLCert:output_type -> pb.RPCSuccess
6, // 20: pb.SSLCertService.findEnabledSSLCertConfig:output_type -> pb.FindEnabledSSLCertConfigResponse
23, // 21: pb.SSLCertService.countSSLCerts:output_type -> pb.RPCCountResponse
10, // 22: pb.SSLCertService.listSSLCerts:output_type -> pb.ListSSLCertsResponse
23, // 23: pb.SSLCertService.countAllSSLCertsWithOCSPError:output_type -> pb.RPCCountResponse
13, // 24: pb.SSLCertService.listSSLCertsWithOCSPError:output_type -> pb.ListSSLCertsWithOCSPErrorResponse
22, // 25: pb.SSLCertService.ignoreSSLCertsWithOCSPError:output_type -> pb.RPCSuccess
22, // 26: pb.SSLCertService.resetSSLCertsWithOCSPError:output_type -> pb.RPCSuccess
22, // 27: pb.SSLCertService.resetAllSSLCertsWithOCSPError:output_type -> pb.RPCSuccess
18, // 28: pb.SSLCertService.listUpdatedSSLCertOCSP:output_type -> pb.ListUpdatedSSLCertOCSPResponse
16, // [16:29] is the sub-list for method output_type
3, // [3:16] is the sub-list for method input_type
3, // [3:3] is the sub-list for extension type_name
3, // [3:3] is the sub-list for extension extendee
0, // [0:3] is the sub-list for field type_name
21, // 0: pb.CreateSSLCertsRequest.SSLCerts:type_name -> pb.CreateSSLCertsRequest.cert
23, // 1: pb.ListSSLCertsWithOCSPErrorResponse.sslCerts:type_name -> pb.SSLCert
22, // 2: pb.ListUpdatedSSLCertOCSPResponse.sslCertOCSP:type_name -> pb.ListUpdatedSSLCertOCSPResponse.SSLCertOCSP
24, // 3: pb.FindSSLCertUserResponse.user:type_name -> pb.User
0, // 4: pb.SSLCertService.createSSLCert:input_type -> pb.CreateSSLCertRequest
2, // 5: pb.SSLCertService.createSSLCerts:input_type -> pb.CreateSSLCertsRequest
4, // 6: pb.SSLCertService.updateSSLCert:input_type -> pb.UpdateSSLCertRequest
7, // 7: pb.SSLCertService.deleteSSLCert:input_type -> pb.DeleteSSLCertRequest
5, // 8: pb.SSLCertService.findEnabledSSLCertConfig:input_type -> pb.FindEnabledSSLCertConfigRequest
8, // 9: pb.SSLCertService.countSSLCerts:input_type -> pb.CountSSLCertRequest
9, // 10: pb.SSLCertService.listSSLCerts:input_type -> pb.ListSSLCertsRequest
11, // 11: pb.SSLCertService.countAllSSLCertsWithOCSPError:input_type -> pb.CountAllSSLCertsWithOCSPErrorRequest
12, // 12: pb.SSLCertService.listSSLCertsWithOCSPError:input_type -> pb.ListSSLCertsWithOCSPErrorRequest
14, // 13: pb.SSLCertService.ignoreSSLCertsWithOCSPError:input_type -> pb.IgnoreSSLCertsWithOCSPErrorRequest
15, // 14: pb.SSLCertService.resetSSLCertsWithOCSPError:input_type -> pb.ResetSSLCertsWithOCSPErrorRequest
16, // 15: pb.SSLCertService.resetAllSSLCertsWithOCSPError:input_type -> pb.ResetAllSSLCertsWithOCSPErrorRequest
17, // 16: pb.SSLCertService.listUpdatedSSLCertOCSP:input_type -> pb.ListUpdatedSSLCertOCSPRequest
19, // 17: pb.SSLCertService.findSSLCertUser:input_type -> pb.FindSSLCertUserRequest
1, // 18: pb.SSLCertService.createSSLCert:output_type -> pb.CreateSSLCertResponse
3, // 19: pb.SSLCertService.createSSLCerts:output_type -> pb.CreateSSLCertsResponse
25, // 20: pb.SSLCertService.updateSSLCert:output_type -> pb.RPCSuccess
25, // 21: pb.SSLCertService.deleteSSLCert:output_type -> pb.RPCSuccess
6, // 22: pb.SSLCertService.findEnabledSSLCertConfig:output_type -> pb.FindEnabledSSLCertConfigResponse
26, // 23: pb.SSLCertService.countSSLCerts:output_type -> pb.RPCCountResponse
10, // 24: pb.SSLCertService.listSSLCerts:output_type -> pb.ListSSLCertsResponse
26, // 25: pb.SSLCertService.countAllSSLCertsWithOCSPError:output_type -> pb.RPCCountResponse
13, // 26: pb.SSLCertService.listSSLCertsWithOCSPError:output_type -> pb.ListSSLCertsWithOCSPErrorResponse
25, // 27: pb.SSLCertService.ignoreSSLCertsWithOCSPError:output_type -> pb.RPCSuccess
25, // 28: pb.SSLCertService.resetSSLCertsWithOCSPError:output_type -> pb.RPCSuccess
25, // 29: pb.SSLCertService.resetAllSSLCertsWithOCSPError:output_type -> pb.RPCSuccess
18, // 30: pb.SSLCertService.listUpdatedSSLCertOCSP:output_type -> pb.ListUpdatedSSLCertOCSPResponse
20, // 31: pb.SSLCertService.findSSLCertUser:output_type -> pb.FindSSLCertUserResponse
18, // [18:32] is the sub-list for method output_type
4, // [4:18] is the sub-list for method input_type
4, // [4:4] is the sub-list for extension type_name
4, // [4:4] is the sub-list for extension extendee
0, // [0:4] is the sub-list for field type_name
}
func init() { file_service_ssl_cert_proto_init() }
@@ -1768,6 +1902,7 @@ func file_service_ssl_cert_proto_init() {
}
file_models_rpc_messages_proto_init()
file_models_model_ssl_cert_proto_init()
file_models_model_user_proto_init()
if !protoimpl.UnsafeEnabled {
file_service_ssl_cert_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateSSLCertRequest); i {
@@ -1998,7 +2133,7 @@ func file_service_ssl_cert_proto_init() {
}
}
file_service_ssl_cert_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateSSLCertsRequestCert); i {
switch v := v.(*FindSSLCertUserRequest); i {
case 0:
return &v.state
case 1:
@@ -2010,6 +2145,30 @@ func file_service_ssl_cert_proto_init() {
}
}
file_service_ssl_cert_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindSSLCertUserResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ssl_cert_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateSSLCertsRequestCert); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_service_ssl_cert_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListUpdatedSSLCertOCSPResponse_SSLCertOCSP); i {
case 0:
return &v.state
@@ -2028,7 +2187,7 @@ func file_service_ssl_cert_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_service_ssl_cert_proto_rawDesc,
NumEnums: 0,
NumMessages: 21,
NumMessages: 23,
NumExtensions: 0,
NumServices: 1,
},

View File

@@ -32,6 +32,7 @@ const (
SSLCertService_ResetSSLCertsWithOCSPError_FullMethodName = "/pb.SSLCertService/resetSSLCertsWithOCSPError"
SSLCertService_ResetAllSSLCertsWithOCSPError_FullMethodName = "/pb.SSLCertService/resetAllSSLCertsWithOCSPError"
SSLCertService_ListUpdatedSSLCertOCSP_FullMethodName = "/pb.SSLCertService/listUpdatedSSLCertOCSP"
SSLCertService_FindSSLCertUser_FullMethodName = "/pb.SSLCertService/findSSLCertUser"
)
// SSLCertServiceClient is the client API for SSLCertService service.
@@ -64,6 +65,8 @@ type SSLCertServiceClient interface {
ResetAllSSLCertsWithOCSPError(ctx context.Context, in *ResetAllSSLCertsWithOCSPErrorRequest, opts ...grpc.CallOption) (*RPCSuccess, error)
// 读取证书的OCSP
ListUpdatedSSLCertOCSP(ctx context.Context, in *ListUpdatedSSLCertOCSPRequest, opts ...grpc.CallOption) (*ListUpdatedSSLCertOCSPResponse, error)
// 查找证书所属用户
FindSSLCertUser(ctx context.Context, in *FindSSLCertUserRequest, opts ...grpc.CallOption) (*FindSSLCertUserResponse, error)
}
type sSLCertServiceClient struct {
@@ -191,6 +194,15 @@ func (c *sSLCertServiceClient) ListUpdatedSSLCertOCSP(ctx context.Context, in *L
return out, nil
}
func (c *sSLCertServiceClient) FindSSLCertUser(ctx context.Context, in *FindSSLCertUserRequest, opts ...grpc.CallOption) (*FindSSLCertUserResponse, error) {
out := new(FindSSLCertUserResponse)
err := c.cc.Invoke(ctx, SSLCertService_FindSSLCertUser_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// SSLCertServiceServer is the server API for SSLCertService service.
// All implementations should embed UnimplementedSSLCertServiceServer
// for forward compatibility
@@ -221,6 +233,8 @@ type SSLCertServiceServer interface {
ResetAllSSLCertsWithOCSPError(context.Context, *ResetAllSSLCertsWithOCSPErrorRequest) (*RPCSuccess, error)
// 读取证书的OCSP
ListUpdatedSSLCertOCSP(context.Context, *ListUpdatedSSLCertOCSPRequest) (*ListUpdatedSSLCertOCSPResponse, error)
// 查找证书所属用户
FindSSLCertUser(context.Context, *FindSSLCertUserRequest) (*FindSSLCertUserResponse, error)
}
// UnimplementedSSLCertServiceServer should be embedded to have forward compatible implementations.
@@ -266,6 +280,9 @@ func (UnimplementedSSLCertServiceServer) ResetAllSSLCertsWithOCSPError(context.C
func (UnimplementedSSLCertServiceServer) ListUpdatedSSLCertOCSP(context.Context, *ListUpdatedSSLCertOCSPRequest) (*ListUpdatedSSLCertOCSPResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListUpdatedSSLCertOCSP not implemented")
}
func (UnimplementedSSLCertServiceServer) FindSSLCertUser(context.Context, *FindSSLCertUserRequest) (*FindSSLCertUserResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindSSLCertUser not implemented")
}
// UnsafeSSLCertServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to SSLCertServiceServer will
@@ -512,6 +529,24 @@ func _SSLCertService_ListUpdatedSSLCertOCSP_Handler(srv interface{}, ctx context
return interceptor(ctx, in, info, handler)
}
func _SSLCertService_FindSSLCertUser_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(FindSSLCertUserRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(SSLCertServiceServer).FindSSLCertUser(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: SSLCertService_FindSSLCertUser_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(SSLCertServiceServer).FindSSLCertUser(ctx, req.(*FindSSLCertUserRequest))
}
return interceptor(ctx, in, info, handler)
}
// SSLCertService_ServiceDesc is the grpc.ServiceDesc for SSLCertService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@@ -571,6 +606,10 @@ var SSLCertService_ServiceDesc = grpc.ServiceDesc{
MethodName: "listUpdatedSSLCertOCSP",
Handler: _SSLCertService_ListUpdatedSSLCertOCSP_Handler,
},
{
MethodName: "findSSLCertUser",
Handler: _SSLCertService_FindSSLCertUser_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "service_ssl_cert.proto",

View File

@@ -13,6 +13,8 @@ message MessageReceiver {
int64 serverId = 4;
string type = 5;
bytes paramsJSON = 6;
string role = 9; // 集群角色node 或 dns
MessageRecipient messageRecipient = 7;
MessageRecipientGroup messageRecipientGroup = 8;
}

View File

@@ -1,14 +0,0 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
message MonitorNode {
int64 id = 1;
bool isOn = 2;
string uniqueId = 3;
string secret = 4;
string name = 5;
string description = 6;
bytes statusJSON = 7;
}

View File

@@ -25,4 +25,5 @@ message NodeCluster {
bool autoRemoteStart = 19;
bool autoInstallNftables = 20;
bytes sshParamsJSON = 21;
bool autoSystemTuning = 23; // 是否自动调节系统参数
}

View File

@@ -5,6 +5,7 @@ package pb;
import "models/rpc_messages.proto";
import "models/model_acme_task.proto";
import "models/model_user.proto";
// ACME任务相关服务
service ACMETaskService {
@@ -34,6 +35,9 @@ service ACMETaskService {
// 查找单个任务信息
rpc findEnabledACMETask (FindEnabledACMETaskRequest) returns (FindEnabledACMETaskResponse);
// 查找任务所属用户
rpc findACMETaskUser(FindACMETaskUserRequest) returns (FindACMETaskUserResponse);
}
// 计算某个ACME用户相关的任务数量
@@ -54,6 +58,7 @@ message CountAllEnabledACMETasksRequest {
bool isExpired = 4;
int32 expiringDays = 5;
string keyword = 6;
bool userOnly = 7; // 可选项,是否只列出用户上传的证书
}
// 列出单页任务
@@ -66,6 +71,7 @@ message ListEnabledACMETasksRequest {
bool isExpired = 6;
int32 expiringDays = 7;
string keyword = 8;
bool userOnly = 9; // 可选项,是否只列出用户上传的证书
}
message ListEnabledACMETasksResponse {
@@ -122,4 +128,13 @@ message FindEnabledACMETaskRequest {
message FindEnabledACMETaskResponse {
ACMETask acmeTask = 1;
}
// 查找任务所属用户
message FindACMETaskUserRequest {
int64 acmeTaskId = 1; // 任务ID
}
message FindACMETaskUserResponse {
User user = 1; // 用户信息,只包含几个基本的信息
}

View File

@@ -227,7 +227,6 @@ message ComposeAdminDashboardResponse {
UpgradeInfo nodeUpgradeInfo = 32;
UpgradeInfo apiNodeUpgradeInfo = 33;
UpgradeInfo monitorNodeUpgradeInfo = 34;
UpgradeInfo userNodeUpgradeInfo = 35;
UpgradeInfo authorityNodeUpgradeInfo = 36;
UpgradeInfo nsNodeUpgradeInfo = 37;

View File

@@ -56,22 +56,22 @@ service IPItemService {
// 创建IP
message CreateIPItemRequest {
int64 ipListId = 1; // IP列表ID
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; // 级别
string type = 6; // IP类型值为ipv4或ipv6
string eventLevel = 7; // 级别debug, notice, warning, error, critical, fatal
int64 nodeId = 8; // 所属节点ID
int64 serverId = 9; // 所属服务ID
int64 nodeId = 8; // 可选项,所属节点ID
int64 serverId = 9; // 可选项,所属网站ID
int64 sourceNodeId = 10;
int64 sourceServerId = 11;
int64 sourceHTTPFirewallPolicyId = 12;
int64 sourceHTTPFirewallRuleGroupId = 13;
int64 sourceHTTPFirewallRuleSetId = 14;
int64 sourceNodeId = 10; // 可选项,来源节点
int64 sourceServerId = 11; // 可选项来源网站ID
int64 sourceHTTPFirewallPolicyId = 12; // 可选项来源WAF策略ID
int64 sourceHTTPFirewallRuleGroupId = 13; // 可选项来源WAF规则分组ID
int64 sourceHTTPFirewallRuleSetId = 14; // 可选项来源WAF规则集ID
}
message CreateIPItemResponse {

View File

@@ -11,9 +11,6 @@ service MessageMediaService {
// 获取所有支持的媒介
rpc findAllMessageMedias (FindAllMessageMediasRequest) returns (FindAllMessageMediasResponse);
// 设置所有支持的媒介
rpc updateMessageMedias (UpdateMessageMediasRequest) returns (RPCSuccess);
// 发送媒介信息
rpc sendMediaMessage(SendMediaMessageRequest) returns (RPCSuccess);
}
@@ -27,11 +24,6 @@ message FindAllMessageMediasResponse {
repeated MessageMedia messageMedias = 1;
}
// 设置所有支持的媒介
message UpdateMessageMediasRequest {
repeated MessageMedia messageMedias = 2;
}
// 发送媒介信息
message SendMediaMessageRequest {
string mediaType = 1; // 媒介类型

View File

@@ -14,6 +14,9 @@ service MessageReceiverService {
// 查找接收者
rpc findAllEnabledMessageReceivers (FindAllEnabledMessageReceiversRequest) returns (FindAllEnabledMessageReceiversResponse);
// 根据接收人查找关联的接收者
rpc findAllEnabledMessageReceiversWithMessageRecipientId (FindAllEnabledMessageReceiversWithMessageRecipientIdRequest) returns (FindAllEnabledMessageReceiversWithMessageRecipientIdResponse);
// 删除接收者
rpc deleteMessageReceiver (DeleteMessageReceiverRequest) returns (RPCSuccess);
@@ -28,7 +31,7 @@ message UpdateMessageReceiversRequest {
int64 nodeId = 2;
int64 serverId = 3;
bytes paramsJSON = 5;
map<string, RecipientOptions> recipientOptions = 6; // type => options
map<string, RecipientOptions> recipientOptions = 6; // type => optionstype为recipient或者group
message RecipientOption {
int64 messageRecipientId = 1;
@@ -42,25 +45,34 @@ message UpdateMessageReceiversRequest {
// 查找接收者
message FindAllEnabledMessageReceiversRequest {
string role = 4;
int64 nodeClusterId = 1;
int64 nodeId = 2;
int64 serverId = 3;
string role = 4; // 集群角色node 或 dns
int64 nodeClusterId = 1; // 集群ID
int64 nodeId = 2; // 节点ID
int64 serverId = 3; // 网站ID
}
message FindAllEnabledMessageReceiversResponse {
repeated MessageReceiver messageReceivers = 1;
}
// 根据接收人查找关联的接收者
message FindAllEnabledMessageReceiversWithMessageRecipientIdRequest {
int64 messageRecipientId = 1; // 关联的接收人ID
}
message FindAllEnabledMessageReceiversWithMessageRecipientIdResponse {
repeated MessageReceiver messageReceivers = 1;
}
// 删除接收者
message DeleteMessageReceiverRequest {
int64 messageReceiverId = 1;
int64 messageReceiverId = 1; // 接收者ID
}
// 计算接收者数量
message CountAllEnabledMessageReceiversRequest {
string role = 4;
int64 nodeClusterId = 1;
int64 nodeId = 2;
int64 serverId = 3;
string role = 4; // 集群角色node 或 dns
int64 nodeClusterId = 1; // 集群ID
int64 nodeId = 2; // 节点ID
int64 serverId = 3; // 网站ID
}

View File

@@ -29,13 +29,15 @@ service MessageRecipientService {
// 创建接收人
message CreateMessageRecipientRequest {
int64 adminId = 1;
int64 messageMediaInstanceId = 2;
repeated int64 messageRecipientGroupIds = 3;
string description = 4;
string user = 5;
string timeFrom = 6;
string timeTo = 7;
int64 adminId = 1; // 关联的管理员ID
int64 messageMediaInstanceId = 2; // 媒介实例ID
repeated int64 messageRecipientGroupIds = 3; // 所属分组ID列表
string description = 4; // 可选项,备注描述
string user = 5; // 用户标识
string timeFrom = 6; // 可选项,接收消息的,开始时间
string timeTo = 7; // 可选项,接收消息的,结束时间
repeated int64 nodeClusterIds = 8; // 关联的CDN边缘节点集群ID列表
}
message CreateMessageRecipientResponse {
@@ -53,6 +55,8 @@ message UpdateMessageRecipientRequest {
string user = 7;
string timeFrom = 8;
string timeTo = 9;
repeated int64 nodeClusterIds = 10; // 关联的CDN边缘节点集群ID列表
}
// 删除接收人

View File

@@ -11,12 +11,6 @@ service MessageTaskService {
// 创建消息任务
rpc createMessageTask (CreateMessageTaskRequest) returns (CreateMessageTaskResponse);
// 查找要发送的消息任务
rpc findSendingMessageTasks (FindSendingMessageTasksRequest) returns (FindSendingMessageTasksResponse);
// 修改消息任务状态
rpc updateMessageTaskStatus (UpdateMessageTaskStatusRequest) returns (RPCSuccess);
// 删除消息任务
rpc deleteMessageTask (DeleteMessageTaskRequest) returns (RPCSuccess);
@@ -28,55 +22,45 @@ service MessageTaskService {
// 根据状态列出某页任务
rpc listMessageTasksWithStatus(ListMessageTasksWithStatusRequest) returns (ListMessageTasksWithStatusResponse);
// 发送某个消息任务
rpc sendMessageTask(SendMessageTaskRequest) returns (SendMessageTaskResponse);
// 修改消息任务状态
rpc updateMessageTaskStatus(UpdateMessageTaskStatusRequest) returns (RPCSuccess);
}
// 创建消息任务
message CreateMessageTaskRequest {
int64 recipientId = 1;
int64 instanceId = 2;
string user = 3;
string subject = 4;
string body = 5;
bool isPrimary = 6;
int64 messageRecipientId = 1; // 接收人ID
int64 messageMediaInstanceId = 2; // 媒介实例ID
string user = 3; // 用户标识
string subject = 4; // 标题
string body = 5; // 内容
bool isPrimary = 6; // 是否优先发送
}
message CreateMessageTaskResponse {
int64 messageTaskId = 1;
}
// 查找要发送的消息任务
message FindSendingMessageTasksRequest {
int64 size = 1;
}
message FindSendingMessageTasksResponse {
repeated MessageTask messageTasks = 1;
}
// 修改消息任务状态
message UpdateMessageTaskStatusRequest {
int64 messageTaskId = 1;
int32 status = 2;
MessageTaskResult result = 3;
int64 messageTaskId = 1; // 消息任务ID
}
// 删除消息任务
message DeleteMessageTaskRequest {
int64 messageTaskId = 1;
int64 messageTaskId = 1; // 消息任务ID
}
// 读取消息任务状态
message FindEnabledMessageTaskRequest {
int64 messageTaskId = 1;
int64 messageTaskId = 1; // 消息任务ID
}
message FindEnabledMessageTaskResponse {
MessageTask messageTask = 1;
MessageTask messageTask = 1; // 消息任务信息
}
// 计算某个状态的消息任务数量
message CountMessageTasksWithStatusRequest {
Status status = 1;
Status status = 1; // 任务状态
enum Status {
MessageTaskStatusNone = 0;
@@ -88,7 +72,7 @@ message CountMessageTasksWithStatusRequest {
// 根据状态列出某页任务
message ListMessageTasksWithStatusRequest {
Status status = 1;
Status status = 1; // 任务状态
int64 offset = 2;
int64 size = 3;
@@ -102,4 +86,32 @@ message ListMessageTasksWithStatusRequest {
message ListMessageTasksWithStatusResponse {
repeated MessageTask messageTasks = 1;
}
// 发送某个消息任务
// 与创建消息任务放入到后台任务队列不同此API是直接发送
message SendMessageTaskRequest {
int64 messageMediaInstanceId = 1; // 媒介实例ID
string user = 2; // 用户标识
string subject = 3; // 标题
string body = 4; // 内容
}
message SendMessageTaskResponse {
bool isOk = 1; // 是否成功
string error = 2; // 失败时的提示信息
string response = 3; // 发送成功后响应内容
}
// 修改消息任务状态
message UpdateMessageTaskStatusRequest {
int64 messageTaskId = 1; // 消息任务ID
Status status = 2; // 新的状态
enum Status {
MessageTaskStatusNone = 0;
MessageTaskStatusSending = 1;
MessageTaskStatusSuccess = 2;
MessageTaskStatusFailed = 3;
}
}

View File

@@ -1,108 +0,0 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_monitor_node.proto";
import "models/rpc_messages.proto";
// 监控节点管理服务
service MonitorNodeService {
// 创建监控节点
rpc createMonitorNode (CreateMonitorNodeRequest) returns (CreateMonitorNodeResponse);
// 修改监控节点
rpc updateMonitorNode (UpdateMonitorNodeRequest) returns (RPCSuccess);
// 删除监控节点
rpc deleteMonitorNode (DeleteMonitorNodeRequest) returns (RPCSuccess);
// 列出所有可用监控节点
rpc findAllEnabledMonitorNodes (FindAllEnabledMonitorNodesRequest) returns (FindAllEnabledMonitorNodesResponse);
// 计算监控节点数量
rpc countAllEnabledMonitorNodes (CountAllEnabledMonitorNodesRequest) returns (RPCCountResponse);
// 列出单页的监控节点
rpc listEnabledMonitorNodes (ListEnabledMonitorNodesRequest) returns (ListEnabledMonitorNodesResponse);
// 根据ID查找节点
rpc findEnabledMonitorNode (FindEnabledMonitorNodeRequest) returns (FindEnabledMonitorNodeResponse);
// 获取当前监控节点信息
rpc findCurrentMonitorNode (FindCurrentMonitorNodeRequest) returns (FindCurrentMonitorNodeResponse);
// 更新节点状态
rpc updateMonitorNodeStatus (UpdateMonitorNodeStatusRequest) returns (RPCSuccess);
}
// 创建监控节点
message CreateMonitorNodeRequest {
string name = 1;
string description = 2;
bool isOn = 3;
}
message CreateMonitorNodeResponse {
int64 monitorNodeId = 1;
}
// 修改监控节点
message UpdateMonitorNodeRequest {
int64 monitorNodeId = 1;
string name = 2;
string description = 3;
bool isOn = 4;
}
// 删除监控节点
message DeleteMonitorNodeRequest {
int64 monitorNodeId = 1;
}
// 列出所有可用监控节点
message FindAllEnabledMonitorNodesRequest {
}
message FindAllEnabledMonitorNodesResponse {
repeated MonitorNode monitorNodes = 1;
}
// 计算监控节点数量
message CountAllEnabledMonitorNodesRequest {
}
// 列出单页的监控节点
message ListEnabledMonitorNodesRequest {
int64 offset = 1;
int64 size = 2;
}
message ListEnabledMonitorNodesResponse {
repeated MonitorNode monitorNodes = 1;
}
// 根据ID查找节点
message FindEnabledMonitorNodeRequest {
int64 monitorNodeId = 1;
}
message FindEnabledMonitorNodeResponse {
MonitorNode monitorNode = 1;
}
// 获取当前监控节点
message FindCurrentMonitorNodeRequest {
}
message FindCurrentMonitorNodeResponse {
MonitorNode monitorNode = 1;
}
// 更新监控状态
message UpdateMonitorNodeStatusRequest {
int64 monitorNodeId = 1;
bytes statusJSON = 2;
}

View File

@@ -182,6 +182,7 @@ message CreateNodeClusterRequest {
bytes systemServicesJSON = 8; // 系统服务设置
bytes globalServerConfigJSON = 10; // 服务全局设置
bool autoInstallNftables = 11; // 自动安装nftables
bool autoSystemTuning = 12; // 是否自动调节系统参数
}
message CreateNodeClusterResponse {
@@ -201,6 +202,7 @@ message UpdateNodeClusterRequest {
bool autoRemoteStart = 10;
bool autoInstallNftables = 11;
bytes sshParamsJSON = 12;
bool autoSystemTuning = 13; // 是否自动调节系统参数
}
// 删除集群

View File

@@ -190,6 +190,9 @@ service ServerService {
// 在网站之间复制配置
rpc copyServerConfig(CopyServerConfigRequest) returns (RPCSuccess);
// 获取域名审核时的提示文字
rpc findServerAuditingPrompt(FindServerAuditingPromptRequest) returns (FindServerAuditingPromptResponse);
}
// 创建网站
@@ -715,25 +718,25 @@ message ComposeServerConfigResponse {
bytes serverConfigJSON = 1;
}
// 修改网站UAM设置
// 修改网站UAM5秒盾设置
message UpdateServerUAMRequest {
int64 serverId = 1; // 网站ID
bytes uamJSON = 2;
}
// 查找网站UAM设置
// 查找网站UAM5秒盾设置
message FindEnabledServerUAMRequest {
int64 serverId = 1; // 网站ID
}
message FindEnabledServerUAMResponse {
bytes uamJSON = 1;
bytes uamJSON = 1; // UAM设置
}
// 修改网站所属用户
message UpdateServerUserRequest {
int64 serverId = 1; // 网站ID
int64 userId = 2;
int64 userId = 2; // 用户ID
}
// 修改网站名称
@@ -745,10 +748,21 @@ message UpdateServerNameRequest {
// 在网站之间复制配置
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 反向代理设置
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; // 提示文字
}

View File

@@ -5,6 +5,7 @@ package pb;
import "models/rpc_messages.proto";
import "models/model_ssl_cert.proto";
import "models/model_user.proto";
// SSL证书管理服务
service SSLCertService {
@@ -46,6 +47,9 @@ service SSLCertService {
// 读取证书的OCSP
rpc listUpdatedSSLCertOCSP(ListUpdatedSSLCertOCSPRequest) returns (ListUpdatedSSLCertOCSPResponse);
// 查找证书所属用户
rpc findSSLCertUser(FindSSLCertUserRequest) returns (FindSSLCertUserResponse);
}
// 创建证书
@@ -131,6 +135,7 @@ message CountSSLCertRequest {
string keyword = 5; // 可选项,关键词
int64 userId = 6; // 可选项用户ID不填则表示读取管理员上传的证书
repeated string domains = 7; // 可选项,搜索使用的域名列表
bool userOnly = 8; // 可选项,只列出用户上传的证书
}
// 列出单页匹配的证书
@@ -144,6 +149,7 @@ message ListSSLCertsRequest {
repeated string domains = 9; // 可选项,搜索使用的域名列表
int64 offset = 6; // 读取位置
int64 size = 7; // 读取长度不能小于0
bool userOnly = 10; // 可选项,只列出用户上传的证书
}
message ListSSLCertsResponse {
@@ -196,4 +202,13 @@ message ListUpdatedSSLCertOCSPResponse {
int64 version = 3;
int64 expiresAt = 4;
}
}
// 查找证书所属用户
message FindSSLCertUserRequest {
int64 sslCertId = 1; // 证书ID
}
message FindSSLCertUserResponse {
User user = 1; // 用户信息,只包含几个基本的信息
}

View File

@@ -13,7 +13,7 @@ type SYNFloodConfig struct {
func DefaultSYNFloodConfig() *SYNFloodConfig {
return &SYNFloodConfig{
IsOn: true,
IsOn: false,
MinAttempts: 10,
TimeoutSeconds: 1800,
IgnoreLocal: true,

View File

@@ -1,30 +0,0 @@
package serverconfigs
const (
DefaultTCPPortRangeMin = 10000
DefaultTCPPortRangeMax = 40000
)
// GlobalConfig 服务相关的全局设置
// Deprecated
type GlobalConfig struct {
// HTTP & HTTPS相关配置
HTTPAll struct {
//MatchDomainStrictly bool `yaml:"matchDomainStrictly" json:"matchDomainStrictly"` // 是否严格匹配域名
//AllowMismatchDomains []string `yaml:"allowMismatchDomains" json:"allowMismatchDomains"` // 允许的不匹配的域名
//DefaultDomain string `yaml:"defaultDomain" json:"defaultDomain"` // 默认的域名
//DomainMismatchAction *DomainMismatchAction `yaml:"domainMismatchAction" json:"domainMismatchAction"` // 不匹配时采取的动作
DomainAuditingIsOn bool `yaml:"domainAuditingIsOn" json:"domainAuditingIsOn"` // 域名是否需要审核
DomainAuditingPrompt string `yaml:"domainAuditingPrompt" json:"domainAuditingPrompt"` // 域名审核的提示
} `yaml:"httpAll" json:"httpAll"`
TCPAll struct {
PortRangeMin int `yaml:"portRangeMin" json:"portRangeMin"` // 最小端口
PortRangeMax int `yaml:"portRangeMax" json:"portRangeMax"` // 最大端口
DenyPorts []int `yaml:"denyPorts" json:"denyPorts"` // 禁止使用的端口
} `yaml:"tcpAll" json:"tcpAll"`
}
func (this *GlobalConfig) Init() error {
return nil
}

View File

@@ -9,6 +9,11 @@ const (
LnRequestSchedulingMethodURLMapping LnRequestSchedulingMethod = "urlMapping"
)
const (
DefaultTCPPortRangeMin = 10000
DefaultTCPPortRangeMax = 40000
)
func NewGlobalServerConfig() *GlobalServerConfig {
var config = &GlobalServerConfig{}
@@ -51,8 +56,17 @@ type GlobalServerConfig struct {
LnRequestSchedulingMethod LnRequestSchedulingMethod `yaml:"lnRequestSchedulingMethod" json:"lnRequestSchedulingMethod"` // Ln请求调度方法
ServerName string `yaml:"serverName" json:"serverName"` // Server名称
EnableServerAddrVariable bool `yaml:"enableServerAddrVariable" json:"enableServerAddrVariable"` // 是否支持${serverAddr}变量
DomainAuditingIsOn bool `yaml:"domainAuditingIsOn" json:"domainAuditingIsOn"` // 域名是否需要审核
DomainAuditingPrompt string `yaml:"domainAuditingPrompt" json:"domainAuditingPrompt"` // 域名审核的提示
} `yaml:"httpAll" json:"httpAll"` // HTTP统一配置
TCPAll struct {
PortRangeMin int `yaml:"portRangeMin" json:"portRangeMin"` // 最小端口
PortRangeMax int `yaml:"portRangeMax" json:"portRangeMax"` // 最大端口
DenyPorts []int `yaml:"denyPorts" json:"denyPorts"` // 禁止使用的端口
} `yaml:"tcpAll" json:"tcpAll"`
HTTPAccessLog struct {
IsOn bool `yaml:"isOn" json:"isOn"` // 是否启用此功能
EnableRequestHeaders bool `yaml:"enableRequestHeaders" json:"enableRequestHeaders"` // 记录请求Header

View File

@@ -18,7 +18,7 @@ const (
func NewReverseProxyConfig() *ReverseProxyConfig {
return &ReverseProxyConfig{
Retry50X: true,
Retry50X: false, // 不要改为true太多人使用50x作为特殊业务代码使用了
}
}

View File

@@ -3,7 +3,6 @@ package systemconfigs
type SettingCode = string
const (
SettingCodeServerGlobalConfig SettingCode = "serverGlobalConfig" // 服务相关全局设置
SettingCodeNodeMonitor SettingCode = "nodeMonitor" // 监控节点状态
SettingCodeClusterHealthCheck SettingCode = "clusterHealthCheck" // 集群健康检查
SettingCodeIPListVersion SettingCode = "ipListVersion" // IP名单的版本号