writePump 只发 ActionCable 文本 JSON ping,从不发 websocket.PingMessage, 导致 readPump 的 PongHandler 永远不触发,ReadDeadline(60s) 到期后连接 被强制关闭。前端每 60 秒弹出"离线""重连"通知。 修复:在 ticker 中先发 PingMessage 控制帧(浏览器自动回 Pong 重置 ReadDeadline),再发 ActionCable 文本 ping(保活 ConnectionMonitor)。 同时包含此前会话中的其他变更: - 移除安全设置(SAML)页面及路由 - 新增超级管理员控制台前端页面 - platform agent_bots 路由使用 Platform* handler - 超级管理员入口改为 SPA 内路由跳转
165 lines
4.9 KiB
JSON
165 lines
4.9 KiB
JSON
{
|
|
"SUPER_ADMIN": {
|
|
"SIDEBAR": {
|
|
"TITLE": "Super Admin",
|
|
"DASHBOARD": "Dashboard",
|
|
"ACCOUNTS": "Accounts",
|
|
"USERS": "Users",
|
|
"AGENT_BOTS": "Agent Bots",
|
|
"CONFIGS": "Installation Config",
|
|
"BACK_TO_DASHBOARD": "Back to Dashboard"
|
|
},
|
|
"NO_ACCESS": {
|
|
"TITLE": "Access Denied",
|
|
"MESSAGE": "This page is only accessible to super admins."
|
|
},
|
|
"COMMON": {
|
|
"EDIT": "Edit",
|
|
"DELETE": "Delete",
|
|
"CONFIRM_DELETE": "Confirm Delete",
|
|
"CANCEL": "Cancel"
|
|
},
|
|
"DASHBOARD": {
|
|
"TITLE": "Platform Dashboard",
|
|
"DESCRIPTION": "Platform-wide statistics and overview",
|
|
"STATS": {
|
|
"ACCOUNTS": "Total Accounts",
|
|
"USERS": "Total Users"
|
|
},
|
|
"RECENT_ACCOUNTS": "Recent Accounts"
|
|
},
|
|
"ACCOUNTS": {
|
|
"TITLE": "Account Management",
|
|
"DESCRIPTION": "Manage all accounts on the platform",
|
|
"SEARCH": "Search accounts...",
|
|
"EMPTY": "No accounts found",
|
|
"TABLE": {
|
|
"NAME": "Name",
|
|
"STATUS": "Status",
|
|
"ACTIONS": "Actions"
|
|
},
|
|
"CREATE": {
|
|
"TITLE": "Create Account",
|
|
"SUCCESS": "Account created successfully"
|
|
},
|
|
"EDIT": {
|
|
"TITLE": "Edit Account",
|
|
"SUCCESS": "Account updated successfully"
|
|
},
|
|
"DELETE": {
|
|
"TITLE": "Delete Account",
|
|
"MESSAGE": "Are you sure you want to delete account \"{name}\"? This action cannot be undone.",
|
|
"SUCCESS": "Account deleted successfully"
|
|
},
|
|
"FIELDS": {
|
|
"NAME": "Account Name",
|
|
"NAME_PLACEHOLDER": "Enter account name"
|
|
},
|
|
"ERROR": "Operation failed, please try again"
|
|
},
|
|
"USERS": {
|
|
"TITLE": "User Management",
|
|
"DESCRIPTION": "Manage all users on the platform",
|
|
"SEARCH": "Search users...",
|
|
"EMPTY": "No users found",
|
|
"TABLE": {
|
|
"NAME": "User",
|
|
"TYPE": "Type",
|
|
"ACTIONS": "Actions"
|
|
},
|
|
"CREATE": {
|
|
"TITLE": "Create User",
|
|
"SUCCESS": "User created successfully"
|
|
},
|
|
"EDIT": {
|
|
"TITLE": "Edit User",
|
|
"SUCCESS": "User updated successfully"
|
|
},
|
|
"DELETE": {
|
|
"TITLE": "Delete User",
|
|
"MESSAGE": "Are you sure you want to delete user \"{name}\"? This action cannot be undone.",
|
|
"SUCCESS": "User deleted successfully"
|
|
},
|
|
"FIELDS": {
|
|
"NAME": "Name",
|
|
"NAME_PLACEHOLDER": "Enter user name",
|
|
"EMAIL": "Email",
|
|
"PASSWORD": "Password",
|
|
"PASSWORD_HINT": "Leave empty to keep current password",
|
|
"TYPE": "User Type",
|
|
"TYPE_USER": "Regular User",
|
|
"TYPE_SUPER_ADMIN": "Super Admin",
|
|
"TYPE_HINT": "Set to SuperAdmin to grant super admin privileges"
|
|
},
|
|
"ERROR": "Operation failed, please try again"
|
|
},
|
|
"AGENT_BOTS": {
|
|
"TITLE": "Agent Bot Management",
|
|
"DESCRIPTION": "Manage platform-level agent bots",
|
|
"SEARCH": "Search agent bots...",
|
|
"EMPTY": "No agent bots found",
|
|
"GLOBAL_BADGE": "System Bot",
|
|
"TABLE": {
|
|
"NAME": "Bot",
|
|
"URL": "Webhook URL",
|
|
"ACTIONS": "Actions"
|
|
},
|
|
"CREATE": {
|
|
"TITLE": "Create Agent Bot",
|
|
"SUCCESS": "Agent bot created successfully"
|
|
},
|
|
"EDIT": {
|
|
"TITLE": "Edit Agent Bot",
|
|
"SUCCESS": "Agent bot updated successfully"
|
|
},
|
|
"DELETE": {
|
|
"TITLE": "Delete Agent Bot",
|
|
"MESSAGE": "Are you sure you want to delete agent bot \"{name}\"?",
|
|
"SUCCESS": "Agent bot deleted successfully"
|
|
},
|
|
"FIELDS": {
|
|
"NAME": "Name",
|
|
"DESCRIPTION": "Description",
|
|
"DESCRIPTION_PLACEHOLDER": "Enter bot description",
|
|
"URL": "Webhook URL",
|
|
"TYPE": "Type",
|
|
"TYPE_HINT": "Defaults to webhook"
|
|
},
|
|
"ERROR": "Operation failed, please try again"
|
|
},
|
|
"CONFIGS": {
|
|
"TITLE": "Installation Config",
|
|
"DESCRIPTION": "Manage platform-wide key-value configuration",
|
|
"SEARCH": "Search configs...",
|
|
"EMPTY": "No configuration items found",
|
|
"TABLE": {
|
|
"NAME": "Name",
|
|
"VALUE": "Value",
|
|
"ACTIONS": "Actions"
|
|
},
|
|
"CREATE": {
|
|
"TITLE": "Create Config",
|
|
"SUCCESS": "Configuration created successfully"
|
|
},
|
|
"EDIT": {
|
|
"TITLE": "Edit Config",
|
|
"SUCCESS": "Configuration updated successfully"
|
|
},
|
|
"DELETE": {
|
|
"TITLE": "Delete Config",
|
|
"MESSAGE": "Are you sure you want to delete config \"{name}\"?",
|
|
"SUCCESS": "Configuration deleted successfully"
|
|
},
|
|
"FIELDS": {
|
|
"NAME": "Config Name",
|
|
"NAME_HINT": "Use uppercase snake_case, e.g. INSTALLATION_NAME",
|
|
"VALUE": "Config Value",
|
|
"VALUE_PLACEHOLDER": "Enter config value",
|
|
"LOCKED": "Locked",
|
|
"LOCKED_HINT": "When locked, non-super-admins cannot modify"
|
|
},
|
|
"ERROR": "Operation failed, please try again"
|
|
}
|
|
}
|
|
}
|