diff --git a/mateclaw-server/src/main/resources/db/data-mysql-zh.sql b/mateclaw-server/src/main/resources/db/data-mysql-zh.sql index c4df6db2..9e5e7375 100644 --- a/mateclaw-server/src/main/resources/db/data-mysql-zh.sql +++ b/mateclaw-server/src/main/resources/db/data-mysql-zh.sql @@ -1240,13 +1240,13 @@ UPDATE mate_skill SET skill_content = '# Steve Jobs · 思维操作系统 -- 1. Web Console(默认启用) INSERT INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) -VALUES (1000000001, 'Web Console', 'web', 1000000001, '', '{}', TRUE, +VALUES (1000000001, 'Web 控制台', 'web', 1000000001, '', '{}', TRUE, '默认 Web 控制台渠道,通过浏览器 SSE 流式交互', NOW(), NOW(), 0) ON DUPLICATE KEY UPDATE name=VALUES(name), channel_type=VALUES(channel_type), agent_id=VALUES(agent_id), bot_prefix=VALUES(bot_prefix), config_json=VALUES(config_json), enabled=VALUES(enabled), description=VALUES(description), update_time=VALUES(update_time), deleted=VALUES(deleted); -- 2. 钉钉(默认禁用,需配置 client_id/client_secret) INSERT INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) -VALUES (1000000002, 'DingTalk Bot', 'dingtalk', 1000000001, '', '{ +VALUES (1000000002, '钉钉机器人', 'dingtalk', 1000000001, '', '{ "client_id": "", "client_secret": "", "robot_code": "", @@ -1266,7 +1266,7 @@ ON DUPLICATE KEY UPDATE name=VALUES(name), channel_type=VALUES(channel_type), ag -- 3. 飞书(默认禁用,需配置 app_id/app_secret) INSERT INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) -VALUES (1000000003, 'Feishu Bot', 'feishu', 1000000001, '', '{ +VALUES (1000000003, '飞书机器人', 'feishu', 1000000001, '', '{ "app_id": "", "app_secret": "", "encrypt_key": "", @@ -1285,7 +1285,7 @@ ON DUPLICATE KEY UPDATE name=VALUES(name), channel_type=VALUES(channel_type), ag -- 4. Telegram(默认禁用,需配置 bot_token) INSERT INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) -VALUES (1000000004, 'Telegram Bot', 'telegram', 1000000001, '', '{ +VALUES (1000000004, 'Telegram 机器人', 'telegram', 1000000001, '', '{ "bot_token": "", "http_proxy": "", "show_typing": true, @@ -1303,7 +1303,7 @@ ON DUPLICATE KEY UPDATE name=VALUES(name), channel_type=VALUES(channel_type), ag -- 5. Discord(默认禁用,需配置 bot_token) INSERT INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) -VALUES (1000000005, 'Discord Bot', 'discord', 1000000001, '!mc ', '{ +VALUES (1000000005, 'Discord 机器人', 'discord', 1000000001, '!mc ', '{ "bot_token": "", "http_proxy": "", "dm_policy": "open", @@ -1320,7 +1320,7 @@ ON DUPLICATE KEY UPDATE name=VALUES(name), channel_type=VALUES(channel_type), ag -- 6. 企业微信智能机器人(默认禁用,需配置 bot_id/secret) INSERT INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) -VALUES (1000000006, 'WeCom Bot', 'wecom', 1000000001, '', '{ +VALUES (1000000006, '企业微信机器人', 'wecom', 1000000001, '', '{ "bot_id": "", "secret": "", "welcome_text": "", @@ -1341,7 +1341,7 @@ ON DUPLICATE KEY UPDATE name=VALUES(name), channel_type=VALUES(channel_type), ag -- 7. QQ 机器人(默认禁用,需配置 app_id/client_secret) INSERT INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) -VALUES (1000000007, 'QQ Bot', 'qq', 1000000001, '', '{ +VALUES (1000000007, 'QQ 机器人', 'qq', 1000000001, '', '{ "app_id": "", "client_secret": "", "markdown_enabled": true, @@ -1378,7 +1378,7 @@ ON DUPLICATE KEY UPDATE name=VALUES(name), channel_type=VALUES(channel_type), ag -- 9. Slack(默认禁用,需配置 bot_token / app_token) INSERT INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) -VALUES (1000000009, 'Slack Bot', 'slack', 1000000001, '', '{ +VALUES (1000000009, 'Slack 机器人', 'slack', 1000000001, '', '{ "bot_token": "", "app_token": "", "signing_secret": "", diff --git a/mateclaw-server/src/main/resources/db/data-zh.sql b/mateclaw-server/src/main/resources/db/data-zh.sql index 1c28aa2e..e0e2bf9f 100644 --- a/mateclaw-server/src/main/resources/db/data-zh.sql +++ b/mateclaw-server/src/main/resources/db/data-zh.sql @@ -1204,13 +1204,13 @@ UPDATE mate_skill SET skill_content = '# Steve Jobs · 思维操作系统 -- 1. Web Console(默认启用) MERGE INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) KEY (id) -VALUES (1000000001, 'Web Console', 'web', 1000000001, '', '{}', TRUE, +VALUES (1000000001, 'Web 控制台', 'web', 1000000001, '', '{}', TRUE, '默认 Web 控制台渠道,通过浏览器 SSE 流式交互', NOW(), NOW(), 0); -- 2. 钉钉(默认禁用,需配置 client_id/client_secret) MERGE INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) KEY (id) -VALUES (1000000002, 'DingTalk Bot', 'dingtalk', 1000000001, '', '{ +VALUES (1000000002, '钉钉机器人', 'dingtalk', 1000000001, '', '{ "client_id": "", "client_secret": "", "robot_code": "", @@ -1230,7 +1230,7 @@ VALUES (1000000002, 'DingTalk Bot', 'dingtalk', 1000000001, '', '{ -- 3. 飞书(默认禁用,需配置 app_id/app_secret) MERGE INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) KEY (id) -VALUES (1000000003, 'Feishu Bot', 'feishu', 1000000001, '', '{ +VALUES (1000000003, '飞书机器人', 'feishu', 1000000001, '', '{ "app_id": "", "app_secret": "", "encrypt_key": "", @@ -1249,7 +1249,7 @@ VALUES (1000000003, 'Feishu Bot', 'feishu', 1000000001, '', '{ -- 4. Telegram(默认禁用,需配置 bot_token) MERGE INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) KEY (id) -VALUES (1000000004, 'Telegram Bot', 'telegram', 1000000001, '', '{ +VALUES (1000000004, 'Telegram 机器人', 'telegram', 1000000001, '', '{ "bot_token": "", "http_proxy": "", "show_typing": true, @@ -1267,7 +1267,7 @@ VALUES (1000000004, 'Telegram Bot', 'telegram', 1000000001, '', '{ -- 5. Discord(默认禁用,需配置 bot_token) MERGE INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) KEY (id) -VALUES (1000000005, 'Discord Bot', 'discord', 1000000001, '!mc ', '{ +VALUES (1000000005, 'Discord 机器人', 'discord', 1000000001, '!mc ', '{ "bot_token": "", "http_proxy": "", "dm_policy": "open", @@ -1284,7 +1284,7 @@ VALUES (1000000005, 'Discord Bot', 'discord', 1000000001, '!mc ', '{ -- 6. 企业微信智能机器人(默认禁用,需配置 bot_id/secret) MERGE INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) KEY (id) -VALUES (1000000006, 'WeCom Bot', 'wecom', 1000000001, '', '{ +VALUES (1000000006, '企业微信机器人', 'wecom', 1000000001, '', '{ "bot_id": "", "secret": "", "welcome_text": "", @@ -1305,7 +1305,7 @@ VALUES (1000000006, 'WeCom Bot', 'wecom', 1000000001, '', '{ -- 7. QQ 机器人(默认禁用,需配置 app_id/client_secret) MERGE INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) KEY (id) -VALUES (1000000007, 'QQ Bot', 'qq', 1000000001, '', '{ +VALUES (1000000007, 'QQ 机器人', 'qq', 1000000001, '', '{ "app_id": "", "client_secret": "", "markdown_enabled": true, @@ -1342,7 +1342,7 @@ VALUES (1000000008, '微信', 'weixin', 1000000001, '', '{ -- 9. Slack(默认禁用,需配置 bot_token / app_token) MERGE INTO mate_channel (id, name, channel_type, agent_id, bot_prefix, config_json, enabled, description, create_time, update_time, deleted) KEY (id) -VALUES (1000000009, 'Slack Bot', 'slack', 1000000001, '', '{ +VALUES (1000000009, 'Slack 机器人', 'slack', 1000000001, '', '{ "bot_token": "", "app_token": "", "signing_secret": "", diff --git a/mateclaw-server/src/main/resources/db/migration/h2/V54__channel_names_to_chinese_for_zh_locale.sql b/mateclaw-server/src/main/resources/db/migration/h2/V54__channel_names_to_chinese_for_zh_locale.sql new file mode 100644 index 00000000..329e13ed --- /dev/null +++ b/mateclaw-server/src/main/resources/db/migration/h2/V54__channel_names_to_chinese_for_zh_locale.sql @@ -0,0 +1,57 @@ +-- V54: Localize seeded channel names to Chinese for zh-CN installs. +-- +-- The zh seed (db/data-zh.sql) historically planted channels with English +-- display names ("DingTalk Bot", "Feishu Bot", "WeCom Bot", ...). The seed +-- only runs once per fresh install (DatabaseBootstrapRunner short-circuits +-- on isDataAlreadySeeded), so existing zh-CN installs are stuck with the +-- English names forever. +-- +-- This migration flips the names to Chinese ONLY when: +-- 1. The system language is zh-CN (so en-US installs are untouched) +-- 2. The channel still has the original English seeded name (so any +-- user-renamed channel is left alone) +-- +-- Idempotent: re-running the migration finds no matching rows after the +-- first apply because the names won't match the English originals anymore. + +UPDATE mate_channel SET name = 'Web 控制台' + WHERE id = 1000000001 AND name = 'Web Console' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = '钉钉机器人' + WHERE id = 1000000002 AND name = 'DingTalk Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = '飞书机器人' + WHERE id = 1000000003 AND name = 'Feishu Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = 'Telegram 机器人' + WHERE id = 1000000004 AND name = 'Telegram Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = 'Discord 机器人' + WHERE id = 1000000005 AND name = 'Discord Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = '企业微信机器人' + WHERE id = 1000000006 AND name = 'WeCom Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = 'QQ 机器人' + WHERE id = 1000000007 AND name = 'QQ Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +-- id 1000000008 ("微信") already in Chinese; intentionally skipped. + +UPDATE mate_channel SET name = 'Slack 机器人' + WHERE id = 1000000009 AND name = 'Slack Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); diff --git a/mateclaw-server/src/main/resources/db/migration/mysql/V54__channel_names_to_chinese_for_zh_locale.sql b/mateclaw-server/src/main/resources/db/migration/mysql/V54__channel_names_to_chinese_for_zh_locale.sql new file mode 100644 index 00000000..1241fa39 --- /dev/null +++ b/mateclaw-server/src/main/resources/db/migration/mysql/V54__channel_names_to_chinese_for_zh_locale.sql @@ -0,0 +1,45 @@ +-- V54: Localize seeded channel names to Chinese for zh-CN installs. +-- See h2/V54 for the full rationale. Same logic, MySQL-flavored. +-- Idempotent: re-running finds no matching rows after the first apply. + +UPDATE mate_channel SET name = 'Web 控制台' + WHERE id = 1000000001 AND name = 'Web Console' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = '钉钉机器人' + WHERE id = 1000000002 AND name = 'DingTalk Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = '飞书机器人' + WHERE id = 1000000003 AND name = 'Feishu Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = 'Telegram 机器人' + WHERE id = 1000000004 AND name = 'Telegram Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = 'Discord 机器人' + WHERE id = 1000000005 AND name = 'Discord Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = '企业微信机器人' + WHERE id = 1000000006 AND name = 'WeCom Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +UPDATE mate_channel SET name = 'QQ 机器人' + WHERE id = 1000000007 AND name = 'QQ Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN'); + +-- id 1000000008 ("微信") already in Chinese; intentionally skipped. + +UPDATE mate_channel SET name = 'Slack 机器人' + WHERE id = 1000000009 AND name = 'Slack Bot' + AND EXISTS (SELECT 1 FROM mate_system_setting + WHERE setting_key = 'language' AND setting_value = 'zh-CN');