{
    "title": "Messaging Channels",
    "subtitle": "Manage messaging channels, accounts, account-to-agent bindings, and each channel's default account.",
    "refresh": "Refresh",
    "addChannel": "Add Channel",
    "stats": {
        "total": "Total Channels",
        "connected": "Connected",
        "disconnected": "Disconnected"
    },
    "gatewayWarning": "Gateway service is not running. Channels cannot connect.",
    "availableChannels": "Available Channels",
    "supportedChannels": "Supported Channels",
    "available": "Available Channels",
    "availableDesc": "Connect a new channel",
    "configured": "Configured Channels",
    "configuredDesc": "Manage channels that are already configured",
    "configuredBadge": "Configured",
    "deleteConfirm": "Are you sure you want to delete this channel?",
    "showAll": "Show All",
    "pluginBadge": "Plugin",
    "toast": {
        "whatsappConnected": "WhatsApp connected successfully",
        "whatsappFailed": "WhatsApp connection failed: {{error}}",
        "qrConnected": "{{name}} connected successfully",
        "qrFailed": "{{name}} connection failed: {{error}}",
        "channelSaved": "Channel {{name}} saved",
        "channelConnecting": "Connecting to {{name}}...",
        "savedButRefreshFailed": "Configuration was saved, but refreshing page data failed. Please refresh manually.",
        "restartManual": "Please restart the gateway manually",
        "configFailed": "Configuration failed: {{error}}",
        "bindingUpdated": "Account binding updated",
        "defaultUpdated": "Default account updated",
        "accountDeleted": "Account deleted",
        "channelDeleted": "Channel deleted"
    },
    "account": {
        "add": "Add Account",
        "edit": "Edit",
        "delete": "Delete Account",
        "deleteChannel": "Delete channel",
        "deleteConfirm": "Are you sure you want to delete this account?",
        "default": "Current Default",
        "setDefault": "Set as channel default",
        "bindAgentLabel": "Bound Agent",
        "unassigned": "Unassigned",
        "mainAccount": "Primary Account",
        "customIdLabel": "Account ID",
        "customIdPlaceholder": "e.g. feishu-sales-bot",
        "customIdHint": "Use a custom account ID to distinguish multiple accounts under one channel.",
        "invalidId": "Account ID cannot be empty",
        "idLabel": "ID: {{id}}",
        "boundTo": "Bound to: {{agent}}",
        "handledBy": "Handled by {{agent}}",
        "bindingStatusLabel": "Binding: {{status}}",
        "connectionStatusLabel": "Connection: {{status}}",
        "bindingStatus": {
            "bound": "Bound",
            "unbound": "Unbound"
        },
        "connectionStatus": {
            "connected": "Connected",
            "connecting": "Connecting",
            "disconnected": "Disconnected",
            "error": "Error"
        },
        "accountIdPrompt": "Enter a new account ID for this channel",
        "accountIdExists": "Account ID {{accountId}} already exists"
    },
    "dialog": {
        "updateTitle": "Update {{name}}",
        "configureTitle": "Configure {{name}}",
        "addTitle": "Add Channel",
        "existingDesc": "Update your existing configuration",
        "selectDesc": "Select a channel type to configure",
        "qrCode": "QRCode",
        "token": "Token",
        "scanQR": "Scan this QR code with {{name}}",
        "refreshCode": "Refresh Code",
        "loadingConfig": "Loading configuration...",
        "existingHint": "You have an existing configuration for this channel",
        "howToConnect": "How to connect",
        "viewDocs": "View Documentation",
        "channelName": "Channel Name",
        "channelNamePlaceholder": "My {{name}}",
        "enableChannel": "Enable Channel",
        "enableChannelDesc": "When off, config is saved but the channel stays disabled",
        "credentialsVerified": "Credentials Verified",
        "validationFailed": "Validation Failed",
        "warnings": "Warnings",
        "back": "Back",
        "validating": "Validating...",
        "validateConfig": "Validate Configuration",
        "generatingQR": "Generating QR...",
        "validatingAndSaving": "Validating & Saving...",
        "generateQRCode": "Generate QR Code",
        "updateAndReconnect": "Update & Reconnect",
        "saveAndConnect": "Save & Connect",
        "envVar": "Environment Variable: {{var}}"
    },
    "meta": {
        "telegram": {
            "description": "Connect Telegram using a bot token from @BotFather",
            "docsUrl": "https://icnnp7d0dymg.feishu.cn/wiki/TjiGwxsMWi7hpDkDAQBc0ydMnEf#MEkKdqXP1orZU2x4SrFcdUHgnl1",
            "fields": {
                "botToken": {
                    "label": "Bot Token",
                    "placeholder": "123456:ABC-DEF..."
                },
                "allowedUsers": {
                    "label": "Allowed User IDs",
                    "placeholder": "e.g. 123456789, 987654321",
                    "description": "Comma separated list of User IDs allowed to use the bot. Required for security."
                }
            },
            "instructions": [
                "Open Telegram and search for @BotFather",
                "Send /newbot and follow the instructions",
                "Copy the bot token provided",
                "Paste the token below",
                "Get your User ID from @userinfobot and paste it below"
            ]
        },
        "discord": {
            "description": "Connect Discord using a bot token from Developer Portal",
            "docsUrl": "https://icnnp7d0dymg.feishu.cn/wiki/BkOywJYCAiYRN9k4KTTceKPMnxg#QS6LdxnA2oNtfcxtFc8cgabnnNd",
            "fields": {
                "token": {
                    "label": "Bot Token",
                    "placeholder": "Your Discord bot token"
                },
                "guildId": {
                    "label": "Guild/Server ID",
                    "placeholder": "e.g., 123456789012345678",
                    "description": "Limit bot to a specific server. Right-click server → Copy Server ID."
                },
                "channelId": {
                    "label": "Channel ID (optional)",
                    "placeholder": "e.g., 123456789012345678",
                    "description": "Limit bot to a specific channel. Right-click channel → Copy Channel ID."
                }
            },
            "instructions": [
                "Go to Discord Developer Portal → Applications → New Application",
                "In Bot section: Add Bot, then copy the Bot Token",
                "Enable Message Content Intent + Server Members Intent in Bot → Privileged Gateway Intents",
                "In OAuth2 → URL Generator: select \"bot\" + \"applications.commands\", add message permissions",
                "Invite the bot to your server using the generated URL",
                "Paste the bot token below"
            ]
        },
        "whatsapp": {
            "description": "Connect WhatsApp by scanning a QR code (no phone number required)",
            "docsUrl": "https://icnnp7d0dymg.feishu.cn/wiki/ES7fwUfH8iGl8FkHYfFcyWB3n4d#doxcnUElomBZLi0NnKLUzn6zLbd",
            "instructions": [
                "Open WhatsApp on your phone",
                "Go to Settings > Linked Devices > Link a Device",
                "Scan the QR code shown below",
                "The system will automatically identify your phone number"
            ]
        },
        "wechat": {
            "description": "Connect personal WeChat with Tencent's official OpenClaw plugin by scanning a QR code",
            "docsUrl": "https://icnnp7d0dymg.feishu.cn/wiki/GHYZwuPCriF0gWkXwkFcJ9zon3b",
            "instructions": [
                "Click Generate QR Code to install and enable the official WeChat plugin inside OpenClaw",
                "Scan the QR code below with WeChat and confirm the connection on your phone",
                "After linking succeeds, a new WeChat ClawBot chat will appear in WeChat automatically",
                "You can repeat the QR flow later to add another WeChat account or reconnect an existing one"
            ]
        },
        "dingtalk": {
            "description": "Connect DingTalk via OpenClaw channel plugin (Stream mode)",
            "docsUrl": "https://icnnp7d0dymg.feishu.cn/wiki/Y5eNwiSiZidkLskrwtJc1rUln0b#doxcnDgA78n43DbkiQjI1OqUA7b",
            "fields": {
                "clientId": {
                    "label": "Client ID (AppKey)",
                    "placeholder": "dingxxxxxx"
                },
                "clientSecret": {
                    "label": "Client Secret (AppSecret)",
                    "placeholder": "Your app secret"
                },
                "robotCode": {
                    "label": "Robot Code (optional)",
                    "placeholder": "Usually same as Client ID"
                },
                "corpId": {
                    "label": "Corp ID (optional)",
                    "placeholder": "dingxxxxxx"
                },
                "agentId": {
                    "label": "Agent ID (optional)",
                    "placeholder": "123456789"
                }
            },
            "instructions": [
                "Install and enable the dingtalk plugin in OpenClaw",
                "Create a DingTalk internal app and enable Stream mode",
                "Fill in Client ID and Client Secret (required)",
                "Fill in Robot Code / Corp ID / Agent ID if your setup requires them"
            ]
        },
        "signal": {
            "description": "Connect Signal using signal-cli",
            "docsUrl": "https://docs.openclaw.ai/channels/signal",
            "fields": {
                "phoneNumber": {
                    "label": "Phone Number",
                    "placeholder": "+1234567890"
                }
            },
            "instructions": [
                "Install signal-cli on your system",
                "Register or link your phone number",
                "Enter your phone number below"
            ]
        },
        "feishu": {
            "description": "Connect Feishu/Lark bot via WebSocket",
            "docsUrl": "https://icnnp7d0dymg.feishu.cn/wiki/GKn8wOvHnibpPNkNkPzcAvGlnzK#GdHUdp9t9oqyegxwV8ScLvVGn1c",
            "fields": {
                "appId": {
                    "label": "App ID",
                    "placeholder": "cli_xxxxxx"
                },
                "appSecret": {
                    "label": "App Secret",
                    "placeholder": "Your app secret"
                }
            },
            "instructions": [
                "Read the documentation, then go to Feishu Open Platform",
                "Create a new application",
                "Get App ID and App Secret",
                "Configure event subscription"
            ]
        },
        "wecom": {
            "description": "Connect WeCom Bot via plugin",
            "docsUrl": "https://icnnp7d0dymg.feishu.cn/wiki/JTGnwoV0RixKPtkr4w7c7gpAnDc",
            "fields": {
                "botId": {
                    "label": "Bot ID",
                    "placeholder": "ww_xxxxxx"
                },
                "secret": {
                    "label": "App Secret",
                    "placeholder": "Your WeCom Bot secret"
                }
            },
            "instructions": [
                "Create an application in WeCom Admin Console to get configuration info",
                "Ensure receive message server config is enabled",
                "Enter your Bot ID (or Corp ID) and Secret to establish connection"
            ]
        },
        "imessage": {
            "description": "Connect iMessage via BlueBubbles (macOS)",
            "docsUrl": "https://docs.openclaw.ai/channels/bluebubbles",
            "fields": {
                "serverUrl": {
                    "label": "BlueBubbles Server URL",
                    "placeholder": "http://localhost:1234"
                },
                "password": {
                    "label": "Server Password",
                    "placeholder": "Your server password"
                }
            },
            "instructions": [
                "Install BlueBubbles server on your Mac",
                "Note the server URL and password",
                "Enter the connection details below"
            ]
        },
        "matrix": {
            "description": "Connect to Matrix protocol",
            "docsUrl": "https://docs.openclaw.ai/channels/matrix",
            "fields": {
                "homeserver": {
                    "label": "Homeserver URL",
                    "placeholder": "https://matrix.org"
                },
                "accessToken": {
                    "label": "Access Token",
                    "placeholder": "Your access token"
                }
            },
            "instructions": [
                "Create a Matrix account or use existing",
                "Get an access token from your client",
                "Enter the homeserver and token below"
            ]
        },
        "line": {
            "description": "Connect LINE Messaging API",
            "docsUrl": "https://docs.openclaw.ai/channels/line",
            "fields": {
                "channelAccessToken": {
                    "label": "Channel Access Token",
                    "placeholder": "Your LINE channel access token"
                },
                "channelSecret": {
                    "label": "Channel Secret",
                    "placeholder": "Your LINE channel secret"
                }
            },
            "instructions": [
                "Go to LINE Developers Console",
                "Create a Messaging API channel",
                "Get Channel Access Token and Secret"
            ]
        },
        "msteams": {
            "description": "Connect Microsoft Teams via Bot Framework",
            "docsUrl": "https://docs.openclaw.ai/channels/msteams",
            "fields": {
                "appId": {
                    "label": "App ID",
                    "placeholder": "Your Microsoft App ID"
                },
                "appPassword": {
                    "label": "App Password",
                    "placeholder": "Your Microsoft App Password"
                }
            },
            "instructions": [
                "Go to Azure Portal",
                "Register a new Bot application",
                "Get App ID and create a password",
                "Configure Teams channel"
            ]
        },
        "googlechat": {
            "description": "Connect Google Chat via webhook",
            "docsUrl": "https://docs.openclaw.ai/channels/googlechat",
            "fields": {
                "serviceAccountKey": {
                    "label": "Service Account JSON Path",
                    "placeholder": "/path/to/service-account.json"
                }
            },
            "instructions": [
                "Create a Google Cloud project",
                "Enable Google Chat API",
                "Create a service account",
                "Download the JSON key file"
            ]
        },
        "mattermost": {
            "description": "Connect Mattermost via Bot API",
            "docsUrl": "https://docs.openclaw.ai/channels/mattermost",
            "fields": {
                "serverUrl": {
                    "label": "Server URL",
                    "placeholder": "https://your-mattermost.com"
                },
                "botToken": {
                    "label": "Bot Access Token",
                    "placeholder": "Your bot access token"
                }
            },
            "instructions": [
                "Go to Mattermost Integrations",
                "Create a new Bot Account",
                "Copy the access token"
            ]
        },
        "qqbot": {
            "description": "Connect QQ Bot channel (built-in since OpenClaw 3.31)",
            "docsUrl": "https://icnnp7d0dymg.feishu.cn/wiki/KPIJwlyiGiupMrkiS9ice39Zn2c",
            "fields": {
                "appId": {
                    "label": "App ID",
                    "placeholder": "Your QQ Bot App ID"
                },
                "clientSecret": {
                    "label": "Client Secret",
                    "placeholder": "Your QQ Bot Client Secret"
                }
            },
            "instructions": [
                "Register an app at QQ Bot Open Platform",
                "Get App ID and Client Secret",
                "Fill in your credentials below"
            ]
        }
    },
    "viewDocs": "View Documentation"
}
