mirror of
https://github.com/lobehub/lobehub
synced 2026-04-21 09:37:28 +00:00
* ✨ feat: add cross-platform message tool for AI bot channel operations Implement a unified message tool (`lobe-message`) that provides AI with messaging capabilities across Discord, Telegram, Slack, Google Chat, and IRC through a single interface with platform-specific extensions. Core APIs: sendMessage, readMessages, editMessage, deleteMessage, searchMessages, reactToMessage, getReactions, pin/unpin management, channel/member info, thread operations, and polls. Architecture follows the established builtin-tool pattern: - Package: @lobechat/builtin-tool-message (manifest, types, executor, ExecutionRuntime, client components) - Registry: registered in builtin-tools (renders, inspectors, interventions, streamings) - Server runtime: stub service ready for platform adapter integration https://claude.ai/code/session_011sHc6R7V4cSYKere9RY1QM * feat: implement platform specific message service * chore: add wechat platform * chore: update wechat api service * chore: update protocol implementation * chore: optimize platform api test * fix: lark domain error * feat: support bot message cli * chore: refactor adapter to service * chore: optimize bot status fetch * fix: bot status * fix: channel nav ignore * feat: message tool support bot manage * feat: add lobe-message runtime * feat: support direct message * feat: add history limit * chore: update const limit * feat: optimize server id message history limit * chore: optimize system role & inject platform environment info * chore: update readMessages vibe * fix: form body width 50% * chore: optimize tool prompt * chore: update i18n files * chore: optimize read message system role and update bot message lh * updage readMessage api rate limit * chore: comatible for readMessages * fix: feishu readMessage implementation error * fix: test case * chore: update i18n files * fix: lint error * chore: add timeout for conversaction case * fix: message test case * fix: vite gzip error --------- Co-authored-by: Claude <noreply@anthropic.com>
121 lines
8.3 KiB
JSON
121 lines
8.3 KiB
JSON
{
|
|
"channel.appSecret": "Appgeheim",
|
|
"channel.appSecretHint": "Het App Secret van uw botapplicatie. Het wordt versleuteld en veilig opgeslagen.",
|
|
"channel.appSecretPlaceholder": "Plak hier uw appgeheim",
|
|
"channel.applicationId": "Applicatie-ID / Botgebruikersnaam",
|
|
"channel.applicationIdHint": "Unieke identificatie voor uw botapplicatie.",
|
|
"channel.applicationIdPlaceholder": "Bijv. 1234567890",
|
|
"channel.botToken": "Bot-token / API-sleutel",
|
|
"channel.botTokenEncryptedHint": "Token wordt versleuteld en veilig opgeslagen.",
|
|
"channel.botTokenHowToGet": "Hoe verkrijg ik dit?",
|
|
"channel.botTokenPlaceholderExisting": "Token is verborgen om veiligheidsredenen",
|
|
"channel.botTokenPlaceholderNew": "Plak hier uw bot-token",
|
|
"channel.charLimit": "Tekenlimiet",
|
|
"channel.charLimitHint": "Maximaal aantal tekens per bericht",
|
|
"channel.concurrency": "Concurrentie Modus",
|
|
"channel.concurrencyDebounce": "Debounce",
|
|
"channel.concurrencyHint": "Wachtrij verwerkt berichten één voor één; Debounce wacht tot een reeks berichten is voltooid voordat ze worden verwerkt",
|
|
"channel.concurrencyQueue": "Wachtrij",
|
|
"channel.connectFailed": "Botverbinding mislukt",
|
|
"channel.connectQueued": "Botverbinding in wachtrij. Het zal binnenkort starten.",
|
|
"channel.connectStarting": "Bot wordt gestart. Even geduld alstublieft.",
|
|
"channel.connectSuccess": "Bot succesvol verbonden",
|
|
"channel.connecting": "Verbinden...",
|
|
"channel.connectionConfig": "Verbindingsconfiguratie",
|
|
"channel.copied": "Gekopieerd naar klembord",
|
|
"channel.copy": "Kopiëren",
|
|
"channel.credentials": "Inloggegevens",
|
|
"channel.debounceMs": "Bericht Samenvoegvenster (ms)",
|
|
"channel.debounceMsHint": "Hoe lang wachten op aanvullende berichten voordat ze naar de agent worden verzonden (ms)",
|
|
"channel.deleteAllChannels": "Alle Kanalen Verwijderen",
|
|
"channel.deleteAllConfirm": "Weet u zeker dat u alle kanalen wilt verwijderen?",
|
|
"channel.deleteAllConfirmDesc": "Deze actie zal permanent alle berichtkanalen en hun configuraties voor deze agent verwijderen. Dit kan niet ongedaan worden gemaakt.",
|
|
"channel.deleteAllFailed": "Kanalen verwijderen mislukt",
|
|
"channel.deleteAllSuccess": "Alle kanalen verwijderd",
|
|
"channel.deleteConfirm": "Weet u zeker dat u dit kanaal wilt verwijderen?",
|
|
"channel.deleteConfirmDesc": "Deze actie zal dit berichtkanaal en de configuratie ervan permanent verwijderen. Dit kan niet ongedaan worden gemaakt.",
|
|
"channel.devWebhookProxyUrl": "HTTPS-tunnel-URL",
|
|
"channel.devWebhookProxyUrlHint": "Optioneel. HTTPS-tunnel-URL voor het doorsturen van webhookverzoeken naar lokale ontwikkelserver.",
|
|
"channel.disabled": "Uitgeschakeld",
|
|
"channel.discord.description": "Verbind deze assistent met een Discord-server voor kanaalchat en directe berichten.",
|
|
"channel.dm": "Directe berichten",
|
|
"channel.dmEnabled": "Directe berichten inschakelen",
|
|
"channel.dmEnabledHint": "Sta de bot toe om directe berichten te ontvangen en erop te reageren",
|
|
"channel.dmPolicy": "Beleid voor directe berichten",
|
|
"channel.dmPolicyAllowlist": "Toegestane lijst",
|
|
"channel.dmPolicyDisabled": "Uitgeschakeld",
|
|
"channel.dmPolicyHint": "Beheer wie directe berichten naar de bot kan sturen",
|
|
"channel.dmPolicyOpen": "Open",
|
|
"channel.documentation": "Documentatie",
|
|
"channel.enabled": "Ingeschakeld",
|
|
"channel.encryptKey": "Versleutelingssleutel",
|
|
"channel.encryptKeyHint": "Optioneel. Gebruikt om versleutelde gebeurtenisgegevens te ontsleutelen.",
|
|
"channel.encryptKeyPlaceholder": "Optionele versleutelingssleutel",
|
|
"channel.endpointUrl": "Webhook-URL",
|
|
"channel.endpointUrlHint": "Kopieer deze URL en plak deze in het <bold>{{fieldName}}</bold>-veld in de {{name}} Developer Portal.",
|
|
"channel.exportConfig": "Configuratie Exporteren",
|
|
"channel.feishu.description": "Verbind deze assistent met Feishu voor privé- en groepschats.",
|
|
"channel.historyLimit": "Limiet voor berichtgeschiedenis",
|
|
"channel.historyLimitHint": "Standaard aantal berichten om op te halen bij het lezen van kanaalgeschiedenis",
|
|
"channel.importConfig": "Configuratie Importeren",
|
|
"channel.importFailed": "Configuratie importeren mislukt",
|
|
"channel.importInvalidFormat": "Ongeldig configuratiebestandformaat",
|
|
"channel.importSuccess": "Configuratie succesvol geïmporteerd",
|
|
"channel.lark.description": "Verbind deze assistent met Lark voor privé- en groepschats.",
|
|
"channel.openPlatform": "Open Platform",
|
|
"channel.platforms": "Platformen",
|
|
"channel.publicKey": "Publieke sleutel",
|
|
"channel.publicKeyHint": "Optioneel. Gebruikt om interactieverzoeken van Discord te verifiëren.",
|
|
"channel.publicKeyPlaceholder": "Vereist voor interactieverificatie",
|
|
"channel.qq.appIdHint": "Uw QQ Bot App ID van het QQ Open Platform",
|
|
"channel.qq.description": "Verbind deze assistent met QQ voor groepschats en directe berichten.",
|
|
"channel.removeChannel": "Kanaal verwijderen",
|
|
"channel.removeFailed": "Verwijderen van kanaal mislukt",
|
|
"channel.removed": "Kanaal verwijderd",
|
|
"channel.runtimeDisconnected": "Bot is losgekoppeld",
|
|
"channel.save": "Configuratie opslaan",
|
|
"channel.saveFailed": "Opslaan van configuratie mislukt",
|
|
"channel.saveFirstWarning": "Sla eerst de configuratie op",
|
|
"channel.saved": "Configuratie succesvol opgeslagen",
|
|
"channel.secretToken": "Webhook-geheime token",
|
|
"channel.secretTokenHint": "Optioneel. Gebruikt om webhookverzoeken van Telegram te verifiëren.",
|
|
"channel.secretTokenPlaceholder": "Optioneel geheim voor webhookverificatie",
|
|
"channel.serverId": "Standaard Server / Guild ID",
|
|
"channel.serverIdHint": "Je standaard server- of guild-ID op dit platform. De AI gebruikt dit om kanalen te tonen zonder te vragen.",
|
|
"channel.settings": "Geavanceerde instellingen",
|
|
"channel.settingsResetConfirm": "Weet u zeker dat u de geavanceerde instellingen wilt terugzetten naar de standaardwaarden?",
|
|
"channel.settingsResetDefault": "Terugzetten naar standaard",
|
|
"channel.setupGuide": "Installatiehandleiding",
|
|
"channel.showUsageStats": "Toon gebruiksstatistieken",
|
|
"channel.showUsageStatsHint": "Toon tokengebruik, kosten en duurstatistieken in botantwoorden",
|
|
"channel.signingSecret": "Signing Secret",
|
|
"channel.signingSecretHint": "Gebruikt om webhookverzoeken te verifiëren.",
|
|
"channel.slack.appIdHint": "Uw Slack App ID van het Slack API-dashboard (begint met A).",
|
|
"channel.slack.description": "Verbind deze assistent met Slack voor kanaalgesprekken en directe berichten.",
|
|
"channel.telegram.description": "Verbind deze assistent met Telegram voor privé- en groepschats.",
|
|
"channel.testConnection": "Verbinding testen",
|
|
"channel.testFailed": "Verbindingstest mislukt",
|
|
"channel.testSuccess": "Verbindingstest geslaagd",
|
|
"channel.updateFailed": "Bijwerken van status mislukt",
|
|
"channel.userId": "Je gebruikers-ID op dit platform",
|
|
"channel.userIdHint": "Je gebruikers-ID op dit platform. De AI kan dit gebruiken om je directe berichten te sturen.",
|
|
"channel.validationError": "Vul Applicatie-ID en Token in",
|
|
"channel.verificationToken": "Verificatietoken",
|
|
"channel.verificationTokenHint": "Optioneel. Gebruikt om de bron van webhookgebeurtenissen te verifiëren.",
|
|
"channel.verificationTokenPlaceholder": "Plak hier uw verificatietoken",
|
|
"channel.wechat.description": "Verbind deze assistent met WeChat via iLink Bot voor privé- en groepschats.",
|
|
"channel.wechatBotId": "Bot-ID",
|
|
"channel.wechatBotIdHint": "Bot-identificatie toegewezen na QR-code autorisatie.",
|
|
"channel.wechatConnectedInfo": "Verbonden WeChat-account",
|
|
"channel.wechatManagedCredentials": "Dit kanaal is al verbonden via QR-code autorisatie. Inloggegevens worden automatisch beheerd.",
|
|
"channel.wechatQrExpired": "QR-code verlopen. Vernieuw om een nieuwe te krijgen.",
|
|
"channel.wechatQrRefresh": "QR-code vernieuwen",
|
|
"channel.wechatQrScaned": "QR-code gescand. Bevestig de login in WeChat.",
|
|
"channel.wechatQrWait": "Open WeChat en scan de QR-code om verbinding te maken.",
|
|
"channel.wechatRebind": "Opnieuw verbinden via QR-code",
|
|
"channel.wechatScanTitle": "Verbind WeChat Bot",
|
|
"channel.wechatScanToConnect": "Scan QR-code om te verbinden",
|
|
"channel.wechatTips": "Werk WeChat bij naar de nieuwste versie en start het opnieuw. De ClawBot-plug-in wordt geleidelijk uitgerold, dus controleer Instellingen > Plug-ins om toegang te bevestigen.",
|
|
"channel.wechatUserId": "WeChat Gebruikers-ID",
|
|
"channel.wechatUserIdHint": "WeChat-accountidentificatie geretourneerd door de autorisatiestroom."
|
|
}
|