From 098f7a77b6fe9630e6dc0c1300301b9e76218322 Mon Sep 17 00:00:00 2001 From: Captain <92152627+chatwoot-bot@users.noreply.github.com> Date: Tue, 17 Mar 2026 16:02:40 -0700 Subject: [PATCH] chore: Update translations (#13832) Co-authored-by: Sojan Jose --- .../dashboard/i18n/locale/am/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ar/agentMgmt.json | 2 +- .../dashboard/i18n/locale/ar/auditLogs.json | 42 +- .../i18n/locale/ar/conversation.json | 2 +- .../dashboard/i18n/locale/ar/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/az/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/bg/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/bn/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ca/inboxMgmt.json | 12 +- .../i18n/locale/cs/conversation.json | 2 +- .../dashboard/i18n/locale/cs/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/da/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/de/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/el/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/es/inboxMgmt.json | 14 +- .../i18n/locale/es/integrations.json | 4 +- .../dashboard/i18n/locale/et/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/fa/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/fi/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/fr/inboxMgmt.json | 12 +- .../i18n/locale/he/generalSettings.json | 2 +- .../dashboard/i18n/locale/he/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/hi/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/hr/inboxMgmt.json | 12 +- .../i18n/locale/hu/attributesMgmt.json | 2 +- .../i18n/locale/hu/conversation.json | 2 +- .../dashboard/i18n/locale/hu/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/hy/inboxMgmt.json | 12 +- .../i18n/locale/id/attributesMgmt.json | 2 +- .../i18n/locale/id/generalSettings.json | 2 +- .../dashboard/i18n/locale/id/inboxMgmt.json | 12 +- .../i18n/locale/id/teamsSettings.json | 2 +- .../i18n/locale/is/conversation.json | 2 +- .../dashboard/i18n/locale/is/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/it/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ja/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ka/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ko/agentBots.json | 8 +- .../dashboard/i18n/locale/ko/agentMgmt.json | 8 +- .../i18n/locale/ko/attributesMgmt.json | 8 +- .../dashboard/i18n/locale/ko/automation.json | 8 +- .../dashboard/i18n/locale/ko/bulkActions.json | 8 +- .../dashboard/i18n/locale/ko/cannedMgmt.json | 8 +- .../dashboard/i18n/locale/ko/contact.json | 6 +- .../i18n/locale/ko/conversation.json | 34 +- .../dashboard/i18n/locale/ko/customRole.json | 8 +- .../dashboard/i18n/locale/ko/datePicker.json | 12 +- .../i18n/locale/ko/generalSettings.json | 4 +- .../dashboard/i18n/locale/ko/helpCenter.json | 20 +- .../dashboard/i18n/locale/ko/inboxMgmt.json | 144 +-- .../i18n/locale/ko/integrationApps.json | 12 +- .../i18n/locale/ko/integrations.json | 96 +- .../dashboard/i18n/locale/ko/labelsMgmt.json | 8 +- .../dashboard/i18n/locale/ko/macros.json | 8 +- .../dashboard/i18n/locale/ko/report.json | 62 +- .../dashboard/i18n/locale/ko/settings.json | 212 ++-- .../dashboard/i18n/locale/ko/signup.json | 4 +- .../dashboard/i18n/locale/ko/sla.json | 18 +- .../i18n/locale/ko/teamsSettings.json | 8 +- .../i18n/locale/lt/conversation.json | 2 +- .../dashboard/i18n/locale/lt/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/lv/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ml/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ms/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ne/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/nl/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/no/inboxMgmt.json | 12 +- .../i18n/locale/pl/conversation.json | 2 +- .../dashboard/i18n/locale/pl/inboxMgmt.json | 14 +- .../dashboard/i18n/locale/pt/inboxMgmt.json | 14 +- .../i18n/locale/pt_BR/auditLogs.json | 2 +- .../i18n/locale/pt_BR/helpCenter.json | 4 +- .../i18n/locale/pt_BR/inboxMgmt.json | 12 +- .../i18n/locale/ro/conversation.json | 2 +- .../dashboard/i18n/locale/ro/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ru/agentBots.json | 8 +- .../i18n/locale/ru/attributesMgmt.json | 8 +- .../dashboard/i18n/locale/ru/automation.json | 12 +- .../dashboard/i18n/locale/ru/bulkActions.json | 8 +- .../i18n/locale/ru/conversation.json | 2 +- .../dashboard/i18n/locale/ru/inboxMgmt.json | 160 +-- .../dashboard/i18n/locale/sh/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/sk/chatlist.json | 2 +- .../dashboard/i18n/locale/sk/contact.json | 2 +- .../dashboard/i18n/locale/sk/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/sl/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/sq/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/sr/agentMgmt.json | 2 +- .../dashboard/i18n/locale/sr/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/sv/inboxMgmt.json | 14 +- .../dashboard/i18n/locale/ta/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/th/automation.json | 2 +- .../dashboard/i18n/locale/th/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/tl/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/tr/helpCenter.json | 4 +- .../dashboard/i18n/locale/tr/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/tr/settings.json | 2 +- .../i18n/locale/uk/conversation.json | 2 +- .../dashboard/i18n/locale/uk/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/ur/inboxMgmt.json | 12 +- .../i18n/locale/ur_IN/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/vi/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/zh/agentMgmt.json | 139 ++- .../dashboard/i18n/locale/zh/cannedMgmt.json | 66 +- .../dashboard/i18n/locale/zh/chatlist.json | 117 +- .../dashboard/i18n/locale/zh/contact.json | 653 ++++++++++- .../i18n/locale/zh/conversation.json | 425 ++++++- .../i18n/locale/zh/generalSettings.json | 211 +++- .../dashboard/i18n/locale/zh/inboxMgmt.json | 1015 +++++++++++++++- .../i18n/locale/zh/integrations.json | 1036 ++++++++++++++++- .../dashboard/i18n/locale/zh/labelsMgmt.json | 97 +- .../dashboard/i18n/locale/zh/login.json | 28 +- .../dashboard/i18n/locale/zh/report.json | 615 +++++++++- .../i18n/locale/zh/resetPassword.json | 10 +- .../i18n/locale/zh/setNewPassword.json | 13 +- .../dashboard/i18n/locale/zh/settings.json | 847 +++++++++++++- .../dashboard/i18n/locale/zh/signup.json | 48 +- .../i18n/locale/zh_CN/auditLogs.json | 40 +- .../dashboard/i18n/locale/zh_CN/chatlist.json | 2 +- .../i18n/locale/zh_CN/companies.json | 2 +- .../i18n/locale/zh_CN/inboxMgmt.json | 12 +- .../dashboard/i18n/locale/zh_CN/search.json | 2 +- .../i18n/locale/zh_CN/yearInReview.json | 2 +- .../i18n/locale/zh_TW/bulkActions.json | 4 - .../i18n/locale/zh_TW/helpCenter.json | 10 - .../i18n/locale/zh_TW/inboxMgmt.json | 2 +- app/javascript/widget/i18n/locale/zh.json | 154 ++- config/locales/devise.ca.yml | 2 +- config/locales/devise.id.yml | 1 + config/locales/devise.ja.yml | 1 + config/locales/devise.ms.yml | 1 + config/locales/devise.th.yml | 1 + config/locales/devise.vi.yml | 1 + config/locales/devise.zh.yml | 3 +- config/locales/devise.zh_CN.yml | 1 + config/locales/devise.zh_TW.yml | 87 +- config/locales/id.yml | 4 + config/locales/ja.yml | 4 + config/locales/ko.yml | 376 +++--- config/locales/ms.yml | 4 + config/locales/pt_BR.yml | 2 +- config/locales/th.yml | 4 + config/locales/vi.yml | 4 + config/locales/zh.yml | 451 ++++++- config/locales/zh_CN.yml | 4 + 145 files changed, 6895 insertions(+), 1210 deletions(-) diff --git a/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json index 1cfc95ef0..608e5c804 100644 --- a/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/ar/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ar/agentMgmt.json index dbe3fbfb0..a82cbf859 100644 --- a/app/javascript/dashboard/i18n/locale/ar/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ar/agentMgmt.json @@ -9,7 +9,7 @@ "ADMINISTRATOR": "المدير", "AGENT": "وكيل الدعم" }, - "COUNT": "", + "COUNT": "{n} وكيل | {n} وكلاء", "LIST": { "404": "لا يوجد وكلاء دعم مرتبطين بهذا الحساب", "TITLE": "إدارة وكلاء الدعم في فريقك", diff --git a/app/javascript/dashboard/i18n/locale/ar/auditLogs.json b/app/javascript/dashboard/i18n/locale/ar/auditLogs.json index aacd85155..8f627ce16 100644 --- a/app/javascript/dashboard/i18n/locale/ar/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ar/auditLogs.json @@ -23,52 +23,52 @@ }, "DEFAULT_USER": "النظام", "AUTOMATION_RULE": { - "ADD": "{agentName} أنشأ قاعدة أتمتة جديدة (##{id})", - "EDIT": "{agentName} قام بتحديث قاعدة أتمتة (##{id})", - "DELETE": "{agentName} حذف قاعدة أتمتة (##{id})" + "ADD": "{agentName} أنشأ قاعدة أتمتة جديدة (#{id})", + "EDIT": "{agentName} قام بتحديث قاعدة أتمتة (#{id})", + "DELETE": "{agentName} حذف قاعدة أتمتة (#{id})" }, "ACCOUNT_USER": { "ADD": "{agentName} دعا {invitee} إلى الحساب كـ {role}", "EDIT": { "SELF": "{agentName} غير {attributes} الخاصة به إلى {values}", "OTHER": "{agentName} غير {attributes} لـ {user} إلى {values}", - "DELETED": "{agentName} غير {attributes} لـ %{user} إلى {values}" + "DELETED": "{agentName} غير {attributes} للمستخدم المحذوف إلى {values}" } }, "INBOX": { - "ADD": "{agentName} أنشأ صندوق وارد جديد (##{id})", - "EDIT": "{agentName} قام بتحديث صندوق الوارد (##{id})", - "DELETE": "{agentName} حذف صندوق الوارد (##{id})" + "ADD": "{agentName} أنشأ صندوق وارد جديد (#{id})", + "EDIT": "{agentName} قام بتحديث صندوق الوارد (#{id})", + "DELETE": "{agentName} حذف صندوق الوارد (#{id})" }, "WEBHOOK": { - "ADD": "{agentName} أنشأ Webhook جديد (##{id})", - "EDIT": "{agentName} قام بتحديث Webhook (##{id})", - "DELETE": "{agentName} حذف Webhook (##{id})" + "ADD": "{agentName} أنشأ Webhook جديد (#{id})", + "EDIT": "{agentName} قام بتحديث Webhook (#{id})", + "DELETE": "{agentName} حذف Webhook (#{id})" }, "USER_ACTION": { "SIGN_IN": "{agentName} قام بتسجيل الدخول", "SIGN_OUT": "{agentName} قام بتسجيل الخروج" }, "TEAM": { - "ADD": "{agentName} أنشأ فريق جديد (##{id})", - "EDIT": "{agentName} قام بتحديث الفريق (##{id})", - "DELETE": "{agentName} حذف الفريق (##{id})" + "ADD": "{agentName} أنشأ فريق جديد (#{id})", + "EDIT": "{agentName} قام بتحديث الفريق (#{id})", + "DELETE": "{agentName} حذف الفريق (#{id})" }, "MACRO": { - "ADD": "{agentName} أنشأ ماكرو جديد (##{id})", - "EDIT": "{agentName} قام بتحديث ماكرو (##{id})", - "DELETE": "{agentName} حذف ماكرو (##{id})" + "ADD": "{agentName} أنشأ ماكرو جديد (#{id})", + "EDIT": "{agentName} قام بتحديث ماكرو (#{id})", + "DELETE": "{agentName} حذف ماكرو (#{id})" }, "INBOX_MEMBER": { - "ADD": "{agentName} أضاف {user} إلى صندوق الوارد (##{inbox_id})", - "REMOVE": "{agentName} أزال {user} من صندوق الوارد (##{inbox_id})" + "ADD": "{agentName} أضاف {user} إلى صندوق الوارد (#{inbox_id})", + "REMOVE": "{agentName} أزال {user} من صندوق الوارد (#{inbox_id})" }, "TEAM_MEMBER": { - "ADD": "{agentName} أضاف {user} إلى الفريق (##{team_id})", - "REMOVE": "{agentName} أزال {user} من الفريق (##{team_id})" + "ADD": "{agentName} أضاف {user} إلى الفريق (#{team_id})", + "REMOVE": "{agentName} أزال {user} من الفريق (#{team_id})" }, "ACCOUNT": { - "EDIT": "{agentName} قام بتحديث إعدادات الحساب (##{id})" + "EDIT": "{agentName} قام بتحديث إعدادات الحساب (#{id})" }, "CONVERSATION": { "DELETE": "{agentName} deleted conversation #{id}" diff --git a/app/javascript/dashboard/i18n/locale/ar/conversation.json b/app/javascript/dashboard/i18n/locale/ar/conversation.json index 9c8c54480..57722ef01 100644 --- a/app/javascript/dashboard/i18n/locale/ar/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ar/conversation.json @@ -171,7 +171,7 @@ "FAILED": "تعذر تعيين الوكيل. الرجاء المحاولة مرة أخرى." }, "LABEL_ASSIGNMENT": { - "SUCCESFUL": "تعيين تسمية ##{labelName} لمعرف المحادثة {conversationId}", + "SUCCESFUL": "تعيين تسمية #{labelName} لمعرف المحادثة {conversationId}", "FAILED": "تعذر تعيين التسمية. الرجاء المحاولة مرة أخرى." }, "LABEL_REMOVAL": { diff --git a/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json index da0aeb78f..42499f8a3 100644 --- a/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "مباشر" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "الإعدادات", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "وكيل الدعم", "INBOX_AGENTS_SUB_TEXT": "إضافة أو إزالة وكلاء من صندوق الوارد هذا", diff --git a/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json index 1cfc95ef0..608e5c804 100644 --- a/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json index 0038d1192..b2c5fb0f0 100644 --- a/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Агенти", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/bn/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/bn/inboxMgmt.json index 1cfc95ef0..608e5c804 100644 --- a/app/javascript/dashboard/i18n/locale/bn/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bn/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json index 8c63fabc7..83a9b468b 100644 --- a/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "En directe" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Configuracions", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Afegir o eliminar agents d'aquesta safata d'entrada", diff --git a/app/javascript/dashboard/i18n/locale/cs/conversation.json b/app/javascript/dashboard/i18n/locale/cs/conversation.json index 64d01e69d..de341bb51 100644 --- a/app/javascript/dashboard/i18n/locale/cs/conversation.json +++ b/app/javascript/dashboard/i18n/locale/cs/conversation.json @@ -179,7 +179,7 @@ "FAILED": "Couldn't remove label. Please try again." }, "TEAM_ASSIGNMENT": { - "SUCCESFUL": "Přiřazený tým #{team} ke konverzaci id {conversationId}", + "SUCCESFUL": "Přiřazený tým \"{team}\" ke konverzaci id {conversationId}", "FAILED": "Nelze přiřadit tým. Zkuste to prosím znovu." } } diff --git a/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json index b877b96e7..8bc2b1ee2 100644 --- a/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Nastavení", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenti", "INBOX_AGENTS_SUB_TEXT": "Přidat nebo odebrat agenty z této složky doručené pošty", diff --git a/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json index 54c759fd0..fc963baf7 100644 --- a/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Levende" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Indstillinger", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenter", "INBOX_AGENTS_SUB_TEXT": "Tilføj eller fjern agenter fra denne indbakke", diff --git a/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json index 88ec50dd5..8ac2639af 100644 --- a/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Einstellungen", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenten", "INBOX_AGENTS_SUB_TEXT": "Hinzufügen oder Entfernen von Agenten zu diesem Posteingang", diff --git a/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json index e243660f5..93891dde9 100644 --- a/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Ζωντανά" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Ρυθμίσεις", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Πράκτορες", "INBOX_AGENTS_SUB_TEXT": "Προσθέστε ή αφαιρέστε πράκτορες σε αυτό το κιβώτιο", diff --git a/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json index ee75303df..fdd97bcfd 100644 --- a/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json @@ -239,7 +239,7 @@ "WHATSAPP_CLOUD": "Nube de WhatsApp", "WHATSAPP_CLOUD_DESC": "Quick setup through Meta", "TWILIO_DESC": "Connect via Twilio credentials", - "360_DIALOG": "360 Diálogo" + "360_DIALOG": "360dialog" }, "SELECT_PROVIDER": { "TITLE": "Select your API provider", @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "En vivo" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Ajustes", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agentes", "INBOX_AGENTS_SUB_TEXT": "Añadir o quitar agentes de esta bandeja de entrada", diff --git a/app/javascript/dashboard/i18n/locale/es/integrations.json b/app/javascript/dashboard/i18n/locale/es/integrations.json index 8457a0f62..ad90fc279 100644 --- a/app/javascript/dashboard/i18n/locale/es/integrations.json +++ b/app/javascript/dashboard/i18n/locale/es/integrations.json @@ -540,11 +540,11 @@ "HEADER": "Ajustes", "BASIC_SETTINGS": { "TITLE": "Configuraciones básicas", - "DESCRIPTION": "" + "DESCRIPTION": "Personaliza lo que dice el asistente al finalizar una conversación o al transferirla a una persona." }, "SYSTEM_SETTINGS": { "TITLE": "System settings", - "DESCRIPTION": "" + "DESCRIPTION": "Personaliza lo que dice el asistente al finalizar una conversación o al transferirla a una persona." }, "CONTROL_ITEMS": { "TITLE": "The Fun Stuff", diff --git a/app/javascript/dashboard/i18n/locale/et/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/et/inboxMgmt.json index 1cfc95ef0..608e5c804 100644 --- a/app/javascript/dashboard/i18n/locale/et/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/et/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json index 7bb3f2799..5ae039bb5 100644 --- a/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "زنده" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "تنظیمات", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "ایجنت ها", "INBOX_AGENTS_SUB_TEXT": "اضافه کردن یا حذف کردن دسترسی ایجنت به صندوق ورودی", diff --git a/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json index 4bb9d01b7..d9fb67383 100644 --- a/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Asetukset", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Edustajat", "INBOX_AGENTS_SUB_TEXT": "Lisää tai poista edustajia tästä saapuneet-kansiosta", diff --git a/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json index a9ba2d18c..d4a7ebc5b 100644 --- a/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "En direct" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Paramètres", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Ajouter ou supprimer des agents de cette boîte de réception", diff --git a/app/javascript/dashboard/i18n/locale/he/generalSettings.json b/app/javascript/dashboard/i18n/locale/he/generalSettings.json index b0e4747a7..6438e5f22 100644 --- a/app/javascript/dashboard/i18n/locale/he/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/he/generalSettings.json @@ -30,7 +30,7 @@ "SCHEDULED_DELETION": { "TITLE": "החשבון מתוזמן למחיקה", "MESSAGE_MANUAL": "חשבון זה מתוזמן למחיקה ב- {deletionDate}. הדבר התבקש על ידי מנהל מערכת. תוכל לבטל את המחיקה לפני תאריך זה.", - "MESSAGE_INACTIVITY": ".", + "MESSAGE_INACTIVITY": "חשבון זה מתוזמן למחיקה ב- {deletionDate} עקב חוסר פעילות בחשבון. תוכל לבטל את המחיקה לפני תאריך זה.", "CLEAR_BUTTON": "בטל מחיקה מתוזמנת" } }, diff --git a/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json index bc556fa06..2c9561259 100644 --- a/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "ארגז חול (Sandbox)", "LIVE": "לחיות" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "הגדרות", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "דומיינים מורשים", "SUBTITLE": "הוסף דומיינים כלליים או רגילים מופרדים בפסיקים (השאר ריק כדי לאפשר הכל), לדוגמה: *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "הזן דומיינים מופרדים בפסיקים (לדוגמה: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "סוכנים", "INBOX_AGENTS_SUB_TEXT": "הוסף או הסר נציגים מתיבת הדואר הנכנס הזו", diff --git a/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json index e9591e182..16abfe46c 100644 --- a/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json index fc52a8bb9..5a082bcc7 100644 --- a/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenti", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/hu/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/hu/attributesMgmt.json index 79373d986..543efe3b2 100644 --- a/app/javascript/dashboard/i18n/locale/hu/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hu/attributesMgmt.json @@ -85,7 +85,7 @@ }, "CONFIRM": { "TITLE": "Biztosan törölni akarod: {attributeName}", - "PLACE_HOLDER": "Kérlek gépeld a megerősítéshez", + "PLACE_HOLDER": "Kérlek írd be: {attributeName}", "MESSAGE": "A törlés eltávolítja az egyéni tulajdonságot", "YES": "Törlés ", "NO": "Mégse" diff --git a/app/javascript/dashboard/i18n/locale/hu/conversation.json b/app/javascript/dashboard/i18n/locale/hu/conversation.json index 91e21e8df..38ab00906 100644 --- a/app/javascript/dashboard/i18n/locale/hu/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hu/conversation.json @@ -231,7 +231,7 @@ }, "UNDEFINED_VARIABLES": { "TITLE": "Definiálatlan változók", - "MESSAGE": "Definiálatlan változók vannak az üzenetedben. Így is el szeretnéd küldeni az üzenetet?", + "MESSAGE": "Az üzeneted {undefinedVariablesCount} definiálatlan változót tartalmaz: {undefinedVariables}. Így is el szeretnéd küldeni az üzenetet?", "CONFIRM": { "YES": "Elküldés", "CANCEL": "Mégse" diff --git a/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json index 29ebdf544..693537bb5 100644 --- a/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Élő" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Beállítások", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Ügynökök", "INBOX_AGENTS_SUB_TEXT": "Ügynökök hosszáadása vagy eltávolítása az inboxból", diff --git a/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json index eba31c982..e8eeb1167 100644 --- a/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/id/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/id/attributesMgmt.json index 94eb27577..69e9d6a43 100644 --- a/app/javascript/dashboard/i18n/locale/id/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/id/attributesMgmt.json @@ -85,7 +85,7 @@ }, "CONFIRM": { "TITLE": "Anda yakin akan menghapus - {attributeName}", - "PLACE_HOLDER": "Silakan ketik %{attributeName} untuk konfirmasi", + "PLACE_HOLDER": "Silakan ketik {attributeName} untuk konfirmasi", "MESSAGE": "Menghapus akan menghapus atribut kustom", "YES": "Hapus ", "NO": "Batalkan" diff --git a/app/javascript/dashboard/i18n/locale/id/generalSettings.json b/app/javascript/dashboard/i18n/locale/id/generalSettings.json index b658fde0e..f058a8d11 100644 --- a/app/javascript/dashboard/i18n/locale/id/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/id/generalSettings.json @@ -23,7 +23,7 @@ "MESSAGE": "Deleting your Account is irreversible. Enter your account name below to confirm you want to permanently delete it.", "BUTTON_TEXT": "Hapus", "DISMISS": "Batalkan", - "PLACE_HOLDER": "Silakan ketik %{accountName} untuk konfirmasi" + "PLACE_HOLDER": "Silakan ketik {accountName} untuk konfirmasi" }, "SUCCESS": "Account marked for deletion", "FAILURE": "Could not delete account, try again!", diff --git a/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json index 5d77c510c..48c4432d4 100644 --- a/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Langsung" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Pengaturan", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agen", "INBOX_AGENTS_SUB_TEXT": "Tambahkan atau hapus agen dari kotak masuk ini", diff --git a/app/javascript/dashboard/i18n/locale/id/teamsSettings.json b/app/javascript/dashboard/i18n/locale/id/teamsSettings.json index cd551726d..dbcaaa64f 100644 --- a/app/javascript/dashboard/i18n/locale/id/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/id/teamsSettings.json @@ -97,7 +97,7 @@ }, "CONFIRM": { "TITLE": "Are you sure you want to delete the team?", - "PLACE_HOLDER": "Silakan ketik %{teamName} untuk konfirmasi", + "PLACE_HOLDER": "Silakan ketik {teamName} untuk konfirmasi", "MESSAGE": "Menghapus tim akan menghilangkan alokasi tim dari percakapan yang telah ditetapkan terhadap tim ini.", "YES": "Hapus ", "NO": "Batalkan" diff --git a/app/javascript/dashboard/i18n/locale/is/conversation.json b/app/javascript/dashboard/i18n/locale/is/conversation.json index cf447402b..bb130ae2e 100644 --- a/app/javascript/dashboard/i18n/locale/is/conversation.json +++ b/app/javascript/dashboard/i18n/locale/is/conversation.json @@ -179,7 +179,7 @@ "FAILED": "Couldn't remove label. Please try again." }, "TEAM_ASSIGNMENT": { - "SUCCESFUL": "Úthlutaði teymi #{team} á samtalsauðkenni {conversationId}", + "SUCCESFUL": "Úthlutaði teymi \"{team}\" á samtalsauðkenni {conversationId}", "FAILED": "Couldn't assign team. Please try again." } } diff --git a/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json index 6ded7422c..6e7b59ac9 100644 --- a/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Stillingar", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Þjónustufulltrúar", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json index 923339125..595e10a7f 100644 --- a/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Configurazione Webhook", + "DESCRIPTION": "L'URL Webhook è necessario per il tuo account WhatsApp Business per ricevere messaggi dai clienti", + "ACTION_REQUIRED": "Webhook non configurato", + "REGISTER_BUTTON": "Registra Webhook", + "REGISTER_SUCCESS": "Webhook registrato correttamente", + "REGISTER_ERROR": "Impossibile registrare il webhook. Riprova.", + "CONFIGURED_SUCCESS": "Webhook configurato correttamente", + "URL_MISMATCH": "URL Webhook non corrisponde" } }, "SETTINGS": "Impostazioni", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Domini Consentiti", "SUBTITLE": "Aggiungi caratteri jolly o domini regolari separati da virgole (lasciare vuoto per consentire tutti), ad esempio *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Inserisci i domini separati da virgole (ad esempio: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Operatori", "INBOX_AGENTS_SUB_TEXT": "Aggiungi o rimuovi operatori da questa inbox", diff --git a/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json index c80a9c560..a49aa28b2 100644 --- a/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "設定", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "担当者", "INBOX_AGENTS_SUB_TEXT": "この受信トレイから担当者を追加または削除する", diff --git a/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json index 27352c3be..87b6a0b4d 100644 --- a/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/ko/agentBots.json b/app/javascript/dashboard/i18n/locale/ko/agentBots.json index d92a8a49a..87296ccd3 100644 --- a/app/javascript/dashboard/i18n/locale/ko/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ko/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "에디터 로딩 중...", "DESCRIPTION": "에이전트 봇은 팀에서 가장 뛰어난 멤버와 같습니다. 사소한 일은 봇이 처리해 주니, 중요한 일에 집중하세요. 한번 사용해 보세요. 이 페이지에서 봇을 관리하거나 '봇 추가' 버튼을 통해 새 봇을 생성할 수 있습니다.", "LEARN_MORE": "에이전트 봇에 대해 알아보기", + "COUNT": "{n}개의 봇 | {n}개의 봇", + "SEARCH_PLACEHOLDER": "에이전트 봇 검색...", + "NO_RESULTS": "검색과 일치하는 봇이 없습니다", "GLOBAL_BOT": "시스템 봇", "GLOBAL_BOT_BADGE": "시스템", "AVATAR": { @@ -99,9 +102,6 @@ }, "TYPES": { "WEBHOOK": "웹훅 봇" - }, - "COUNT": "{n}개의 봇 | {n}개의 봇", - "SEARCH_PLACEHOLDER": "에이전트 봇 검색...", - "NO_RESULTS": "검색과 일치하는 봇이 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ko/agentMgmt.json index 8eeee52f8..844ab2074 100644 --- a/app/javascript/dashboard/i18n/locale/ko/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "관리자", "AGENT": "에이전트" }, + "COUNT": "{n}명의 에이전트 | {n}명의 에이전트", "LIST": { "404": "이 계정에 연결된 에이전트가 없습니다.", "TITLE": "팀 내 에이전트 관리", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Woot 서버에 연결할 수 없습니다. 나중에 다시 시도하십시오." } }, + "SEARCH_PLACEHOLDER": "에이전트 검색...", + "NO_RESULTS": "검색과 일치하는 에이전트가 없습니다", "SEARCH": { "NO_RESULTS": "검색 결과가 없습니다." }, @@ -119,9 +122,6 @@ "INPUT": "에이전트 검색" } } - }, - "COUNT": "{n}명의 에이전트 | {n}명의 에이전트", - "SEARCH_PLACEHOLDER": "에이전트 검색...", - "NO_RESULTS": "검색과 일치하는 에이전트가 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ko/attributesMgmt.json index b7f048ecf..fa334aa96 100644 --- a/app/javascript/dashboard/i18n/locale/ko/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "사용자 지정 속성들 가져오기", "DESCRIPTION": "사용자 지정 속성은 연락처 또는 대화에 대한 추가 세부 정보를 추적합니다. 예를 들어 구독 플랜이나 첫 구매 날짜 등이 있습니다. 텍스트, 리스트, 숫자 등 다양한 유형의 사용자 지정 속성을 추가하여 필요한 정보를 수집할 수 있습니다.", "LEARN_MORE": "사용자 지정 속성에 대해 더 알아보기", + "COUNT": "{n}개의 사용자 지정 속성 | {n}개의 사용자 지정 속성", + "SEARCH_PLACEHOLDER": "사용자 지정 속성 검색...", + "NO_RESULTS": "검색과 일치하는 사용자 지정 속성이 없습니다", "ATTRIBUTE_MODELS": { "CONVERSATION": "대화", "CONTACT": "연락처" @@ -137,9 +140,6 @@ "BADGES": { "PRE_CHAT": "사전 채팅", "RESOLUTION": "해결" - }, - "COUNT": "{n}개의 사용자 지정 속성 | {n}개의 사용자 지정 속성", - "SEARCH_PLACEHOLDER": "사용자 지정 속성 검색...", - "NO_RESULTS": "검색과 일치하는 사용자 지정 속성이 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/automation.json b/app/javascript/dashboard/i18n/locale/ko/automation.json index b50654c6a..19636cb22 100644 --- a/app/javascript/dashboard/i18n/locale/ko/automation.json +++ b/app/javascript/dashboard/i18n/locale/ko/automation.json @@ -3,8 +3,11 @@ "HEADER": "자동화", "DESCRIPTION": "자동화를 통해 라벨을 추가하고 가장 적합한 상담원에게 대화를 배정하는 등 수작업이 필요한 기존 프로세스를 대체하고 간소화할 수 있습니다. 이를 통해 팀은 일상적인 업무에 소요되는 시간을 줄이면서 자신의 강점에 집중할 수 있습니다.", "LEARN_MORE": "자동화에 대해 더 알아보기", + "COUNT": "{n}개의 자동화 규칙 | {n}개의 자동화 규칙", "HEADER_BTN_TXT": "자동화 규칙 추가", "LOADING": "자동화 규칙 가져오는 중", + "SEARCH_PLACEHOLDER": "자동화 규칙 검색...", + "NO_RESULTS": "검색과 일치하는 자동화 규칙이 없습니다", "ADD": { "TITLE": "자동화 규칙 추가", "SUBMIT": "만들기", @@ -180,9 +183,6 @@ "TEAM_NAME": "팀", "PRIORITY": "우선순위", "LABELS": "라벨" - }, - "COUNT": "{n}개의 자동화 규칙 | {n}개의 자동화 규칙", - "SEARCH_PLACEHOLDER": "자동화 규칙 검색...", - "NO_RESULTS": "검색과 일치하는 자동화 규칙이 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/bulkActions.json b/app/javascript/dashboard/i18n/locale/ko/bulkActions.json index 2e709ed67..19b482966 100644 --- a/app/javascript/dashboard/i18n/locale/ko/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ko/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "대화 상태가 성공적으로 업데이트되었습니다.", "UPDATE_FAILED": "대화 업데이트에 실패했습니다. 다시 시도하십시오." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "필수 속성이 누락되어 대화를 해결할 수 없습니다", + "PARTIAL_SUCCESS": "일부 대화는 필수 속성이 필요하여 건너뛰었습니다" + }, "LABELS": { "ASSIGN_LABELS": "라벨 배정", "NO_LABELS_FOUND": "라벨을 찾을 수 없습니다", @@ -36,10 +40,6 @@ "ASSIGN_SELECTED_TEAMS": "선택한 팀 배정", "ASSIGN_SUCCESFUL": "팀이 성공적으로 배정되었습니다.", "ASSIGN_FAILED": "팀 배정에 실패했습니다. 다시 시도하십시오." - }, - "RESOLVE": { - "ALL_MISSING_ATTRIBUTES": "필수 속성이 누락되어 대화를 해결할 수 없습니다", - "PARTIAL_SUCCESS": "일부 대화는 필수 속성이 필요하여 건너뛰었습니다" } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ko/cannedMgmt.json index 35300c7e7..176e5f92e 100644 --- a/app/javascript/dashboard/i18n/locale/ko/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "미리 준비된 답변", "LEARN_MORE": "미리 준비된 답변에 대해 알아보기", "DESCRIPTION": "미리 준비된 응답은 대화에 신속하게 응답할 수 있도록 도와주는 미리 작성된 응답 템플릿입니다. 에이전트는 대화 중에 '/' 문자 뒤에 단축 코드를 입력하여 미리 준비된 응답을 삽입할 수 있습니다. ", + "COUNT": "{n}개의 미리 준비된 응답 | {n}개의 미리 준비된 응답", "HEADER_BTN_TXT": "미리 준비된 응답 추가", "LOADING": "미리 준비된 응답을 가져오는 중...", + "SEARCH_PLACEHOLDER": "미리 준비된 응답 검색...", + "NO_RESULTS": "검색과 일치하는 미리 준비된 응답이 없습니다", "SEARCH_404": "이 쿼리와 일치하는 항목이 없습니다.", "LIST": { "404": "이 계정에는 미리 준비된 답변이 없습니다.", @@ -72,9 +75,6 @@ "YES": "예, 삭제합니다. ", "NO": "아니요, 유지합니다. " } - }, - "COUNT": "{n}개의 미리 준비된 응답 | {n}개의 미리 준비된 응답", - "SEARCH_PLACEHOLDER": "미리 준비된 응답 검색...", - "NO_RESULTS": "검색과 일치하는 미리 준비된 응답이 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/contact.json b/app/javascript/dashboard/i18n/locale/ko/contact.json index bf76af530..d7fc9e90e 100644 --- a/app/javascript/dashboard/i18n/locale/ko/contact.json +++ b/app/javascript/dashboard/i18n/locale/ko/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Instagram 추가" }, + "TELEGRAM": { + "PLACEHOLDER": "Telegram 추가" + }, "TIKTOK": { "PLACEHOLDER": "TikTok 추가" }, @@ -465,9 +468,6 @@ }, "TWITTER": { "PLACEHOLDER": "Twitter 추가" - }, - "TELEGRAM": { - "PLACEHOLDER": "Telegram 추가" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ko/conversation.json b/app/javascript/dashboard/i18n/locale/ko/conversation.json index e6ab92373..59f9bc0f7 100644 --- a/app/javascript/dashboard/i18n/locale/ko/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ko/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "이 메시지는 지원되지 않습니다. 확인하려면 원래 플랫폼에서 열어 주십시오.", "UNSUPPORTED_MESSAGE_FACEBOOK": "이 메시지는 지원되지 않습니다. Facebook Messenger 앱에서 이 메시지를 확인할 수 있습니다.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "이 메시지는 지원되지 않습니다. Instagram 앱에서 이 메시지를 확인할 수 있습니다.", + "UNSUPPORTED_MESSAGE_TIKTOK": "이 메시지는 지원되지 않습니다. TikTok 앱에서 이 메시지를 확인할 수 있습니다.", "SUCCESS_DELETE_MESSAGE": "메시지가 성공적으로 삭제되었습니다", "FAIL_DELETE_MESSSAGE": "메시지를 삭제할 수 없습니다! 다시 시도해 주십시오.", "NO_RESPONSE": "응답 없음", @@ -173,13 +174,13 @@ "SUCCESFUL": "라벨 #{labelName}이(가) 대화 ID {conversationId}에 배정되었습니다", "FAILED": "라벨을 배정할 수 없습니다. 다시 시도해 주십시오." }, - "TEAM_ASSIGNMENT": { - "SUCCESFUL": "팀 \"{team}\"이(가) 대화 ID {conversationId}에 배정되었습니다", - "FAILED": "팀을 배정할 수 없습니다. 다시 시도해 주십시오." - }, "LABEL_REMOVAL": { "SUCCESFUL": "라벨 #{labelName}이(가) 대화 ID {conversationId}에서 제거되었습니다", "FAILED": "라벨을 제거할 수 없습니다. 다시 시도해 주십시오." + }, + "TEAM_ASSIGNMENT": { + "SUCCESFUL": "팀 \"{team}\"이(가) 대화 ID {conversationId}에 배정되었습니다", + "FAILED": "팀을 배정할 수 없습니다. 다시 시도해 주십시오." } } }, @@ -189,13 +190,13 @@ "DISABLE_SIGN_TOOLTIP": "서명 비활성화", "MSG_INPUT": "줄바꿈을 하시려면 Shift + Enter를 누르십시오. '/'로 시작하여 미리 준비된 답변을 사용할 수 있습니다.", "PRIVATE_MSG_INPUT": "줄바꿈을 하시려면 Shift + Enter를 누르십시오. 에이전트만 볼 수 있습니다.", - "MESSAGE_SIGNATURE_NOT_CONFIGURED": "메시지 서명이 설정되지 않았습니다. 프로필 설정에서 설정해 주십시오.", - "CLICK_HERE": "업데이트하려면 여기를 클릭하십시오", - "WHATSAPP_TEMPLATES": "WhatsApp 템플릿", "MESSAGING_RESTRICTED": "이 대화에 답장할 수 없습니다", "MESSAGING_RESTRICTED_WHATSAPP": "24시간 메시지 창 제한으로 인해 템플릿 메시지로만 답장할 수 있습니다", + "MESSAGING_RESTRICTED_API": "메시지 창 제한으로 인해 템플릿 메시지로만 답장할 수 있습니다", + "MESSAGE_SIGNATURE_NOT_CONFIGURED": "메시지 서명이 설정되지 않았습니다. 프로필 설정에서 설정해 주십시오.", "COPILOT_MSG_INPUT": "Copilot에 추가 프롬프트를 입력하거나 다른 질문을 하십시오... Enter를 눌러 후속 메시지를 보내십시오", - "MESSAGING_RESTRICTED_API": "메시지 창 제한으로 인해 템플릿 메시지로만 답장할 수 있습니다" + "CLICK_HERE": "업데이트하려면 여기를 클릭하십시오", + "WHATSAPP_TEMPLATES": "WhatsApp 템플릿" }, "REPLYBOX": { "REPLY": "답글", @@ -213,6 +214,7 @@ "DRAG_DROP": "여기에 드래그 앤 드롭하여 첨부하십시오", "START_AUDIO_RECORDING": "오디오 녹음 시작", "STOP_AUDIO_RECORDING": "오디오 녹음 중지", + "COPILOT_THINKING": "Copilot이 생각하고 있습니다", "EMAIL_HEAD": { "TO": "받는 사람", "ADD_BCC": "숨은 참조 추가", @@ -241,8 +243,7 @@ "REMOVE_PREVIEW": "인용된 이메일 스레드 제거", "COLLAPSE": "미리보기 축소", "EXPAND": "미리보기 확장" - }, - "COPILOT_THINKING": "Copilot이 생각하고 있습니다" + } }, "VISIBLE_TO_AGENTS": "개인 노트: 귀하와 귀하의 팀만 볼 수 있습니다", "CHANGE_STATUS": "대화 상태가 변경되었습니다", @@ -255,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "대화가 성공적으로 삭제되었습니다", "FAIL_DELETE_CONVERSATION": "대화를 삭제할 수 없습니다! 다시 시도해 주십시오.", "FILE_SIZE_LIMIT": "파일이 {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB 첨부 제한을 초과합니다", + "FILE_TYPE_NOT_SUPPORTED": "이 대화에서 {fileName} 파일 형식은 지원되지 않습니다", "MESSAGE_ERROR": "메시지를 보낼 수 없습니다. 나중에 다시 시도해 주십시오.", "SENT_BY": "보낸 사람:", "BOT": "봇", + "NATIVE_APP": "네이티브 앱", + "NATIVE_APP_ADVISORY": "이 메시지는 네이티브 앱에서 전송되었습니다. 메시지 창을 유지하려면 Chatwoot에서 답장하십시오.", "SEND_FAILED": "메시지를 보낼 수 없습니다! 다시 시도해 주십시오.", "TRY_AGAIN": "재시도", "ASSIGNMENT": { @@ -293,11 +297,7 @@ "REJECT_CALL": "거부", "JOIN_CALL": "통화 참가", "END_CALL": "통화 종료" - }, - "UNSUPPORTED_MESSAGE_TIKTOK": "이 메시지는 지원되지 않습니다. TikTok 앱에서 이 메시지를 확인할 수 있습니다.", - "FILE_TYPE_NOT_SUPPORTED": "이 대화에서 {fileName} 파일 형식은 지원되지 않습니다", - "NATIVE_APP": "네이티브 앱", - "NATIVE_APP_ADVISORY": "이 메시지는 네이티브 앱에서 전송되었습니다. 메시지 창을 유지하려면 Chatwoot에서 답장하십시오." + } }, "EMAIL_TRANSCRIPT": { "TITLE": "대화 내용 보내기", @@ -306,6 +306,7 @@ "CANCEL": "취소", "SEND_EMAIL_SUCCESS": "대화 내용이 성공적으로 전송되었습니다", "SEND_EMAIL_ERROR": "오류가 발생했습니다. 다시 시도해 주십시오.", + "SEND_EMAIL_PAYMENT_REQUIRED": "현재 플랜에서는 이메일 대화 기록을 사용할 수 없습니다. 이 기능을 사용하려면 업그레이드하십시오.", "FORM": { "SEND_TO_CONTACT": "고객에게 대화 기록 보내기", "SEND_TO_AGENT": "배정된 에이전트에게 대화 기록 보내기", @@ -314,8 +315,7 @@ "PLACEHOLDER": "이메일 주소를 입력하십시오", "ERROR": "올바른 이메일 주소를 입력하십시오" } - }, - "SEND_EMAIL_PAYMENT_REQUIRED": "현재 플랜에서는 이메일 대화 기록을 사용할 수 없습니다. 이 기능을 사용하려면 업그레이드하십시오." + } }, "ONBOARDING": { "TITLE": "안녕하세요 👋, {installationName}에 오신 것을 환영합니다!", diff --git a/app/javascript/dashboard/i18n/locale/ko/customRole.json b/app/javascript/dashboard/i18n/locale/ko/customRole.json index c286346b0..87ff56ffc 100644 --- a/app/javascript/dashboard/i18n/locale/ko/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ko/customRole.json @@ -3,8 +3,11 @@ "HEADER": "사용자 지정 역할", "LEARN_MORE": "사용자 지정 역할에 대해 더 알아보기", "DESCRIPTION": "사용자 지정 역할은 계정 소유자 또는 관리자가 만든 역할입니다. 이 역할은 에이전트에게 할당하여 계정 내 접근 권한 및 권한을 정의할 수 있습니다. 사용자 지정 역할은 조직의 요구 사항에 맞는 특정 권한 및 접근 수준으로 생성할 수 있습니다.", + "COUNT": "{n}개의 사용자 지정 역할 | {n}개의 사용자 지정 역할", "HEADER_BTN_TXT": "사용자 지정 역할 추가", "LOADING": "사용자 지정 역할을 불러오는 중...", + "SEARCH_PLACEHOLDER": "사용자 지정 역할 검색...", + "NO_RESULTS": "검색과 일치하는 사용자 지정 역할이 없습니다", "SEARCH_404": "이 쿼리와 일치하는 항목이 없습니다.", "PAYWALL": { "TITLE": "사용자 지정 역할을 만들려면 업그레이드하십시오", @@ -86,9 +89,6 @@ "YES": "예, 삭제합니다 ", "NO": "아니요, 유지합니다 " } - }, - "COUNT": "{n}개의 사용자 지정 역할 | {n}개의 사용자 지정 역할", - "SEARCH_PLACEHOLDER": "사용자 지정 역할 검색...", - "NO_RESULTS": "검색과 일치하는 사용자 지정 역할이 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/datePicker.json b/app/javascript/dashboard/i18n/locale/ko/datePicker.json index e49d87770..88b64f809 100644 --- a/app/javascript/dashboard/i18n/locale/ko/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ko/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "이전 기간", + "NEXT_PERIOD": "다음 기간", + "WEEK_NUMBER": "{weekNumber}주차", "APPLY_BUTTON": "적용", "CLEAR_BUTTON": "초기화", "DATE_RANGE_INPUT": { @@ -13,12 +16,9 @@ "LAST_3_MONTHS": "지난 3개월", "LAST_6_MONTHS": "지난 6개월", "LAST_YEAR": "지난 1년", - "CUSTOM_RANGE": "사용자 지정 날짜 범위", "THIS_WEEK": "이번 주", - "MONTH_TO_DATE": "이번 달" - }, - "PREVIOUS_PERIOD": "이전 기간", - "NEXT_PERIOD": "다음 기간", - "WEEK_NUMBER": "{weekNumber}주차" + "MONTH_TO_DATE": "이번 달", + "CUSTOM_RANGE": "사용자 지정 날짜 범위" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/generalSettings.json b/app/javascript/dashboard/i18n/locale/ko/generalSettings.json index 2b74c3654..aff03a370 100644 --- a/app/javascript/dashboard/i18n/locale/ko/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ko/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "검색 또는 바로가기", + "SNOOZE_PLACEHOLDER": "시간을 입력하세요. 예: 내일, 2시간 후, 다음 금요일, 1월 15일...", "SECTIONS": { "GENERAL": "일반", "REPORTS": "보고서", @@ -239,8 +240,7 @@ "DARK_MODE": "다크", "SYSTEM_MODE": "시스템", "SNOOZE_NOTIFICATION": "알림 일시 중지" - }, - "SNOOZE_PLACEHOLDER": "시간을 입력하세요. 예: 내일, 2시간 후, 다음 금요일, 1월 15일..." + } }, "DASHBOARD_APPS": { "LOADING_MESSAGE": "대시보드 앱을 불러오는 중..." diff --git a/app/javascript/dashboard/i18n/locale/ko/helpCenter.json b/app/javascript/dashboard/i18n/locale/ko/helpCenter.json index 7bd1bea36..53d9e7358 100644 --- a/app/javascript/dashboard/i18n/locale/ko/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ko/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "게시물 삭제 중 오류가 발생했습니다" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "문서 순서를 변경할 수 없습니다. 다시 시도하십시오." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "카테고리 순서를 변경할 수 없습니다. 다시 시도하십시오." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "게시물 제목과 내용을 추가해야 설정을 업데이트할 수 있습니다" }, @@ -860,16 +870,6 @@ "FROM_DOCUMENT": "문서에서", "NO_CONTENT": "생성된 콘텐츠가 없습니다. PDF 문서를 업로드하여 시작하십시오.", "LOADING": "생성된 콘텐츠를 불러오는 중..." - }, - "REORDER_ARTICLE": { - "API": { - "ERROR_MESSAGE": "문서 순서를 변경할 수 없습니다. 다시 시도하십시오." - } - }, - "REORDER_CATEGORY": { - "API": { - "ERROR_MESSAGE": "카테고리 순서를 변경할 수 없습니다. 다시 시도하십시오." - } } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json index f13059361..6debf4ec2 100644 --- a/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "받은 메시지함", "DESCRIPTION": "채널은 고객이 귀하와 상호작용하기 위해 선택하는 커뮤니케이션 방식입니다. 받은 메시지함은 특정 채널에 대한 상호작용을 관리하는 곳입니다. 이메일, 라이브 채팅, 소셜 미디어 등 다양한 소스의 커뮤니케이션을 포함할 수 있습니다.", "LEARN_MORE": "받은 메시지함에 대해 자세히 알아보기", + "COUNT": "{n}개의 받은 메시지함 | {n}개의 받은 메시지함", + "SEARCH_PLACEHOLDER": "받은 메시지함 검색...", + "NO_RESULTS": "검색과 일치하는 받은 메시지함이 없습니다", "RECONNECTION_REQUIRED": "받은 메시지함의 연결이 끊어졌습니다. 재인증하기 전까지 새 메시지를 받을 수 없습니다.", "CLICK_TO_RECONNECT": "다시 연결하려면 여기를 클릭하십시오.", "WHATSAPP_REGISTRATION_INCOMPLETE": "WhatsApp Business 등록이 완료되지 않았습니다. 다시 연결하기 전에 Meta Business Manager에서 표시 이름 상태를 확인하십시오.", @@ -627,6 +630,8 @@ "ACCOUNT_HEALTH": "계정 상태", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "채널 환경설정", + "WIDGET_FEATURES": "위젯 기능", "ACCOUNT_HEALTH": { "TITLE": "WhatsApp 계정 관리", "DESCRIPTION": "WhatsApp 계정 상태, 메시지 제한 및 품질을 검토하십시오. 필요한 경우 설정을 업데이트하거나 문제를 해결하십시오.", @@ -706,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "허용된 도메인", "SUBTITLE": "쉼표로 구분된 와일드카드 또는 일반 도메인을 추가하십시오 (모두 허용하려면 비워 두십시오). 예: *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "쉼표로 구분된 도메인을 입력하십시오 (예: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "에이전트", "INBOX_AGENTS_SUB_TEXT": "받은 메시지함에서 에이전트 추가 또는 제거", @@ -770,15 +775,62 @@ "LABEL": "도움말 센터", "PLACEHOLDER": "도움말 센터 선택", "SELECT_PLACEHOLDER": "도움말 센터 선택", + "NONE": "없음", "REMOVE": "도움말 센터 제거", - "SUB_TEXT": "받은 메시지함에 도움말 센터 연결", - "NONE": "없음" + "SUB_TEXT": "받은 메시지함에 도움말 센터 연결" }, "AUTO_ASSIGNMENT": { "MAX_ASSIGNMENT_LIMIT": "자동 할당 제한", "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "0보다 큰 값을 입력하십시오.", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "이 받은 메시지함에서 에이전트에게 자동 할당될 수 있는 최대 대화 수를 제한합니다." }, + "ASSIGNMENT": { + "TITLE": "대화 할당", + "DESCRIPTION": "할당 정책에 따라 수신 대화를 사용 가능한 에이전트에게 자동으로 할당합니다.", + "ENABLE_AUTO_ASSIGNMENT": "자동 대화 할당 사용", + "DEFAULT_RULES_TITLE": "기본 할당 규칙", + "DEFAULT_RULES_DESCRIPTION": "모든 대화에 기본 할당 동작을 사용합니다.", + "DEFAULT_RULE_1": "가장 먼저 생성된 대화 우선", + "DEFAULT_RULE_2": "라운드 로빈 배분", + "CUSTOMIZE_WITH_POLICY": "할당 정책으로 사용자 정의", + "USING_POLICY": "이 받은 메시지함에 사용자 정의 할당 정책을 사용 중", + "CUSTOMIZE_POLICY": "할당 정책으로 사용자 정의", + "DELETE_POLICY": "정책 삭제", + "POLICY_LABEL": "할당 정책", + "ASSIGNMENT_ORDER_LABEL": "할당 순서", + "ASSIGNMENT_METHOD_LABEL": "할당 방법", + "POLICY_STATUS": { + "ACTIVE": "활성", + "INACTIVE": "비활성" + }, + "PRIORITY": { + "EARLIEST_CREATED": "가장 먼저 생성됨", + "LONGEST_WAITING": "가장 오래 대기 중" + }, + "METHOD": { + "ROUND_ROBIN": "라운드 로빈", + "BALANCED": "균형 할당" + }, + "UPGRADE_PROMPT": "사용자 정의 할당 정책은 Business 플랜에서 사용할 수 있습니다.", + "UPGRADE_TO_BUSINESS": "Business로 업그레이드", + "DEFAULT_POLICY_LINKED": "기본 정책이 연결됨", + "DEFAULT_POLICY_DESCRIPTION": "이 받은 메시지함에서 대화가 에이전트에게 할당되는 방식을 사용자 정의하려면 사용자 정의 할당 정책을 연결하십시오.", + "LINK_EXISTING_POLICY": "기존 정책 연결", + "CREATE_NEW_POLICY": "새 정책 만들기", + "NO_POLICIES": "할당 정책을 찾을 수 없습니다.", + "VIEW_ALL_POLICIES": "모든 정책 보기", + "CURRENT_BEHAVIOR": "현재 기본 할당 동작을 사용 중:", + "LINK_SUCCESS": "할당 정책이 성공적으로 연결되었습니다.", + "LINK_ERROR": "할당 정책을 연결하지 못했습니다." + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "할당 정책을 삭제하시겠습니까?", + "DELETE_CONFIRM_MESSAGE": "이 받은 메시지함에서 이 할당 정책을 제거하시겠습니까? 받은 메시지함은 기본 할당 규칙으로 돌아갑니다.", + "CANCEL": "취소", + "CONFIRM_DELETE": "삭제", + "DELETE_SUCCESS": "할당 정책이 성공적으로 제거되었습니다.", + "DELETE_ERROR": "할당 정책을 제거하지 못했습니다." + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "재승인", "SUBTITLE": "Facebook 연결이 만료되었습니다. 서비스를 계속하려면 Facebook 페이지를 다시 연결하십시오.", @@ -850,6 +902,20 @@ "CONFIRM": "새 템플릿 만들기", "CANCEL": "돌아가기" }, + "UTILITY_ANALYZER": { + "ACTION": "유틸리티 적합성 확인", + "HELPER_NOTE": "제출 전에 이 메시지를 확인하여 유틸리티 적합성을 높이십시오. 시스템은 보고용 버튼이 포함된 전용 CSAT 템플릿을 만들고 Utility로 제출하지만, Meta는 내용에 따라 이를 Marketing으로 다시 분류할 수 있습니다.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "이는 가이드용 점검이며 Meta 승인을 보장하지 않습니다.", + "SUGGESTION_LABEL": "추천 유틸리티 안전 문구", + "APPLY": "이 문구 사용", + "ERROR_MESSAGE": "메시지를 분석할 수 없습니다. 다시 시도하십시오.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "유틸리티일 가능성 높음", + "LIKELY_MARKETING": "마케팅일 가능성 높음", + "UNCLEAR": "추가 확인 필요" + } + }, "SURVEY_RULE": { "LABEL": "설문 규칙", "DESCRIPTION_PREFIX": "대화가 다음 레이블 중 하나를", @@ -865,20 +931,6 @@ "API": { "SUCCESS_MESSAGE": "CSAT 설정이 성공적으로 업데이트되었습니다.", "ERROR_MESSAGE": "CSAT 설정을 업데이트할 수 없습니다. 나중에 다시 시도하십시오." - }, - "UTILITY_ANALYZER": { - "ACTION": "유틸리티 적합성 확인", - "HELPER_NOTE": "제출 전에 이 메시지를 확인하여 유틸리티 적합성을 높이십시오. 시스템은 보고용 버튼이 포함된 전용 CSAT 템플릿을 만들고 Utility로 제출하지만, Meta는 내용에 따라 이를 Marketing으로 다시 분류할 수 있습니다.", - "RESULT_LABEL": "Meta category prediction", - "GUIDANCE_NOTE": "이는 가이드용 점검이며 Meta 승인을 보장하지 않습니다.", - "SUGGESTION_LABEL": "추천 유틸리티 안전 문구", - "APPLY": "이 문구 사용", - "ERROR_MESSAGE": "메시지를 분석할 수 없습니다. 다시 시도하십시오.", - "CLASSIFICATION": { - "LIKELY_UTILITY": "유틸리티일 가능성 높음", - "LIKELY_MARKETING": "마케팅일 가능성 높음", - "UNCLEAR": "추가 확인 필요" - } } }, "BUSINESS_HOURS": { @@ -1002,6 +1054,7 @@ "IN_A_DAY": "하루 안에" }, "WIDGET_COLOR_LABEL": "위젯 색깔", + "WIDGET_BUBBLE": "버블", "WIDGET_BUBBLE_POSITION_LABEL": "위젯 버블 위치", "WIDGET_BUBBLE_TYPE_LABEL": "위젯 버블 유형", "WIDGET_BUBBLE_LAUNCHER_TITLE": { @@ -1027,8 +1080,7 @@ "WIDGET_BUBBLE_TYPE": { "STANDARD": "표준", "EXPANDED_BUBBLE": "확장 버블" - }, - "WIDGET_BUBBLE": "버블" + } }, "WIDGET_SCREEN": { "DEFAULT": "기본", @@ -1082,58 +1134,6 @@ "INSTAGRAM": "Instagram", "TIKTOK": "TikTok", "VOICE": "음성" - }, - "ASSIGNMENT": { - "TITLE": "대화 할당", - "DESCRIPTION": "할당 정책에 따라 수신 대화를 사용 가능한 에이전트에게 자동으로 할당합니다.", - "ENABLE_AUTO_ASSIGNMENT": "자동 대화 할당 사용", - "DEFAULT_RULES_TITLE": "기본 할당 규칙", - "DEFAULT_RULES_DESCRIPTION": "모든 대화에 기본 할당 동작을 사용합니다.", - "DEFAULT_RULE_1": "가장 먼저 생성된 대화 우선", - "DEFAULT_RULE_2": "라운드 로빈 배분", - "CUSTOMIZE_WITH_POLICY": "할당 정책으로 사용자 정의", - "USING_POLICY": "이 받은 메시지함에 사용자 정의 할당 정책을 사용 중", - "CUSTOMIZE_POLICY": "할당 정책으로 사용자 정의", - "DELETE_POLICY": "정책 삭제", - "POLICY_LABEL": "할당 정책", - "ASSIGNMENT_ORDER_LABEL": "할당 순서", - "ASSIGNMENT_METHOD_LABEL": "할당 방법", - "POLICY_STATUS": { - "ACTIVE": "활성", - "INACTIVE": "비활성" - }, - "PRIORITY": { - "EARLIEST_CREATED": "가장 먼저 생성됨", - "LONGEST_WAITING": "가장 오래 대기 중" - }, - "METHOD": { - "ROUND_ROBIN": "라운드 로빈", - "BALANCED": "균형 할당" - }, - "UPGRADE_PROMPT": "사용자 정의 할당 정책은 Business 플랜에서 사용할 수 있습니다.", - "UPGRADE_TO_BUSINESS": "Business로 업그레이드", - "DEFAULT_POLICY_LINKED": "기본 정책이 연결됨", - "DEFAULT_POLICY_DESCRIPTION": "이 받은 메시지함에서 대화가 에이전트에게 할당되는 방식을 사용자 정의하려면 사용자 정의 할당 정책을 연결하십시오.", - "LINK_EXISTING_POLICY": "기존 정책 연결", - "CREATE_NEW_POLICY": "새 정책 만들기", - "NO_POLICIES": "할당 정책을 찾을 수 없습니다.", - "VIEW_ALL_POLICIES": "모든 정책 보기", - "CURRENT_BEHAVIOR": "현재 기본 할당 동작을 사용 중:", - "LINK_SUCCESS": "할당 정책이 성공적으로 연결되었습니다.", - "LINK_ERROR": "할당 정책을 연결하지 못했습니다." - }, - "ASSIGNMENT_POLICY": { - "DELETE_CONFIRM_TITLE": "할당 정책을 삭제하시겠습니까?", - "DELETE_CONFIRM_MESSAGE": "이 받은 메시지함에서 이 할당 정책을 제거하시겠습니까? 받은 메시지함은 기본 할당 규칙으로 돌아갑니다.", - "CANCEL": "취소", - "CONFIRM_DELETE": "삭제", - "DELETE_SUCCESS": "할당 정책이 성공적으로 제거되었습니다.", - "DELETE_ERROR": "할당 정책을 제거하지 못했습니다." - }, - "COUNT": "{n}개의 받은 메시지함 | {n}개의 받은 메시지함", - "SEARCH_PLACEHOLDER": "받은 메시지함 검색...", - "NO_RESULTS": "검색과 일치하는 받은 메시지함이 없습니다", - "CHANNEL_PREFERENCES": "채널 환경설정", - "WIDGET_FEATURES": "위젯 기능" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/integrationApps.json b/app/javascript/dashboard/i18n/locale/ko/integrationApps.json index bc02d5d89..81f8449ff 100644 --- a/app/javascript/dashboard/i18n/locale/ko/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ko/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "통합을 가져오는 중", "NO_HOOK_CONFIGURED": "이 계정에 구성된 {integrationId} 통합이 없습니다.", "HEADER": "애플리케이션", + "COUNT": "{n}개의 통합 | {n}개의 통합", + "SEARCH_PLACEHOLDER": "검색...", + "NO_RESULTS": "검색과 일치하는 결과가 없습니다", "STATUS": { "ENABLED": "사용함", "DISABLED": "사용 안 함" @@ -31,10 +34,10 @@ "LIST": { "FETCHING": "통합 훅을 가져오는 중", "INBOX": "받은 메시지함", + "ACTIONS": "액션", "DELETE": { "BUTTON_TEXT": "삭제" - }, - "ACTIONS": "액션" + } }, "ADD": { "FORM": { @@ -58,9 +61,6 @@ }, "SIDEBAR_DESCRIPTION": { "DIALOGFLOW": "Dialogflow는 대화형 인터페이스를 구축하기 위한 자연어 처리 플랫폼입니다. {installationName}와(과) 통합하면 봇이 먼저 문의를 처리하고 필요할 때 에이전트에게 전달할 수 있습니다. 리드 평가에 도움이 되고 FAQ 응답을 통해 에이전트 업무량을 줄여줍니다. Dialogflow를 추가하려면 Google Console에서 서비스 계정을 만들고 자격 증명을 공유하십시오. 자세한 내용은 문서를 참조하십시오" - }, - "COUNT": "{n}개의 통합 | {n}개의 통합", - "SEARCH_PLACEHOLDER": "검색...", - "NO_RESULTS": "검색과 일치하는 결과가 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/integrations.json b/app/javascript/dashboard/i18n/locale/ko/integrations.json index 4ba307dd0..ea3f5202e 100644 --- a/app/javascript/dashboard/i18n/locale/ko/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ko/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Shopify 연동 삭제", "MESSAGE": "Shopify 연동을 삭제하시겠습니까?" @@ -13,13 +14,14 @@ "CANCEL": "취소", "SUBMIT": "스토어 연결" }, - "ERROR": "Shopify에 연결하는 중 오류가 발생했습니다. 다시 시도하시거나 문제가 지속되면 지원팀에 문의하십시오.", - "HEADER": "Shopify" + "ERROR": "Shopify에 연결하는 중 오류가 발생했습니다. 다시 시도하시거나 문제가 지속되면 지원팀에 문의하십시오." }, "HEADER": "통합", "DESCRIPTION": "Chatwoot은 다양한 도구 및 서비스와 통합하여 팀의 효율성을 향상시킵니다. 아래 목록을 탐색하여 자주 사용하는 앱을 구성하십시오.", "LEARN_MORE": "통합에 대해 자세히 알아보기", "LOADING": "통합을 가져오는 중", + "SEARCH_PLACEHOLDER": "통합 검색...", + "NO_RESULTS": "검색과 일치하는 통합이 없습니다", "CAPTAIN": { "DISABLED": "계정에서 Captain이 활성화되어 있지 않습니다.", "CLICK_HERE_TO_CONFIGURE": "여기를 클릭하여 구성하십시오", @@ -29,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "구독된 이벤트", "LEARN_MORE": "webhook에 대해 자세히 알아보기", + "SECRET": { + "LABEL": "Secret", + "COPY": "시크릿을 클립보드에 복사", + "COPY_SUCCESS": "시크릿이 클립보드에 복사되었습니다", + "TOGGLE": "시크릿 표시 전환", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n}개의 웹훅 | {n}개의 웹훅", + "SEARCH_PLACEHOLDER": "웹훅 검색...", + "NO_RESULTS": "검색과 일치하는 웹훅이 없습니다", "FORM": { "CANCEL": "취소", "DESC": "webhook 이벤트는 Chatwoot 계정에서 일어나는 일에 대한 실시간 정보를 제공합니다. 콜백을 구성하려면 유효한 URL을 입력하십시오.", @@ -102,20 +115,10 @@ "YES": "예, 삭제합니다 ", "NO": "아니요, 유지합니다" } - }, - "SECRET": { - "LABEL": "Secret", - "COPY": "시크릿을 클립보드에 복사", - "COPY_SUCCESS": "시크릿이 클립보드에 복사되었습니다", - "TOGGLE": "시크릿 표시 전환", - "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", - "DONE": "Done" - }, - "COUNT": "{n}개의 웹훅 | {n}개의 웹훅", - "SEARCH_PLACEHOLDER": "웹훅 검색...", - "NO_RESULTS": "검색과 일치하는 웹훅이 없습니다" + } }, "SLACK": { + "HEADER": "Slack", "DELETE": "삭제", "DELETE_CONFIRMATION": { "TITLE": "연동 삭제", @@ -136,8 +139,7 @@ }, "UPDATE_ERROR": "연동을 업데이트하는 중 오류가 발생했습니다. 다시 시도하십시오.", "UPDATE_SUCCESS": "채널이 성공적으로 연결되었습니다", - "FAILED_TO_FETCH_CHANNELS": "Slack에서 채널을 가져오는 중 오류가 발생했습니다. 다시 시도하십시오.", - "HEADER": "Slack" + "FAILED_TO_FETCH_CHANNELS": "Slack에서 채널을 가져오는 중 오류가 발생했습니다. 다시 시도하십시오." }, "DYTE": { "CLICK_HERE_TO_JOIN": "여기를 클릭하여 참여하십시오", @@ -164,6 +166,24 @@ "CASUAL": "캐주얼한 톤 사용", "STRAIGHTFORWARD": "직설적인 톤 사용" }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "답장 개선", + "IMPROVE_REPLY_SELECTION": "선택 항목 개선", + "CHANGE_TONE": { + "TITLE": "톤 변경", + "OPTIONS": { + "PROFESSIONAL": "전문적", + "CASUAL": "캐주얼", + "STRAIGHTFORWARD": "직설적", + "CONFIDENT": "자신감 있는", + "FRIENDLY": "친근한" + } + }, + "GRAMMAR": "문법 및 맞춤법 수정", + "SUGGESTION": "답장 제안", + "SUMMARIZE": "대화 요약", + "ASK_COPILOT": "Copilot에게 질문" + }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "초안 내용", "GENERATED_TITLE": "생성된 내용", @@ -201,25 +221,7 @@ "GENERATING": "생성 중...", "CANCEL": "취소" }, - "GENERATE_ERROR": "내용을 처리하는 중 오류가 발생했습니다. OpenAI API 키를 확인한 후 다시 시도하십시오.", - "REPLY_OPTIONS": { - "IMPROVE_REPLY": "답장 개선", - "IMPROVE_REPLY_SELECTION": "선택 항목 개선", - "CHANGE_TONE": { - "TITLE": "톤 변경", - "OPTIONS": { - "PROFESSIONAL": "전문적", - "CASUAL": "캐주얼", - "STRAIGHTFORWARD": "직설적", - "CONFIDENT": "자신감 있는", - "FRIENDLY": "친근한" - } - }, - "GRAMMAR": "문법 및 맞춤법 수정", - "SUGGESTION": "답장 제안", - "SUMMARIZE": "대화 요약", - "ASK_COPILOT": "Copilot에게 질문" - } + "GENERATE_ERROR": "내용을 처리하는 중 오류가 발생했습니다. OpenAI API 키를 확인한 후 다시 시도하십시오." }, "DELETE": { "BUTTON_TEXT": "삭제", @@ -236,6 +238,9 @@ "SIDEBAR_TXT": "

대시보드 앱

대시보드 앱을 사용하면 조직이 Chatwoot 대시보드 내에 애플리케이션을 임베드하여 고객 지원 상담원에게 컨텍스트를 제공할 수 있습니다. 이 기능을 사용하면 독립적으로 애플리케이션을 만들고 대시보드 내에 임베드하여 사용자 정보, 주문 내역 또는 이전 결제 내역을 제공할 수 있습니다.

Chatwoot의 대시보드를 사용하여 애플리케이션을 임베드하면, 애플리케이션은 대화 및 연락처 컨텍스트를 윈도우 이벤트로 수신합니다. 컨텍스트를 수신하려면 페이지에서 메시지 이벤트에 대한 리스너를 구현하십시오.

새 대시보드 앱을 추가하려면 '새 대시보드 앱 추가' 버튼을 클릭하십시오.

", "DESCRIPTION": "대시보드 앱을 사용하면 조직이 대시보드 내에 애플리케이션을 임베드하여 고객 지원 상담원에게 컨텍스트를 제공할 수 있습니다. 이 기능을 사용하면 독립적으로 애플리케이션을 만들고 임베드하여 사용자 정보, 주문 내역 또는 이전 결제 내역을 제공할 수 있습니다.", "LEARN_MORE": "대시보드 앱에 대해 자세히 알아보기", + "COUNT": "{n}개의 대시보드 앱 | {n}개의 대시보드 앱", + "SEARCH_PLACEHOLDER": "대시보드 앱 검색...", + "NO_RESULTS": "검색과 일치하는 대시보드 앱이 없습니다", "LIST": { "404": "이 계정에 구성된 대시보드 앱이 아직 없습니다", "LOADING": "대시보드 앱을 가져오는 중...", @@ -276,12 +281,10 @@ "MESSAGE": "앱을 삭제하시겠습니까 - {appName}?", "API_SUCCESS": "대시보드 앱이 성공적으로 삭제되었습니다", "API_ERROR": "앱을 삭제할 수 없었습니다. 나중에 다시 시도하십시오." - }, - "COUNT": "{n}개의 대시보드 앱 | {n}개의 대시보드 앱", - "SEARCH_PLACEHOLDER": "대시보드 앱 검색...", - "NO_RESULTS": "검색과 일치하는 대시보드 앱이 없습니다" + } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Linear 이슈 생성/연결", "LOADING": "Linear 이슈를 가져오는 중...", "LOADING_ERROR": "Linear 이슈를 가져오는 중 오류가 발생했습니다. 다시 시도하십시오.", @@ -373,20 +376,17 @@ "AGENT_DESCRIPTION": "Linear 워크스페이스가 연결되어 있지 않습니다. 이 연동을 사용하려면 관리자에게 워크스페이스 연결을 요청하십시오.", "DESCRIPTION": "Linear 워크스페이스가 연결되어 있지 않습니다. 이 연동을 사용하려면 아래 버튼을 클릭하여 워크스페이스를 연결하십시오.", "BUTTON_TEXT": "Linear 워크스페이스 연결" - }, - "HEADER": "Linear" + } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Notion 연동을 삭제하시겠습니까?", "MESSAGE": "이 연동을 삭제하면 Notion 워크스페이스에 대한 액세스가 제거되고 모든 관련 기능이 중지됩니다.", "CONFIRM": "예, 삭제합니다", "CANCEL": "취소" - }, - "HEADER": "Notion" - }, - "SEARCH_PLACEHOLDER": "통합 검색...", - "NO_RESULTS": "검색과 일치하는 통합이 없습니다" + } + } }, "CAPTAIN": { "NAME": "Captain", @@ -449,9 +449,9 @@ "CANCEL_ANYTIME": "언제든지 요금제를 변경하거나 취소할 수 있습니다" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI는 Enterprise 요금제에서만 사용할 수 있습니다.", "UPGRADE_PROMPT": "어시스턴트, Copilot 등에 액세스하려면 요금제를 업그레이드하십시오.", - "ASK_ADMIN": "업그레이드를 위해 관리자에게 문의하십시오.", - "AVAILABLE_ON": "Captain AI는 Enterprise 요금제에서만 사용할 수 있습니다." + "ASK_ADMIN": "업그레이드를 위해 관리자에게 문의하십시오." }, "BANNER": { "RESPONSES": "응답 한도의 80% 이상을 사용했습니다. Captain AI를 계속 사용하려면 업그레이드하십시오.", diff --git a/app/javascript/dashboard/i18n/locale/ko/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ko/labelsMgmt.json index 281bb9f2a..d2c61e748 100644 --- a/app/javascript/dashboard/i18n/locale/ko/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "라벨을 가져오는 중", "DESCRIPTION": "라벨은 대화와 리드를 분류하고 우선순위를 지정하는 데 도움이 됩니다. 사이드 패널을 사용하여 대화 또는 연락처에 라벨을 할당할 수 있습니다.", "LEARN_MORE": "라벨에 대해 자세히 알아보기", + "COUNT": "{n}개의 라벨 | {n}개의 라벨", + "SEARCH_PLACEHOLDER": "라벨 검색...", + "NO_RESULTS": "검색과 일치하는 라벨이 없습니다", "SEARCH_404": "이 쿼리와 일치하는 항목이 없습니다", "LIST": { "404": "이 계정에는 사용 가능한 라벨이 없습니다.", @@ -81,9 +84,6 @@ "YES": "예, 삭제합니다. ", "NO": "아니요, 유지해주세요. " } - }, - "COUNT": "{n}개의 라벨 | {n}개의 라벨", - "SEARCH_PLACEHOLDER": "라벨 검색...", - "NO_RESULTS": "검색과 일치하는 라벨이 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/macros.json b/app/javascript/dashboard/i18n/locale/ko/macros.json index b303d1b33..dfa9fba44 100644 --- a/app/javascript/dashboard/i18n/locale/ko/macros.json +++ b/app/javascript/dashboard/i18n/locale/ko/macros.json @@ -3,9 +3,12 @@ "HEADER": "매크로", "DESCRIPTION": "매크로는 고객 서비스 에이전트가 작업을 쉽게 완료할 수 있도록 도와주는 저장된 액션 모음입니다. 에이전트는 대화에 라벨 태그 지정, 이메일 대화 내용 전송, 사용자 정의 속성 업데이트 등의 액션을 정의하고, 클릭 한 번으로 이러한 액션을 실행할 수 있습니다.", "LEARN_MORE": "매크로에 대해 자세히 알아보기", + "COUNT": "{n}개의 매크로 | {n}개의 매크로", "HEADER_BTN_TXT": "새 매크로 추가", "HEADER_BTN_TXT_SAVE": "매크로 저장", "LOADING": "매크로를 불러오는 중", + "SEARCH_PLACEHOLDER": "매크로 검색...", + "NO_RESULTS": "검색과 일치하는 매크로가 없습니다", "ERROR": "오류가 발생했습니다. 다시 시도해 주십시오.", "ORDER_INFO": "매크로는 액션을 추가한 순서대로 실행됩니다. 각 노드 옆의 핸들을 드래그하여 순서를 변경할 수 있습니다.", "ADD": { @@ -107,9 +110,6 @@ "MEDIUM": "보통", "HIGH": "높음", "URGENT": "긴급" - }, - "COUNT": "{n}개의 매크로 | {n}개의 매크로", - "SEARCH_PLACEHOLDER": "매크로 검색...", - "NO_RESULTS": "검색과 일치하는 매크로가 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/report.json b/app/javascript/dashboard/i18n/locale/ko/report.json index c4247fbb4..5b923c682 100644 --- a/app/javascript/dashboard/i18n/locale/ko/report.json +++ b/app/javascript/dashboard/i18n/locale/ko/report.json @@ -3,6 +3,7 @@ "HEADER": "대화", "LOADING_CHART": "차트 데이터 불러오는 중...", "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", + "DOWNLOAD_CONVERSATION_REPORTS": "대화 보고서 다운로드", "DATA_FETCHING_FAILED": "데이터를 가져오지 못했습니다. 나중에 다시 시도하십시오.", "SUMMARY_FETCHING_FAILED": "요약을 가져오지 못했습니다. 나중에 다시 시도하십시오.", "METRICS": { @@ -123,8 +124,7 @@ "PAGINATION": { "RESULTS": "{total}개 결과 중 {start}~{end} 표시", "PER_PAGE_TEMPLATE": "{size} / 페이지" - }, - "DOWNLOAD_CONVERSATION_REPORTS": "대화 보고서 다운로드" + } }, "AGENT_REPORTS": { "HEADER": "에이전트 개요", @@ -133,6 +133,11 @@ "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", "DOWNLOAD_AGENT_REPORTS": "에이전트 보고서 다운로드", "FILTER_DROPDOWN_LABEL": "에이전트 선택", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "에이전트 검색" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "대화", @@ -192,11 +197,6 @@ "CUSTOM_DATE_RANGE": { "CONFIRM": "적용", "PLACEHOLDER": "날짜 범위 선택" - }, - "FILTERS": { - "INPUT_PLACEHOLDER": { - "AGENTS": "에이전트 검색" - } } }, "LABEL_REPORTS": { @@ -206,6 +206,11 @@ "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", "DOWNLOAD_LABEL_REPORTS": "라벨 보고서 다운로드", "FILTER_DROPDOWN_LABEL": "라벨 선택", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "라벨 검색" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "대화", @@ -265,11 +270,6 @@ "CUSTOM_DATE_RANGE": { "CONFIRM": "적용", "PLACEHOLDER": "날짜 범위 선택" - }, - "FILTERS": { - "INPUT_PLACEHOLDER": { - "LABELS": "라벨 검색" - } } }, "INBOX_REPORTS": { @@ -281,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "받은 메시지함 선택", "ALL_INBOXES": "모든 받은 메시지함", "SEARCH_INBOX": "받은 메시지함 검색", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "받은 메시지함 검색" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "대화", @@ -340,11 +345,6 @@ "CUSTOM_DATE_RANGE": { "CONFIRM": "적용", "PLACEHOLDER": "날짜 범위 선택" - }, - "FILTERS": { - "INPUT_PLACEHOLDER": { - "INBOXES": "받은 메시지함 검색" - } } }, "TEAM_REPORTS": { @@ -354,6 +354,14 @@ "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", "DOWNLOAD_TEAM_REPORTS": "팀 보고서 다운로드", "FILTER_DROPDOWN_LABEL": "팀 선택", + "FILTERS": { + "ADD_FILTER": "필터 추가", + "CLEAR_ALL": "모두 지우기", + "NO_FILTER": "사용 가능한 필터가 없습니다", + "INPUT_PLACEHOLDER": { + "TEAMS": "팀 검색" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "대화", @@ -413,25 +421,15 @@ "CUSTOM_DATE_RANGE": { "CONFIRM": "적용", "PLACEHOLDER": "날짜 범위 선택" - }, - "FILTERS": { - "ADD_FILTER": "필터 추가", - "CLEAR_ALL": "모두 지우기", - "NO_FILTER": "사용 가능한 필터가 없습니다", - "INPUT_PLACEHOLDER": { - "TEAMS": "팀 검색" - } } }, "CSAT_REPORTS": { "HEADER": "CSAT 보고서", "NO_RECORDS": "아직 응답이 없습니다", + "NO_RECORDS_DESCRIPTION": "고객이 피드백을 제공하기 시작하면 CSAT 설문 응답이 여기에 표시됩니다.", "DOWNLOAD": "CSAT 보고서 다운로드", "DOWNLOAD_FAILED": "CSAT 보고서 다운로드에 실패했습니다", "FILTERS": { - "AGENTS": { - "LABEL": "에이전트" - }, "ADD_FILTER": "필터 추가", "CLEAR_ALL": "모두 지우기", "NO_FILTER": "사용 가능한 필터가 없습니다", @@ -441,6 +439,9 @@ "TEAMS": "팀 검색", "RATINGS": "평점 검색" }, + "AGENTS": { + "LABEL": "에이전트" + }, "INBOXES": { "LABEL": "받은 메시지함" }, @@ -464,6 +465,8 @@ }, "UNKNOWN_CUSTOMER": "알 수 없는 고객" }, + "NO_AGENT": "배정된 에이전트 없음", + "NO_FEEDBACK": "피드백이 제공되지 않았습니다", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "총 응답 수", @@ -479,9 +482,6 @@ }, "RATING_DISTRIBUTION": "평점 분포" }, - "NO_RECORDS_DESCRIPTION": "고객이 피드백을 제공하기 시작하면 CSAT 설문 응답이 여기에 표시됩니다.", - "NO_AGENT": "배정된 에이전트 없음", - "NO_FEEDBACK": "피드백이 제공되지 않았습니다", "REVIEW_NOTES": { "TITLE": "리뷰 메모", "PLACEHOLDER": "이 평점에 대한 리뷰 메모를 추가하십시오...", diff --git a/app/javascript/dashboard/i18n/locale/ko/settings.json b/app/javascript/dashboard/i18n/locale/ko/settings.json index 6485e5889..69a5e08f6 100644 --- a/app/javascript/dashboard/i18n/locale/ko/settings.json +++ b/app/javascript/dashboard/i18n/locale/ko/settings.json @@ -383,6 +383,54 @@ "CAPTAIN_AI": "Captain", "CONVERSATION_WORKFLOW": "대화 워크플로" }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain 설정", + "DESCRIPTION": "Captain의 AI 모델과 기능을 구성합니다. Captain은 크레딧 기반 청구를 따르며, 선택한 모델에 따라 Captain이 수행하는 모든 작업에 대해 크레딧이 청구됩니다.", + "LOADING": "Captain 구성 로딩 중...", + "LINK_TEXT": "Captain 크레딧에 대해 자세히 알아보기", + "NOT_ENABLED": "이 계정에서 Captain이 활성화되지 않았습니다. Captain 기능에 접근하려면 플랜을 업그레이드하십시오.", + "MODEL_CONFIG": { + "TITLE": "모델 구성", + "DESCRIPTION": "다양한 기능에 대한 AI 모델을 선택합니다.", + "SELECT_MODEL": "모델 선택", + "CREDITS_PER_MESSAGE": "{credits} 크레딧/메시지", + "COMING_SOON": "곧 출시 예정", + "EDITOR": { + "TITLE": "편집기 기능", + "DESCRIPTION": "메시지 편집기에서 스마트 작성, 문법 교정, 톤 조정 및 콘텐츠 개선을 지원합니다." + }, + "ASSISTANT": { + "TITLE": "어시스턴트", + "DESCRIPTION": "자동 응답, 대화 요약 및 고객 상호 작용을 위한 지능형 답변 제안을 처리합니다." + }, + "COPILOT": { + "TITLE": "Copilot", + "DESCRIPTION": "대화 중 실시간 맥락 제안, 지식 기반 추천 및 사전 인사이트를 제공합니다." + } + }, + "FEATURES": { + "TITLE": "기능", + "DESCRIPTION": "AI 기반 기능을 활성화하거나 비활성화합니다.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "오디오 전사", + "DESCRIPTION": "음성 메시지와 통화 녹음을 검색 가능한 텍스트로 자동 변환합니다." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "도움말 센터 검색 인덱싱", + "DESCRIPTION": "도움말 센터 게시물 내에서 맥락 인식 검색을 위해 AI를 사용합니다." + }, + "LABEL_SUGGESTION": { + "TITLE": "라벨 제안", + "DESCRIPTION": "콘텐츠 분석 및 맥락에 기반하여 대화에 대한 관련 라벨과 태그를 자동으로 제안합니다.", + "MODEL_TITLE": "라벨 제안 모델", + "MODEL_DESCRIPTION": "대화 분석 및 적절한 라벨 제안에 사용할 AI 모델을 선택합니다" + } + }, + "API": { + "SUCCESS": "Captain 설정이 성공적으로 업데이트되었습니다.", + "ERROR": "Captain 설정 업데이트에 실패했습니다. 다시 시도하십시오." + } + }, "BILLING_SETTINGS": { "TITLE": "청구", "DESCRIPTION": "여기에서 구독을 관리하고, 플랜을 업그레이드하여 팀에 더 많은 기능을 제공하십시오.", @@ -509,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "대화 워크플로", + "DESCRIPTION": "대화 해결에 대한 규칙과 필수 항목을 구성합니다." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "해결 시 필수 속성", + "DESCRIPTION": "대화를 해결할 때, 에이전트가 아직 채우지 않은 이 속성들을 입력하도록 안내됩니다.", + "NO_ATTRIBUTES": "아직 추가된 속성이 없습니다", + "ADD": { + "TITLE": "속성 추가", + "SEARCH_PLACEHOLDER": "속성 검색" + }, + "SAVE": { + "SUCCESS": "필수 속성이 업데이트되었습니다", + "ERROR": "필수 속성을 업데이트할 수 없습니다. 다시 시도하십시오" + }, + "MODAL": { + "TITLE": "대화 해결", + "DESCRIPTION": "이 대화를 해결하기 전에 다음 사용자 정의 속성을 입력하십시오", + "ACTIONS": { + "RESOLVE": "대화 해결", + "CANCEL": "취소" + }, + "PLACEHOLDERS": { + "TEXT": "메모를 작성하십시오...", + "NUMBER": "숫자를 입력하십시오", + "LINK": "링크를 추가하십시오", + "DATE": "날짜를 선택하십시오", + "LIST": "옵션을 선택하십시오" + }, + "CHECKBOX": { + "YES": "예", + "NO": "아니오" + } + }, + "PAYWALL": { + "TITLE": "필수 속성을 사용하려면 업그레이드하십시오", + "AVAILABLE_ON": "필수 대화 속성 기능은 Business 및 Enterprise 플랜에서 사용할 수 있습니다.", + "UPGRADE_PROMPT": "대화 해결 전에 에이전트에게 필수 속성 입력을 요구하려면 플랜을 업그레이드하십시오.", + "UPGRADE_NOW": "지금 업그레이드", + "CANCEL_ANYTIME": "언제든지 플랜을 변경하거나 취소할 수 있습니다" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "필수 대화 속성 기능은 유료 플랜에서 사용할 수 있습니다.", + "UPGRADE_PROMPT": "대화 해결 전에 필수 속성을 적용하려면 유료 플랜으로 업그레이드하십시오.", + "ASK_ADMIN": "업그레이드를 위해 관리자에게 문의하십시오." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Chatwoot 계정을 찾을 수 없습니다. 계속하려면 새 계정을 만드십시오.", "NEW_ACCOUNT": "새 계정", @@ -609,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "계속", "CANCEL_BUTTON_LABEL": "취소" }, + "INBOX_LINK_PROMPT": { + "TITLE": "받은 메시지함을 정책에 연결", + "DESCRIPTION": "이 받은 메시지함을 배정 정책에 연결하시겠습니까?", + "LINK_BUTTON": "받은 메시지함 연결", + "CANCEL_BUTTON": "건너뛰기" + }, "API": { "SUCCESS_MESSAGE": "배정 정책이 성공적으로 업데이트되었습니다", "ERROR_MESSAGE": "배정 정책 업데이트에 실패했습니다" @@ -622,12 +728,6 @@ "SUCCESS_MESSAGE": "받은 메시지함이 정책에서 성공적으로 제거되었습니다", "ERROR_MESSAGE": "정책에서 받은 메시지함 제거에 실패했습니다" } - }, - "INBOX_LINK_PROMPT": { - "TITLE": "받은 메시지함을 정책에 연결", - "DESCRIPTION": "이 받은 메시지함을 배정 정책에 연결하시겠습니까?", - "LINK_BUTTON": "받은 메시지함 연결", - "CANCEL_BUTTON": "건너뛰기" } }, "FORM": { @@ -818,105 +918,5 @@ "CONFIRM_BUTTON_LABEL": "삭제", "CANCEL_BUTTON_LABEL": "취소" } - }, - "CAPTAIN_SETTINGS": { - "TITLE": "Captain 설정", - "DESCRIPTION": "Captain의 AI 모델과 기능을 구성합니다. Captain은 크레딧 기반 청구를 따르며, 선택한 모델에 따라 Captain이 수행하는 모든 작업에 대해 크레딧이 청구됩니다.", - "LOADING": "Captain 구성 로딩 중...", - "LINK_TEXT": "Captain 크레딧에 대해 자세히 알아보기", - "NOT_ENABLED": "이 계정에서 Captain이 활성화되지 않았습니다. Captain 기능에 접근하려면 플랜을 업그레이드하십시오.", - "MODEL_CONFIG": { - "TITLE": "모델 구성", - "DESCRIPTION": "다양한 기능에 대한 AI 모델을 선택합니다.", - "SELECT_MODEL": "모델 선택", - "CREDITS_PER_MESSAGE": "{credits} 크레딧/메시지", - "COMING_SOON": "곧 출시 예정", - "EDITOR": { - "TITLE": "편집기 기능", - "DESCRIPTION": "메시지 편집기에서 스마트 작성, 문법 교정, 톤 조정 및 콘텐츠 개선을 지원합니다." - }, - "ASSISTANT": { - "TITLE": "어시스턴트", - "DESCRIPTION": "자동 응답, 대화 요약 및 고객 상호 작용을 위한 지능형 답변 제안을 처리합니다." - }, - "COPILOT": { - "TITLE": "Copilot", - "DESCRIPTION": "대화 중 실시간 맥락 제안, 지식 기반 추천 및 사전 인사이트를 제공합니다." - } - }, - "FEATURES": { - "TITLE": "기능", - "DESCRIPTION": "AI 기반 기능을 활성화하거나 비활성화합니다.", - "AUDIO_TRANSCRIPTION": { - "TITLE": "오디오 전사", - "DESCRIPTION": "음성 메시지와 통화 녹음을 검색 가능한 텍스트로 자동 변환합니다." - }, - "HELP_CENTER_SEARCH": { - "TITLE": "도움말 센터 검색 인덱싱", - "DESCRIPTION": "도움말 센터 게시물 내에서 맥락 인식 검색을 위해 AI를 사용합니다." - }, - "LABEL_SUGGESTION": { - "TITLE": "라벨 제안", - "DESCRIPTION": "콘텐츠 분석 및 맥락에 기반하여 대화에 대한 관련 라벨과 태그를 자동으로 제안합니다.", - "MODEL_TITLE": "라벨 제안 모델", - "MODEL_DESCRIPTION": "대화 분석 및 적절한 라벨 제안에 사용할 AI 모델을 선택합니다" - } - }, - "API": { - "SUCCESS": "Captain 설정이 성공적으로 업데이트되었습니다.", - "ERROR": "Captain 설정 업데이트에 실패했습니다. 다시 시도하십시오." - } - }, - "CONVERSATION_WORKFLOW": { - "INDEX": { - "HEADER": { - "TITLE": "대화 워크플로", - "DESCRIPTION": "대화 해결에 대한 규칙과 필수 항목을 구성합니다." - } - }, - "REQUIRED_ATTRIBUTES": { - "TITLE": "해결 시 필수 속성", - "DESCRIPTION": "대화를 해결할 때, 에이전트가 아직 채우지 않은 이 속성들을 입력하도록 안내됩니다.", - "NO_ATTRIBUTES": "아직 추가된 속성이 없습니다", - "ADD": { - "TITLE": "속성 추가", - "SEARCH_PLACEHOLDER": "속성 검색" - }, - "SAVE": { - "SUCCESS": "필수 속성이 업데이트되었습니다", - "ERROR": "필수 속성을 업데이트할 수 없습니다. 다시 시도하십시오" - }, - "MODAL": { - "TITLE": "대화 해결", - "DESCRIPTION": "이 대화를 해결하기 전에 다음 사용자 정의 속성을 입력하십시오", - "ACTIONS": { - "RESOLVE": "대화 해결", - "CANCEL": "취소" - }, - "PLACEHOLDERS": { - "TEXT": "메모를 작성하십시오...", - "NUMBER": "숫자를 입력하십시오", - "LINK": "링크를 추가하십시오", - "DATE": "날짜를 선택하십시오", - "LIST": "옵션을 선택하십시오" - }, - "CHECKBOX": { - "YES": "예", - "NO": "아니오" - } - }, - "PAYWALL": { - "TITLE": "필수 속성을 사용하려면 업그레이드하십시오", - "AVAILABLE_ON": "필수 대화 속성 기능은 Business 및 Enterprise 플랜에서 사용할 수 있습니다.", - "UPGRADE_PROMPT": "대화 해결 전에 에이전트에게 필수 속성 입력을 요구하려면 플랜을 업그레이드하십시오.", - "UPGRADE_NOW": "지금 업그레이드", - "CANCEL_ANYTIME": "언제든지 플랜을 변경하거나 취소할 수 있습니다" - }, - "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "필수 대화 속성 기능은 유료 플랜에서 사용할 수 있습니다.", - "UPGRADE_PROMPT": "대화 해결 전에 필수 속성을 적용하려면 유료 플랜으로 업그레이드하십시오.", - "ASK_ADMIN": "업그레이드를 위해 관리자에게 문의하십시오." - } - } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/signup.json b/app/javascript/dashboard/i18n/locale/ko/signup.json index 9dfdd982e..6e6e9e854 100644 --- a/app/javascript/dashboard/i18n/locale/ko/signup.json +++ b/app/javascript/dashboard/i18n/locale/ko/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "계정 만들기", + "GET_STARTED": "Chatwoot 시작하기", "TITLE": "회원가입", "TESTIMONIAL_HEADER": "앞으로 나아가기 위한 단 한 걸음", "TESTIMONIAL_CONTENT": "고객과 소통하고, 유지하고, 새로운 고객을 찾는 것은 한 걸음이면 됩니다.", @@ -44,7 +45,6 @@ "ERROR_MESSAGE": "Chatwoot 서버에 연결할 수 없습니다. 나중에 다시 시도하십시오." }, "SUBMIT": "계정 만들기", - "HAVE_AN_ACCOUNT": "이미 계정이 있으십니까?", - "GET_STARTED": "Chatwoot 시작하기" + "HAVE_AN_ACCOUNT": "이미 계정이 있으십니까?" } } diff --git a/app/javascript/dashboard/i18n/locale/ko/sla.json b/app/javascript/dashboard/i18n/locale/ko/sla.json index b149c8ad3..70d473a7b 100644 --- a/app/javascript/dashboard/i18n/locale/ko/sla.json +++ b/app/javascript/dashboard/i18n/locale/ko/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "새 SLA 정책 생성", "DESCRIPTION": "서비스 수준 계약(SLA)은 팀과 고객 간의 명확한 기대치를 정의하는 계약입니다. 응답 및 해결 시간에 대한 기준을 설정하여 책임성을 위한 프레임워크를 만들고 일관되고 고품질의 경험을 보장합니다.", "LEARN_MORE": "SLA에 대해 자세히 알아보기", + "COUNT": "{n}개의 SLA | {n}개의 SLA", "LOADING": "SLA를 불러오는 중", + "SEARCH_PLACEHOLDER": "SLA 검색...", + "SEARCH": { + "NO_RESULTS": "검색과 일치하는 SLA가 없습니다" + }, "PAYWALL": { "TITLE": "SLA를 생성하려면 업그레이드하십시오", "AVAILABLE_ON": "SLA 기능은 Business 및 Enterprise 플랜에서만 사용할 수 있습니다.", @@ -20,6 +25,10 @@ }, "LIST": { "404": "이 계정에 사용 가능한 SLA가 없습니다.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "영업시간" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Enterprise 고객이 제기한 즉각적인 대응이 필요한 이슈입니다.", @@ -37,10 +46,6 @@ "NRT": "NRT", "RT": "RT" } - }, - "TABLE_HEADER": { - "SLA": "SLA", - "BUSINESS_HOURS": "영업시간" } }, "FORM": { @@ -107,11 +112,6 @@ "RT": "해결 시간", "SHOW_MORE": "{count}개 더 보기", "HIDE": "{count}개 행 숨기기" - }, - "COUNT": "{n}개의 SLA | {n}개의 SLA", - "SEARCH_PLACEHOLDER": "SLA 검색...", - "SEARCH": { - "NO_RESULTS": "검색과 일치하는 SLA가 없습니다" } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ko/teamsSettings.json index bc6064ca9..07aef17b4 100644 --- a/app/javascript/dashboard/i18n/locale/ko/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ko/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "팀을 불러오는 중", "DESCRIPTION": "팀을 사용하면 에이전트를 업무 담당에 따라 그룹으로 구성할 수 있습니다. 에이전트는 여러 팀에 소속될 수 있습니다. 협업 시 특정 팀에 대화를 배정할 수 있습니다.", "LEARN_MORE": "팀에 대해 자세히 알아보기", + "COUNT": "{n}개의 팀 | {n}개의 팀", + "SEARCH_PLACEHOLDER": "팀 검색...", + "NO_RESULTS": "검색과 일치하는 팀이 없습니다", "LIST": { "404": "계정에 생성된 팀이 없습니다.", "EDIT_TEAM": "팀 수정하기", @@ -116,9 +119,6 @@ "LABEL": "이 팀에 자동 배정을 허용합니다." }, "SUBMIT_CREATE": "팀 생성" - }, - "COUNT": "{n}개의 팀 | {n}개의 팀", - "SEARCH_PLACEHOLDER": "팀 검색...", - "NO_RESULTS": "검색과 일치하는 팀이 없습니다" + } } } diff --git a/app/javascript/dashboard/i18n/locale/lt/conversation.json b/app/javascript/dashboard/i18n/locale/lt/conversation.json index cfa363a79..96ff486bf 100644 --- a/app/javascript/dashboard/i18n/locale/lt/conversation.json +++ b/app/javascript/dashboard/i18n/locale/lt/conversation.json @@ -179,7 +179,7 @@ "FAILED": "Couldn't remove label. Please try again." }, "TEAM_ASSIGNMENT": { - "SUCCESFUL": "Priskirta komanda #{team} pokalbiui id {conversationId}", + "SUCCESFUL": "Priskirta komanda \"{team}\" pokalbiui id {conversationId}", "FAILED": "Nepavyko priskirti komandos. Prašau, pabandykite dar kartą." } } diff --git a/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json index 489107fd9..325c45273 100644 --- a/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Tiesiogiai" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Nustatymai", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agentai", "INBOX_AGENTS_SUB_TEXT": "Pridėti ar pašalinti agentus iš gautų laiškų aplanko", diff --git a/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json index dcd0115fd..6bbd93a6b 100644 --- a/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Tiešraide" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Iestatījumi", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Aģenti", "INBOX_AGENTS_SUB_TEXT": "Pievienot vai noņemt aģentus no šīs iesūtnes", diff --git a/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json index 3912a94d3..19a7247bc 100644 --- a/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "ക്രമീകരണങ്ങൾ", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "ഏജന്റുമാർ", "INBOX_AGENTS_SUB_TEXT": "ഈ ഇൻ‌ബോക്സിൽ നിന്ന് ഏജന്റുമാരെ ചേർക്കുക അല്ലെങ്കിൽ നീക്കംചെയ്യുക", diff --git a/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json index 973241524..c42e5a306 100644 --- a/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Ejen", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json index 5cb3b0ef4..face31740 100644 --- a/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json index bffaf9141..7da073a5c 100644 --- a/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Instellingen", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenten", "INBOX_AGENTS_SUB_TEXT": "Voeg agenten toe of verwijder ze uit deze inbox", diff --git a/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json index 373a53adf..b12fce2ca 100644 --- a/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Innstillinger", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenter", "INBOX_AGENTS_SUB_TEXT": "Legg til eller fjern agenter fra denne innboksen", diff --git a/app/javascript/dashboard/i18n/locale/pl/conversation.json b/app/javascript/dashboard/i18n/locale/pl/conversation.json index f74a8b492..499bbe5d7 100644 --- a/app/javascript/dashboard/i18n/locale/pl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pl/conversation.json @@ -255,7 +255,7 @@ "CHANGE_TEAM": "Zmieniono przypisany zespół konwersacji", "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", - "FILE_SIZE_LIMIT": "Plik przekracza limit rozmiaru załącznika %{MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_SIZE_LIMIT": "Plik przekracza limit rozmiaru załącznika {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Nie można wysłać tej wiadomości, spróbuj ponownie później", "SENT_BY": "Wysłane przez:", diff --git a/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json index 6fd07a8ec..00a176ad5 100644 --- a/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json @@ -239,7 +239,7 @@ "WHATSAPP_CLOUD": "Chmura WhatsApp", "WHATSAPP_CLOUD_DESC": "Quick setup through Meta", "TWILIO_DESC": "Connect via Twilio credentials", - "360_DIALOG": "360Dialog" + "360_DIALOG": "360dialog" }, "SELECT_PROVIDER": { "TITLE": "Select your API provider", @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Na żywo" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Ustawienia", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenci", "INBOX_AGENTS_SUB_TEXT": "Dodaj lub usuń agentów z tej skrzynki odbiorczej", diff --git a/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json index f52af9ce8..5d271023e 100644 --- a/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json @@ -239,7 +239,7 @@ "WHATSAPP_CLOUD": "WhatsApp Cloud", "WHATSAPP_CLOUD_DESC": "Quick setup through Meta", "TWILIO_DESC": "Connect via Twilio credentials", - "360_DIALOG": "360Dialog" + "360_DIALOG": "360dialog" }, "SELECT_PROVIDER": { "TITLE": "Select your API provider", @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Disponível" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Configurações", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agentes", "INBOX_AGENTS_SUB_TEXT": "Adicionar ou remover agentes desta caixa de entrada", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/auditLogs.json b/app/javascript/dashboard/i18n/locale/pt_BR/auditLogs.json index 51996b6c7..7c71eed03 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/auditLogs.json @@ -41,7 +41,7 @@ "DELETE": "{agentName} excluiu uma caixa de entrada (#{id})" }, "WEBHOOK": { - "ADD": "{agentName} criou um webhook (##{id})", + "ADD": "{agentName} criou um webhook (#{id})", "EDIT": "{agentName} atualizou um webhook (#{id})", "DELETE": "{agentName} excluiu um webhook (#{id})" }, diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json b/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json index f079f136f..40f2f7941 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json @@ -255,13 +255,13 @@ "DOMAIN": { "LABEL": "Domínio personalizado", "PLACEHOLDER": "Domínio personalizado do portal", - "HELP_TEXT": "Adicione somente se você quiser usar um domínio personalizado para seus portais. Por exemplo: https://example. com", + "HELP_TEXT": "Adicione somente se você quiser usar um domínio personalizado para seus portais. Por exemplo: {exampleURL}", "ERROR": "Insira uma URL de domínio válida" }, "HOME_PAGE_LINK": { "LABEL": "Link da Página Inicial", "PLACEHOLDER": "Link da página inicial do portal", - "HELP_TEXT": "O link usado para retornar do portal para a página inicial. Ex: https://example.com", + "HELP_TEXT": "O link usado para retornar do portal para a página inicial. Ex: {exampleURL}", "ERROR": "Digite uma URL de página inicial válida" }, "THEME_COLOR": { diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json index 06ebbb24d..c06b1f671 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Em tempo real" } + }, + "WEBHOOK": { + "TITLE": "Configuração do Webhook", + "DESCRIPTION": "A URL do webhook é obrigatória para que sua conta do WhatsApp Business receba mensagens dos clientes", + "ACTION_REQUIRED": "Webhook não configurado", + "REGISTER_BUTTON": "Cadastrar Webhook", + "REGISTER_SUCCESS": "Webhook cadastrado com sucesso", + "REGISTER_ERROR": "Falha ao cadastrar webhook. Por favor, tente novamente.", + "CONFIGURED_SUCCESS": "Webhook configurado com sucesso", + "URL_MISMATCH": "Incompatibilidade na URL do webhook" } }, "SETTINGS": "Configurações", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Domínios permitidos", "SUBTITLE": "Adicione coringa ou domínios separados por vírgula (deixe em branco para permitir todos), ex: *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Insira domínios separados por vírgula (ex: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "exemplo.com, www.exemplo.com, app.exemplo.com" }, "INBOX_AGENTS": "Agentes", "INBOX_AGENTS_SUB_TEXT": "Adicionar ou remover agentes dessa caixa de entrada", diff --git a/app/javascript/dashboard/i18n/locale/ro/conversation.json b/app/javascript/dashboard/i18n/locale/ro/conversation.json index b2098de41..a6d388dca 100644 --- a/app/javascript/dashboard/i18n/locale/ro/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ro/conversation.json @@ -179,7 +179,7 @@ "FAILED": "Couldn't remove label. Please try again." }, "TEAM_ASSIGNMENT": { - "SUCCESFUL": "Echipa atribuită #{team} la conversația cu id {conversationId}", + "SUCCESFUL": "Echipa atribuită \"{team}\" la conversația cu id {conversationId}", "FAILED": "Nu s-a putut atribui echipa. Vă rugăm să încercaţi din nou." } } diff --git a/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json index e0b9ac73f..d673a4829 100644 --- a/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Setări", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenți", "INBOX_AGENTS_SUB_TEXT": "Adaugă sau elimină agenți din acest inbox", diff --git a/app/javascript/dashboard/i18n/locale/ru/agentBots.json b/app/javascript/dashboard/i18n/locale/ru/agentBots.json index 658452ef6..9fa37d636 100644 --- a/app/javascript/dashboard/i18n/locale/ru/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ru/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Загрузка редактора...", "DESCRIPTION": "Боты — это ваши незаменимые помощники. Они берут на себя рутину, чтобы вы могли сосредоточиться на важном. Попробуйте! Управлять ботами можно на этой странице, а новых — создавать с помощью кнопки «Добавить бота».", "LEARN_MORE": "Подробнее о ботах-агентах", + "COUNT": "{n} бот | {n} боты", + "SEARCH_PLACEHOLDER": "Поиск ботов...", + "NO_RESULTS": "Не найдено ботов, соответствующих вашему запросу", "GLOBAL_BOT": "Системный бот", "GLOBAL_BOT_BADGE": "Система", "AVATAR": { @@ -99,9 +102,6 @@ }, "TYPES": { "WEBHOOK": "Webhook бот" - }, - "COUNT": "{n} бот | {n} боты", - "SEARCH_PLACEHOLDER": "Поиск ботов...", - "NO_RESULTS": "Не найдено ботов, соответствующих вашему запросу" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ru/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ru/attributesMgmt.json index a8088bcda..402663784 100644 --- a/app/javascript/dashboard/i18n/locale/ru/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ru/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Получение пользовательских атрибутов", "DESCRIPTION": "Пользовательский атрибут отслеживает дополнительную информацию о ваших контактах или разговорах, таких как план подписки или дата их первой покупки. Вы можете добавить различные типы пользовательских атрибутов, такие как текст, списки или цифры, чтобы захватить нужную вам информацию.", "LEARN_MORE": "Узнайте больше о пользовательских атрибутах", + "COUNT": "{n} атрибут | {n} атрибутов", + "SEARCH_PLACEHOLDER": "Поиск по атрибутам...", + "NO_RESULTS": "Не найдено атрибутов, соответствующих вашему запросу", "ATTRIBUTE_MODELS": { "CONVERSATION": "Диалог", "CONTACT": "Контакт" @@ -137,9 +140,6 @@ "BADGES": { "PRE_CHAT": "Пре-чат", "RESOLUTION": "Завершение диалога" - }, - "COUNT": "{n} атрибут | {n} атрибутов", - "SEARCH_PLACEHOLDER": "Поиск по атрибутам...", - "NO_RESULTS": "Не найдено атрибутов, соответствующих вашему запросу" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ru/automation.json b/app/javascript/dashboard/i18n/locale/ru/automation.json index 9a18edee2..644c92c67 100644 --- a/app/javascript/dashboard/i18n/locale/ru/automation.json +++ b/app/javascript/dashboard/i18n/locale/ru/automation.json @@ -3,8 +3,11 @@ "HEADER": "Автоматизация", "DESCRIPTION": "Автоматизация позволяет заменить и упростить процессы, требующие ручной работы, такие как добавление меток и назначение диалогов наиболее подходящим агентам. Это помогает команде сосредоточиться на ключевых задачах и сократить время на рутину.", "LEARN_MORE": "Узнать больше об автоматизации", + "COUNT": "{n} автоматизация | {n} автоматизаций", "HEADER_BTN_TXT": "Создать автоматизацию", "LOADING": "Получение правил автоматизации", + "SEARCH_PLACEHOLDER": "Поиск правил автоматизации...", + "NO_RESULTS": "Не найдено правил автоматизации, соответствующих вашему запросу", "ADD": { "TITLE": "Добавить правило автоматизации", "SUBMIT": "Создать", @@ -40,13 +43,13 @@ } }, "LIST": { - "404": "Правила автоматизации не найдены", "TABLE_HEADER": { "NAME": "Название", "ACTIVE": "Активно", "CREATED_ON": "Дата создания", "ACTIONS": "Действия" - } + }, + "404": "Правила автоматизации не найдены" }, "DELETE": { "TITLE": "Удалить правило автоматизации", @@ -180,9 +183,6 @@ "TEAM_NAME": "Команда", "PRIORITY": "Приоритет", "LABELS": "Метки" - }, - "COUNT": "{n} автоматизация | {n} автоматизаций", - "SEARCH_PLACEHOLDER": "Поиск правил автоматизации...", - "NO_RESULTS": "Не найдено правил автоматизации, соответствующих вашему запросу" + } } } diff --git a/app/javascript/dashboard/i18n/locale/ru/bulkActions.json b/app/javascript/dashboard/i18n/locale/ru/bulkActions.json index 0ed1cf0a9..6efb69f6e 100644 --- a/app/javascript/dashboard/i18n/locale/ru/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ru/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Статус беседы успешно обновлен.", "UPDATE_FAILED": "Не удалось обновить диалоги, попробуйте еще раз." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Невозможно завершить диалоги: отсутствуют обязательные атрибуты", + "PARTIAL_SUCCESS": "Некоторые диалоги были пропущены: перед завершением необходимо заполнить обязательные атрибуты" + }, "LABELS": { "ASSIGN_LABELS": "Назначить метки", "NO_LABELS_FOUND": "Метки не найдены", @@ -36,10 +40,6 @@ "ASSIGN_SELECTED_TEAMS": "Назначить выбранную команду.", "ASSIGN_SUCCESFUL": "Команды успешно назначены.", "ASSIGN_FAILED": "Не удалось назначить команду, попробуйте еще раз." - }, - "RESOLVE": { - "ALL_MISSING_ATTRIBUTES": "Невозможно завершить диалоги: отсутствуют обязательные атрибуты", - "PARTIAL_SUCCESS": "Некоторые диалоги были пропущены: перед завершением необходимо заполнить обязательные атрибуты" } } } diff --git a/app/javascript/dashboard/i18n/locale/ru/conversation.json b/app/javascript/dashboard/i18n/locale/ru/conversation.json index fcfcbc011..41a91d075 100644 --- a/app/javascript/dashboard/i18n/locale/ru/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ru/conversation.json @@ -179,7 +179,7 @@ "FAILED": "Не удалось удалить метку. Пожалуйста, попробуйте еще раз." }, "TEAM_ASSIGNMENT": { - "SUCCESFUL": "Назначена метка #{team} в разговор id {conversationId}", + "SUCCESFUL": "Назначена команда \"{team}\" разговору с ID {conversationId}", "FAILED": "Не удалось назначить команду. Пожалуйста, попробуйте еще раз." } } diff --git a/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json index d9ef0458d..fd760c604 100644 --- a/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Источники", "DESCRIPTION": "Канал — это способ коммуникации, который ваш клиент выбирает для связи с вами. Входящие — это место, где вы управляете диалогами для определенного канала. Он может включать диалоги из различных источников, таких как электронная почта, онлайн чат или социальные сети.", "LEARN_MORE": "Узнать больше о «Входящих»", + "COUNT": "Найдено источников: {n}", + "SEARCH_PLACEHOLDER": "Поиск источников...", + "NO_RESULTS": "Не найдено источников, соответствующих вашему запросу", "RECONNECTION_REQUIRED": "Входящие сообщения отключены. Вы не будете получать новые сообщения, пока не пройдете авторизацию повторно.", "CLICK_TO_RECONNECT": "Нажмите здесь для повторного подключения.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Ваша регистрация в WhatsApp Business не завершена. Пожалуйста, проверьте статус отображения в Meta Business Manager перед повторным подключением.", @@ -627,6 +630,8 @@ "ACCOUNT_HEALTH": "Здоровье аккаунта", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Настройки канала", + "WIDGET_FEATURES": "Функции виджета", "ACCOUNT_HEALTH": { "TITLE": "Управление учетной записью WhatsApp", "DESCRIPTION": "Проверьте состояние учетной записи WhatsApp, ограничения на сообщения и качество. Обновите настройки или решите проблемы при необходимости", @@ -680,6 +685,16 @@ "SANDBOX": "Песочница", "LIVE": "Онлайн" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Настройки", @@ -696,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Разрешенные домены", "SUBTITLE": "Добавьте подстановочные или обычные домены, разделенные запятыми (оставьте пустым, чтобы разрешить всем), например *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Введите домены, разделенные запятыми (например: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Операторы", "INBOX_AGENTS_SUB_TEXT": "Добавить или удалить агентов из этого источника", @@ -760,15 +775,62 @@ "LABEL": "Центр поддержки", "PLACEHOLDER": "Выберите справочный центр", "SELECT_PLACEHOLDER": "Выберите справочный центр", + "NONE": "Ничего", "REMOVE": "Удалить справочный центр", - "SUB_TEXT": "Прикрепить справочный центр с помощью папки \"Входящие\"", - "NONE": "Ничего" + "SUB_TEXT": "Прикрепить справочный центр с помощью папки \"Входящие\"" }, "AUTO_ASSIGNMENT": { "MAX_ASSIGNMENT_LIMIT": "Авто распределение лимита", "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Пожалуйста, введите значение больше 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Ограничьте максимальное количество диалогов из этого почтового ящика, которые могут быть автоматически назначены агенту" }, + "ASSIGNMENT": { + "TITLE": "Назначение диалогов", + "DESCRIPTION": "Автоматически назначайте входящие диалоги доступным агентам на основе правил назначения", + "ENABLE_AUTO_ASSIGNMENT": "Включить автоматическое назначение диалогов", + "DEFAULT_RULES_TITLE": "Стандартные правила назначения", + "DEFAULT_RULES_DESCRIPTION": "Использовать стандартное поведение назначения для всех диалогов", + "DEFAULT_RULE_1": "Сначала самые ранние диалоги", + "DEFAULT_RULE_2": "Распределение по кругу", + "CUSTOMIZE_WITH_POLICY": "Настроить через политику назначения", + "USING_POLICY": "Для этого источника используется пользовательская политика назначения", + "CUSTOMIZE_POLICY": "Настроить через политику назначения", + "DELETE_POLICY": "Удалить политику", + "POLICY_LABEL": "Политика назначения", + "ASSIGNMENT_ORDER_LABEL": "Порядок назначения", + "ASSIGNMENT_METHOD_LABEL": "Метод назначения", + "POLICY_STATUS": { + "ACTIVE": "Активно", + "INACTIVE": "Неактивен" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Сначала старые", + "LONGEST_WAITING": "Сначала ожидающие дольше всех" + }, + "METHOD": { + "ROUND_ROBIN": "По кругу", + "BALANCED": "Сбалансированное назначение" + }, + "UPGRADE_PROMPT": "Пользовательские политики назначения доступны в плане Business", + "UPGRADE_TO_BUSINESS": "Перейти на Business", + "DEFAULT_POLICY_LINKED": "Стандартная политика привязана", + "DEFAULT_POLICY_DESCRIPTION": "Привяжите пользовательскую политику назначения, чтобы настроить, как диалоги назначаются агентам в этом источнике.", + "LINK_EXISTING_POLICY": "Привязать существующую политику", + "CREATE_NEW_POLICY": "Создать новую политику", + "NO_POLICIES": "Не найдены связанные политики", + "VIEW_ALL_POLICIES": "Посмотреть все политики", + "CURRENT_BEHAVIOR": "Сейчас используется стандартное поведение назначения:", + "LINK_SUCCESS": "Политика назначения успешно привязана", + "LINK_ERROR": "Не удалось привязать политику назначения" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Удалить политику назначения?", + "DELETE_CONFIRM_MESSAGE": "Вы уверены, что хотите удалить эту политику назначения из этого источника? После этого источник вернётся к стандартным правилам назначения.", + "CANCEL": "Отменить", + "CONFIRM_DELETE": "Удалить", + "DELETE_SUCCESS": "Политика назначения успешно удалена", + "DELETE_ERROR": "Не удалось удалить политику назначения" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Войти заново", "SUBTITLE": "Ваше подключение к Facebook истекло. Пожалуйста, переподключитесь к Facebook для продолжения работы", @@ -840,6 +902,20 @@ "CONFIRM": "Создать новый шаблон", "CANCEL": "Вернуться" }, + "UTILITY_ANALYZER": { + "ACTION": "Проверить соответствие категории Utility", + "HELPER_NOTE": "Проверьте сообщение перед отправкой, чтобы повысить вероятность категории Utility. Система создаёт отдельный CSAT-шаблон с кнопками для отчётности и отправляет его на одобрение как Utility; в зависимости от содержания Meta всё равно может переклассифицировать его в Marketing.", + "RESULT_LABEL": "Прогноз категории Meta", + "GUIDANCE_NOTE": "Это лишь подсказка и не гарантирует одобрение Meta.", + "SUGGESTION_LABEL": "Предлагаемая формулировка для категории Utility", + "APPLY": "Использовать этот вариант", + "ERROR_MESSAGE": "Не удалось проанализировать сообщение. Пожалуйста, попробуйте ещё раз.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Вероятно Utility", + "LIKELY_MARKETING": "Вероятно Marketing", + "UNCLEAR": "Нужны уточнения" + } + }, "SURVEY_RULE": { "LABEL": "Условие опроса", "DESCRIPTION_PREFIX": "Отправить опрос, если диалог", @@ -855,20 +931,6 @@ "API": { "SUCCESS_MESSAGE": "Настройки CSAT успешно обновлены", "ERROR_MESSAGE": "Не удалось обновить CSAT настройки. Повторите попытку позже." - }, - "UTILITY_ANALYZER": { - "ACTION": "Проверить соответствие категории Utility", - "HELPER_NOTE": "Проверьте сообщение перед отправкой, чтобы повысить вероятность категории Utility. Система создаёт отдельный CSAT-шаблон с кнопками для отчётности и отправляет его на одобрение как Utility; в зависимости от содержания Meta всё равно может переклассифицировать его в Marketing.", - "RESULT_LABEL": "Прогноз категории Meta", - "GUIDANCE_NOTE": "Это лишь подсказка и не гарантирует одобрение Meta.", - "SUGGESTION_LABEL": "Предлагаемая формулировка для категории Utility", - "APPLY": "Использовать этот вариант", - "ERROR_MESSAGE": "Не удалось проанализировать сообщение. Пожалуйста, попробуйте ещё раз.", - "CLASSIFICATION": { - "LIKELY_UTILITY": "Вероятно Utility", - "LIKELY_MARKETING": "Вероятно Marketing", - "UNCLEAR": "Нужны уточнения" - } } }, "BUSINESS_HOURS": { @@ -881,13 +943,13 @@ "UNAVAILABLE_MESSAGE_LABEL": "Сообщение для посетителей о недоступности", "TOGGLE_HELP": "Включение доступности для бизнеса покажет часы работы в виджете онлайн общения, даже если все менеджеры не в сети. Вне доступных часов работы - посетители могут быть предупреждены сообщением и формой предварительного чата.", "DAY": { + "DAY": "День", + "AVAILABILITY": "Доступность", + "HOURS": "Часов", "ENABLE": "Я работаю в этот день", "UNAVAILABLE": "Я не работаю в этот день", - "HOURS": "Часов", "VALIDATION_ERROR": "Время начала должно предшествовать времени окончания.", - "CHOOSE": "Выбрать", - "DAY": "День", - "AVAILABILITY": "Доступность" + "CHOOSE": "Выбрать" }, "ALL_DAY": "Весь день" }, @@ -992,6 +1054,7 @@ "IN_A_DAY": "Через день" }, "WIDGET_COLOR_LABEL": "Цвет виджета", + "WIDGET_BUBBLE": "Пузырёк", "WIDGET_BUBBLE_POSITION_LABEL": "Положение:", "WIDGET_BUBBLE_TYPE_LABEL": "Тип:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { @@ -1017,8 +1080,7 @@ "WIDGET_BUBBLE_TYPE": { "STANDARD": "Стандартный", "EXPANDED_BUBBLE": "Расширенная рамка сообщений" - }, - "WIDGET_BUBBLE": "Пузырёк" + } }, "WIDGET_SCREEN": { "DEFAULT": "По умолчанию", @@ -1072,58 +1134,6 @@ "INSTAGRAM": "Instagram", "TIKTOK": "TikTok", "VOICE": "Голосовая связь" - }, - "COUNT": "Найдено источников: {n}", - "SEARCH_PLACEHOLDER": "Поиск источников...", - "NO_RESULTS": "Не найдено источников, соответствующих вашему запросу", - "CHANNEL_PREFERENCES": "Настройки канала", - "WIDGET_FEATURES": "Функции виджета", - "ASSIGNMENT": { - "TITLE": "Назначение диалогов", - "DESCRIPTION": "Автоматически назначайте входящие диалоги доступным агентам на основе правил назначения", - "ENABLE_AUTO_ASSIGNMENT": "Включить автоматическое назначение диалогов", - "DEFAULT_RULES_TITLE": "Стандартные правила назначения", - "DEFAULT_RULES_DESCRIPTION": "Использовать стандартное поведение назначения для всех диалогов", - "DEFAULT_RULE_1": "Сначала самые ранние диалоги", - "DEFAULT_RULE_2": "Распределение по кругу", - "CUSTOMIZE_WITH_POLICY": "Настроить через политику назначения", - "USING_POLICY": "Для этого источника используется пользовательская политика назначения", - "CUSTOMIZE_POLICY": "Настроить через политику назначения", - "DELETE_POLICY": "Удалить политику", - "POLICY_LABEL": "Политика назначения", - "ASSIGNMENT_ORDER_LABEL": "Порядок назначения", - "ASSIGNMENT_METHOD_LABEL": "Метод назначения", - "POLICY_STATUS": { - "ACTIVE": "Активно", - "INACTIVE": "Неактивен" - }, - "PRIORITY": { - "EARLIEST_CREATED": "Сначала старые", - "LONGEST_WAITING": "Сначала ожидающие дольше всех" - }, - "METHOD": { - "ROUND_ROBIN": "По кругу", - "BALANCED": "Сбалансированное назначение" - }, - "UPGRADE_PROMPT": "Пользовательские политики назначения доступны в плане Business", - "UPGRADE_TO_BUSINESS": "Перейти на Business", - "DEFAULT_POLICY_LINKED": "Стандартная политика привязана", - "DEFAULT_POLICY_DESCRIPTION": "Привяжите пользовательскую политику назначения, чтобы настроить, как диалоги назначаются агентам в этом источнике.", - "LINK_EXISTING_POLICY": "Привязать существующую политику", - "CREATE_NEW_POLICY": "Создать новую политику", - "NO_POLICIES": "Не найдены связанные политики", - "VIEW_ALL_POLICIES": "Посмотреть все политики", - "CURRENT_BEHAVIOR": "Сейчас используется стандартное поведение назначения:", - "LINK_SUCCESS": "Политика назначения успешно привязана", - "LINK_ERROR": "Не удалось привязать политику назначения" - }, - "ASSIGNMENT_POLICY": { - "DELETE_CONFIRM_TITLE": "Удалить политику назначения?", - "DELETE_CONFIRM_MESSAGE": "Вы уверены, что хотите удалить эту политику назначения из этого источника? После этого источник вернётся к стандартным правилам назначения.", - "CANCEL": "Отменить", - "CONFIRM_DELETE": "Удалить", - "DELETE_SUCCESS": "Политика назначения успешно удалена", - "DELETE_ERROR": "Не удалось удалить политику назначения" } } } diff --git a/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json index f4571b52b..efc0c69a3 100644 --- a/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/sk/chatlist.json b/app/javascript/dashboard/i18n/locale/sk/chatlist.json index 0a5887279..d57ee9be7 100644 --- a/app/javascript/dashboard/i18n/locale/sk/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/sk/chatlist.json @@ -69,7 +69,7 @@ "TEXT": "Priority: Highest first" }, "priority_asc": { - "TEXT": "" + "TEXT": "Priorita: od najnižšej" }, "waiting_since_asc": { "TEXT": "Pending Response: Longest first" diff --git a/app/javascript/dashboard/i18n/locale/sk/contact.json b/app/javascript/dashboard/i18n/locale/sk/contact.json index fa3d6a923..a22fa9fde 100644 --- a/app/javascript/dashboard/i18n/locale/sk/contact.json +++ b/app/javascript/dashboard/i18n/locale/sk/contact.json @@ -164,7 +164,7 @@ "LABEL": "Pre" }, "INBOX": { - "LABEL": "", + "LABEL": "Cez Inbox", "PLACEHOLDER": "Vyberte zdrojovú schránku", "ERROR": "Vybrať schránku" }, diff --git a/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json index 0a6ddfc47..8fb7b0fef 100644 --- a/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Nastavenia", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenti", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json index 3ddc84fd2..4c44aa49b 100644 --- a/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json index 7d37279c8..4888357dd 100644 --- a/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/sr/agentMgmt.json b/app/javascript/dashboard/i18n/locale/sr/agentMgmt.json index c5d6689f3..601df8d35 100644 --- a/app/javascript/dashboard/i18n/locale/sr/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sr/agentMgmt.json @@ -80,7 +80,7 @@ "AGENT_AVAILABILITY": { "LABEL": "Dostupnost", "PLACEHOLDER": "Подведем итог", - "ERROR": "" + "ERROR": "Dostupnost je obavezna" }, "SUBMIT": "Uredi agenta" }, diff --git a/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json index 7bf007094..325326aba 100644 --- a/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Uživo" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Podešavanja", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenti", "INBOX_AGENTS_SUB_TEXT": "Dodajte ili uklonite agente iz ovog prijemnog sandučeta", diff --git a/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json index 59f2dfc94..803bdd61d 100644 --- a/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json @@ -239,7 +239,7 @@ "WHATSAPP_CLOUD": "WhatsApp Cloud", "WHATSAPP_CLOUD_DESC": "Quick setup through Meta", "TWILIO_DESC": "Connect via Twilio credentials", - "360_DIALOG": "360Dialog" + "360_DIALOG": "360dialog" }, "SELECT_PROVIDER": { "TITLE": "Select your API provider", @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Inställningar", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agenter", "INBOX_AGENTS_SUB_TEXT": "Lägg till eller ta bort agenter från denna inkorg", diff --git a/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json index 37028e8f5..16635e46d 100644 --- a/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "அமைப்புகள்", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "ஏஜென்ட்கள்", "INBOX_AGENTS_SUB_TEXT": "இந்த இன்பாக்ஸிலிருந்து ஏஜென்ட்களைச் சேர்க்கவும் அல்லது அகற்றவும்", diff --git a/app/javascript/dashboard/i18n/locale/th/automation.json b/app/javascript/dashboard/i18n/locale/th/automation.json index c6a04924e..e060f7634 100644 --- a/app/javascript/dashboard/i18n/locale/th/automation.json +++ b/app/javascript/dashboard/i18n/locale/th/automation.json @@ -90,7 +90,7 @@ "RESET_MESSAGE": "การเปลี่ยนประเภทเหตุการณ์ จะรีเช็ทเงื่อนไขและเหตุการณ์ที่คุณเพิ่มไว้ด้านล่าง" }, "CONDITION": { - "DELETE_MESSAGE": "คุณต้องมีอย่างน้อย 1 เงื่อนไขเพื่อบันทึก", + "DELETE_MESSAGE": "คุณต้องมีอย่างน้อยหนึ่งเงื่อนไขเพื่อบันทึก", "CONTACT_CUSTOM_ATTR_LABEL": "Contact Custom Attributes", "CONVERSATION_CUSTOM_ATTR_LABEL": "Conversation Custom Attributes" }, diff --git a/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json index cf0f3241f..b0ab9f828 100644 --- a/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "ขณะนี้" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "ตั้งค่า", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "พนักงาน", "INBOX_AGENTS_SUB_TEXT": "เพิ่มหรือลบพนักงานจากกล่องสนทนานี้", diff --git a/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json index 1cfc95ef0..608e5c804 100644 --- a/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/tr/helpCenter.json b/app/javascript/dashboard/i18n/locale/tr/helpCenter.json index f4b7c266a..825becac4 100644 --- a/app/javascript/dashboard/i18n/locale/tr/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/tr/helpCenter.json @@ -47,7 +47,7 @@ "SUCCESS": "Resim başarıyla yüklendi", "ERROR": "Resim yüklenirken hata oluştu", "UN_AUTHORIZED_ERROR": "You are not authorized to upload images", - "ERROR_FILE_SIZE": "Resim boyutu %{size}MB'dan küçük olmalıdır", + "ERROR_FILE_SIZE": "Resim boyutu {size}MB'dan küçük olmalıdır", "ERROR_FILE_FORMAT": "Resim formatı jpg, jpeg veya png olmalıdır", "ERROR_FILE_DIMENSIONS": "Resim boyutları 2000 x 2000'den küçük olmalıdır" } @@ -724,7 +724,7 @@ "IMAGE_UPLOAD_SUCCESS": "Resim başarıyla eklendi. Logoyu kaydetmek için lütfen 'Değişiklikleri Kaydet' butonuna tıklayın", "IMAGE_DELETE_SUCCESS": "Logo başarıyla silindi", "IMAGE_DELETE_ERROR": "Unable to delete logo", - "IMAGE_UPLOAD_SIZE_ERROR": "Resim boyutu %{size}MB'dan küçük olmalıdır" + "IMAGE_UPLOAD_SIZE_ERROR": "Resim boyutu {size}MB'dan küçük olmalıdır" }, "NAME": { "LABEL": "İsim", diff --git a/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json index de9374bcb..66f47c07e 100644 --- a/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Canlı" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Ayarlar", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "İzin Verilen Alan Adları", "SUBTITLE": "Virgülle ayrılmış joker karakterli veya normal alan adları ekleyin (hepsine izin vermek için boş bırakın), örneğin *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Virgülle ayrılmış alan adlarını girin (ör: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Kullanıcılar", "INBOX_AGENTS_SUB_TEXT": "Bu gelen kutusuna aracı ekleyin veya aracıları kaldırın", diff --git a/app/javascript/dashboard/i18n/locale/tr/settings.json b/app/javascript/dashboard/i18n/locale/tr/settings.json index 7001a7bac..6c3751fb4 100644 --- a/app/javascript/dashboard/i18n/locale/tr/settings.json +++ b/app/javascript/dashboard/i18n/locale/tr/settings.json @@ -68,7 +68,7 @@ "API_SUCCESS": "İmza başarıyla kaydedildi", "IMAGE_UPLOAD_ERROR": "Resim yüklenemedi! Tekrar deneyin", "IMAGE_UPLOAD_SUCCESS": "Resim başarıyla eklendi. İmzayı kaydetmek için lütfen kaydet'e tıklayın", - "IMAGE_UPLOAD_SIZE_ERROR": "Resim boyutu %{size}MB'dan küçük olmalıdır" + "IMAGE_UPLOAD_SIZE_ERROR": "Resim boyutu {size}MB'dan küçük olmalıdır" }, "MESSAGE_SIGNATURE": { "LABEL": "İmzanız", diff --git a/app/javascript/dashboard/i18n/locale/uk/conversation.json b/app/javascript/dashboard/i18n/locale/uk/conversation.json index abe9a51ef..eba59f944 100644 --- a/app/javascript/dashboard/i18n/locale/uk/conversation.json +++ b/app/javascript/dashboard/i18n/locale/uk/conversation.json @@ -179,7 +179,7 @@ "FAILED": "Couldn't remove label. Please try again." }, "TEAM_ASSIGNMENT": { - "SUCCESFUL": "Призначено команду \"#{team}\" до ID розмови {conversationId}", + "SUCCESFUL": "Призначено команду \"{team}\" до ID розмови {conversationId}", "FAILED": "Не вдалося призначити команду. Будь ласка, спробуйте ще раз." } } diff --git a/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json index e69df0f03..7c03135d8 100644 --- a/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Онлайн" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Налаштування", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Агенти", "INBOX_AGENTS_SUB_TEXT": "Додати або вилучити агентів з скриньки Вхідні", diff --git a/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json index db4ab4569..8a4655dd8 100644 --- a/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "ایجنٹ", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json index a90b87d0a..74d3e2fb6 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Live" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Settings", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Agents", "INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox", diff --git a/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json index 2763f79ed..25bcc7e4b 100644 --- a/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "Trực tuyến" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "Cài đặt", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "Nhà cung cấp", "INBOX_AGENTS_SUB_TEXT": "Thêm hoặc xóa tác nhân khỏi hộp thư đến này", diff --git a/app/javascript/dashboard/i18n/locale/zh/agentMgmt.json b/app/javascript/dashboard/i18n/locale/zh/agentMgmt.json index 2b2358c9a..bc1e290ee 100644 --- a/app/javascript/dashboard/i18n/locale/zh/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh/agentMgmt.json @@ -1,96 +1,127 @@ { "AGENT_MGMT": { - "HEADER": "Agents", - "HEADER_BTN_TXT": "Add Agent", - "LOADING": "Fetching Agent List", - "SIDEBAR_TXT": "

Agents

An Agent is a member of your Customer Support team.

Agents will be able to view and reply to messages from your users. The list shows all agents currently in your account.

Click on Add Agent to add a new agent. Agent you add will receive an email with a confirmation link to activate their account, after which they can access Chatwoot and respond to messages.

Access to Chatwoot's features are based on following roles.

Agent - Agents with this role can only access inboxes, reports and conversations. They can assign conversations to other agents or themselves and resolve conversations.

Administrator - Administrator will have access to all Chatwoot features enabled for your account, including settings, along with all of a normal agents' privileges.

", + "HEADER": "客服", + "HEADER_BTN_TXT": "添加客服", + "LOADING": "正在获取客服列表", + "DESCRIPTION": "客服代表是您的客户支持团队的成员,他们可以查看和回复用户信息。 下面的列表显示您帐户中的所有客服代表。", + "LEARN_MORE": "角色说明", "AGENT_TYPES": { - "ADMINISTRATOR": "Administrator", - "AGENT": "Agent" + "ADMINISTRATOR": "管理员", + "AGENT": "客服" }, + "COUNT": "{n} agent | {n} agents", "LIST": { - "404": "There are no agents associated to this account", - "TITLE": "Manage agents in your team", - "DESC": "You can add/remove agents to/in your team.", - "NAME": "Name", - "EMAIL": "EMAIL", - "STATUS": "Status", - "ACTIONS": "Actions", - "VERIFIED": "Verified", - "VERIFICATION_PENDING": "Verification Pending" + "404": "此账号没有关联客服", + "TITLE": "管理您团队中的客服", + "DESC": "您可以添加/移除您团队中的客服。", + "NAME": "姓名:", + "EMAIL": "电子邮件", + "STATUS": "状态", + "ACTIONS": "操作", + "VERIFIED": "已认证", + "VERIFICATION_PENDING": "待验证", + "AVAILABLE_CUSTOM_ROLE": "可自定义角色权限" }, "ADD": { - "TITLE": "Add agent to your team", - "DESC": "You can add people who will be able to handle support for your inboxes.", - "CANCEL_BUTTON_TEXT": "Cancel", + "TITLE": "添加客服至您的团队", + "DESC": "您可以添加能够处理支持您的收件箱的人。", + "CANCEL_BUTTON_TEXT": "取消", "FORM": { "NAME": { - "LABEL": "Agent Name", - "PLACEHOLDER": "Please enter a name of the agent" + "LABEL": "客服名称", + "PLACEHOLDER": "请输入客服名称" }, "AGENT_TYPE": { - "LABEL": "Agent Type", - "PLACEHOLDER": "Please select a type", - "ERROR": "Agent type is required" + "LABEL": "角色", + "PLACEHOLDER": "请选择一个角色", + "ERROR": "角色类型必填" }, "EMAIL": { - "LABEL": "Email Address", - "PLACEHOLDER": "Please enter an email address of the agent" + "LABEL": "电子邮件地址", + "PLACEHOLDER": "请输入客服的邮箱地址" }, - "SUBMIT": "Add Agent" + "SUBMIT": "添加客服" }, "API": { - "SUCCESS_MESSAGE": "Agent added successfully", - "EXIST_MESSAGE": "Agent email already in use, Please try another email address", - "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" + "SUCCESS_MESSAGE": "添加客服成功", + "EXIST_MESSAGE": "该邮箱已被注册,请输入新的电子邮箱", + "ERROR_MESSAGE": "无法连接服务器,请稍后再试" } }, "DELETE": { - "BUTTON_TEXT": "Delete", + "BUTTON_TEXT": "删除", "API": { - "SUCCESS_MESSAGE": "Agent deleted successfully", - "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" + "SUCCESS_MESSAGE": "删除客服成功", + "ERROR_MESSAGE": "无法连接服务器,请稍后再试" }, "CONFIRM": { - "TITLE": "Confirm Deletion", - "MESSAGE": "Are you sure to delete ", - "YES": "Yes, Delete ", - "NO": "No, Keep " + "TITLE": "确认删除", + "MESSAGE": "您确定要删除吗? ", + "YES": "是的,删除 ", + "NO": "不,保留 " } }, "EDIT": { - "TITLE": "Edit agent", + "TITLE": "编辑客服信息", "FORM": { "NAME": { - "LABEL": "Agent Name", - "PLACEHOLDER": "Please enter a name of the agent" + "LABEL": "客服名称", + "PLACEHOLDER": "请输入客服名称" }, "AGENT_TYPE": { - "LABEL": "Agent Type", - "PLACEHOLDER": "Please select a type", - "ERROR": "Agent type is required" + "LABEL": "角色", + "PLACEHOLDER": "请选择一个角色", + "ERROR": "角色必填" }, "EMAIL": { - "LABEL": "Email Address", - "PLACEHOLDER": "Please enter an email address of the agent" + "LABEL": "电子邮件地址", + "PLACEHOLDER": "请输入客服的邮箱地址" }, - "SUBMIT": "Edit Agent" + "AGENT_AVAILABILITY": { + "LABEL": "有效的", + "PLACEHOLDER": "请选择一个可用状态", + "ERROR": "需要提供可用性信息" + }, + "SUBMIT": "编辑客服" }, - "BUTTON_TEXT": "Edit", - "CANCEL_BUTTON_TEXT": "Cancel", + "BUTTON_TEXT": "编辑", + "CANCEL_BUTTON_TEXT": "取消", "API": { - "SUCCESS_MESSAGE": "Agent updated successfully", - "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" + "SUCCESS_MESSAGE": "更新客服信息成功", + "ERROR_MESSAGE": "无法连接服务器,请稍后再试" }, "PASSWORD_RESET": { - "ADMIN_RESET_BUTTON": "Reset Password", - "ADMIN_SUCCESS_MESSAGE": "An email with reset password instructions has been sent to the agent", - "SUCCESS_MESSAGE": "Agent password reset successfully", - "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" + "ADMIN_RESET_BUTTON": "重置密码", + "ADMIN_SUCCESS_MESSAGE": "一封包含重置密码说明的电子邮件已发送给代理", + "SUCCESS_MESSAGE": "代理的密码重置成功", + "ERROR_MESSAGE": "无法连接Woot服务器,请稍后再试" } }, + "SEARCH_PLACEHOLDER": "搜索客服代表...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { - "NO_RESULTS": "No agents found." + "NO_RESULTS": "未找到任何结果。" + }, + "MULTI_SELECTOR": { + "PLACEHOLDER": "没有", + "TITLE": { + "AGENT": "选择客服代表", + "TEAM": "选择团队" + }, + "LIST": { + "NONE": "无" + }, + "SEARCH": { + "NO_RESULTS": { + "AGENT": "未找到客服代表", + "TEAM": "没有找到团队" + }, + "PLACEHOLDER": { + "AGENT": "搜索客服代表", + "TEAM": "查找团队", + "INPUT": "查找客服代表" + } + } } } } diff --git a/app/javascript/dashboard/i18n/locale/zh/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/zh/cannedMgmt.json index dc9341a17..a9938b6f8 100644 --- a/app/javascript/dashboard/i18n/locale/zh/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh/cannedMgmt.json @@ -1,40 +1,44 @@ { "CANNED_MGMT": { "HEADER": "预设回复", - "HEADER_BTN_TXT": "添加预设回复", - "LOADING": "获取预设回复", - "SEARCH_404": "没有任何项目符合此查询", - "SIDEBAR_TXT": "

预设回复

预设的回复已保存的回复模板,可以用来快速发送回复到对话。

若要创建预设反应,只需点击 添加预设回应。 您也可以通过点击编辑或删除按钮来编辑或删除现有的预定响应

短代码的帮助下使用预定的响应方式。 代理人在聊天时可以通过输入 '/' 然后是短代码访问预设响应

", + "LEARN_MORE": "了解更多关于预设回复的内容", + "DESCRIPTION": "预设回复是预先写好的回复模板,可以帮助您在对话中快速响应。客服人员可以在对话中输入“/”字符,然后输入简码来插入预设回复。 ", + "COUNT": "{n} canned response | {n} canned responses", + "HEADER_BTN_TXT": "新增预设回复", + "LOADING": "正在检索预定义回复...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", + "SEARCH_404": "没有任何项目符合此查询.", "LIST": { "404": "此帐户中没有预设的回复。", "TITLE": "管理预设回复", - "DESC": "预设的回复是预定义的回复模板,可以用来快速发送对工单的答复。", - "TABLE_HEADER": [ - "短码", - "内容", - "操作" - ] + "DESC": "预设回复是预先定义的回复模板,可用于快速回复对话。", + "TABLE_HEADER": { + "SHORT_CODE": "短代码", + "CONTENT": "内容", + "ACTIONS": "操作" + } }, "ADD": { - "TITLE": "添加预设回复", - "DESC": "预设的回复是保存的回复模板,可以用来快速发送回复到对话中。", + "TITLE": "新增预设回复", + "DESC": "预设回复是预先定义的回复模板,可用于快速回复对话。", "CANCEL_BUTTON_TEXT": "取消操作", "FORM": { "SHORT_CODE": { - "LABEL": "短码", - "PLACEHOLDER": "请输入短码", - "ERROR": "必须输入短代码" + "LABEL": "短代码", + "PLACEHOLDER": "请输入短代码。", + "ERROR": "短代码是必填项。" }, "CONTENT": { - "LABEL": "内容", - "PLACEHOLDER": "请输入内容。", - "ERROR": "内容是必须的" + "LABEL": "消息", + "PLACEHOLDER": "请编写您希望保存为模板以便以后使用的消息。", + "ERROR": "请填写消息。" }, "SUBMIT": "提交" }, "API": { - "SUCCESS_MESSAGE": "已成功添加预设响应", - "ERROR_MESSAGE": "无法连接服务器,请稍后再试" + "SUCCESS_MESSAGE": "预设回复已成功添加。", + "ERROR_MESSAGE": "无法与 Woot 服务器建立连接。请重试。" } }, "EDIT": { @@ -42,33 +46,33 @@ "CANCEL_BUTTON_TEXT": "取消操作", "FORM": { "SHORT_CODE": { - "LABEL": "短码", - "PLACEHOLDER": "请输入短码", - "ERROR": "必须输入短代码" + "LABEL": "短代码", + "PLACEHOLDER": "请填写短代码。", + "ERROR": "短代码是必填项" }, "CONTENT": { - "LABEL": "内容", - "PLACEHOLDER": "请输入内容。", - "ERROR": "内容是必填项" + "LABEL": "消息", + "PLACEHOLDER": "请编写您希望保存为模板以便以后使用的消息。", + "ERROR": "请填写消息。" }, "SUBMIT": "提交" }, "BUTTON_TEXT": "编辑", "API": { - "SUCCESS_MESSAGE": "预设响应已成功更新", - "ERROR_MESSAGE": "无法连接服务器,请稍后再试" + "SUCCESS_MESSAGE": "预设回复已成功更新。", + "ERROR_MESSAGE": "无法与 Woot 服务器建立连接。请重试。" } }, "DELETE": { "BUTTON_TEXT": "删除", "API": { - "SUCCESS_MESSAGE": "预设响应已成功删除", - "ERROR_MESSAGE": "无法连接服务器,请稍后再试" + "SUCCESS_MESSAGE": "预设回复已成功删除。", + "ERROR_MESSAGE": "连接 Woot 服务器失败,请再试一次。" }, "CONFIRM": { "TITLE": "确认删除", "MESSAGE": "您确定要删除吗? ", - "YES": "是,删除 ", + "YES": "是的,删除 ", "NO": "不,保留 " } } diff --git a/app/javascript/dashboard/i18n/locale/zh/chatlist.json b/app/javascript/dashboard/i18n/locale/zh/chatlist.json index b7d574d46..947d20d58 100644 --- a/app/javascript/dashboard/i18n/locale/zh/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/zh/chatlist.json @@ -6,29 +6,81 @@ "LIST": { "404": "没有有效的对话在这个群组里面" }, + "FAILED_TO_SEND": "发送失败", "TAB_HEADING": "会话", + "MENTION_HEADING": "提及", + "UNATTENDED_HEADING": "未处理", "SEARCH": { "INPUT": "搜索人、聊天室、保存回复" }, + "FILTER_ALL": "所有的", "ASSIGNEE_TYPE_TABS": { "me": "我的", "unassigned": "未分配的", "all": "所有的" }, - "CHAT_STATUS_ITEMS": [ - { - "TEXT": "正在进行的\n", - "VALUE": "open" + "CHAT_STATUS_FILTER_ITEMS": { + "open": { + "TEXT": "打开" }, - { - "TEXT": "已解决", - "VALUE": "resolved" + "resolved": { + "TEXT": "已解决" }, - { - "TEXT": "机器人", - "VALUE": "snoozed" + "pending": { + "TEXT": "等待中" + }, + "snoozed": { + "TEXT": "已关闭" + }, + "all": { + "TEXT": "所有的" } - ], + }, + "VIEW_FILTER": "查看", + "SORT_TOOLTIP_LABEL": "对话排序", + "CHAT_SORT": { + "STATUS": "状态", + "ORDER_BY": "按顺序排列" + }, + "CHAT_TIME_STAMP": { + "CREATED": { + "LATEST": "创建时间", + "OLDEST": "创建于:" + }, + "LAST_ACTIVITY": { + "NOT_ACTIVE": "上次操作:", + "ACTIVE": "上次操作" + } + }, + "SORT_ORDER_ITEMS": { + "last_activity_at_asc": { + "TEXT": "最后一次活动:最早在前" + }, + "last_activity_at_desc": { + "TEXT": "最后一次活动:最新在前" + }, + "created_at_desc": { + "TEXT": "创建于:最新在前" + }, + "created_at_asc": { + "TEXT": "创建于:最早在前" + }, + "priority_desc": { + "TEXT": "优先级:最高在前" + }, + "priority_asc": { + "TEXT": "优先级:最低在前" + }, + "waiting_since_asc": { + "TEXT": "等待响应:最长在前" + }, + "waiting_since_desc": { + "TEXT": "等待响应:最短在前" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" + } + }, "ATTACHMENTS": { "image": { "CONTENT": "图片消息" @@ -45,12 +97,49 @@ "location": { "CONTENT": "位置" }, + "ig_reel": { + "CONTENT": "Instagram 短视频" + }, "fallback": { "CONTENT": "分享了一个网址" + }, + "contact": { + "CONTENT": "共享联系人" + }, + "embed": { + "CONTENT": "嵌入内容" } }, - "RECEIVED_VIA_EMAIL": "Received via email", - "VIEW_TWEET_IN_TWITTER": "View tweet in Twitter", - "REPLY_TO_TWEET": "Reply to this tweet" + "CHAT_SORT_BY_FILTER": { + "TITLE": "对话排序", + "DROPDOWN_TITLE": "排序方式", + "ITEMS": { + "LATEST": { + "NAME": "最后活动于", + "LABEL": "上次操作" + }, + "CREATED_AT": { + "NAME": "创建于", + "LABEL": "创建于" + }, + "LAST_USER_MESSAGE_AT": { + "NAME": "用户最后一条消息于", + "LABEL": "最后的消息" + } + } + }, + "RECEIVED_VIA_EMAIL": "通过电子邮件接收", + "VIEW_TWEET_IN_TWITTER": "在 Twitter 中查看 tweet", + "REPLY_TO_TWEET": "回复此推文", + "LINK_TO_STORY": "查看 Instagram 故事", + "SENT": "发送成功", + "READ": "阅读成功", + "DELIVERED": "已成功发送", + "NO_MESSAGES": "没有信息", + "NO_CONTENT": "没有可用的内容", + "HIDE_QUOTED_TEXT": "隐藏引用文字", + "SHOW_QUOTED_TEXT": "显示引用文字", + "MESSAGE_READ": "已读", + "SENDING": "发送中" } } diff --git a/app/javascript/dashboard/i18n/locale/zh/contact.json b/app/javascript/dashboard/i18n/locale/zh/contact.json index f1115bfba..35120983b 100644 --- a/app/javascript/dashboard/i18n/locale/zh/contact.json +++ b/app/javascript/dashboard/i18n/locale/zh/contact.json @@ -1,96 +1,659 @@ { "CONTACT_PANEL": { - "NOT_AVAILABLE": "Not Available", + "NOT_AVAILABLE": "不可用", "EMAIL_ADDRESS": "电子邮件地址", "PHONE_NUMBER": "电话号码", - "COMPANY": "Company", + "IDENTIFIER": "标识符", + "COPY_SUCCESSFUL": "已成功复制到剪贴板", + "COMPANY": "公司", "LOCATION": "位置", + "BROWSER_LANGUAGE": "浏览器语言", "CONVERSATION_TITLE": "对话详情", + "VIEW_PROFILE": "查看资料", "BROWSER": "浏览器", "OS": "操作系统", "INITIATED_FROM": "启动自:", "INITIATED_AT": "发起于", + "IP_ADDRESS": "IP 地址", + "CREATED_AT_LABEL": "创建时间", + "NEW_MESSAGE": "新消息", + "CALL": "呼叫", + "CALL_INITIATED": "正在接通…", + "CALL_FAILED": "Unable to start the call. Please try again.", + "VOICE_INBOX_PICKER": { + "TITLE": "选择一个语音收件箱" + }, "CONVERSATIONS": { "NO_RECORDS_FOUND": "此联系人没有关联到以前的会话。", "TITLE": "上一次对话" }, - "CUSTOM_ATTRIBUTES": { - "TITLE": "Custom Attributes" - }, "LABELS": { - "TITLE": "对话标记", - "MODAL": { - "TITLE": "标记为", - "ACTIVE_LABELS": "添加到对话的标签", - "INACTIVE_LABELS": "账户中可用的标签", - "REMOVE": "点击 X 图标删除标签", - "ADD": "点击 + 图标添加标签", - "UPDATE_BUTTON": "更新标签", - "UPDATE_ERROR": "无法更新标签,请重试。" + "CONTACT": { + "TITLE": "联系人标签", + "ERROR": "无法更新标签" }, - "NO_LABELS_TO_ADD": "帐户中没有更多标签。", - "NO_AVAILABLE_LABELS": "没有标签添加到此对话。" + "CONVERSATION": { + "TITLE": "对话标记", + "ADD_BUTTON": "添加标签" + }, + "LABEL_SELECT": { + "TITLE": "添加标签", + "PLACEHOLDER": "搜索标签", + "NO_RESULT": "未找到标签", + "CREATE_LABEL": "创建新标签" + } }, - "MUTE_CONTACT": "Mute Conversation", - "MUTED_SUCCESS": "This conversation is muted for 6 hours", - "SEND_TRANSCRIPT": "Send Transcript", - "EDIT_LABEL": "编辑" + "MERGE_CONTACT": "合并联系人", + "CONTACT_ACTIONS": "联系人操作", + "MUTE_CONTACT": "屏蔽联系人", + "UNMUTE_CONTACT": "解除屏蔽联系人", + "MUTED_SUCCESS": "已成功屏蔽此联系人。您将不会收到任何未来对话的通知。", + "UNMUTED_SUCCESS": "此联系人已成功解除屏蔽。", + "SEND_TRANSCRIPT": "发送客服记录", + "EDIT_LABEL": "编辑", + "SIDEBAR_SECTIONS": { + "CUSTOM_ATTRIBUTES": "自定义属性", + "CONTACT_LABELS": "联系人标签", + "PREVIOUS_CONVERSATIONS": "上一次对话", + "NO_RECORDS_FOUND": "未找到属性" + } }, "EDIT_CONTACT": { - "BUTTON_LABEL": "Edit Contact", - "TITLE": "Edit contact", - "DESC": "Edit contact details", + "BUTTON_LABEL": "编辑联系人", + "TITLE": "编辑联系人", + "DESC": "编辑联系人详情" + }, + "DELETE_CONTACT": { + "BUTTON_LABEL": "删除联系人", + "TITLE": "删除联系人", + "DESC": "删除联系人详情", + "CONFIRM": { + "TITLE": "确认删除", + "MESSAGE": "您确定要删除吗? ", + "YES": "是,删除", + "NO": "不,保留" + }, + "API": { + "SUCCESS_MESSAGE": "联系人删除成功", + "ERROR_MESSAGE": "无法删除联系人,请稍后再试。" + } + }, + "CONTACT_FORM": { "FORM": { "SUBMIT": "提交", - "CANCEL": "取消操作", + "CANCEL": "取消", "AVATAR": { - "LABEL": "Contact Avatar" + "LABEL": "联系人头像" }, "NAME": { - "PLACEHOLDER": "Enter the full name of the contact", - "LABEL": "Full Name" + "PLACEHOLDER": "输入联系人的名字", + "LABEL": "名字" }, "BIO": { - "PLACEHOLDER": "Enter the bio of the contact", - "LABEL": "Bio" + "PLACEHOLDER": "输入联系人的简历", + "LABEL": "简历" }, "EMAIL_ADDRESS": { - "PLACEHOLDER": "Enter the email address of the contact", - "LABEL": "电子邮件地址" + "PLACEHOLDER": "输入联系人的电子邮件地址", + "LABEL": "电子邮件地址", + "DUPLICATE": "此电子邮件地址正在用于另一个联系人。", + "ERROR": "请输入一个有效的电子邮件." }, "PHONE_NUMBER": { - "PLACEHOLDER": "Enter the phone number of the contact", - "LABEL": "Phone Number" + "PLACEHOLDER": "输入联系人的电话号码", + "LABEL": "电话号码", + "HELP": "电话号码应为E.164格式,例如+14155555 [+][国家代码][地区代码][本地电话号码]。您可以从下拉菜单中选择拨号代码。", + "ERROR": "电话号码应为空或E.164格式", + "DIAL_CODE_ERROR": "请从列表中选择拨号代码", + "DUPLICATE": "此电话号码正在用于另一个联系人。" }, "LOCATION": { - "PLACEHOLDER": "Enter the location of the contact", + "PLACEHOLDER": "输入联系人的位置", "LABEL": "位置" }, "COMPANY_NAME": { - "PLACEHOLDER": "Enter the company name", - "LABEL": "Company Name" + "PLACEHOLDER": "输入公司名称", + "LABEL": "公司名称" + }, + "COUNTRY": { + "PLACEHOLDER": "输入国家/地区名称", + "LABEL": "国家", + "SELECT_PLACEHOLDER": "选择", + "REMOVE": "删除", + "SELECT_COUNTRY": "选择国家/地区" + }, + "CITY": { + "PLACEHOLDER": "输入城市名称", + "LABEL": "城市名称" }, "SOCIAL_PROFILES": { "FACEBOOK": { - "PLACEHOLDER": "Enter the Facebook username", + "PLACEHOLDER": "输入 Facebook 用户名", "LABEL": "Facebook" }, "TWITTER": { - "PLACEHOLDER": "Enter the Twitter username", - "LABEL": "Twitter" + "PLACEHOLDER": "输入 Twitter 用户名", + "LABEL": "推特" }, "LINKEDIN": { - "PLACEHOLDER": "Enter the LinkedIn username", - "LABEL": "LinkedIn" + "PLACEHOLDER": "请输入您的领英用户名", + "LABEL": "领英" }, "GITHUB": { - "PLACEHOLDER": "Enter the Github username", + "PLACEHOLDER": "输入Github用户名", "LABEL": "Github" } } }, - "SUCCESS_MESSAGE": "Updated contact successfully", - "CONTACT_ALREADY_EXIST": "This email address is in use for another contact.", - "ERROR_MESSAGE": "There was an error updating the contact, please try again" + "DELETE_AVATAR": { + "API": { + "SUCCESS_MESSAGE": "联系人头像已成功删除", + "ERROR_MESSAGE": "暂时无法删除那个联系人的头像,请您稍后再试" + } + }, + "SUCCESS_MESSAGE": "联系人保存成功", + "ERROR_MESSAGE": "出现错误,请重试" + }, + "NEW_CONVERSATION": { + "BUTTON_LABEL": "开始会话", + "TITLE": "新的会话", + "DESC": "通过发送一条新消息来开始新的对话。", + "NO_INBOX": "找不到收件箱来发起与此联系人的新对话。", + "FORM": { + "TO": { + "LABEL": "发送至" + }, + "INBOX": { + "LABEL": "通过收件箱:", + "PLACEHOLDER": "选择来源收件箱", + "ERROR": "选择一个收件箱" + }, + "SUBJECT": { + "LABEL": "主题", + "PLACEHOLDER": "主题", + "ERROR": "主题不能为空" + }, + "MESSAGE": { + "LABEL": "消息", + "PLACEHOLDER": "在此处输入您的消息", + "ERROR": "消息不能为空" + }, + "ATTACHMENTS": { + "SELECT": "选择文件", + "HELP_TEXT": "拖放文件到此处或选择要附加的文件" + }, + "SUBMIT": "发送消息", + "CANCEL": "取消", + "SUCCESS_MESSAGE": "消息已发送!", + "GO_TO_CONVERSATION": "查看", + "ERROR_MESSAGE": "无法发送,请重试!" + } + }, + "CONTACTS_PAGE": { + "LIST": { + "TABLE_HEADER": { + "SOCIAL_PROFILES": "社交资料" + } + } + }, + "CUSTOM_ATTRIBUTES": { + "BUTTON": "添加自定义属性", + "COPY_SUCCESSFUL": "已成功复制到剪贴板", + "SHOW_MORE": "显示全部属性", + "SHOW_LESS": "显示较少属性", + "ACTIONS": { + "COPY": "复制属性", + "DELETE": "删除属性", + "EDIT": "编辑属性" + }, + "ADD": { + "TITLE": "创建自定义属性", + "DESC": "在此联系人中添加自定义信息。" + }, + "FORM": { + "CREATE": "添加属性", + "CANCEL": "取消", + "NAME": { + "LABEL": "自定义属性名称", + "PLACEHOLDER": "例如:会员 ID", + "ERROR": "无效的自定义属性名称" + }, + "VALUE": { + "LABEL": "属性值", + "PLACEHOLDER": "例如:11901 " + }, + "ADD": { + "TITLE": "新建属性 ", + "SUCCESS": "已成功添加属性", + "ERROR": "无法添加属性,请稍后再试。" + }, + "UPDATE": { + "SUCCESS": "已成功更新属性", + "ERROR": "无法更新属性,请稍后再试。" + }, + "DELETE": { + "SUCCESS": "已成功删除属性", + "ERROR": "无法删除属性,请稍后再试。" + }, + "ATTRIBUTE_SELECT": { + "TITLE": "添加属性", + "PLACEHOLDER": "搜索属性", + "NO_RESULT": "未找到属性" + }, + "ATTRIBUTE_TYPE": { + "LIST": { + "PLACEHOLDER": "选择值", + "SEARCH_INPUT_PLACEHOLDER": "搜索值", + "NO_RESULT": "未找到结果" + } + } + }, + "VALIDATIONS": { + "REQUIRED": "需要有效的值", + "INVALID_URL": "无效的 URL", + "INVALID_INPUT": "无效输入" + } + }, + "MERGE_CONTACTS": { + "TITLE": "合并联系人", + "DESCRIPTION": "合并联系人以将两个个人资料合并为一个,包括所有属性和对话。 如果发生冲突,将以主联系人的属性为优先。", + "PRIMARY": { + "TITLE": "主联系人", + "HELP_LABEL": "将被删除" + }, + "PARENT": { + "TITLE": "需要合并的联系人", + "PLACEHOLDER": "搜索联系人", + "HELP_LABEL": "将被保留" + }, + "SUMMARY": { + "TITLE": "总结", + "DELETE_WARNING": "{primaryContactName} 的联系信息将被删除。", + "ATTRIBUTE_WARNING": "{primaryContactName} 的联系信息将拷贝到 {parentContactName}。" + }, + "SEARCH": { + "ERROR_MESSAGE": "出了点问题。请稍后再试。" + }, + "FORM": { + "SUBMIT": " 合并联系人", + "CANCEL": "取消", + "CHILD_CONTACT": { + "ERROR": "选择一个需要合并的子联系人" + }, + "SUCCESS_MESSAGE": "已成功合并联系人", + "ERROR_MESSAGE": "无法合并联系人,请重试!" + }, + "DROPDOWN_ITEM": { + "ID": "(ID: {identifier})" + } + }, + "CONTACTS_LAYOUT": { + "HEADER": { + "TITLE": "联系人", + "SEARCH_TITLE": "搜索联系人", + "ACTIVE_TITLE": "活跃的联系人", + "SEARCH_PLACEHOLDER": "搜索……", + "MESSAGE_BUTTON": "消息", + "SEND_MESSAGE": "发送消息", + "BLOCK_CONTACT": "屏蔽联系人", + "UNBLOCK_CONTACT": "解除屏蔽联系人", + "BREADCRUMB": { + "CONTACTS": "联系人" + }, + "ACTIONS": { + "CONTACT_CREATION": { + "ADD_CONTACT": "添加联系人", + "EXPORT_CONTACT": "导出联系人", + "IMPORT_CONTACT": "导入联系人", + "SAVE_CONTACT": "保存联系人", + "EMAIL_ADDRESS_DUPLICATE": "此电子邮件地址正在用于另一个联系人。", + "PHONE_NUMBER_DUPLICATE": "此电话号码正在用于另一个联系人。", + "SUCCESS_MESSAGE": "联系人保存成功", + "ERROR_MESSAGE": "无法保存联系人,请稍后再试。" + }, + "BLOCK_SUCCESS_MESSAGE": "此联系人已成功屏蔽", + "BLOCK_ERROR_MESSAGE": "无法屏蔽联系人,请稍后再试。", + "UNBLOCK_SUCCESS_MESSAGE": "此联系人已成功解除屏蔽", + "UNBLOCK_ERROR_MESSAGE": "无法解除屏蔽联系人,请稍后再试。", + "IMPORT_CONTACT": { + "TITLE": "导入联系人", + "DESCRIPTION": "通过 CSV 文件导入联系人", + "DOWNLOAD_LABEL": "下载示例 CSV.", + "LABEL": "CSV 文件:", + "CHOOSE_FILE": "选择文件", + "CHANGE": "更改", + "CANCEL": "取消", + "IMPORT": "导入", + "SUCCESS_MESSAGE": "导入完成时将通过电子邮件通知您。", + "ERROR_MESSAGE": "出现错误,请重试" + }, + "EXPORT_CONTACT": { + "TITLE": "导出联系人", + "DESCRIPTION": "快速导出包含联系人详细信息的 CSV 文件", + "CONFIRM": "导出", + "SUCCESS_MESSAGE": "导出正在进行。当导出文件准备好下载时,您将收到电子邮件通知。", + "ERROR_MESSAGE": "出现错误,请重试" + }, + "SORT_BY": { + "LABEL": "排序方式", + "OPTIONS": { + "NAME": "姓名", + "EMAIL": "电子邮件", + "PHONE_NUMBER": "电话号码", + "COMPANY": "公司", + "COUNTRY": "国家", + "CITY": "城市", + "LAST_ACTIVITY": "上次操作", + "CREATED_AT": "创建于" + } + }, + "ORDER": { + "LABEL": "排序顺序", + "OPTIONS": { + "ASCENDING": "升序", + "DESCENDING": "降序" + } + }, + "FILTERS": { + "CREATE_SEGMENT": { + "TITLE": "您想要保存此过滤器吗?", + "CONFIRM": "保存过滤器", + "LABEL": "姓名", + "PLACEHOLDER": "输入过滤器的名称", + "ERROR": "请输入有效的名称", + "SUCCESS_MESSAGE": "过滤器保存成功", + "ERROR_MESSAGE": "无法保存过滤器,请稍后再试。" + }, + "DELETE_SEGMENT": { + "TITLE": "确认删除", + "DESCRIPTION": "您确定要删除此过滤器吗?", + "CONFIRM": "是,删除", + "CANCEL": "否,取消", + "SUCCESS_MESSAGE": "过滤器删除成功", + "ERROR_MESSAGE": "无法删除过滤器,请稍后再试。" + } + } + } + }, + "PAGINATION_FOOTER": { + "SHOWING": "显示 {startItem} - {endItem} 个联系人,共 {totalItems} 个" + }, + "FILTER": { + "NAME": "姓名", + "EMAIL": "电子邮件", + "PHONE_NUMBER": "电话号码", + "IDENTIFIER": "标识符", + "COUNTRY": "国家", + "CITY": "城市", + "CREATED_AT": "创建于", + "LAST_ACTIVITY": "上次操作", + "REFERER_LINK": "引用链接", + "BLOCKED": "已屏蔽", + "BLOCKED_TRUE": "是", + "BLOCKED_FALSE": "否", + "BUTTONS": { + "CLEAR_FILTERS": "清除过滤器", + "UPDATE_SEGMENT": "更新分段", + "APPLY_FILTERS": "应用过滤器", + "ADD_FILTER": "添加过滤器" + }, + "TITLE": "过滤联系人", + "EDIT_SEGMENT": "编辑分段", + "SEGMENT": { + "LABEL": "分段名称", + "INPUT_PLACEHOLDER": "输入分段的名称" + }, + "ACTIVE_FILTERS": { + "MORE_FILTERS": "+ {count} 更多过滤器", + "CLEAR_FILTERS": "清除过滤器" + } + }, + "CARD": { + "OF": "的", + "VIEW_DETAILS": "查看详细信息", + "EDIT_DETAILS_FORM": { + "TITLE": "编辑联系人详情", + "FORM": { + "FIRST_NAME": { + "PLACEHOLDER": "输入名字" + }, + "LAST_NAME": { + "PLACEHOLDER": "输入姓氏" + }, + "EMAIL_ADDRESS": { + "PLACEHOLDER": "输入电子邮件地址", + "DUPLICATE": "此电子邮件地址正在用于另一个联系人。" + }, + "PHONE_NUMBER": { + "PLACEHOLDER": "输入电话号码", + "DUPLICATE": "此电话号码正在用于另一个联系人。" + }, + "CITY": { + "PLACEHOLDER": "输入城市名称" + }, + "COUNTRY": { + "PLACEHOLDER": "选择国家" + }, + "BIO": { + "PLACEHOLDER": "输入简历" + }, + "COMPANY_NAME": { + "PLACEHOLDER": "输入公司名称" + } + }, + "UPDATE_BUTTON": "更新联系人", + "SUCCESS_MESSAGE": "联系人更新成功", + "ERROR_MESSAGE": "无法更新联系人,请稍后再试。" + }, + "SOCIAL_MEDIA": { + "TITLE": "编辑社交链接", + "FORM": { + "FACEBOOK": { + "PLACEHOLDER": "添加 Facebook" + }, + "GITHUB": { + "PLACEHOLDER": "添加 Github" + }, + "INSTAGRAM": { + "PLACEHOLDER": "添加 Instagram" + }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, + "TIKTOK": { + "PLACEHOLDER": "添加TikTok" + }, + "LINKEDIN": { + "PLACEHOLDER": "添加 LinkedIn" + }, + "TWITTER": { + "PLACEHOLDER": "添加 Twitter" + } + } + }, + "DELETE_CONTACT": { + "MESSAGE": "这一操作是永久且不可逆转的。", + "BUTTON": "立即删除" + } + }, + "DETAILS": { + "CREATED_AT": "创建于 {date}", + "LAST_ACTIVITY": "上次活动于 {date}", + "DELETE_CONTACT_DESCRIPTION": "永久删除此联系人。此操作不可逆", + "DELETE_CONTACT": "删除联系人", + "DELETE_DIALOG": { + "TITLE": "确认删除", + "DESCRIPTION": "您确定要删除此联系人吗?", + "CONFIRM": "是,删除", + "API": { + "SUCCESS_MESSAGE": "联系人删除成功", + "ERROR_MESSAGE": "无法删除联系人,请稍后再试。" + } + }, + "AVATAR": { + "UPLOAD": { + "ERROR_MESSAGE": "无法上传头像,请稍后再试。", + "SUCCESS_MESSAGE": "头像上传成功" + }, + "DELETE": { + "SUCCESS_MESSAGE": "头像删除成功", + "ERROR_MESSAGE": "无法删除头像,请稍后再试。" + } + } + }, + "SIDEBAR": { + "TABS": { + "ATTRIBUTES": "属性", + "HISTORY": "历史记录", + "NOTES": "备注", + "MERGE": "合并" + }, + "HISTORY": { + "EMPTY_STATE": "此联系人没有关联到以前的对话" + }, + "ATTRIBUTES": { + "SEARCH_PLACEHOLDER": "搜索属性", + "UNUSED_ATTRIBUTES": "{count} 个已用属性 | {count} 个未用属性", + "EMPTY_STATE": "此账户中没有可用的联系人自定义属性。您可以在设置中创建自定义属性。", + "YES": "是", + "NO": "否", + "TRIGGER": { + "SELECT": "选择值", + "INPUT": "填写内容" + }, + "VALIDATIONS": { + "INVALID_NUMBER": "无效的数字", + "REQUIRED": "需要有效的值", + "INVALID_INPUT": "无效输入", + "INVALID_URL": "无效的 URL", + "INVALID_DATE": "无效日期" + }, + "NO_ATTRIBUTES": "未找到属性", + "API": { + "SUCCESS_MESSAGE": "已成功更新属性", + "DELETE_SUCCESS_MESSAGE": "已成功删除属性", + "UPDATE_ERROR": "无法更新属性,请稍后再试。", + "DELETE_ERROR": "无法删除属性,请稍后再试" + } + }, + "MERGE": { + "TITLE": "合并联系人", + "DESCRIPTION": "将两个个人资料合并为一个,包括所有属性和对话。如果发生冲突,将以主联系人的属性为优先。", + "PRIMARY": "主联系人", + "PRIMARY_HELP_LABEL": "将被保留", + "PRIMARY_REQUIRED_ERROR": "请选择一个联系人进行合并", + "PARENT": "需要合并的联系人", + "PARENT_HELP_LABEL": "将被删除", + "EMPTY_STATE": "未找到联系人", + "PLACEHOLDER": "搜索主联系人", + "SEARCH_PLACEHOLDER": "搜索联系人", + "SEARCH_ERROR_MESSAGE": "无法搜索联系人,请稍后再试。", + "SUCCESS_MESSAGE": "已成功合并联系人", + "ERROR_MESSAGE": "无法合并联系人,请重试!", + "IS_SEARCHING": "搜索中……", + "BUTTONS": { + "CANCEL": "取消", + "CONFIRM": "合并联系人" + } + }, + "NOTES": { + "PLACEHOLDER": "添加备注", + "WROTE": "写道", + "YOU": "您", + "SAVE": "保存备注", + "ADD_NOTE": "Add contact note", + "EXPAND": "扩展", + "COLLAPSE": "收起", + "NO_NOTES": "没有备注,您可以从联系人详细信息页面添加备注。", + "EMPTY_STATE": "此联系人没有关联的备注。您可以在上方输入框中添加备注。", + "CONVERSATION_EMPTY_STATE": "There are no notes yet. Use the Add note button to create one." + } + }, + "EMPTY_STATE": { + "TITLE": "此账户中没有找到联系人", + "SUBTITLE": "点击下方按钮开始添加新联系人", + "BUTTON_LABEL": "添加联系人", + "SEARCH_EMPTY_STATE_TITLE": "没有搜索到联系人🔍", + "LIST_EMPTY_STATE_TITLE": "此视图中没有可用的联系人📋", + "ACTIVE_EMPTY_STATE_TITLE": "目前没有联系人在线 🌙" + }, + "LOAD_MORE": "加载更多" + }, + "CONTACTS_BULK_ACTIONS": { + "ASSIGN_LABELS": "分配标签", + "ASSIGN_LABELS_SUCCESS": "已成功分配标签.", + "ASSIGN_LABELS_FAILED": "Failed to assign labels", + "DESCRIPTION": "Select the labels you want to add to the selected contacts.", + "NO_LABELS_FOUND": "No labels available yet.", + "SELECTED_COUNT": "{count} 已选择", + "CLEAR_SELECTION": "Clear selection", + "SELECT_ALL": "全选 ({count})", + "DELETE_CONTACTS": "删除", + "DELETE_SUCCESS": "Contacts deleted successfully.", + "DELETE_FAILED": "Failed to delete contacts.", + "DELETE_DIALOG": { + "TITLE": "Delete selected contacts", + "SINGULAR_TITLE": "Delete selected contact", + "DESCRIPTION": "This will permanently delete {count} selected contacts. This action cannot be undone.", + "SINGULAR_DESCRIPTION": "This will permanently delete the selected contact. This action cannot be undone.", + "CONFIRM_MULTIPLE": "Delete contacts", + "CONFIRM_SINGLE": "删除联系人" + } + }, + "COMPOSE_NEW_CONVERSATION": { + "CONTACT_SEARCH": { + "ERROR_MESSAGE": "我们无法完成搜索。请稍后再试。" + }, + "FORM": { + "GO_TO_CONVERSATION": "查看", + "SUCCESS_MESSAGE": "消息发送成功!", + "ERROR_MESSAGE": "创建对话时发生错误。请稍后再试。", + "NO_INBOX_ALERT": "没有可用的收件箱来开始与此联系人的对话。", + "CONTACT_SELECTOR": { + "LABEL": "发送至:", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", + "CONTACT_CREATING": "正在创建联系人……" + }, + "INBOX_SELECTOR": { + "LABEL": "通过:", + "BUTTON": "显示收件箱" + }, + "EMAIL_OPTIONS": { + "SUBJECT_LABEL": "主题 :", + "SUBJECT_PLACEHOLDER": "在此处输入电子邮件主题", + "CC_LABEL": "抄送:", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", + "BCC_LABEL": "密送:", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", + "BCC_BUTTON": "密送" + }, + "MESSAGE_EDITOR": { + "PLACEHOLDER": "在此处输入您的消息..." + }, + "WHATSAPP_OPTIONS": { + "LABEL": "选择模板", + "SEARCH_PLACEHOLDER": "搜索模板", + "EMPTY_STATE": "未找到模板", + "TEMPLATE_PARSER": { + "TEMPLATE_NAME": "WhatsApp 模板: {templateName}", + "VARIABLES": "参数", + "BACK": "返回", + "SEND_MESSAGE": "发送消息" + } + }, + "TWILIO_OPTIONS": { + "LABEL": "选择模板", + "SEARCH_PLACEHOLDER": "搜索模板", + "EMPTY_STATE": "未找到模板", + "TEMPLATE_PARSER": { + "BACK": "返回", + "SEND_MESSAGE": "发送消息" + } + }, + "ACTION_BUTTONS": { + "DISCARD": "丢弃", + "SEND": "发送 ({keyCode})" + } + } } } diff --git a/app/javascript/dashboard/i18n/locale/zh/conversation.json b/app/javascript/dashboard/i18n/locale/zh/conversation.json index 84a746e91..9f4e80843 100644 --- a/app/javascript/dashboard/i18n/locale/zh/conversation.json +++ b/app/javascript/dashboard/i18n/locale/zh/conversation.json @@ -1,57 +1,452 @@ { "CONVERSATION": { - "404": "请从左侧窗格选择一个对话", + "SELECT_A_CONVERSATION": "请从左侧窗格选择一个对话", + "CSAT_REPLY_MESSAGE": "请为会话评分", + "404": "抱歉,我们找不到对话。请重试", + "SWITCH_VIEW_LAYOUT": "切换布局", + "DASHBOARD_APP_TAB_MESSAGES": "消息", + "UNVERIFIED_SESSION": "未验证此用户的身份", "NO_MESSAGE_1": "您的收件箱中似乎没有客户的消息。", "NO_MESSAGE_2": " 向您的页面发送一条消息!", "NO_INBOX_1": "看来你还没有添加任何收件箱。", "NO_INBOX_2": " 开始吧", "NO_INBOX_AGENT": "看起来您还没有分配到收件箱。请联系您的管理员", + "SEARCH_MESSAGES": "搜索对话中的消息", + "VIEW_ORIGINAL": "查看原始内容", + "VIEW_TRANSLATED": "查看翻译", + "EMPTY_STATE": { + "CMD_BAR": "打开命令菜单", + "KEYBOARD_SHORTCUTS": "查看键盘快捷键" + }, + "SEARCH": { + "TITLE": "搜索消息", + "RESULT_TITLE": "搜索结果", + "LOADING_MESSAGE": "正在处理数据", + "PLACEHOLDER": "输入任何文本来搜索消息", + "NO_MATCHING_RESULTS": "未找到结果。" + }, + "UNREAD_MESSAGES": "未读消息", + "UNREAD_MESSAGE": "未读消息", "CLICK_HERE": "点击这里", "LOADING_INBOXES": "正在加载收件箱", "LOADING_CONVERSATIONS": "加载更多对话", "CANNOT_REPLY": "您不能回复,原因是:", "24_HOURS_WINDOW": "24 小时消息窗口限制", - "LAST_INCOMING_TWEET": "You are replying to the last incoming tweet", - "REPLYING_TO": "You are replying to:", - "REMOVE_SELECTION": "Remove Selection", + "48_HOURS_WINDOW": "48 小时消息窗口限制", + "API_HOURS_WINDOW": "您只能在 {hours} 小时内回复此对话", + "NOT_ASSIGNED_TO_YOU": "此对话未分配给您。您想要将此对话分配给自己吗?", + "ASSIGN_TO_ME": "分配给我", + "BOT_HANDOFF_MESSAGE": "您正在回复目前由助手或机器人处理的对话。", + "BOT_HANDOFF_ACTION": "标记打开并分配给自己", + "BOT_HANDOFF_REOPEN_ACTION": "标记对话已打开", + "BOT_HANDOFF_SUCCESS": "对话已分配给您", + "BOT_HANDOFF_ERROR": "接管对话失败,请再试一次。", + "TWILIO_WHATSAPP_CAN_REPLY": "您只能使用模板信息回复此会话,原因是", + "TWILIO_WHATSAPP_24_HOURS_WINDOW": "24 小时消息窗口限制", + "OLD_INSTAGRAM_INBOX_REPLY_BANNER": "此 Instagram 帐户已迁移到新的 Instagram 通道收件箱。 所有新消息都将在这里显示。您将无法从这个对话中发送消息。", + "REPLYING_TO": "您正在回复到:", + "REMOVE_SELECTION": "移除选择", "DOWNLOAD": "下载", + "UNKNOWN_FILE_TYPE": "未知文件", + "SAVE_CONTACT": "保存联系人", + "NO_CONTENT": "没有要显示的内容", + "SHARED_ATTACHMENT": { + "CONTACT": "{sender} 分享了一个联系人", + "LOCATION": "{sender} 分享了一个地址", + "FILE": "{sender} 分享了一个文件", + "MEETING": "{sender} 已开始会议" + }, + "UPLOADING_ATTACHMENTS": "正在上传附件...", + "REPLIED_TO_STORY": "回复您的故事", + "UNSUPPORTED_MESSAGE": "不支持此消息。您可以在 Facebook Messenger 应用上查看此消息。", + "UNSUPPORTED_MESSAGE_FACEBOOK": "不支持此消息。您可以在 Facebook Messenger 应用上查看此消息。", + "UNSUPPORTED_MESSAGE_INSTAGRAM": "不支持此消息。您可以在 Instagram 应用上查看此消息。", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", + "SUCCESS_DELETE_MESSAGE": "已成功删除消息", + "FAIL_DELETE_MESSSAGE": "无法删除消息,请重试!", + "NO_RESPONSE": "无响应", + "RESPONSE": "回复", + "RATING_TITLE": "评分", + "FEEDBACK_TITLE": "Feedback", + "REPLY_MESSAGE_NOT_FOUND": "消息不可用", + "CARD": { + "SHOW_LABELS": "显示标签", + "HIDE_LABELS": "隐藏标签" + }, + "VOICE_CALL": { + "INCOMING_CALL": "来电", + "OUTGOING_CALL": "已拨出电话", + "CALL_IN_PROGRESS": "呼叫进行中", + "NO_ANSWER": "无应答", + "MISSED_CALL": "未接来电", + "CALL_ENDED": "通话结束", + "NOT_ANSWERED_YET": "尚未回复", + "THEY_ANSWERED": "对方已回复", + "YOU_ANSWERED": "你已回复" + }, "HEADER": { "RESOLVE_ACTION": "已解决", "REOPEN_ACTION": "重新打开", + "OPEN_ACTION": "打开", + "MORE_ACTIONS": "更多操作", "OPEN": "详细信息", "CLOSE": "关闭", - "DETAILS": "详情" + "DETAILS": "详情", + "SNOOZED_UNTIL": "推迟到", + "SNOOZED_UNTIL_TOMORROW": "推迟到明天", + "SNOOZED_UNTIL_NEXT_WEEK": "推迟到下周", + "SNOOZED_UNTIL_NEXT_REPLY": "推迟至下一个回复", + "SLA_STATUS": { + "FRT": "第一响应时间 {status}", + "NRT": "净响应时间 {status}", + "RT": "响应时间 {status}", + "MISSED": "遗漏", + "DUE": "过期" + } + }, + "RESOLVE_DROPDOWN": { + "MARK_PENDING": "标记为待处理", + "SNOOZE_UNTIL": "推迟", + "SNOOZE": { + "TITLE": "推迟到", + "NEXT_REPLY": "下一个回复", + "TOMORROW": "明天", + "NEXT_WEEK": "下周" + } + }, + "MENTION": { + "AGENTS": "客服", + "TEAMS": "团队" + }, + "CUSTOM_SNOOZE": { + "TITLE": "推迟到", + "APPLY": "推迟", + "CANCEL": "取消" + }, + "PRIORITY": { + "TITLE": "优先级", + "OPTIONS": { + "NONE": "啥都没有", + "URGENT": "紧急的", + "HIGH": "高", + "MEDIUM": "中", + "LOW": "低" + }, + "CHANGE_PRIORITY": { + "SELECT_PLACEHOLDER": "啥都没有", + "INPUT_PLACEHOLDER": "选择优先级", + "NO_RESULTS": "没有检索到相关信息", + "SUCCESSFUL": "已将对话 Id {conversationId} 的优先级更改为 {priority}", + "FAILED": "无法更改优先级。请重试。" + } + }, + "DELETE_CONVERSATION": { + "TITLE": "删除对话 #{conversationId}", + "DESCRIPTION": "您确定要删除此对话吗?", + "CONFIRM": "删除" + }, + "CARD_CONTEXT_MENU": { + "PENDING": "标记为待处理", + "RESOLVED": "标记为已解决", + "MARK_AS_UNREAD": "标记为未读", + "MARK_AS_READ": "标记为已读", + "REOPEN": "重新打开会话", + "SNOOZE": { + "TITLE": "推迟", + "NEXT_REPLY": "直到下次回复", + "TOMORROW": "直到明天", + "NEXT_WEEK": "直到下周" + }, + "ASSIGN_AGENT": "分配客服代表", + "ASSIGN_LABEL": "分配标签", + "AGENTS_LOADING": "正在加载客服代表...", + "ASSIGN_TEAM": "分配一个团队", + "DELETE": "删除对话", + "OPEN_IN_NEW_TAB": "在新标签页中打开", + "COPY_LINK": "复制对话链接", + "COPY_LINK_SUCCESS": "对话链接已复制到剪贴板", + "API": { + "AGENT_ASSIGNMENT": { + "SUCCESFUL": "对话 ID {conversationId} 已分配给 \"{agentName}\"", + "FAILED": "无法分配客服,请再试。" + }, + "LABEL_ASSIGNMENT": { + "SUCCESFUL": "已为对话 Id {conversationId} 分配标签 #{labelName}", + "FAILED": "无法分配标签。请再试。" + }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, + "TEAM_ASSIGNMENT": { + "SUCCESFUL": "将团队 \"{team}\" 分配给对话 ID {conversationId}", + "FAILED": "无法分配团队。请重试。" + } + } }, "FOOTER": { + "MESSAGE_SIGN_TOOLTIP": "消息签名", + "ENABLE_SIGN_TOOLTIP": "启用签名", + "DISABLE_SIGN_TOOLTIP": "禁用签名", "MSG_INPUT": "输入“/”开始选择快捷回复", - "PRIVATE_MSG_INPUT": "Shift + 输入新行。这只对客服可见" + "PRIVATE_MSG_INPUT": "Shift + 输入新行。这只对客服可见", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", + "MESSAGE_SIGNATURE_NOT_CONFIGURED": "未设置消息签名,请在个人资料中进行设置。", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", + "CLICK_HERE": "点击此处更新", + "WHATSAPP_TEMPLATES": "Whatsapp 模板列表" }, "REPLYBOX": { "REPLY": "回复", "PRIVATE_NOTE": "私人便笺", "SEND": "发送", "CREATE": "添加便笺", - "TWEET": "推特" + "INSERT_READ_MORE": "查看更多", + "DISMISS_REPLY": "忽略回复", + "REPLYING_TO": "回复:", + "TIP_EMOJI_ICON": "显示表情选择器", + "TIP_ATTACH_ICON": "附加文件", + "TIP_AUDIORECORDER_ICON": "录制音频", + "TIP_AUDIORECORDER_PERMISSION": "允许访问音频", + "TIP_AUDIORECORDER_ERROR": "无法打开音频", + "DRAG_DROP": "拖放到此处添加附件", + "START_AUDIO_RECORDING": "开始录音", + "STOP_AUDIO_RECORDING": "停止录音", + "COPILOT_THINKING": "Copilot is thinking", + "EMAIL_HEAD": { + "TO": "发给", + "ADD_BCC": "添加密送", + "CC": { + "LABEL": "抄送", + "PLACEHOLDER": "多个电子邮件地址之间用逗号隔开", + "ERROR": "请输入有效的电子邮件地址" + }, + "BCC": { + "LABEL": "密送", + "PLACEHOLDER": "多个电子邮件地址之间用逗号隔开", + "ERROR": "请输入有效的电子邮件地址" + } + }, + "UNDEFINED_VARIABLES": { + "TITLE": "未定义的变量", + "MESSAGE": "你的消息中有 {undefinedVariablesCount} 个未定义的变量:{undefinedVariables}。是否仍然要发送该消息?", + "CONFIRM": { + "YES": "发送", + "CANCEL": "取消" + } + }, + "QUOTED_REPLY": { + "ENABLE_TOOLTIP": "Include quoted email thread", + "DISABLE_TOOLTIP": "Don't include quoted email thread", + "REMOVE_PREVIEW": "Remove quoted email thread", + "COLLAPSE": "Collapse preview", + "EXPAND": "Expand preview" + } }, "VISIBLE_TO_AGENTS": "私人便签:仅对您和您的团队可见", "CHANGE_STATUS": "对话状态已更改", - "CHANGE_AGENT": "对话分配人已更改" + "CHANGE_STATUS_FAILED": "更改对话状态失败", + "CHANGE_AGENT": "对话分配人已更改", + "CHANGE_AGENT_FAILED": "更改分配失败", + "ASSIGN_LABEL_SUCCESFUL": "已成功分配标签", + "ASSIGN_LABEL_FAILED": "分配标签失败", + "CHANGE_TEAM": "对话团队已更改", + "SUCCESS_DELETE_CONVERSATION": "对话成功删除", + "FAIL_DELETE_CONVERSATION": "无法删除对话!请重试", + "FILE_SIZE_LIMIT": "文件超过了 {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB 的附件限制", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", + "MESSAGE_ERROR": "无法发送此消息,请稍后再试", + "SENT_BY": "发送人:", + "BOT": "机器人", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", + "SEND_FAILED": "无法发送消息,请重试!", + "TRY_AGAIN": "重试", + "ASSIGNMENT": { + "SELECT_AGENT": "选择代理", + "REMOVE": "删除", + "ASSIGN": "分配" + }, + "CONTEXT_MENU": { + "COPY": "复制", + "REPLY_TO": "对这条消息进行回复", + "DELETE": "删除", + "CREATE_A_CANNED_RESPONSE": "添加到预定义回复", + "TRANSLATE": "翻译", + "COPY_PERMALINK": "复制消息链接", + "LINK_COPIED": "消息链接已复制到剪贴板", + "DELETE_CONFIRMATION": { + "TITLE": "您确定要删除这条消息吗?", + "MESSAGE": "此操作无法撤销。", + "DELETE": "删除", + "CANCEL": "取消" + } + }, + "SIDEBAR": { + "CONTACT": "联系人", + "COPILOT": "Copilot" + }, + "VOICE_WIDGET": { + "INCOMING_CALL": "来电", + "OUTGOING_CALL": "已拨出电话", + "CALL_IN_PROGRESS": "呼叫进行中", + "NOT_ANSWERED_YET": "尚未回复", + "HANDLED_IN_ANOTHER_TAB": "Being handled in another tab", + "REJECT_CALL": "Reject", + "JOIN_CALL": "Join call", + "END_CALL": "End call" + } }, "EMAIL_TRANSCRIPT": { - "TITLE": "Send conversation transcript", - "DESC": "Send a copy of the conversation transcript to the specified email address", + "TITLE": "发送对话记录", + "DESC": "将对话记录副本发送到指定的电子邮件地址", "SUBMIT": "提交", "CANCEL": "取消操作", - "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", + "SEND_EMAIL_SUCCESS": "对话记录已成功发送", "SEND_EMAIL_ERROR": "出错了,请重试", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { - "SEND_TO_CONTACT": "Send the transcript to the customer", - "SEND_TO_AGENT": "Send the transcript to the assigned agent", - "SEND_TO_OTHER_EMAIL_ADDRESS": "Send the transcript to another email address", + "SEND_TO_CONTACT": "发送对话记录给客户", + "SEND_TO_AGENT": "发送对话记录给指定的代理", + "SEND_TO_OTHER_EMAIL_ADDRESS": "将对话记录发送到另一个电子邮件地址", "EMAIL": { - "PLACEHOLDER": "Enter an email address", + "PLACEHOLDER": "输入一个电子邮件地址", "ERROR": "请输入一个有效的电子邮件" } } + }, + "ONBOARDING": { + "TITLE": "您好 👋, 欢迎来到 {installationName}!", + "DESCRIPTION": "感谢您注册。我们希望您能够充分使用 {installationName}。 这里有几件您可以在 {installationName} 做的事情,让体验变得愉快。", + "GREETING_MORNING": "👋 早上好,{name}。欢迎来到 {installationName}。", + "GREETING_AFTERNOON": "👋 下午好,{name}。欢迎来到 {installationName}。", + "GREETING_EVENING": "👋 晚上好,{name}。欢迎来到 {installationName}。", + "READ_LATEST_UPDATES": "阅读我们的最新升级日志", + "ALL_CONVERSATION": { + "TITLE": "您的所有对话都在一个地方", + "DESCRIPTION": "在单个面板中查看您客户的所有对话。您可以通过通道、标签和状态筛选对话。", + "NEW_LINK": "点击此处创建收件箱" + }, + "TEAM_MEMBERS": { + "TITLE": "邀请您的团队成员", + "DESCRIPTION": "当您准备好与您的客户交谈时,带上您的队友来协助您。 您可以通过添加他们的电子邮件地址到客服代表列表来邀请您的队友。", + "NEW_LINK": "点击此处邀请一位请团队成员" + }, + "LABELS": { + "TITLE": "使用标签组织对话", + "DESCRIPTION": "标签提供了一种简单的方法来让您归类对话。创建一些类似 #价格、#问题反馈 这样的标签,之后您可以在对话中使用它们。", + "NEW_LINK": "点击此处创建标签" + }, + "CANNED_RESPONSES": { + "TITLE": "创建预设回复", + "DESCRIPTION": "预定义的快捷回复模板可以帮助您快速响应对话。客服人员只需输入“/”符号,后跟快捷代码,即可插入回复。", + "NEW_LINK": "点击这里创建预设回复" + } + }, + "CONVERSATION_SIDEBAR": { + "ASSIGNEE_LABEL": "已分配的客服代表", + "SELF_ASSIGN": "分配给我", + "TEAM_LABEL": "已分配的团队", + "SELECT": { + "PLACEHOLDER": "啥都没有" + }, + "ACCORDION": { + "CONTACT_DETAILS": "联系人详细信息", + "CONVERSATION_ACTIONS": "对话操作", + "CONVERSATION_LABELS": "对话标记", + "CONVERSATION_INFO": "对话信息", + "CONTACT_NOTES": "联系人备注", + "CONTACT_ATTRIBUTES": "联系人属性", + "PREVIOUS_CONVERSATION": "上一次对话", + "MACROS": "宏", + "LINEAR_ISSUES": "已链接的 Linear 问题", + "SHOPIFY_ORDERS": "Shopify Orders" + }, + "SHOPIFY": { + "ORDER_ID": "Order #{id}", + "ERROR": "Error loading orders", + "NO_SHOPIFY_ORDERS": "No orders found", + "FINANCIAL_STATUS": { + "PENDING": "等待中", + "AUTHORIZED": "Authorized", + "PARTIALLY_PAID": "Partially Paid", + "PAID": "Paid", + "PARTIALLY_REFUNDED": "Partially Refunded", + "REFUNDED": "Refunded", + "VOIDED": "Voided" + }, + "FULFILLMENT_STATUS": { + "FULFILLED": "Fulfilled", + "PARTIALLY_FULFILLED": "Partially Fulfilled", + "UNFULFILLED": "Unfulfilled" + } + } + }, + "CONVERSATION_CUSTOM_ATTRIBUTES": { + "ADD_BUTTON_TEXT": "创建属性", + "NO_RECORDS_FOUND": "未找到属性", + "UPDATE": { + "SUCCESS": "已成功更新属性", + "ERROR": "无法更新属性,请稍后再试。" + }, + "ADD": { + "TITLE": "添加", + "SUCCESS": "已成功添加属性", + "ERROR": "无法添加属性,请稍后再试。" + }, + "DELETE": { + "SUCCESS": "已成功删除属性", + "ERROR": "无法删除属性,请稍后再试。" + }, + "ATTRIBUTE_SELECT": { + "TITLE": "添加属性", + "PLACEHOLDER": "搜索属性", + "NO_RESULT": "未找到属性" + } + }, + "EMAIL_HEADER": { + "FROM": "来自", + "TO": "发送至", + "BCC": "密送", + "CC": "抄送", + "SUBJECT": "主题", + "EXPAND": "展开邮箱" + }, + "CONVERSATION_PARTICIPANTS": { + "SIDEBAR_MENU_TITLE": "参与者", + "SIDEBAR_TITLE": "对话参与者", + "NO_RECORDS_FOUND": "没有检索到相关信息", + "ADD_PARTICIPANTS": "选择参与者", + "REMANING_PARTICIPANTS_TEXT": "+{count} 其他人", + "REMANING_PARTICIPANT_TEXT": "+{count} 其他", + "TOTAL_PARTICIPANTS_TEXT": "有{count}人参与。", + "TOTAL_PARTICIPANT_TEXT": "有{count}人参与。", + "NO_PARTICIPANTS_TEXT": "没有人参与!", + "WATCH_CONVERSATION": "加入对话", + "YOU_ARE_WATCHING": "你正在参与", + "API": { + "ERROR_MESSAGE": "无法更新,请重试!", + "SUCCESS_MESSAGE": "参与者已更新!" + } + }, + "TRANSLATE_MODAL": { + "TITLE": "查看翻译内容", + "DESC": "您可以查看每种语言的翻译内容。", + "ORIGINAL_CONTENT": "原文内容", + "TRANSLATED_CONTENT": "译文", + "NO_TRANSLATIONS_AVAILABLE": "此内容暂无翻译" + }, + "TYPING": { + "ONE": "{user} 正在输入", + "TWO": "{user} 和 {secondUser} 正在输入", + "MULTIPLE": "{user} 等 {count} 人正在输入" + }, + "COPILOT": { + "TRY_THESE_PROMPTS": "尝试这些提示信息" + }, + "GALLERY_VIEW": { + "ERROR_DOWNLOADING": "无法上传附件。请重试" } } diff --git a/app/javascript/dashboard/i18n/locale/zh/generalSettings.json b/app/javascript/dashboard/i18n/locale/zh/generalSettings.json index b6f30c288..5257a24cd 100644 --- a/app/javascript/dashboard/i18n/locale/zh/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/zh/generalSettings.json @@ -1,12 +1,39 @@ { "GENERAL_SETTINGS": { + "LIMIT_MESSAGES": { + "CONVERSATION": "您已经超过对话限制。黑客计划只允许500次对话。", + "INBOXES": "您已超过收件箱限制。Hacker 计划只支持网站在线聊天。其他收件箱如电子邮件、WhatsApp 等需要付费计划。", + "AGENTS": "您已超过席位限制。当前计划只允许 {allowedAgents} 个席位。", + "NON_ADMIN": "请联系您的管理员升级计划并继续使用所有功能。" + }, "TITLE": "帐户设置", "SUBMIT": "更新设置", "BACK": "后退", + "DISMISS": "取消", "UPDATE": { "ERROR": "无法更新设置,请重试!", "SUCCESS": "已成功更新账户设置" }, + "ACCOUNT_DELETE_SECTION": { + "TITLE": "删除您的帐户", + "NOTE": "一旦您删除您的账户,您的所有数据将被删除。", + "BUTTON_TEXT": "删除您的账户", + "CONFIRM": { + "TITLE": "删除账户", + "MESSAGE": "删除您的账户是不可逆的。请在下面输入您的账户名称以确认您想要永久删除它。", + "BUTTON_TEXT": "删除", + "DISMISS": "取消", + "PLACE_HOLDER": "请输入 {accountName} 以确认" + }, + "SUCCESS": "账户已标记为删除", + "FAILURE": "无法删除账户,请重试!", + "SCHEDULED_DELETION": { + "TITLE": "已计划删除的账户", + "MESSAGE_MANUAL": "此账户已计划在 {deletionDate} 删除。该操作由管理员请求。你可以在该日期前取消删除。", + "MESSAGE_INACTIVITY": "此账户由于不活跃已计划在 {deletionDate} 删除。你可以在该日期前取消删除。", + "CLEAR_BUTTON": "取消已计划的删除" + } + }, "FORM": { "ERROR": "请修正表单错误", "GENERAL_SECTION": { @@ -14,8 +41,36 @@ "NOTE": "" }, "ACCOUNT_ID": { - "TITLE": "Account ID", - "NOTE": "This ID is required if you are building an API based integration" + "TITLE": "账号 ID", + "NOTE": "如果您正在构建基于 API 的集成,那么此 ID 是必需的" + }, + "AUTO_RESOLVE": { + "TITLE": "自动解决对话", + "NOTE": "通过此项设置,系统可在对话静默一段时间后自动将其解决。", + "DURATION": { + "LABEL": "无活动持续时间", + "HELP": "在无活动后自动结束对话的时间段", + "PLACEHOLDER": "30", + "ERROR": "自动解决时长应在 10 分钟到 999 天之间", + "API": { + "SUCCESS": "自动解决设置已成功更新", + "ERROR": "更新自动解决设置失败" + } + }, + "MESSAGE": { + "LABEL": "自定义自动解决消息", + "PLACEHOLDER": "由于闲置 15 天,对话被系统标记已解决", + "HELP": "会话自动解决之后发送给客户的消息" + }, + "PREFERENCES": "偏好设置", + "LABEL": { + "LABEL": "自动解决后添加标签", + "PLACEHOLDER": "选择一个标签" + }, + "IGNORE_WAITING": { + "LABEL": "跳过等待客服回复的会话" + }, + "UPDATE_BUTTON": "保存修改" }, "NAME": { "LABEL": "帐户名称", @@ -23,7 +78,7 @@ "ERROR": "请输入有效的帐户名称" }, "LANGUAGE": { - "LABEL": "网站语言(Beta)", + "LABEL": "站点语言", "PLACEHOLDER": "您的帐户名称", "ERROR": "" }, @@ -37,15 +92,161 @@ "PLACEHOLDER": "您公司的支持邮件", "ERROR": "" }, + "AUTO_RESOLVE_IGNORE_WAITING": { + "LABEL": "排除未参加的对话", + "HELP": "启用后,系统将跳过解决仍在等待客服回复的对话。" + }, + "AUDIO_TRANSCRIPTION": { + "TITLE": "转录语音消息", + "NOTE": "自动转录对话中的语音消息。当发送或收到语音消息时生成转录的文本,并将其显示在消息旁边。", + "API": { + "SUCCESS": "语音转录设置更新成功", + "ERROR": "更新语音转录设置失败" + } + }, "AUTO_RESOLVE_DURATION": { - "LABEL": "Number of days after a ticket should auto resolve if there is no activity", + "LABEL": "自动解决前的无活动市场", + "HELP": "对话无活动时自动解决时长", "PLACEHOLDER": "30", - "ERROR": "Please enter a valid auto resolve duration (minimum 1 day and maximum 999 days)" + "ERROR": "自动解决时长应在 10 分钟到 999 天之间", + "API": { + "SUCCESS": "自动解决设置已成功更新", + "ERROR": "更新自动解决设置失败" + }, + "UPDATE_BUTTON": "更新", + "MESSAGE_LABEL": "自定义解决消息", + "MESSAGE_PLACEHOLDER": "由于闲置 15 天,对话被系统标记已解决", + "MESSAGE_HELP": "当系统因为不活动而自动解决某个对话时,此消息将发送给客户。" }, "FEATURES": { "INBOUND_EMAIL_ENABLED": "您的帐户启用了与电子邮件的对话连续性。", "CUSTOM_EMAIL_DOMAIN_ENABLED": "您现在可以在您的自定义域名的电子邮件中接收消息。" } + }, + "UPDATE_CHATWOOT": "Chatwoot 有可用更新{latestChatwootVersion},请更新您的应用。", + "LEARN_MORE": "了解更多", + "PAYMENT_PENDING": "您的付款尚未完成。请更新您的付款信息以继续使用Chatwoot", + "UPGRADE": "升级以继续使用 Chatwoot", + "LIMITS_UPGRADE": "您的账户已超过使用限制,请升级您的计划以继续使用Chatwoot", + "OPEN_BILLING": "查看计费" + }, + "FORMS": { + "MULTISELECT": { + "ENTER_TO_SELECT": "按回车键选择", + "ENTER_TO_REMOVE": "按回车键删除", + "NO_OPTIONS": "列表为空", + "SELECT_ONE": "请选择一个", + "SELECT": "选择" } + }, + "NOTIFICATIONS_PAGE": { + "HEADER": "消息通知", + "MARK_ALL_DONE": "标记全部完成", + "DELETE_TITLE": "已删除", + "UNREAD_NOTIFICATION": { + "TITLE": "未读通知", + "ALL_NOTIFICATIONS": "查看所有通知", + "LOADING_UNREAD_MESSAGE": "正在加载未读通知...", + "EMPTY_MESSAGE": "您没有未读通知" + }, + "LIST": { + "LOADING_MESSAGE": "正在加载通知...", + "404": "没有通知", + "TABLE_HEADER": [ + "姓名:", + "电话号码", + "会话", + "上次联系" + ] + }, + "TYPE_LABEL": { + "conversation_creation": "新建对话", + "conversation_assignment": "对话已分配", + "assigned_conversation_new_message": "新消息", + "participating_conversation_new_message": "新消息", + "conversation_mention": "提及", + "sla_missed_first_response": "未满足SLA要求", + "sla_missed_next_response": "未满足SLA要求", + "sla_missed_resolution": "未满足 SLA 要求" + } + }, + "NETWORK": { + "NOTIFICATION": { + "OFFLINE": "离线的", + "RECONNECTING": "正在重连...", + "RECONNECT_SUCCESS": "已重新连接" + }, + "BUTTON": { + "REFRESH": "刷新" + } + }, + "COMMAND_BAR": { + "SEARCH_PLACEHOLDER": "搜索或跳转到", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", + "SECTIONS": { + "GENERAL": "一般", + "REPORTS": "报告", + "CONVERSATION": "会话", + "BULK_ACTIONS": "批量操作", + "CHANGE_ASSIGNEE": "更改分配", + "CHANGE_PRIORITY": "更改优先级", + "CHANGE_TEAM": "更改团队", + "SNOOZE_CONVERSATION": "推迟对话", + "ADD_LABEL": "为对话添加标签", + "REMOVE_LABEL": "从对话移除标签", + "SETTINGS": "设置", + "AI_ASSIST": "AI 助手", + "APPEARANCE": "外观", + "SNOOZE_NOTIFICATION": "推迟通知" + }, + "COMMANDS": { + "GO_TO_CONVERSATION_DASHBOARD": "转到对话面板", + "GO_TO_CONTACTS_DASHBOARD": "转到联系人面板", + "GO_TO_REPORTS_OVERVIEW": "前往报告概览", + "GO_TO_CONVERSATION_REPORTS": "前往对话报告", + "GO_TO_AGENT_REPORTS": "前往客服代理报告", + "GO_TO_LABEL_REPORTS": "前往标签报告", + "GO_TO_INBOX_REPORTS": "前往收件箱报告", + "GO_TO_TEAM_REPORTS": "前往团队报告", + "GO_TO_SETTINGS_AGENTS": "前往客服代理设置", + "GO_TO_SETTINGS_TEAMS": "前往团队设置", + "GO_TO_SETTINGS_INBOXES": "前往收件箱设置", + "GO_TO_SETTINGS_LABELS": "前往标签设置", + "GO_TO_SETTINGS_CANNED_RESPONSES": "前往预设回复设置", + "GO_TO_SETTINGS_APPLICATIONS": "转到应用程序设置", + "GO_TO_SETTINGS_ACCOUNT": "前往帐户设置", + "GO_TO_SETTINGS_PROFILE": "前往个人资料设置", + "GO_TO_NOTIFICATIONS": "转到通知", + "ADD_LABELS_TO_CONVERSATION": "为对话添加标签", + "ASSIGN_AN_AGENT": "分配一位客服代表", + "AI_ASSIST": "AI 助手", + "ASSIGN_PRIORITY": "分配优先级", + "ASSIGN_A_TEAM": "分配一个团队", + "MUTE_CONVERSATION": "静音对话", + "UNMUTE_CONVERSATION": "取消静音对话", + "REMOVE_LABEL_FROM_CONVERSATION": "从对话移除标签", + "REOPEN_CONVERSATION": "重新打开会话", + "RESOLVE_CONVERSATION": "解决会话", + "SEND_TRANSCRIPT": "发送电子邮件副本", + "SNOOZE_CONVERSATION": "暂停对话", + "UNTIL_NEXT_REPLY": "直到下次回复", + "UNTIL_NEXT_WEEK": "直到下周", + "UNTIL_TOMORROW": "直到明天", + "UNTIL_NEXT_MONTH": "直到下个月", + "AN_HOUR_FROM_NOW": "从现在起一小时", + "UNTIL_CUSTOM_TIME": "自定义……", + "CHANGE_APPEARANCE": "更改外观", + "LIGHT_MODE": "浅色", + "DARK_MODE": "深色", + "SYSTEM_MODE": "系统", + "SNOOZE_NOTIFICATION": "推迟通知" + } + }, + "DASHBOARD_APPS": { + "LOADING_MESSAGE": "正在加载仪表板应用..." + }, + "COMMON": { + "OR": "或", + "CLICK_HERE": "点击这里" } } diff --git a/app/javascript/dashboard/i18n/locale/zh/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/zh/inboxMgmt.json index 3de55f306..81965842b 100644 --- a/app/javascript/dashboard/i18n/locale/zh/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh/inboxMgmt.json @@ -1,44 +1,78 @@ { "INBOX_MGMT": { "HEADER": "收件箱", - "SIDEBAR_TXT": "

收件箱

当您将网站或Facebook页面连接到Chatwoot 它被称为一个 收件箱。 您可以在Chatwoot 帐户中拥有无限的收件箱。

点击 添加收件箱 连接网站或 Facebook 页面。

在仪表盘中 您可以在一个地方看到所有收件箱中的所有对话,并在“对话”选项卡下回复。

您也可以通过点击仪表板左侧面板上的收件箱名称看到针对收件箱的对话。

", + "DESCRIPTION": "频道是客户选择与您互动的方式。收件箱则是您用来管理特定频道互动的地方,它可以整合来自不同来源的通信,比如电子邮件、即时聊天和社交媒体等。", + "LEARN_MORE": "了解更多关于收件箱的信息", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", + "RECONNECTION_REQUIRED": "您的收件箱已断开连接。在您重新授权之前,您不会收到新消息。", + "CLICK_TO_RECONNECT": "点击此处重新连接。", + "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", + "COMPLETE_REGISTRATION": "Complete Registration", "LIST": { "404": "此账户没有收件箱。" }, - "CREATE_FLOW": [ - { - "title": "选择频道", - "route": "settings_inbox_new", - "body": "选择你想要与Chatwoot 集成的提供商。" + "CREATE_FLOW": { + "CHANNEL": { + "TITLE": "选择频道", + "BODY": "选择你想要与Chatwoot 集成的提供商。" }, - { - "title": "新增收件箱", - "route": "settings_inboxes_page_channel", - "body": "验证您的帐户并创建收件箱。" + "INBOX": { + "TITLE": "新增收件箱", + "BODY": "验证您的帐户并创建收件箱。" }, - { - "title": "添加客服代理", - "route": "settings_inboxes_add_agents", - "body": "将客服添加到创建的收件箱。" + "AGENT": { + "TITLE": "添加客服代理", + "BODY": "将客服添加到创建的收件箱。" }, - { - "title": "Voila!", - "route": "settings_inbox_finish", - "body": "你已设定状态为离开" + "FINISH": { + "TITLE": "搞定!", + "BODY": "你已设定状态为离开" } - ], + }, "ADD": { + "CHANNEL_NAME": { + "LABEL": "收件箱名称", + "PLACEHOLDER": "输入您的收件箱名称 (例如: Acme Inc)", + "ERROR": "请输入一个有效的收件箱名称" + }, + "WEBSITE_NAME": { + "LABEL": "网站名称", + "PLACEHOLDER": "输入您的网站名称 (e.g: Acme Inc)" + }, "FB": { "HELP": "注意: 通过登录,我们只能访问您的页面的消息。您的私人消息永远不能被聊天室访问。", "CHOOSE_PAGE": "选择页面", "CHOOSE_PLACEHOLDER": "从列表中选择一个页面", "INBOX_NAME": "收件箱名称", "ADD_NAME": "为收件箱添加名称", - "PICK_NAME": "选择收件箱名称", - "PICK_A_VALUE": "选择一个数值" + "PICK_NAME": "为收件箱选择一个名称", + "PICK_A_VALUE": "选择一个数值", + "CREATE_INBOX": "新增收件箱" + }, + "INSTAGRAM": { + "CONTINUE_WITH_INSTAGRAM": "在 Instagram 中继续", + "CONNECT_YOUR_INSTAGRAM_PROFILE": "连接您的 Instagram 配置文件", + "HELP": "若要将您的 Instagram 配置文件添加为通道,您需要点击「继续使用 Instagram」来验证您的 Instagram 配置文件。 ", + "ERROR_MESSAGE": "连接到 Instagram 时出错,请重试", + "ERROR_AUTH": "连接到 Instagram 时出错,请重试", + "NEW_INBOX_SUGGESTION": "这个 Instagram 账户先前已连接到一个不同的收件箱,现在已经迁移到这里。 所有新消息都将出现在这里。旧收件箱将无法再发送或接收此账户的消息。", + "DUPLICATE_INBOX_BANNER": "此 Instagram 账户已迁移到新的 Instagram 通道收件箱。您将无法从此收件箱发送/接收 Instagram 消息。" + }, + "TIKTOK": { + "CONTINUE_WITH_TIKTOK": "Continue with TikTok", + "CONNECT_YOUR_TIKTOK_PROFILE": "Connect your TikTok Profile", + "HELP": "To add your TikTok profile as a channel, you need to authenticate your TikTok Profile by clicking on 'Continue with TikTok' ", + "ERROR_MESSAGE": "There was an error connecting to TikTok, please try again", + "ERROR_AUTH": "There was an error connecting to TikTok, please try again" }, "TWITTER": { - "HELP": "若要将您的Twitter个人资料添加为频道,您需要通过点击“使用Twitter登录”来验证您的Twitter个人资料。 " + "HELP": "若要将您的Twitter个人资料添加为频道,您需要通过点击“使用Twitter登录”来验证您的Twitter个人资料。 ", + "ERROR_MESSAGE": "连接 Twitter 时出现错误,请重试", + "TWEETS": { + "ENABLE": "从提及的推文创建对话" + } }, "WEBSITE_CHANNEL": { "TITLE": "网站频道", @@ -47,9 +81,10 @@ "CHANNEL_AVATAR": { "LABEL": "频道头像" }, - "CHANNEL_NAME": { - "LABEL": "网站名称", - "PLACEHOLDER": "输入您的网站名称 (e.g: Acme Inc)" + "CHANNEL_WEBHOOK_URL": { + "LABEL": "Webhook 网址", + "PLACEHOLDER": "请输入您的 Webhook URL", + "ERROR": "请输入一个有效的 URL" }, "CHANNEL_DOMAIN": { "LABEL": "网站域名", @@ -69,24 +104,51 @@ }, "CHANNEL_GREETING_TOGGLE": { "LABEL": "开启频道问候功能", - "HELP_TEXT": "在用户开始对话时发送问候消息。", + "HELP_TEXT": "当客户开始对话并发送第一条消息时,自动发送问候消息。", "ENABLED": "已启用", "DISABLED": "已禁用" }, + "REPLY_TIME": { + "TITLE": "设置回复时间", + "IN_A_FEW_MINUTES": "几分钟前", + "IN_A_FEW_HOURS": "几个小时前", + "IN_A_DAY": "一天内", + "HELP_TEXT": "此回复时间将会显示在实时聊天窗口上" + }, "WIDGET_COLOR": { "LABEL": "窗口小部件颜色", "PLACEHOLDER": "更新小部件中使用的部件颜色" }, - "SUBMIT_BUTTON": "创建收件箱" + "SUBMIT_BUTTON": "创建收件箱", + "API": { + "ERROR_MESSAGE": "我们无法创建一个网站频道,请重试" + } }, "TWILIO": { - "TITLE": "Twilio SMS/Whatsapp 频道", - "DESC": "整合Twilio 并开始通过短信或Whatsap支持您的客户。", + "TITLE": "Twilio SMS/WhatsApp 频道", + "DESC": "整合 Twilio 并开始通过短信或 WhatsApp 支持您的客户。", "ACCOUNT_SID": { "LABEL": "账户 SID", "PLACEHOLDER": "请输入您的 Twilio 账户 SID", "ERROR": "此字段是必填项" }, + "API_KEY": { + "USE_API_KEY": "使用 API 密钥认证", + "LABEL": "API 密钥 SID", + "PLACEHOLDER": "请输入您的 API 密钥 SID", + "ERROR": "此字段是必填项" + }, + "API_KEY_SECRET": { + "LABEL": "API 密钥密码", + "PLACEHOLDER": "请输入您的 API 密钥密码", + "ERROR": "此字段是必填项" + }, + "MESSAGING_SERVICE_SID": { + "LABEL": "短信服务 SID", + "PLACEHOLDER": "请输入您的 Twilio 短信服务 SID", + "ERROR": "此字段是必填项", + "USE_MESSAGING_SERVICE": "使用 Twilio 短信服务" + }, "CHANNEL_TYPE": { "LABEL": "频道类型", "ERROR": "请选择您的频道类型" @@ -97,14 +159,14 @@ "ERROR": "此字段是必填项" }, "CHANNEL_NAME": { - "LABEL": "频道类型", - "PLACEHOLDER": "请输入频道名称", + "LABEL": "收件箱名称", + "PLACEHOLDER": "请输入收件箱名称", "ERROR": "此字段是必填项" }, "PHONE_NUMBER": { "LABEL": "电话号码", "PLACEHOLDER": "请输入发送消息的电话号码。", - "ERROR": "请输入一个有效的值。电话号码应该以`+`开始。" + "ERROR": "请提供一个有效的电话号码,以`+`符号开头,且不包含任何空格。" }, "API_CALLBACK": { "TITLE": "回调地址", @@ -115,9 +177,188 @@ "ERROR_MESSAGE": "我们无法验证 Twilio 凭据,请重试" } }, + "SMS": { + "TITLE": "短信通道", + "DESC": "开始通过短信支持您的客户", + "PROVIDERS": { + "LABEL": "API提供商", + "TWILIO": "Twilio", + "BANDWIDTH": "Bandwidth" + }, + "API": { + "ERROR_MESSAGE": "我们无法保存短信通道" + }, + "BANDWIDTH": { + "ACCOUNT_ID": { + "LABEL": "账号 ID", + "PLACEHOLDER": "请输入您的 Bandwidth 应用ID", + "ERROR": "此字段是必填项" + }, + "API_KEY": { + "LABEL": "API 密钥", + "PLACEHOLDER": "请输入您的Bandwidth API Key", + "ERROR": "此字段是必填项" + }, + "API_SECRET": { + "LABEL": "API秘钥", + "PLACEHOLDER": "请输入您的Bandwidth API Secret", + "ERROR": "此字段是必填项" + }, + "APPLICATION_ID": { + "LABEL": "应用ID", + "PLACEHOLDER": "请输入您的 Bandwidth 应用ID", + "ERROR": "此字段是必填项" + }, + "INBOX_NAME": { + "LABEL": "收件箱名称", + "PLACEHOLDER": "请输入收件箱名称", + "ERROR": "此字段是必填项" + }, + "PHONE_NUMBER": { + "LABEL": "电话号码", + "PLACEHOLDER": "请输入发送消息的电话号码。", + "ERROR": "请提供以'+'号开头且不包含任何空格的有效电话号码" + }, + "SUBMIT_BUTTON": "创建Bandwidth渠道", + "API": { + "ERROR_MESSAGE": "我们无法身份验证Bandwidth凭据,请重试" + }, + "API_CALLBACK": { + "TITLE": "回调地址", + "SUBTITLE": "您必须使用这里提到的URL来配置Bandwidth的消息回调URL。" + } + } + }, + "WHATSAPP": { + "TITLE": "WhatsApp 渠道", + "DESC": "开始通过WhatsApp支持您的客户", + "PROVIDERS": { + "LABEL": "API提供商", + "WHATSAPP_EMBEDDED": "WhatsApp 商务版", + "TWILIO": "Twilio", + "WHATSAPP_CLOUD": "WhatsApp 云服务", + "WHATSAPP_CLOUD_DESC": "通过 Meta 快速完成设置", + "TWILIO_DESC": "通过 Twilio 凭据连接", + "360_DIALOG": "360Dialog" + }, + "SELECT_PROVIDER": { + "TITLE": "选择您的 API 提供商", + "DESCRIPTION": "Choose your WhatsApp provider. You can connect directly through Meta which requires no setup, or connect through Twilio using your account credentials." + }, + "INBOX_NAME": { + "LABEL": "收件箱名称", + "PLACEHOLDER": "请输入收件箱名称", + "ERROR": "此字段是必填项" + }, + "PHONE_NUMBER": { + "LABEL": "电话号码", + "PLACEHOLDER": "请输入发送消息的电话号码。", + "ERROR": "请提供以'+'号开头且不包含任何空格的有效电话号码" + }, + "PHONE_NUMBER_ID": { + "LABEL": "电话号码标识", + "PLACEHOLDER": "请在输入框中输入从Facebook开发者控制台获得的电话号码标识", + "ERROR": "请输入一个有效的值" + }, + "BUSINESS_ACCOUNT_ID": { + "LABEL": "企业账户ID", + "PLACEHOLDER": "请在输入框中输入从Facebook开发者控制台获得的企业账户ID", + "ERROR": "请输入一个有效的值" + }, + "WEBHOOK_VERIFY_TOKEN": { + "LABEL": "Webhook 验证令牌", + "PLACEHOLDER": "请输入您要配置为Facebook Webhook的验证令牌。", + "ERROR": "请输入一个有效的值" + }, + "API_KEY": { + "LABEL": "API 密钥", + "SUBTITLE": "配置 WhatsApp API 密钥", + "PLACEHOLDER": "API 密钥", + "ERROR": "请输入一个有效的值" + }, + "API_CALLBACK": { + "TITLE": "回调地址", + "SUBTITLE": "您需要在Facebook开发者门户中使用下面显示的值配置Webhook URL和验证令牌。", + "WEBHOOK_URL": "Webhook 网址", + "WEBHOOK_VERIFICATION_TOKEN": "Webhook 验证令牌" + }, + "SUBMIT_BUTTON": "创建WhatsApp频道", + "EMBEDDED_SIGNUP": { + "TITLE": "Quick setup with Meta", + "DESC": "Use the WhatsApp Embedded Signup flow to quickly connect new numbers. You will be redirected to Meta to log into your WhatsApp Business account. Having admin access will help make the setup smooth and easy.", + "BENEFITS": { + "TITLE": "Benefits of Embedded Signup:", + "EASY_SETUP": "No manual configuration required", + "SECURE_AUTH": "Secure OAuth based authentication", + "AUTO_CONFIG": "Automatic webhook and phone number configuration" + }, + "LEARN_MORE": { + "TEXT": "To learn more about integrated signup, pricing, and limitations, visit {link}.", + "LINK_TEXT": "this link" + }, + "SUBMIT_BUTTON": "Connect with WhatsApp Business", + "AUTH_PROCESSING": "Authenticating with Meta", + "WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...", + "PROCESSING": "Setting up your WhatsApp Business Account", + "LOADING_SDK": "加载 Facebook SDK...", + "CANCELLED": "WhatsApp 注册已取消", + "SUCCESS_TITLE": "WhatsApp Business Account Connected!", + "WAITING_FOR_AUTH": "正在等待认证...", + "INVALID_BUSINESS_DATA": "Invalid business data received from Facebook. Please try again.", + "SIGNUP_ERROR": "注册时发生错误", + "AUTH_NOT_COMPLETED": "Authentication not completed. Please restart the process.", + "SUCCESS_FALLBACK": "WhatsApp Business Account has been successfully configured", + "MANUAL_FALLBACK": "If your number is already connected to the WhatsApp Business Platform (API), or if you’re a tech provider onboarding your own number, please use the {link} flow", + "MANUAL_LINK_TEXT": "手动设置流程" + }, + "API": { + "ERROR_MESSAGE": "我们无法保存 WhatsApp 通道" + } + }, + "VOICE": { + "TITLE": "语音频道", + "DESC": "Integrate Twilio Voice and start supporting your customers via phone calls.", + "PHONE_NUMBER": { + "LABEL": "电话号码", + "PLACEHOLDER": "Enter your phone number (e.g. +1234567890)", + "ERROR": "Please provide a valid phone number in E.164 format (e.g. +1234567890)" + }, + "TWILIO": { + "ACCOUNT_SID": { + "LABEL": "账户 SID", + "PLACEHOLDER": "Enter your Twilio Account SID", + "REQUIRED": "Account SID is required" + }, + "AUTH_TOKEN": { + "LABEL": "身份验证令牌", + "PLACEHOLDER": "Enter your Twilio Auth Token", + "REQUIRED": "Auth Token is required" + }, + "API_KEY_SID": { + "LABEL": "API 密钥 SID", + "PLACEHOLDER": "输入您的 Twilio API 密钥的 SID", + "REQUIRED": "API 密钥 SID 未填写" + }, + "API_KEY_SECRET": { + "LABEL": "API 密钥密码", + "PLACEHOLDER": "Enter your Twilio API Key Secret", + "REQUIRED": "API Key Secret is required" + } + }, + "CONFIGURATION": { + "TWILIO_VOICE_URL_TITLE": "Twilio Voice URL", + "TWILIO_VOICE_URL_SUBTITLE": "Configure this URL as the Voice URL on your Twilio phone number and TwiML App.", + "TWILIO_STATUS_URL_TITLE": "Twilio Status Callback URL", + "TWILIO_STATUS_URL_SUBTITLE": "Configure this URL as the Status Callback URL on your Twilio phone number." + }, + "SUBMIT_BUTTON": "创建语音频道", + "API": { + "ERROR_MESSAGE": "我们无法创建语音频道" + } + }, "API_CHANNEL": { "TITLE": "API 频道", - "DESC": "Integrate with API channel and start supporting your customers.", + "DESC": "与API通道集成,开始为您的客户提供支持", "CHANNEL_NAME": { "LABEL": "频道类型", "PLACEHOLDER": "请输入频道名称", @@ -125,7 +366,7 @@ }, "WEBHOOK_URL": { "LABEL": "Webhook 网址", - "SUBTITLE": "Configure the URL where you want to recieve callbacks on events.", + "SUBTITLE": "配置您希望接收事件回调的URL。", "PLACEHOLDER": "Webhook 网址" }, "SUBMIT_BUTTON": "创建 API 频道", @@ -135,7 +376,7 @@ }, "EMAIL_CHANNEL": { "TITLE": "电子邮件频道", - "DESC": "Integrate you email inbox.", + "DESC": "集成您的电子邮件收件箱。", "CHANNEL_NAME": { "LABEL": "频道类型", "PLACEHOLDER": "请输入频道名称", @@ -143,35 +384,152 @@ }, "EMAIL": { "LABEL": "Email", - "SUBTITLE": "向您的客户发送支持工单的电子邮件", + "SUBTITLE": "提供您的客户发送支持请求的电子邮件地址", "PLACEHOLDER": "Email" }, "SUBMIT_BUTTON": "创建电子邮件频道", "API": { "ERROR_MESSAGE": "我们无法保存电子邮件频道" }, - "FINISH_MESSAGE": "开始将您的电子邮件转发到以下电子邮件地址。" + "FINISH_MESSAGE": "开始将您的电子邮件转发到以下电子邮件地址。", + "FINISH_MESSAGE_NO_FORWARDING": "Your email inbox has been created successfully! You need to configure SMTP and IMAP credentials to send and receive emails. Without these settings, no emails will be processed.", + "FORWARDING_ADDRESS_LABEL": "Forward emails to this address:", + "CONFIGURE_SMTP_IMAP_LINK": "点击这里", + "CONFIGURE_SMTP_IMAP_TEXT": " to configure IMAP and SMTP settings" + }, + "LINE_CHANNEL": { + "TITLE": "LINE频道", + "DESC": "与LINE频道集成,开始为您的客户提供支持", + "CHANNEL_NAME": { + "LABEL": "频道类型", + "PLACEHOLDER": "请输入频道名称", + "ERROR": "此字段是必填项" + }, + "LINE_CHANNEL_ID": { + "LABEL": "LINE 频道 ID", + "PLACEHOLDER": "LINE 频道 ID" + }, + "LINE_CHANNEL_SECRET": { + "LABEL": "LINE 频道秘钥", + "PLACEHOLDER": "LINE 频道秘钥" + }, + "LINE_CHANNEL_TOKEN": { + "LABEL": "LINE 频道验证令牌", + "PLACEHOLDER": "LINE 频道验证令牌" + }, + "SUBMIT_BUTTON": "创建LINE频道", + "API": { + "ERROR_MESSAGE": "我们无法保存LINE频道" + }, + "API_CALLBACK": { + "TITLE": "回调地址", + "SUBTITLE": "您需要在LINE应用程序中配置Webhook URL,使用此处提到的URL" + } + }, + "TELEGRAM_CHANNEL": { + "TITLE": "Telegram 频道", + "DESC": "与Telegram通道集成,开始为您的客户提供支持", + "BOT_TOKEN": { + "LABEL": "机器人令牌", + "SUBTITLE": "配置您从 Telegram BotFather 获得的机器人令牌。", + "PLACEHOLDER": "机器人令牌" + }, + "SUBMIT_BUTTON": "创建 Telegram 頻道", + "API": { + "ERROR_MESSAGE": "我们无法保存 Telegram 通道" + } }, "AUTH": { - "TITLE": "频道", - "DESC": "目前我们支持网站在线聊天小部件、Facebook页面和Twitter配置文件作为平台。 我们在工作中拥有更多平台,如Whatsapp、Email、Telegram 和 Line,这些平台将很快出台。" + "TITLE": "选择一个通道", + "DESC": "Chatwoot支持实时聊天小部件、Facebook Messenger、Twitter个人资料、WhatsApp、电子邮件等作为通道。如果您想构建自定义通道,可以使用API通道创建。要开始,请从下面的通道中选择一个。", + "TITLE_NEXT": "完成设置", + "TITLE_FINISH": "搞定!", + "CHANNEL": { + "WEBSITE": { + "TITLE": "网站", + "DESCRIPTION": "创建在线聊天小部件" + }, + "FACEBOOK": { + "TITLE": "Facebook", + "DESCRIPTION": "连接您的 Facebook 页面" + }, + "WHATSAPP": { + "TITLE": "WhatsApp", + "DESCRIPTION": "在 WhatsApp 上回应您的客户" + }, + "EMAIL": { + "TITLE": "Email", + "DESCRIPTION": "连接到 Gmail、Outlook,或其他提供商" + }, + "SMS": { + "TITLE": "短信", + "DESCRIPTION": "将短信频道与Twilio 或 Bandwidth 集成" + }, + "API": { + "TITLE": "API", + "DESCRIPTION": "使用我们的 API 创建一个自定义频道" + }, + "TELEGRAM": { + "TITLE": "Telegram", + "DESCRIPTION": "使用 Bot 令牌配置 Telegram 频道" + }, + "LINE": { + "TITLE": "Line", + "DESCRIPTION": "集成 Line" + }, + "INSTAGRAM": { + "TITLE": "Instagram", + "DESCRIPTION": "连接您的 instagram 帐户" + }, + "TIKTOK": { + "TITLE": "TikTok", + "DESCRIPTION": "Connect your TikTok account" + }, + "VOICE": { + "TITLE": "语音", + "DESCRIPTION": "与 Twilio 语音集成" + } + } }, "AGENTS": { "TITLE": "客服代理们", - "DESC": "在这里您可以添加代理来管理您新创建的收件箱。只有这些选定的代理才能访问您的收件箱。 不属于此收件箱的代理人在登录时将无法看到或回复此收件箱中的消息。
PS: 作为管理员,如果您需要访问所有收件箱, 您应该将自己添加到您创建的所有收件箱中。" + "DESC": "在这里您可以添加代理来管理您新创建的收件箱。只有这些选定的代理才能访问您的收件箱。不属于此收件箱的代理人在登录时将无法看到或回复此收件箱中的消息。
PS:作为管理员,如果您需要访问所有收件箱,您应该将自己添加到您创建的所有收件箱中。", + "VALIDATION_ERROR": "请至少为您的收件箱添加一个代理", + "PICK_AGENTS": "为收件箱选择代理" }, "DETAILS": { "TITLE": "收件箱详细信息", - "DESC": "从下面的下拉菜单中选择您想要连接到聊天室的 Facebook 页面。 您也可以给您的收件箱提供一个自定义名称以便更好地识别身份。" + "DESC": "从下面的下拉菜单中选择您想要连接到聊天室的 Facebook 页面。您也可以给您的收件箱提供一个自定义名称以便更好地识别身份。" }, "FINISH": { - "TITLE": "已被注明!", - "DESC": "您已成功地将您的Facebook页面与Chatwoot集成。下次客户消息您的页面时,对话将自动出现在收件箱中。
我们还为您提供了一个小部件脚本,您可以轻松地添加到您的网站。 在您的网站上登录后, 客户可以在没有任何外部工具帮助的情况下从您的网站向您发送消息,对话将会在这里出现在Chatwoot 上。
酷,好吧?好吧,我们肯定试着是 :)" + "TITLE": "搞定!", + "DESC": "您已成功地将您的Facebook页面与Chatwoot集成。下次客户消息您的页面时,对话将自动出现在收件箱中。
我们还为您提供了一个小部件脚本,您可以轻松地添加到您的网站。在您的网站上登录后,客户可以在没有任何外部工具帮助的情况下从您的网站向您发送消息,对话将会在这里出现在Chatwoot上。
酷,对吧?我们肯定试着是 :)" + }, + "EMAIL_PROVIDER": { + "TITLE": "选择您的电子邮件提供商", + "DESCRIPTION": "从下面的列表中选择一个电子邮件提供商。如果您的电子邮件提供商不在列表中,您可以选择其他提供商选项并提供 IMAP 和 SMTP 凭据。" + }, + "MICROSOFT": { + "TITLE": "Microsoft Email", + "DESCRIPTION": "点击“使用Microsoft登录”按钮以开始。您将被重定向到电子邮件登录页面。一旦您接受了请求的权限,您将被重定向回收件箱创建步骤。", + "EMAIL_PLACEHOLDER": "输入电子邮件地址", + "SIGN_IN": "使用Microsoft登录", + "ERROR_MESSAGE": "连接Microsoft时出现错误,请重试" + }, + "GOOGLE": { + "TITLE": "Google 邮箱", + "DESCRIPTION": "点击“使用Google登录”按钮以开始。您将被重定向到电子邮件登录页面。一旦您接受了请求的权限,您将被重定向回收件箱创建步骤。", + "SIGN_IN": "使用Google登录", + "EMAIL_PLACEHOLDER": "输入电子邮件地址", + "ERROR_MESSAGE": "连接Google时出现错误,请重试" } }, "DETAILS": { "LOADING_FB": "在 Facebook 上认证你... ..", + "ERROR_FB_LOADING": "加载Facebook SDK时出错。请禁用任何广告拦截器并尝试使用不同的浏览器。", "ERROR_FB_AUTH": "出错了,请刷新页面...", + "ERROR_FB_UNAUTHORIZED": "您无权执行此操作。", + "ERROR_FB_UNAUTHORIZED_HELP": "请确保您拥有对Facebook页面的完全控制权。您可以在 这里 阅读更多关于Facebook角色的信息。", "CREATING_CHANNEL": "创建您的收件箱...", "TITLE": "配置收件箱详情", "DESC": "" @@ -182,9 +540,13 @@ }, "FINISH": { "TITLE": "您的收件箱已准备就绪!", - "MESSAGE": "您现在可以通过您的新频道与您的客户联系。快乐支持 ", + "MESSAGE": "您现在可以通过您的新频道与您的客户联系。快乐支持", "BUTTON_TEXT": "带我到这里", - "WEBSITE_SUCCESS": "您已成功完成创建网站频道。复制下面显示的代码并将其粘贴在您的网站上。 下次客户使用实时聊天时,对话将自动出现在您的收件箱中。" + "MORE_SETTINGS": "更多设置", + "WEBSITE_SUCCESS": "您已成功完成创建网站频道。复制下面显示的代码并将其粘贴在您的网站上。下次客户使用实时聊天时,对话将自动出现在您的收件箱中。", + "WHATSAPP_QR_INSTRUCTION": "扫描上面的二维码以快速测试您的 WhatsApp 收件箱", + "MESSENGER_QR_INSTRUCTION": "扫描上面的二维码以快速测试您的 Facebook Messenger 收件箱", + "TELEGRAM_QR_INSTRUCTION": "扫描以上二维码以快速测试您的 Telegram 收件箱" }, "REAUTH": "重新授权", "VIEW": "查看", @@ -192,47 +554,586 @@ "API": { "SUCCESS_MESSAGE": "已成功更新收件箱设置", "AUTO_ASSIGNMENT_SUCCESS_MESSAGE": "自动分配成功更新", - "ERROR_MESSAGE": "无法更新部件颜色。请稍后再试。" + "ERROR_MESSAGE": "我们无法更新收件箱设置。请稍后再试。" }, - "AUTO_ASSIGNMENT": { + "EMAIL_COLLECT_BOX": { "ENABLED": "已启用", "DISABLED": "已禁用" + }, + "ENABLE_CSAT": { + "ENABLED": "已启用", + "DISABLED": "已禁用" + }, + "SENDER_NAME_SECTION": { + "TITLE": "发件人姓名", + "SUB_TEXT": "选择您的客户在收到您的代理的电子邮件时显示的名称。", + "FOR_EG": "例如:", + "FRIENDLY": { + "TITLE": "友好的", + "FROM": "发自", + "SUBTITLE": "在发件人姓名中添加回复的代理名称,使其更加友好。" + }, + "PROFESSIONAL": { + "TITLE": "专业的", + "SUBTITLE": "仅在电子邮件标题中使用配置的业务名称作为发件人姓名。" + }, + "BUSINESS_NAME": { + "BUTTON_TEXT": "配置您的业务名称", + "PLACEHOLDER": "输入您的业务名称", + "SAVE_BUTTON_TEXT": "保存" + } + }, + "ALLOW_MESSAGES_AFTER_RESOLVED": { + "ENABLED": "已启用", + "DISABLED": "已禁用" + }, + "ENABLE_CONTINUITY_VIA_EMAIL": { + "ENABLED": "已启用", + "DISABLED": "已禁用" + }, + "LOCK_TO_SINGLE_CONVERSATION": { + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." + }, + "ENABLE_HMAC": { + "LABEL": "启用" } }, "DELETE": { "BUTTON_TEXT": "删除", + "AVATAR_DELETE_BUTTON_TEXT": "删除头像", "CONFIRM": { "TITLE": "确认删除", - "MESSAGE": "您确定要删除吗? ", - "YES": "是,删除 ", - "NO": "不,保留 " + "MESSAGE": "您确定要删除吗?", + "PLACE_HOLDER": "请输入 {inboxName} 以确认", + "YES": "是,删除", + "NO": "不,保留" }, "API": { "SUCCESS_MESSAGE": "收件箱删除成功", - "ERROR_MESSAGE": "无法删除收件箱。请稍后再试。" + "ERROR_MESSAGE": "无法删除收件箱。请稍后再试。", + "AVATAR_SUCCESS_MESSAGE": "收件箱头像删除成功", + "AVATAR_ERROR_MESSAGE": "无法删除收件箱头像。请稍后再试。" } }, "TABS": { "SETTINGS": "设置", - "COLLABORATORS": "Collaborators", - "CONFIGURATION": "Configuration" + "COLLABORATORS": "协作者", + "CONFIGURATION": "配置", + "CAMPAIGN": "活动", + "PRE_CHAT_FORM": "预聊天表单", + "BUSINESS_HOURS": "工作时间", + "WIDGET_BUILDER": "小部件生成器", + "BOT_CONFIGURATION": "机器人配置", + "ACCOUNT_HEALTH": "Account Health", + "CSAT": "客户满意度" + }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", + "ACCOUNT_HEALTH": { + "TITLE": "Manage your WhatsApp account", + "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", + "GO_TO_SETTINGS": "Go to Meta Business Manager", + "NO_DATA": "Health data is not available", + "FIELDS": { + "DISPLAY_PHONE_NUMBER": { + "LABEL": "Display phone number", + "TOOLTIP": "Phone number displayed to customers" + }, + "VERIFIED_NAME": { + "LABEL": "Business name", + "TOOLTIP": "Business name verified by WhatsApp" + }, + "DISPLAY_NAME_STATUS": { + "LABEL": "Display name status", + "TOOLTIP": "Status of your business name verification" + }, + "QUALITY_RATING": { + "LABEL": "Quality rating", + "TOOLTIP": "WhatsApp quality rating for your account" + }, + "MESSAGING_LIMIT_TIER": { + "LABEL": "Messaging limit tier", + "TOOLTIP": "Daily messaging limit for your account" + }, + "ACCOUNT_MODE": { + "LABEL": "Account mode", + "TOOLTIP": "Current operating mode of your WhatsApp account" + } + }, + "VALUES": { + "TIERS": { + "TIER_250": "250 customers per 24h", + "TIER_1000": "1K customers per 24h", + "TIER_1K": "1K customers per 24h", + "TIER_10K": "10K customers per 24h", + "TIER_100K": "100K customers per 24h", + "TIER_UNLIMITED": "Unlimited customers per 24h", + "UNKNOWN": "Rating not available" + }, + "STATUSES": { + "APPROVED": "已批准", + "PENDING_REVIEW": "Pending Review", + "AVAILABLE_WITHOUT_REVIEW": "Available Without Review", + "REJECTED": "Rejected", + "DECLINED": "Declined", + "NON_EXISTS": "Non exists" + }, + "MODES": { + "SANDBOX": "Sandbox", + "LIVE": "实时" + } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" + } }, "SETTINGS": "设置", "FEATURES": { - "LABEL": "Features", - "DISPLAY_FILE_PICKER": "Display file picker on the widget", - "DISPLAY_EMOJI_PICKER": "Display emoji picker on the widget" + "LABEL": "特性", + "DISPLAY_FILE_PICKER": "在小部件上显示文件选择器", + "DISPLAY_EMOJI_PICKER": "在小部件上显示表情选择器", + "ALLOW_END_CONVERSATION": "允许用户从小部件结束对话", + "USE_INBOX_AVATAR_FOR_BOT": "使用收件箱名称和头像作为机器人" }, "SETTINGS_POPUP": { "MESSENGER_HEADING": "Messenger 脚本", "MESSENGER_SUB_HEAD": "将此按钮放置在窗体标签中", + "ALLOWED_DOMAINS": { + "TITLE": "Allowed Domains", + "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", + "PLACEHOLDER": "example.com, www.example.com, app.example.com" + }, "INBOX_AGENTS": "客服代理们", "INBOX_AGENTS_SUB_TEXT": "添加或删除此收件箱中的客服", + "AGENT_ASSIGNMENT": "对话分配", + "AGENT_ASSIGNMENT_SUB_TEXT": "更新对话分配设置", "UPDATE": "更新", + "ENABLE_EMAIL_COLLECT_BOX": "启用电子邮件收集框", + "ENABLE_EMAIL_COLLECT_BOX_SUB_TEXT": "在新对话中启用或禁用电子邮件收集框", "AUTO_ASSIGNMENT": "启用自动分配", + "SENDER_NAME_SECTION": "在电子邮件中启用代理名称", + "SENDER_NAME_SECTION_TEXT": "启用/禁用在电子邮件中显示代理名称,如果禁用,将显示业务名称", + "ENABLE_CONTINUITY_VIA_EMAIL": "通过电子邮件启用对话连续性", + "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "如果有联系人的电子邮件地址,对话将会继续在电子邮件中进行。", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "收件箱设置", "INBOX_UPDATE_SUB_TEXT": "更新收件箱设置", - "AUTO_ASSIGNMENT_SUB_TEXT": "启用或禁用添加到此收件箱的代理人自动分配新的会话。" + "AUTO_ASSIGNMENT_SUB_TEXT": "启用或禁用添加到此收件箱的代理人自动分配新的会话。", + "HMAC_VERIFICATION": "用户身份验证", + "HMAC_DESCRIPTION": "使用这个密钥,您可以生成一个秘密令牌,用于验证您用户的身份", + "HMAC_LINK_TO_DOCS": "您可以在这里阅读更多信息。", + "HMAC_MANDATORY_VERIFICATION": "强制执行用户身份验证", + "HMAC_MANDATORY_DESCRIPTION": "如果启用,无法验证的请求将被拒绝。", + "INBOX_IDENTIFIER": "收件箱标识符", + "INBOX_IDENTIFIER_SUB_TEXT": "使用此处显示的`inbox_identifier`令牌来验证您的API客户端。", + "FORWARD_EMAIL_TITLE": "转发到电子邮件", + "FORWARD_EMAIL_SUB_TEXT": "开始将您的电子邮件转发到以下电子邮件地址。", + "FORWARD_EMAIL_NOT_CONFIGURED": "Forwarding emails to your inbox is currently disabled on this installation. To use this feature, it must be enabled by your administrator. Please get in touch with them to proceed.", + "ALLOW_MESSAGES_AFTER_RESOLVED": "允许在对话解决后发送消息", + "ALLOW_MESSAGES_AFTER_RESOLVED_SUB_TEXT": "允许最终用户在对话解决后发送消息。", + "WHATSAPP_SECTION_SUBHEADER": "此API密钥用于与WhatsApp API集成。", + "WHATSAPP_SECTION_UPDATE_SUBHEADER": "输入新的API密钥以用于与WhatsApp API集成。", + "WHATSAPP_SECTION_TITLE": "API 密钥", + "WHATSAPP_SECTION_UPDATE_TITLE": "更新API密钥", + "WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "在此处输入新的API密钥", + "WHATSAPP_SECTION_UPDATE_BUTTON": "更新", + "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp 嵌入注册", + "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "此收件箱已通过嵌入注册的 WhatsApp 连接。", + "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "您可以重新配置此收件箱来更新您的 WhatsApp Business 设置。", + "WHATSAPP_RECONFIGURE_BUTTON": "重新配置", + "WHATSAPP_CONNECT_TITLE": "连接到 WhatsApp Business", + "WHATSAPP_CONNECT_SUBHEADER": "Upgrade to WhatsApp embedded signup for easier management.", + "WHATSAPP_CONNECT_DESCRIPTION": "Connect this inbox to WhatsApp Business for enhanced features and easier management.", + "WHATSAPP_CONNECT_BUTTON": "连接", + "WHATSAPP_CONNECT_SUCCESS": "Successfully connected to WhatsApp Business!", + "WHATSAPP_CONNECT_ERROR": "Failed to connect to WhatsApp Business. Please try again.", + "WHATSAPP_RECONFIGURE_SUCCESS": "Successfully reconfigured WhatsApp Business!", + "WHATSAPP_RECONFIGURE_ERROR": "Failed to reconfigure WhatsApp Business. Please try again.", + "WHATSAPP_APP_ID_MISSING": "WhatsApp ID未配置。请联系您的管理员。", + "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.", + "WHATSAPP_LOGIN_CANCELLED": "WhatsApp login was cancelled. Please try again.", + "WHATSAPP_WEBHOOK_TITLE": "Webhook 验证令牌", + "WHATSAPP_WEBHOOK_SUBHEADER": "此令牌用于验证webhook端点的真实性。", + "WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates", + "WHATSAPP_TEMPLATES_SYNC_SUBHEADER": "Manually sync message templates from WhatsApp to update your available templates.", + "WHATSAPP_TEMPLATES_SYNC_BUTTON": "同步模板", + "WHATSAPP_TEMPLATES_SYNC_SUCCESS": "Templates sync initiated successfully. It may take a couple of minutes to update.", + "UPDATE_PRE_CHAT_FORM_SETTINGS": "更新预聊天表单设置" + }, + "HELP_CENTER": { + "LABEL": "帮助中心", + "PLACEHOLDER": "选择帮助中心", + "SELECT_PLACEHOLDER": "选择帮助中心", + "NONE": "啥都没有", + "REMOVE": "移除帮助中心", + "SUB_TEXT": "将帮助中心附加到收件箱" + }, + "AUTO_ASSIGNMENT": { + "MAX_ASSIGNMENT_LIMIT": "自动分配限制", + "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "请输入一个大于0的值", + "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "限制从此收件箱自动分配给代理的对话的最大数量" + }, + "ASSIGNMENT": { + "TITLE": "对话分配", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "状态", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "取消", + "CONFIRM_DELETE": "删除", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, + "FACEBOOK_REAUTHORIZE": { + "TITLE": "重新授权", + "SUBTITLE": "您的Facebook连接已过期,请重新连接您的Facebook页面以继续服务", + "MESSAGE_SUCCESS": "重新连接成功", + "MESSAGE_ERROR": "出现错误,请重试" + }, + "PRE_CHAT_FORM": { + "DESCRIPTION": "预聊天表单使您能够在用户开始与您对话之前捕获用户信息。", + "SET_FIELDS": "预聊天表单字段", + "SET_FIELDS_HEADER": { + "FIELDS": "字段", + "LABEL": "标签", + "PLACE_HOLDER": "占位符", + "KEY": "键", + "TYPE": "类型", + "REQUIRED": "必填项" + }, + "ENABLE": { + "LABEL": "启用预聊天表单", + "OPTIONS": { + "ENABLED": "是", + "DISABLED": "否" + } + }, + "PRE_CHAT_MESSAGE": { + "LABEL": "预聊天消息", + "PLACEHOLDER": "此消息将与表单一起显示给用户" + }, + "REQUIRE_EMAIL": { + "LABEL": "访客在开始聊天前应提供他们的姓名和电子邮件地址" + } + }, + "CSAT": { + "TITLE": "启用CSAT", + "SUBTITLE": "在对话结束时自动启动 CSAT 问卷,以了解客户如何感觉到他们的支持体验。 跟踪满意的趋势并查明一段时间内需要改进的领域。", + "DISPLAY_TYPE": { + "LABEL": "显示类型" + }, + "MESSAGE": { + "LABEL": "消息", + "PLACEHOLDER": "请输入一条消息以将此表格显示给用户" + }, + "BUTTON_TEXT": { + "LABEL": "Button text", + "PLACEHOLDER": "Please rate us" + }, + "LANGUAGE": { + "LABEL": "语言", + "PLACEHOLDER": "Select template language" + }, + "MESSAGE_PREVIEW": { + "LABEL": "Message preview", + "TOOLTIP": "This may vary slightly when rendered on WhatsApp's platform." + }, + "TEMPLATE_STATUS": { + "APPROVED": "Approved by WhatsApp", + "PENDING": "Pending WhatsApp approval", + "REJECTED": "Meta rejected the template", + "DEFAULT": "Needs WhatsApp approval", + "NOT_FOUND": "The template does not exist in the Meta platform." + }, + "TEMPLATE_CREATION": { + "SUCCESS_MESSAGE": "WhatsApp template created successfully and sent for approval", + "ERROR_MESSAGE": "Failed to create WhatsApp template" + }, + "TEMPLATE_UPDATE_DIALOG": { + "TITLE": "Edit survey details", + "DESCRIPTION": "We will delete the previous template and make a new one which will be sent again for WhatsApp approval", + "CONFIRM": "Create new template", + "CANCEL": "返回" + }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, + "SURVEY_RULE": { + "LABEL": "问卷规则", + "DESCRIPTION_PREFIX": "发送此问卷如果对话", + "DESCRIPTION_SUFFIX": "任意标签", + "OPERATOR": { + "CONTAINS": "包含", + "DOES_NOT_CONTAINS": "不包含" + }, + "SELECT_PLACEHOLDER": "选择标签" + }, + "NOTE": "注:每次对话只发送一次 CSAT 问卷", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", + "API": { + "SUCCESS_MESSAGE": "CSAT 设置更新成功", + "ERROR_MESSAGE": "我们无法更新 CSAT 设置。请稍后再试。" + } + }, + "BUSINESS_HOURS": { + "TITLE": "设置您的可用性", + "SUBTITLE": "在您的实时聊天小部件上设置您的可用性", + "WEEKLY_TITLE": "设置您的每周工作时间", + "TIMEZONE_LABEL": "选择时区", + "UPDATE": "更新工作时间设置", + "TOGGLE_AVAILABILITY": "为此收件箱启用业务可用性", + "UNAVAILABLE_MESSAGE_LABEL": "对访客的不可用消息", + "TOGGLE_HELP": "启用业务可用性将在实时聊天小部件上显示可用时间,即使所有代理都离线。在可用时间之外,访客将收到一条消息和预聊天表单的警告。", + "DAY": { + "DAY": "日", + "AVAILABILITY": "有效的", + "HOURS": "小时", + "ENABLE": "为此天启用可用性", + "UNAVAILABLE": "不可用", + "VALIDATION_ERROR": "起始时间应在结束时间之前。", + "CHOOSE": "选择" + }, + "ALL_DAY": "全天" + }, + "IMAP": { + "TITLE": "IMAP", + "SUBTITLE": "设置您的IMAP详情", + "NOTE_TEXT": "要启用SMTP,请配置IMAP。", + "UPDATE": "更新IMAP设置", + "TOGGLE_AVAILABILITY": "为此收件箱启用IMAP配置", + "TOGGLE_HELP": "启用IMAP将帮助用户接收电子邮件", + "EDIT": { + "SUCCESS_MESSAGE": "IMAP设置更新成功", + "ERROR_MESSAGE": "无法更新IMAP设置" + }, + "ADDRESS": { + "LABEL": "地址", + "PLACE_HOLDER": "地址 (例如:imap.gmail.com)" + }, + "PORT": { + "LABEL": "端口", + "PLACE_HOLDER": "端口" + }, + "LOGIN": { + "LABEL": "登录", + "PLACE_HOLDER": "登录" + }, + "PASSWORD": { + "LABEL": "密码", + "PLACE_HOLDER": "密码" + }, + "ENABLE_SSL": "启用SSL" + }, + "MICROSOFT": { + "TITLE": "Microsoft", + "SUBTITLE": "重新授权您的Microsoft帐户" + }, + "SMTP": { + "TITLE": "SMTP", + "SUBTITLE": "设置您的SMTP详情", + "UPDATE": "更新SMTP设置", + "TOGGLE_AVAILABILITY": "为此收件箱启用SMTP配置", + "TOGGLE_HELP": "启用SMTP将帮助用户发送电子邮件", + "EDIT": { + "SUCCESS_MESSAGE": "SMTP设置更新成功", + "ERROR_MESSAGE": "无法更新SMTP设置" + }, + "ADDRESS": { + "LABEL": "地址", + "PLACE_HOLDER": "地址 (例如:smtp.gmail.com)" + }, + "PORT": { + "LABEL": "端口", + "PLACE_HOLDER": "端口" + }, + "LOGIN": { + "LABEL": "登录", + "PLACE_HOLDER": "登录" + }, + "PASSWORD": { + "LABEL": "密码", + "PLACE_HOLDER": "密码" + }, + "DOMAIN": { + "LABEL": "域名", + "PLACE_HOLDER": "域名" + }, + "ENCRYPTION": "加密", + "SSL_TLS": "SSL/TLS", + "START_TLS": "STARTTLS", + "OPEN_SSL_VERIFY_MODE": "Open SSL 验证模式", + "AUTH_MECHANISM": "认证机制" + }, + "NOTE": "注意:", + "WIDGET_BUILDER": { + "WIDGET_OPTIONS": { + "AVATAR": { + "LABEL": "网站头像", + "DELETE": { + "API": { + "SUCCESS_MESSAGE": "头像删除成功", + "ERROR_MESSAGE": "出现错误,请重试" + } + } + }, + "WEBSITE_NAME": { + "LABEL": "网站名称", + "PLACE_HOLDER": "输入您的网站名称 (例如:Acme Inc)", + "ERROR": "请输入有效的网站名称" + }, + "WELCOME_HEADING": { + "LABEL": "欢迎标题:", + "PLACE_HOLDER": "你好!" + }, + "WELCOME_TAGLINE": { + "LABEL": "欢迎标签行", + "PLACE_HOLDER": "如有疑问,请联系我们" + }, + "REPLY_TIME": { + "LABEL": "回复时间", + "IN_A_FEW_MINUTES": "通常在几分钟内回复您", + "IN_A_FEW_HOURS": "通常在几小时内回复您", + "IN_A_DAY": "通常在一天之内回复您" + }, + "WIDGET_COLOR_LABEL": "窗口小部件颜色", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "类型:", + "WIDGET_BUBBLE_LAUNCHER_TITLE": { + "DEFAULT": "联系我们", + "LABEL": "Launcher Title", + "PLACE_HOLDER": "联系我们" + }, + "UPDATE": { + "BUTTON_TEXT": "更新小部件设置", + "API": { + "SUCCESS_MESSAGE": "小部件设置更新成功", + "ERROR_MESSAGE": "无法更新小部件设置" + } + }, + "WIDGET_VIEW_OPTION": { + "PREVIEW": "预览", + "SCRIPT": "脚本" + }, + "WIDGET_BUBBLE_POSITION": { + "LEFT": "左侧", + "RIGHT": "右侧" + }, + "WIDGET_BUBBLE_TYPE": { + "STANDARD": "标准", + "EXPANDED_BUBBLE": "扩展气泡" + } + }, + "WIDGET_SCREEN": { + "DEFAULT": "默认", + "CHAT": "Chat mode" + }, + "REPLY_TIME": { + "IN_A_FEW_MINUTES": "通常在几分钟内回复您", + "IN_A_FEW_HOURS": "通常在几小时内回复您", + "IN_A_DAY": "通常在一天之内回复您" + }, + "FOOTER": { + "START_CONVERSATION_BUTTON_TEXT": "开始会话", + "CHAT_INPUT_PLACEHOLDER": "输入您的消息" + }, + "BODY": { + "TEAM_AVAILABILITY": { + "ONLINE": "我们在线", + "OFFLINE": "当前已离线" + }, + "USER_MESSAGE": "嗨", + "AGENT_MESSAGE": "您好" + }, + "BRANDING_TEXT": "由 Chatwoot 支持", + "SCRIPT_SETTINGS": "\n window.chatwootSettings = {options};" + }, + "EMAIL_PROVIDERS": { + "MICROSOFT": { + "TITLE": "Microsoft", + "DESCRIPTION": "与 Microsoft 关联" + }, + "GOOGLE": { + "TITLE": "Google", + "DESCRIPTION": "与 Google 关联" + }, + "OTHER_PROVIDERS": { + "TITLE": "其他提供商", + "DESCRIPTION": "与其他提供商关联" + } + }, + "CHANNELS": { + "MESSENGER": "Messenger", + "WEB_WIDGET": "网站", + "TWITTER_PROFILE": "推特", + "TWILIO_SMS": "Twilio 短信", + "WHATSAPP": "WhatsApp", + "SMS": "短信", + "EMAIL": "电子邮件", + "TELEGRAM": "Telegram", + "LINE": "Line", + "API": "API 频道", + "INSTAGRAM": "Instagram", + "TIKTOK": "TikTok", + "VOICE": "语音" } } } diff --git a/app/javascript/dashboard/i18n/locale/zh/integrations.json b/app/javascript/dashboard/i18n/locale/zh/integrations.json index 17952efd1..ce4634f0c 100644 --- a/app/javascript/dashboard/i18n/locale/zh/integrations.json +++ b/app/javascript/dashboard/i18n/locale/zh/integrations.json @@ -1,63 +1,1021 @@ { "INTEGRATION_SETTINGS": { - "HEADER": "Integrations", + "SHOPIFY": { + "HEADER": "Shopify", + "DELETE": { + "TITLE": "Delete Shopify Integration", + "MESSAGE": "Are you sure you want to delete the Shopify integration?" + }, + "STORE_URL": { + "TITLE": "Connect Shopify Store", + "LABEL": "Store URL", + "PLACEHOLDER": "your-store.myshopify.com", + "HELP": "Enter your Shopify store's myshopify.com URL", + "CANCEL": "取消", + "SUBMIT": "Connect Store" + }, + "ERROR": "There was an error connecting to Shopify. Please try again or contact support if the issue persists." + }, + "HEADER": "集成设置", + "DESCRIPTION": "Chatwoot 集成了多种工具和服务,以提高团队效率。浏览以下列表以配置您喜欢的应用程序。", + "LEARN_MORE": "了解更多关于集成的信息", + "LOADING": "正在获取集成", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", + "CAPTAIN": { + "DISABLED": "您的账户未启用 Captain。", + "CLICK_HERE_TO_CONFIGURE": "点击此处配置", + "LOADING_CONSOLE": "正在加载 Captain 控制台……", + "FAILED_TO_LOAD_CONSOLE": "加载 Captain 控制台失败。请刷新页面并重试。" + }, "WEBHOOK": { - "TITLE": "Webhook", - "CONFIGURE": "Configure", - "HEADER": "Webhook settings", - "HEADER_BTN_TXT": "Add new webhook", - "INTEGRATION_TXT": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. You can make use of the webhooks to communicate the events to your favourite apps like Slack or Github. Click on Configure to set up your webhooks.", - "LOADING": "Fetching attached webhooks", - "SEARCH_404": "There are no items matching this query", - "SIDEBAR_TXT": "

Webhooks

Webhooks are HTTP callbacks which can be defined for every account. They are triggered by events like message creation in Chatwoot. You can create more than one webhook for this account.

For creating a webhook, click on the Add new webhook button. You can also remove any existing webhook by clicking on the Delete button.

", + "SUBSCRIBED_EVENTS": "订阅事件", + "LEARN_MORE": "了解更多关于 Webhooks 的信息", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", + "FORM": { + "CANCEL": "取消", + "DESC": "Webhook 事件为您提供了有关 Chatwoot 账户中发生的事情的实时信息。请输入一个有效的 URL 来配置回调。", + "SUBSCRIPTIONS": { + "LABEL": "事件", + "EVENTS": { + "CONVERSATION_CREATED": "对话创建", + "CONVERSATION_STATUS_CHANGED": "对话状态已更改", + "CONVERSATION_UPDATED": "对话已更新", + "MESSAGE_CREATED": "消息已创建", + "MESSAGE_UPDATED": "消息已更新", + "WEBWIDGET_TRIGGERED": "用户打开实时聊天小部件", + "CONTACT_CREATED": "联系人已创建", + "CONTACT_UPDATED": "联系人已更新", + "CONVERSATION_TYPING_ON": "对话输入开启", + "CONVERSATION_TYPING_OFF": "对话输入关闭" + } + }, + "NAME": { + "LABEL": "Webhook Name", + "PLACEHOLDER": "Enter the name of the webhook" + }, + "END_POINT": { + "LABEL": "Webhook 网址", + "PLACEHOLDER": "例如:{webhookExampleURL}", + "ERROR": "请输入一个有效的 URL" + }, + "EDIT_SUBMIT": "更新 Webhook", + "ADD_SUBMIT": "创建 Webhook" + }, + "TITLE": "回调接口地址", + "CONFIGURE": "配置", + "HEADER": "Webhook 设置", + "HEADER_BTN_TXT": "添加新的 Webhook", + "LOADING": "正在获取已添加的 Webhooks", + "SEARCH_404": "没有任何项目符合此查询", + "SIDEBAR_TXT": "

Webhooks

Webhooks 是 HTTP 回调,可以为每个账户定义。它们由诸如在 Chatwoot 中创建消息等事件触发。您可以为此账户创建多个 Webhooks。

要创建一个 Webhook,点击 添加新的 Webhook 按钮。您也可以通过点击删除按钮删除任何现有的 Webhook。

", "LIST": { - "404": "There are no webhooks configured for this account.", - "TITLE": "Manage webhooks", - "DESC": "Webhooks are predefined reply templates which can be used to quickly send out replies to tickets.", - "TABLE_HEADER": [ - "Webhook endpoint", - "Actions" - ] + "404": "此账户没有配置 Webhooks。", + "TITLE": "管理 Webhooks", + "TABLE_HEADER": { + "WEBHOOK_ENDPOINT": "Webhook 端点", + "ACTIONS": "操作" + } + }, + "EDIT": { + "BUTTON_TEXT": "编辑", + "TITLE": "编辑 Webhook", + "API": { + "SUCCESS_MESSAGE": "Webhook 配置更新成功", + "ERROR_MESSAGE": "无法连接服务器,请稍后再试" + } }, "ADD": { - "CANCEL": "Cancel", - "TITLE": "Add new webhook", - "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", - "FORM": { - "END_POINT": { - "LABEL": "Webhook URL", - "PLACEHOLDER": "Example: https://example/api/webhook", - "ERROR": "Please enter a valid URL" - }, - "SUBMIT": "Create webhook" - }, + "CANCEL": "取消操作", + "TITLE": "添加新的 Webhook", "API": { - "SUCCESS_MESSAGE": "Webhook added successfully", - "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" + "SUCCESS_MESSAGE": "Webhook 配置添加成功", + "ERROR_MESSAGE": "无法连接服务器,请稍后再试" } }, "DELETE": { - "BUTTON_TEXT": "Delete", + "BUTTON_TEXT": "删除", "API": { - "SUCCESS_MESSAGE": "Webhook deleted successfully", - "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" + "SUCCESS_MESSAGE": "Webhook 删除成功", + "ERROR_MESSAGE": "无法连接服务器,请稍后再试" }, "CONFIRM": { - "TITLE": "Confirm Deletion", - "MESSAGE": "Are you sure to delete ", - "YES": "Yes, Delete ", - "NO": "No, Keep it" + "TITLE": "确认删除", + "MESSAGE": "您确定要删除该 Webhook 吗?({webhookURL})", + "YES": "是,删除", + "NO": "否,保留它" } } }, + "SLACK": { + "HEADER": "Slack", + "DELETE": "删除", + "DELETE_CONFIRMATION": { + "TITLE": "删除集成", + "MESSAGE": "您确定要删除该集成吗?这样做将导致您无法在 Slack 工作区中访问对话。" + }, + "HELP_TEXT": { + "TITLE": "使用 Slack 集成?", + "BODY": "通过此集成,所有传入的对话将同步到您的 Slack 工作区中的 ***{selectedChannelName}*** 频道。您可以直接在频道中管理所有客户对话,再也不会错过任何消息。\n\n以下是该集成的主要功能:\n\n**从 Slack 回复对话:** 要在 ***{selectedChannelName}*** Slack 频道中回复对话,只需输入您的消息并将其作为线程发送。这将通过 Chatwoot 创建对客户的回复。就是这么简单!\n\n**创建私密笔记:** 如果您想创建私密笔记而不是回复,请在消息开头加上 ***`note:`***。这将确保您的消息保持私密,不会对客户可见。\n\n**关联客服资料:** 如果在 Slack 上回复的人拥有与 Chatwoot 中相同电子邮件的客服资料,回复将自动与该客服资料关联。这意味着您可以轻松跟踪谁在何时说了什么。另一方面,如果回复者没有关联的客服资料,回复将显示为机器人资料。", + "SELECTED": "已选择" + }, + "SELECT_CHANNEL": { + "OPTION_LABEL": "选择一个频道", + "UPDATE": "更新", + "BUTTON_TEXT": "连接频道", + "DESCRIPTION": "您的 Slack 工作区现已与 Chatwoot 连接。但是,集成当前处于非活动状态。要激活集成并将频道连接到 Chatwoot,请点击下面的按钮。\n\n**注意:** 如果您尝试连接私有频道,请在进行此步骤之前将 Chatwoot 应用添加到 Slack 频道。", + "ATTENTION_REQUIRED": "需要关注", + "EXPIRED": "您的 Slack 集成已过期。要继续在 Slack 上接收消息,请删除该集成并重新连接您的工作区。" + }, + "UPDATE_ERROR": "更新集成时出错,请重试", + "UPDATE_SUCCESS": "频道连接成功", + "FAILED_TO_FETCH_CHANNELS": "获取 Slack 频道时出错,请重试" + }, + "DYTE": { + "CLICK_HERE_TO_JOIN": "点击此处加入", + "LEAVE_THE_ROOM": "离开房间", + "START_VIDEO_CALL_HELP_TEXT": "与客户开始新的视频通话", + "JOIN_ERROR": "加入通话时出错,请重试", + "CREATE_ERROR": "创建会议链接时出错,请重试" + }, + "OPEN_AI": { + "AI_ASSIST": "AI 助手", + "WITH_AI": " 使用 AI {option} ", + "OPTIONS": { + "REPLY_SUGGESTION": "回复建议", + "SUMMARIZE": "总结", + "REPHRASE": "改进写作", + "FIX_SPELLING_GRAMMAR": "修正拼写和语法", + "SHORTEN": "缩短", + "EXPAND": "扩展", + "MAKE_FRIENDLY": "将消息语气改为友好", + "MAKE_FORMAL": "使用正式语气", + "SIMPLIFY": "简化", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "专业", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "友好" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" + }, + "ASSISTANCE_MODAL": { + "DRAFT_TITLE": "草稿内容", + "GENERATED_TITLE": "生成内容", + "AI_WRITING": "AI 正在写作", + "BUTTONS": { + "APPLY": "使用此建议", + "CANCEL": "取消" + } + }, + "CTA_MODAL": { + "TITLE": "集成 OpenAI", + "DESC": "通过 OpenAI 的 GPT 模型为您的仪表板带来高级 AI 功能。要开始,请输入您 OpenAI 账户的 API 密钥。", + "KEY_PLACEHOLDER": "输入您的 OpenAI API 密钥", + "BUTTONS": { + "NEED_HELP": "需要帮助?", + "DISMISS": "取消", + "FINISH": "完成设置" + }, + "DISMISS_MESSAGE": "您可以稍后随时设置 OpenAI 集成。", + "SUCCESS_MESSAGE": "OpenAI 集成设置成功" + }, + "TITLE": "通过 AI 改进", + "SUMMARY_TITLE": "通过 AI 总结", + "REPLY_TITLE": "通过 AI 回复建议", + "SUBTITLE": "将根据您的当前草稿生成改进的回复。", + "TONE": { + "TITLE": "语气", + "OPTIONS": { + "PROFESSIONAL": "专业", + "FRIENDLY": "友好" + } + }, + "BUTTONS": { + "GENERATE": "生成", + "GENERATING": "生成中...", + "CANCEL": "取消" + }, + "GENERATE_ERROR": "处理内容时出错,请重试" + }, "DELETE": { - "BUTTON_TEXT": "Delete", + "BUTTON_TEXT": "删除", "API": { - "SUCCESS_MESSAGE": "Integration deleted successfully" + "SUCCESS_MESSAGE": "集成已成功删除" } }, "CONNECT": { - "BUTTON_TEXT": "Connect" + "BUTTON_TEXT": "连接" + }, + "DASHBOARD_APPS": { + "TITLE": "仪表板应用", + "HEADER_BTN_TXT": "添加新的仪表板应用", + "SIDEBAR_TXT": "

仪表板应用

仪表板应用允许组织将应用程序嵌入 Chatwoot 仪表板中,以便为客服人员提供上下文信息。此功能允许您独立创建应用程序并将其嵌入仪表板中,以提供用户信息、他们的订单或以前的付款历史记录。

当您使用 Chatwoot 仪表板嵌入应用程序时,您的应用程序将作为窗口事件获取对话和联系人的上下文信息。在您的页面上实现消息事件的监听器以接收上下文信息。

要添加新的仪表板应用,请点击“添加新的仪表板应用”按钮。

", + "DESCRIPTION": "仪表板应用允许组织将应用程序嵌入仪表板中,以便为客服人员提供上下文信息。此功能允许您独立创建应用程序并将其嵌入仪表板中,以提供用户信息、他们的订单或以前的付款历史记录。", + "LEARN_MORE": "了解更多关于仪表板应用的信息", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", + "LIST": { + "404": "此账户尚未配置任何仪表板应用", + "LOADING": "正在获取仪表板应用...", + "TABLE_HEADER": { + "NAME": "姓名", + "ENDPOINT": "端点", + "ACTIONS": "操作" + }, + "EDIT_TOOLTIP": "编辑应用", + "DELETE_TOOLTIP": "删除应用" + }, + "FORM": { + "TITLE_LABEL": "姓名", + "TITLE_PLACEHOLDER": "输入您的仪表板应用的名称", + "TITLE_ERROR": "仪表板应用的名称是必需的", + "URL_LABEL": "端点", + "URL_PLACEHOLDER": "输入您的应用托管的端点 URL", + "URL_ERROR": "需要有效的 URL" + }, + "CREATE": { + "HEADER": "添加新的仪表板应用", + "FORM_SUBMIT": "提交", + "FORM_CANCEL": "取消", + "API_SUCCESS": "仪表板应用配置成功", + "API_ERROR": "无法创建应用,请稍后重试" + }, + "UPDATE": { + "HEADER": "编辑仪表板应用", + "FORM_SUBMIT": "更新", + "FORM_CANCEL": "取消", + "API_SUCCESS": "仪表板应用更新成功", + "API_ERROR": "无法更新应用,请稍后重试" + }, + "DELETE": { + "CONFIRM_YES": "是,删除它", + "CONFIRM_NO": "否,保留它", + "TITLE": "确认删除", + "MESSAGE": "您确定要删除该应用 - {appName} 吗?", + "API_SUCCESS": "仪表板应用删除成功", + "API_ERROR": "无法删除应用,请稍后重试" + } + }, + "LINEAR": { + "HEADER": "Linear", + "ADD_OR_LINK_BUTTON": "创建/链接 Linear 问题", + "LOADING": "正在获取 Linear 问题...", + "LOADING_ERROR": "获取 Linear 问题时出错,请重试", + "CREATE": "创建", + "LINK": { + "SEARCH": "搜索问题", + "SELECT": "选择问题", + "TITLE": "链接", + "EMPTY_LIST": "未找到 Linear 问题", + "LOADING": "加载中", + "ERROR": "获取 Linear 问题时出错,请重试", + "LINK_SUCCESS": "问题链接成功", + "LINK_ERROR": "链接问题时出错,请重试", + "LINK_TITLE": "对话 (#{conversationId}) 与 {name}" + }, + "ADD_OR_LINK": { + "TITLE": "创建/链接 Linear 问题", + "DESCRIPTION": "从对话中创建 Linear 问题,或链接现有问题以进行无缝跟踪。", + "FORM": { + "TITLE": { + "LABEL": "标题", + "PLACEHOLDER": "输入标题", + "REQUIRED_ERROR": "标题是必填项" + }, + "DESCRIPTION": { + "LABEL": "描述", + "PLACEHOLDER": "输入描述" + }, + "TEAM": { + "LABEL": "团队", + "PLACEHOLDER": "选择团队", + "SEARCH": "搜索团队", + "REQUIRED_ERROR": "团队是必填项" + }, + "ASSIGNEE": { + "LABEL": "负责人", + "PLACEHOLDER": "选择负责人", + "SEARCH": "搜索负责人" + }, + "PRIORITY": { + "LABEL": "优先级", + "PLACEHOLDER": "选择优先级", + "SEARCH": "搜索优先级" + }, + "LABEL": { + "LABEL": "标签", + "PLACEHOLDER": "选择标签", + "SEARCH": "搜索标签" + }, + "STATUS": { + "LABEL": "状态", + "PLACEHOLDER": "选择状态", + "SEARCH": "搜索状态" + }, + "PROJECT": { + "LABEL": "项目", + "PLACEHOLDER": "选择项目", + "SEARCH": "搜索项目" + } + }, + "CREATE": "创建", + "CANCEL": "取消", + "CREATE_SUCCESS": "问题创建成功", + "CREATE_ERROR": "创建问题时出错,请重试", + "LOADING_TEAM_ERROR": "获取团队时出错,请重试", + "LOADING_TEAM_ENTITIES_ERROR": "获取团队实体时出错,请重试" + }, + "ISSUE": { + "STATUS": "状态", + "PRIORITY": "优先级", + "ASSIGNEE": "负责人", + "LABELS": "标签", + "CREATED_AT": "创建于 {createdAt}" + }, + "UNLINK": { + "TITLE": "取消链接", + "SUCCESS": "问题取消链接成功", + "ERROR": "取消链接问题时出错,请重试" + }, + "NO_LINKED_ISSUES": "No linked issues found", + "DELETE": { + "TITLE": "您确定要删除该集成吗?", + "MESSAGE": "您确定要删除该集成吗?", + "CONFIRM": "是,删除", + "CANCEL": "取消" + }, + "CTA": { + "TITLE": "连接到 Linear", + "AGENT_DESCRIPTION": "Linear 工作区未集成。请通知您的管理员连接一个工作区来使用这个集成。", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "链接 Linear 工作空间" + } + }, + "NOTION": { + "HEADER": "Notion", + "DELETE": { + "TITLE": "Are you sure you want to delete the Notion integration?", + "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", + "CONFIRM": "是的,删除", + "CANCEL": "取消" + } + } + }, + "CAPTAIN": { + "NAME": "Captain", + "HEADER_KNOW_MORE": "了解更多", + "ASSISTANT_SWITCHER": { + "ASSISTANTS": "助手", + "SWITCH_ASSISTANT": "Switch between assistants", + "NEW_ASSISTANT": "Create Assistant", + "EMPTY_LIST": "No assistants found, please create one to get started" + }, + "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "尝试这些提示信息", + "PANEL_TITLE": "开始使用 Copilot", + "KICK_OFF_MESSAGE": "需要快速摘要、回顾过往对话,或是优化回复内容?Copilot 可助您一臂之力,全面提升工作效率。", + "SEND_MESSAGE": "发送消息...", + "EMPTY_MESSAGE": "生成响应时出错。请重试。", + "LOADER": "Captain 正在思考", + "YOU": "您", + "USE": "使用此", + "RESET": "重置", + "SHOW_STEPS": "显示步骤", + "SELECT_ASSISTANT": "选择助手", + "PROMPTS": { + "SUMMARIZE": { + "LABEL": "总结此对话", + "CONTENT": "总结客户与客服的对话要点,涵盖客户的主要疑虑、问题,以及客服给出的解决方案或回应" + }, + "SUGGEST": { + "LABEL": "建议回答", + "CONTENT": "分析客户的咨询,并起草一份有效回应其关切或问题的回复。确保回复内容清晰、简明,并提供有用的信息。" + }, + "RATE": { + "LABEL": "为此对话评分", + "CONTENT": "请审核对话,评估其在多大程度上满足了客户的需求。根据语气、清晰度和有效性进行 5 分制评分。" + }, + "HIGH_PRIORITY": { + "LABEL": "高优先级对话", + "CONTENT": "请给我所有高优先级未结对话的摘要。包括对话 ID、客户姓名(如有)、最后一条消息内容和分配的客服人员。如有需要,请按状态分组。" + }, + "LIST_CONTACTS": { + "LABEL": "列出联系人", + "CONTENT": "显示我的前 10 位联系人列表。包括姓名、电子邮件或电话号码(如有)、最后在线时间、标签(如有)。" + } + } + }, + "PLAYGROUND": { + "USER": "您", + "ASSISTANT": "助手", + "MESSAGE_PLACEHOLDER": "输入您的消息...", + "HEADER": "试验场", + "DESCRIPTION": "使用此试验场向您的助手发送消息,并检查其是否能够准确、快速地以您期望的语气做出回应。", + "CREDIT_NOTE": "这里发送的消息将计入您的 Captain 积分。" + }, + "PAYWALL": { + "TITLE": "升级以使用 Captain AI", + "AVAILABLE_ON": "Captain 在免费计划中不可用。", + "UPGRADE_PROMPT": "升级您的计划以获取我们的助手、副驾驶等功能。", + "UPGRADE_NOW": "立即升级", + "CANCEL_ANYTIME": "您可以随时更改或取消您的计划" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", + "UPGRADE_PROMPT": "升级您的计划以获取我们的助手、副驾驶等功能。", + "ASK_ADMIN": "请联系您的管理员进行升级。" + }, + "BANNER": { + "RESPONSES": "您已使用超过 80% 的回复限制。要继续使用 Captain AI,请升级。", + "DOCUMENTS": "文档限制已满。升级以继续使用 Captain AI。" + }, + "FORM": { + "CANCEL": "取消", + "CREATE": "创建", + "EDIT": "更新" + }, + "ASSISTANTS": { + "HEADER": "助手", + "NO_ASSISTANTS_AVAILABLE": "您的帐户中没有可用的助手。", + "ADD_NEW": "创建新的助手", + "DELETE": { + "TITLE": "您确定要删除该文档吗?", + "DESCRIPTION": "此操作是永久性的。删除此文档将永久删除所有生成的知识。", + "CONFIRM": "是,删除", + "SUCCESS_MESSAGE": "文档已成功删除", + "ERROR_MESSAGE": "删除文档时出错,请重试。" + }, + "FORM_DESCRIPTION": "填写以下详细信息以命名您的助手,描述其用途,并指定它将支持的产品。", + "CREATE": { + "TITLE": "创建助手", + "SUCCESS_MESSAGE": "助手已成功创建", + "ERROR_MESSAGE": "创建助手时出错,请重试。" + }, + "FORM": { + "UPDATE": "更新", + "SECTIONS": { + "BASIC_INFO": "基本信息", + "SYSTEM_MESSAGES": "系统消息", + "INSTRUCTIONS": "指令", + "FEATURES": "特性", + "TOOLS": "工具 " + }, + "NAME": { + "LABEL": "姓名:", + "PLACEHOLDER": "输入助手名称", + "ERROR": "名称是必需的" + }, + "TEMPERATURE": { + "LABEL": "响应温度", + "DESCRIPTION": "调整助手回复的创造性或限制程度。较低的数值会产生更专注和确定性的回复,而较高的数值则允许更有创意和多样化的输出。" + }, + "DESCRIPTION": { + "LABEL": "描述信息", + "PLACEHOLDER": "输入助手描述", + "ERROR": "描述是必需的" + }, + "PRODUCT_NAME": { + "LABEL": "产品名称", + "PLACEHOLDER": "输入产品名称", + "ERROR": "产品名称是必需的" + }, + "WELCOME_MESSAGE": { + "LABEL": "欢迎消息", + "PLACEHOLDER": "输入欢迎消息" + }, + "HANDOFF_MESSAGE": { + "LABEL": "交接信息", + "PLACEHOLDER": "输入交接消息" + }, + "RESOLUTION_MESSAGE": { + "LABEL": "解决消息", + "PLACEHOLDER": "输入解决消息" + }, + "INSTRUCTIONS": { + "LABEL": "指令", + "PLACEHOLDER": "输入用于此助手的指令" + }, + "FEATURES": { + "TITLE": "特性", + "ALLOW_CONVERSATION_FAQS": "从已解决的对话中生成常见问题", + "ALLOW_MEMORIES": "从客户互动中捕获关键细节作为记忆", + "ALLOW_CITATIONS": "Include source citations in responses" + } + }, + "EDIT": { + "TITLE": "更新助手", + "SUCCESS_MESSAGE": "助手已成功更新", + "ERROR_MESSAGE": "更新助手时出错,请重试", + "NOT_FOUND": "无法找到助手。请重试。" + }, + "SETTINGS": { + "HEADER": "设置", + "BASIC_SETTINGS": { + "TITLE": "基本设置", + "DESCRIPTION": "Customize what the assistant says when ending a conversation or transferring to a human." + }, + "SYSTEM_SETTINGS": { + "TITLE": "系统设置", + "DESCRIPTION": "Customize what the assistant says when ending a conversation or transferring to a human." + }, + "CONTROL_ITEMS": { + "TITLE": "The Fun Stuff", + "DESCRIPTION": "Add more control to the assistant. (a bit more visual like a story : Query guardrail → scenarios → output) Nudges user to actually utilise these.", + "OPTIONS": { + "GUARDRAILS": { + "TITLE": "Guardrails", + "DESCRIPTION": "Keeps things on track—only the kinds of questions you want your assistant to answer, nothing off-limits or off-topic." + }, + "RESPONSE_GUIDELINES": { + "TITLE": "Response guidelines", + "DESCRIPTION": "The vibe and structure of your assistant’s replies—clear and friendly? Short and snappy? Detailed and formal?" + } + } + }, + "DELETE": { + "TITLE": "删除助手", + "DESCRIPTION": "此操作是永久性的。删除此文档将永久删除所有生成的知识。", + "BUTTON_TEXT": "删除 {assistantName}" + } + }, + "OPTIONS": { + "EDIT_ASSISTANT": "编辑助手", + "DELETE_ASSISTANT": "删除助手", + "VIEW_CONNECTED_INBOXES": "查看连接的收件箱" + }, + "EMPTY_STATE": { + "TITLE": "没有可用的文档", + "SUBTITLE": "文档用于为您的助手生成常见问题。您可以导入文档以为您的助手提供上下文。", + "FEATURE_SPOTLIGHT": { + "TITLE": "助理队长", + "NOTE": "助理队长直接与客户互动,从您的帮助文档和过去的对话中学习,并提供即时、准确的回复。它处理初始查询,快速解决问题,在需要时再转接给客服人员。" + } + }, + "GUARDRAILS": { + "TITLE": "Guardrails", + "DESCRIPTION": "Keeps things on track—only the kinds of questions you want your assistant to answer, nothing off-limits or off-topic.", + "BULK_ACTION": { + "SELECTED": "{count} item selected | {count} items selected", + "SELECT_ALL": "全选 ({count})", + "UNSELECT_ALL": "取消全选({count})", + "BULK_DELETE_BUTTON": "删除" + }, + "ADD": { + "SUGGESTED": { + "TITLE": "Example guardrails", + "ADD": "添加全部", + "ADD_SINGLE": "Add this", + "SAVE": "添加并保存", + "PLACEHOLDER": "Type in another guardrail..." + }, + "NEW": { + "TITLE": "Add a guardrail", + "CREATE": "创建", + "CANCEL": "取消", + "PLACEHOLDER": "Type in another guardrail...", + "TEST_ALL": "测试全部" + } + }, + "LIST": { + "SEARCH_PLACEHOLDER": "搜索……" + }, + "EMPTY_MESSAGE": "No guardrails found. Create or add examples to begin.", + "SEARCH_EMPTY_MESSAGE": "No guardrails found for this search.", + "API": { + "ADD": { + "SUCCESS": "Guardrails added successfully", + "ERROR": "There was an error adding guardrails, please try again." + }, + "UPDATE": { + "SUCCESS": "Guardrails updated successfully", + "ERROR": "There was an error updating guardrails, please try again." + }, + "DELETE": { + "SUCCESS": "Guardrails deleted successfully", + "ERROR": "There was an error deleting guardrails, please try again." + } + } + }, + "RESPONSE_GUIDELINES": { + "TITLE": "Response Guidelines", + "DESCRIPTION": "The vibe and structure of your assistant’s replies—clear and friendly? Short and snappy? Detailed and formal?", + "BULK_ACTION": { + "SELECTED": "{count} item selected | {count} items selected", + "SELECT_ALL": "全选 ({count})", + "UNSELECT_ALL": "取消全选({count})", + "BULK_DELETE_BUTTON": "删除" + }, + "ADD": { + "SUGGESTED": { + "TITLE": "Example response guidelines", + "ADD": "添加全部", + "ADD_SINGLE": "Add this", + "SAVE": "添加并保存", + "PLACEHOLDER": "Type in another response guideline..." + }, + "NEW": { + "TITLE": "Add a response guideline", + "CREATE": "创建", + "CANCEL": "取消", + "PLACEHOLDER": "Type in another response guideline...", + "TEST_ALL": "测试全部" + } + }, + "LIST": { + "SEARCH_PLACEHOLDER": "搜索……" + }, + "EMPTY_MESSAGE": "No response guidelines found. Create or add examples to begin.", + "SEARCH_EMPTY_MESSAGE": "No response guidelines found for this search.", + "API": { + "ADD": { + "SUCCESS": "Response Guidelines added successfully", + "ERROR": "There was an error adding response guidelines, please try again." + }, + "UPDATE": { + "SUCCESS": "Response Guidelines updated successfully", + "ERROR": "There was an error updating response guidelines, please try again." + }, + "DELETE": { + "SUCCESS": "Response Guidelines deleted successfully", + "ERROR": "There was an error deleting response guidelines, please try again." + } + } + }, + "SCENARIOS": { + "TITLE": "Scenarios", + "DESCRIPTION": "Give your assistant some context—like “what to do when a user is stuck,” or “how to act during a refund request.”", + "BULK_ACTION": { + "SELECTED": "{count} item selected | {count} items selected", + "SELECT_ALL": "全选 ({count})", + "UNSELECT_ALL": "取消全选({count})", + "BULK_DELETE_BUTTON": "删除" + }, + "ADD": { + "SUGGESTED": { + "TITLE": "Example scenarios", + "ADD": "添加全部", + "ADD_SINGLE": "Add this", + "TOOLS_USED": "Tools used :" + }, + "NEW": { + "CREATE": "Add a scenario", + "TITLE": "Create a scenario", + "FORM": { + "TITLE": { + "LABEL": "标题", + "PLACEHOLDER": "Enter a name for the scenario", + "ERROR": "Scenario name is required" + }, + "DESCRIPTION": { + "LABEL": "描述信息", + "PLACEHOLDER": "Describe how and where this scenario will be used", + "ERROR": "Scenario description is required" + }, + "INSTRUCTION": { + "LABEL": "How to handle", + "PLACEHOLDER": "Describe how and where this scenario will be handled", + "ERROR": "Scenario content is required" + }, + "CREATE": "创建", + "CANCEL": "取消" + } + } + }, + "UPDATE": { + "CANCEL": "取消", + "UPDATE": "Update changes" + }, + "LIST": { + "SEARCH_PLACEHOLDER": "搜索……" + }, + "EMPTY_MESSAGE": "No scenarios found. Create or add examples to begin.", + "SEARCH_EMPTY_MESSAGE": "No scenarios found for this search.", + "API": { + "ADD": { + "SUCCESS": "Scenarios added successfully", + "ERROR": "There was an error adding scenarios, please try again." + }, + "UPDATE": { + "SUCCESS": "Scenarios updated successfully", + "ERROR": "There was an error updating scenarios, please try again." + }, + "DELETE": { + "SUCCESS": "Scenarios deleted successfully", + "ERROR": "There was an error deleting scenarios, please try again." + } + } + } + }, + "DOCUMENTS": { + "HEADER": "文档", + "ADD_NEW": "创建新文档", + "RELATED_RESPONSES": { + "TITLE": "相关常见问题", + "DESCRIPTION": "这些常见问题直接从文档生成。" + }, + "FORM_DESCRIPTION": "输入文档的 URL 以将其添加为知识源,并选择要关联的助手。", + "CREATE": { + "TITLE": "添加文档", + "SUCCESS_MESSAGE": "文档已成功创建", + "ERROR_MESSAGE": "创建文档时出错,请重试" + }, + "FORM": { + "TYPE": { + "LABEL": "Document Type", + "URL": "网址", + "PDF": "PDF 文件" + }, + "URL": { + "LABEL": "网址", + "PLACEHOLDER": "输入文档的 URL", + "ERROR": "请提供有效的文档 URL" + }, + "PDF_FILE": { + "LABEL": "PDF 文件", + "CHOOSE_FILE": "选择 PDF 文件", + "ERROR": "请选择一个 PDF 文件", + "HELP_TEXT": "最大文件大小: 10MB", + "INVALID_TYPE": "请选择一个有效的 PDF 文件", + "TOO_LARGE": "文件大小超过 10MB 限制" + }, + "NAME": { + "LABEL": "文档名称(可选)", + "PLACEHOLDER": "输入文档的名称" + } + }, + "DELETE": { + "TITLE": "您确定要删除该文档吗?", + "DESCRIPTION": "此操作是永久性的。删除此文档将永久删除所有生成的知识。", + "CONFIRM": "是,删除", + "SUCCESS_MESSAGE": "文档已成功删除", + "ERROR_MESSAGE": "删除文档时出错,请重试" + }, + "OPTIONS": { + "VIEW_RELATED_RESPONSES": "查看相关常见问题", + "DELETE_DOCUMENT": "删除文档" + }, + "EMPTY_STATE": { + "TITLE": "没有可用的文档", + "SUBTITLE": "文档用于为您的助手生成常见问题。您可以导入文档以为您的助手提供上下文。", + "FEATURE_SPOTLIGHT": { + "TITLE": "Captain 文档", + "NOTE": "在 Captain 中的文档作为助理的知识资源。通过连接您的帮助中心或指南,Captain 可以分析内容并为客户询问提供准确的回答。" + } + } + }, + "CUSTOM_TOOLS": { + "HEADER": "工具", + "ADD_NEW": "Create a new tool", + "EMPTY_STATE": { + "TITLE": "No custom tools available", + "SUBTITLE": "Create custom tools to connect your assistant with external APIs and services, enabling it to fetch data and perform actions on your behalf.", + "FEATURE_SPOTLIGHT": { + "TITLE": "Custom Tools", + "NOTE": "Custom tools allow your assistant to interact with external APIs and services. Create tools to fetch data, perform actions, or integrate with your existing systems to enhance your assistant's capabilities." + } + }, + "FORM_DESCRIPTION": "Configure your custom tool to connect with external APIs", + "OPTIONS": { + "EDIT_TOOL": "Edit tool", + "DELETE_TOOL": "Delete tool" + }, + "CREATE": { + "TITLE": "Create Custom Tool", + "SUCCESS_MESSAGE": "Custom tool created successfully", + "ERROR_MESSAGE": "Failed to create custom tool" + }, + "EDIT": { + "TITLE": "Edit Custom Tool", + "SUCCESS_MESSAGE": "Custom tool updated successfully", + "ERROR_MESSAGE": "Failed to update custom tool" + }, + "DELETE": { + "TITLE": "Delete Custom Tool", + "DESCRIPTION": "Are you sure you want to delete this custom tool? This action cannot be undone.", + "CONFIRM": "是的,删除", + "SUCCESS_MESSAGE": "Custom tool deleted successfully", + "ERROR_MESSAGE": "Failed to delete custom tool" + }, + "FORM": { + "TITLE": { + "LABEL": "Tool Name", + "PLACEHOLDER": "Order Lookup", + "ERROR": "Tool name is required" + }, + "DESCRIPTION": { + "LABEL": "描述信息", + "PLACEHOLDER": "Looks up order details by order ID" + }, + "HTTP_METHOD": { + "LABEL": "Method" + }, + "ENDPOINT_URL": { + "LABEL": "Endpoint URL", + "PLACEHOLDER": "https://api.example.com/orders/{'{{'} order_id {'}}'}", + "ERROR": "Valid URL is required" + }, + "AUTH_TYPE": { + "LABEL": "Authentication Type" + }, + "AUTH_TYPES": { + "NONE": "啥都没有", + "BEARER": "Bearer Token", + "BASIC": "Basic Auth", + "API_KEY": "API 密钥" + }, + "AUTH_CONFIG": { + "BEARER_TOKEN": "Bearer Token", + "BEARER_TOKEN_PLACEHOLDER": "Enter your bearer token", + "USERNAME": "Username", + "USERNAME_PLACEHOLDER": "Enter username", + "PASSWORD": "密码", + "PASSWORD_PLACEHOLDER": "Enter password", + "API_KEY": "Header Name", + "API_KEY_PLACEHOLDER": "X-API-Key", + "API_VALUE": "Header Value", + "API_VALUE_PLACEHOLDER": "Enter API key value" + }, + "PARAMETERS": { + "LABEL": "Parameters", + "HELP_TEXT": "Define the parameters that will be extracted from user queries" + }, + "ADD_PARAMETER": "Add Parameter", + "PARAM_NAME": { + "PLACEHOLDER": "Parameter name (e.g., order_id)" + }, + "PARAM_TYPE": { + "PLACEHOLDER": "类型" + }, + "PARAM_TYPES": { + "STRING": "String", + "NUMBER": "号码", + "BOOLEAN": "Boolean", + "ARRAY": "Array", + "OBJECT": "Object" + }, + "PARAM_DESCRIPTION": { + "PLACEHOLDER": "Description of the parameter" + }, + "PARAM_REQUIRED": { + "LABEL": "必填项" + }, + "REQUEST_TEMPLATE": { + "LABEL": "Request Body Template (Optional)", + "PLACEHOLDER": "{'{'}\n \"order_id\": \"{'{{'} order_id {'}}'}\"\n{'}'}" + }, + "RESPONSE_TEMPLATE": { + "LABEL": "Response Template (Optional)", + "PLACEHOLDER": "Order {'{{'} order_id {'}}'} status: {'{{'} status {'}}'}" + }, + "ERRORS": { + "PARAM_NAME_REQUIRED": "Parameter name is required" + } + } + }, + "RESPONSES": { + "HEADER": "常见问题", + "PENDING_FAQS": "Pending FAQs", + "ADD_NEW": "创建新常见问题", + "DOCUMENTABLE": { + "CONVERSATION": "对话 #{id}" + }, + "SELECTED": "{count} 已选择", + "SELECT_ALL": "全选 ({count})", + "UNSELECT_ALL": "取消全选({count})", + "SEARCH_PLACEHOLDER": "搜索常见问题...", + "BULK_APPROVE_BUTTON": "批准", + "BULK_DELETE_BUTTON": "删除", + "BULK_APPROVE": { + "SUCCESS_MESSAGE": "常见问题已成功批准", + "ERROR_MESSAGE": "批准常见问题时出错,请重试" + }, + "BULK_DELETE": { + "TITLE": "删除常见问题?", + "DESCRIPTION": "您确定要删除选中的常见问题吗?此操作无法撤销。", + "CONFIRM": "是,全部删除", + "SUCCESS_MESSAGE": "常见问题已成功删除", + "ERROR_MESSAGE": "删除常见问题时出错,请重试" + }, + "DELETE": { + "TITLE": "您确定要删除该常见问题吗?", + "DESCRIPTION": "", + "CONFIRM": "是,删除", + "SUCCESS_MESSAGE": "常见问题已成功删除", + "ERROR_MESSAGE": "删除常见问题时出错,请重试" + }, + "FILTER": { + "ASSISTANT": "助手:{selected}", + "STATUS": "状态:{selected}", + "ALL_ASSISTANTS": "所有" + }, + "STATUS": { + "TITLE": "状态", + "PENDING": "待处理", + "APPROVED": "已批准", + "ALL": "所有" + }, + "PENDING_BANNER": { + "TITLE": "Captain has found some FAQs your customers were looking for.", + "ACTION": "Click here to review" + }, + "FORM_DESCRIPTION": "将问题及其对应的答案添加到知识库,并选择应关联的助手。", + "CREATE": { + "TITLE": "添加常见问题", + "SUCCESS_MESSAGE": "响应已成功添加", + "ERROR_MESSAGE": "添加响应时出错,请重试" + }, + "FORM": { + "QUESTION": { + "LABEL": "问题", + "PLACEHOLDER": "在此输入问题", + "ERROR": "请提供有效的问题" + }, + "ANSWER": { + "LABEL": "答案", + "PLACEHOLDER": "在此输入答案", + "ERROR": "请提供有效的答案" + } + }, + "EDIT": { + "TITLE": "更新常见问题", + "SUCCESS_MESSAGE": "常见问题已成功更新", + "ERROR_MESSAGE": "更新常见问题时出错,请重试", + "APPROVE_SUCCESS_MESSAGE": "常见问题已标记为已批准" + }, + "OPTIONS": { + "APPROVE": "批准", + "EDIT_RESPONSE": "编辑", + "DELETE_RESPONSE": "删除" + }, + "EMPTY_STATE": { + "TITLE": "未找到常见问题", + "NO_PENDING_TITLE": "There are no more pending FAQs to review", + "SUBTITLE": "常见问题帮助您的助手为客户提供快速准确的答案。它们可以从您的内容自动生成,也可以手动添加。", + "CLEAR_SEARCH": "Clear active filters", + "FEATURE_SPOTLIGHT": { + "TITLE": "Captain 常见问题", + "NOTE": "Captain FAQs 检测常见的客户问题——无论是知识库中缺失的问题还是经常被问到的问题——并生成相关的常见问题以改善支持。您可以查看每个建议,并决定是否批准或拒绝它。" + } + } + }, + "INBOXES": { + "HEADER": "连接的收件箱", + "ADD_NEW": "连接新收件箱", + "OPTIONS": { + "DISCONNECT": "断开连接" + }, + "DELETE": { + "TITLE": "您确定要断开收件箱的连接吗?", + "DESCRIPTION": "", + "CONFIRM": "是,删除", + "SUCCESS_MESSAGE": "收件箱已成功断开连接", + "ERROR_MESSAGE": "断开收件箱连接时出错,请重试" + }, + "FORM_DESCRIPTION": "选择要与助手连接的收件箱。", + "CREATE": { + "TITLE": "连接收件箱", + "SUCCESS_MESSAGE": "收件箱已成功连接", + "ERROR_MESSAGE": "连接收件箱时出错,请重试" + }, + "FORM": { + "INBOX": { + "LABEL": "收件箱", + "PLACEHOLDER": "选择收件箱以部署助手", + "ERROR": "需要选择收件箱" + } + }, + "EMPTY_STATE": { + "TITLE": "没有连接的收件箱", + "SUBTITLE": "连接收件箱允许助手在处理客户初始问题后将对话转交给您。" + } } } } diff --git a/app/javascript/dashboard/i18n/locale/zh/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/zh/labelsMgmt.json index b0dbe439f..529530b93 100644 --- a/app/javascript/dashboard/i18n/locale/zh/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh/labelsMgmt.json @@ -1,67 +1,88 @@ { "LABEL_MGMT": { - "HEADER": "Labels", - "HEADER_BTN_TXT": "Add label", - "LOADING": "Fetching labels", - "SEARCH_404": "There are no items matching this query", - "SIDEBAR_TXT": "

Labels

Labels help you to categorize conversations and prioritize them. You can assign label to a conversation from the sidepanel.

Labels are tied to the account and can be used to create custom workflows in your organization. You can assign custom color to a label, it makes it easier to identify the label. You will be able to display the label on the sidebar to filter the conversations easily.

", + "HEADER": "标签", + "HEADER_BTN_TXT": "添加标签", + "LOADING": "正在获取标签", + "DESCRIPTION": "标签帮助您对对话和潜在客户进行分类和优先排序。您可以使用侧边栏将标签分配给对话或联系人。", + "LEARN_MORE": "了解更多关于标签的信息", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "搜索标签...", + "NO_RESULTS": "No labels found matching your search", + "SEARCH_404": "没有任何项目符合此查询", "LIST": { - "404": "There are no labels available in this account.", - "TITLE": "Manage labels", - "DESC": "Labels let you group the conversations together.", - "TABLE_HEADER": [ - "Name", - "Description", - "Color" - ] + "404": "此帐户中没有可用的标签。", + "TITLE": "管理标签", + "DESC": "标记可以让您将对话集中起来。", + "TABLE_HEADER": { + "NAME": "名称", + "DESCRIPTION": "描述信息", + "COLOR": "颜色", + "ACTION": "操作" + } }, "FORM": { "NAME": { - "LABEL": "Label Name", - "PLACEHOLDER": "Label name", - "ERROR": "Label Name is required" + "LABEL": "标签名称", + "PLACEHOLDER": "标签名称", + "REQUIRED_ERROR": "标签名称为必填项", + "MINIMUM_LENGTH_ERROR": "至少需要2个字符", + "VALID_ERROR": "仅允许使用字母、数字、连字符和下划线" }, "DESCRIPTION": { - "LABEL": "Description", - "PLACEHOLDER": "Label Description" + "LABEL": "描述信息", + "PLACEHOLDER": "标签描述" }, "COLOR": { - "LABEL": "Color" + "LABEL": "颜色" }, "SHOW_ON_SIDEBAR": { - "LABEL": "Show label on sidebar" + "LABEL": "在侧边栏显示标签" }, - "EDIT": "Edit", - "CREATE": "Create", - "DELETE": "Delete", - "CANCEL": "Cancel" + "EDIT": "编辑", + "CREATE": "创建", + "DELETE": "删除", + "CANCEL": "取消操作" + }, + "SUGGESTIONS": { + "TOOLTIP": { + "SINGLE_SUGGESTION": "将标签添加到对话", + "MULTIPLE_SUGGESTION": "选择此标签", + "DESELECT": "取消选择标签", + "DISMISS": "忽略建议" + }, + "POWERED_BY": "Chatwoot AI", + "DISMISS": "取消", + "ADD_SELECTED_LABELS": "添加选定的标签", + "ADD_SELECTED_LABEL": "添加选定的标签", + "ADD_ALL_LABELS": "添加所有标签", + "SUGGESTED_LABELS": "建议的标签" }, "ADD": { - "TITLE": "Add label", - "DESC": "Labels let you group the conversations together.", + "TITLE": "添加标签", + "DESC": "标记可以让您将对话集中起来。", "API": { - "SUCCESS_MESSAGE": "Label added successfully", - "ERROR_MESSAGE": "There was an error, please try again" + "SUCCESS_MESSAGE": "标签添加成功", + "ERROR_MESSAGE": "出现错误,请重试" } }, "EDIT": { - "TITLE": "Edit label", + "TITLE": "编辑标签", "API": { - "SUCCESS_MESSAGE": "Label updated successfully", - "ERROR_MESSAGE": "There was an error, please try again" + "SUCCESS_MESSAGE": "标签已成功更新", + "ERROR_MESSAGE": "出错了,请重试" } }, "DELETE": { - "BUTTON_TEXT": "Delete", + "BUTTON_TEXT": "删除", "API": { - "SUCCESS_MESSAGE": "Label deleted successfully", - "ERROR_MESSAGE": "There was an error, please try again" + "SUCCESS_MESSAGE": "标签已成功删除", + "ERROR_MESSAGE": "出错了,请重试" }, "CONFIRM": { - "TITLE": "Confirm Deletion", - "MESSAGE": "Are you sure to delete ", - "YES": "Yes, Delete ", - "NO": "No, Keep " + "TITLE": "确认删除", + "MESSAGE": "您确定要删除吗?", + "YES": "是,删除", + "NO": "不,保留" } } } diff --git a/app/javascript/dashboard/i18n/locale/zh/login.json b/app/javascript/dashboard/i18n/locale/zh/login.json index a3a90e359..2dbbc9327 100644 --- a/app/javascript/dashboard/i18n/locale/zh/login.json +++ b/app/javascript/dashboard/i18n/locale/zh/login.json @@ -3,7 +3,8 @@ "TITLE": "登录到Chatwoot", "EMAIL": { "LABEL": "Email", - "PLACEHOLDER": "电子邮址 例如:somone{'@'}example.com" + "PLACEHOLDER": "实例 {'@'}companyname.com", + "ERROR": "请输入一个有效的电子邮件" }, "PASSWORD": { "LABEL": "密码", @@ -11,11 +12,30 @@ }, "API": { "SUCCESS_MESSAGE": "登录成功", - "ERROR_MESSAGE": "无法连接服务器,请稍后再试", - "UNAUTH": "用户名/密码不正确。请重试" + "ERROR_MESSAGE": "无法连接Woot服务器,请稍后再试", + "UNAUTH": "用户名或密码不正确,请重试。" + }, + "OAUTH": { + "GOOGLE_LOGIN": "使用Google登录", + "BUSINESS_ACCOUNTS_ONLY": "请使用您的公司电子邮件地址登录", + "NO_ACCOUNT_FOUND": "我们找不到您的电子邮件地址的帐户。" }, "FORGOT_PASSWORD": "忘记密码了?", "CREATE_NEW_ACCOUNT": "创建新账户", - "SUBMIT": "登录" + "SUBMIT": "登录", + "SAML": { + "LABEL": "Login via SSO", + "TITLE": "Initiate Single Sign-on (SSO)", + "SUBTITLE": "Enter your work email to access your organization", + "BACK_TO_LOGIN": "Login via Password", + "WORK_EMAIL": { + "LABEL": "Work Email", + "PLACEHOLDER": "Enter your work email" + }, + "SUBMIT": "Continue with SSO", + "API": { + "ERROR_MESSAGE": "SSO authentication failed. Please check your credentials and try again." + } + } } } diff --git a/app/javascript/dashboard/i18n/locale/zh/report.json b/app/javascript/dashboard/i18n/locale/zh/report.json index 8df14d19b..0d5592e44 100644 --- a/app/javascript/dashboard/i18n/locale/zh/report.json +++ b/app/javascript/dashboard/i18n/locale/zh/report.json @@ -1,8 +1,11 @@ { "REPORT": { - "HEADER": "报告", + "HEADER": "会话", "LOADING_CHART": "正在载入图表数据...", "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", + "DATA_FETCHING_FAILED": "数据获取失败,请稍后再试。", + "SUMMARY_FETCHING_FAILED": "摘要获取失败,请稍后再试。", "METRICS": { "CONVERSATIONS": { "NAME": "会话", @@ -18,11 +21,147 @@ }, "FIRST_RESPONSE_TIME": { "NAME": "首次响应时间", - "DESC": "( 平均)" + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "首次响应时间为 {metricValue}(基于 {conversationCount} 个对话)" }, "RESOLUTION_TIME": { "NAME": "解决时间", - "DESC": "( 平均)" + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "解决时间为 {metricValue}(基于 {conversationCount} 个对话)" + }, + "RESOLUTION_COUNT": { + "NAME": "已解决的数量", + "DESC": "(总计)" + }, + "BOT_RESOLUTION_COUNT": { + "NAME": "已解决的数量", + "DESC": "(总计)" + }, + "BOT_HANDOFF_COUNT": { + "NAME": "转交次数", + "DESC": "(总计)" + }, + "REPLY_TIME": { + "NAME": "客户等待时间", + "TOOLTIP_TEXT": "等待时间为 {metricValue}(基于 {conversationCount} 条回复)", + "DESC": "" + } + }, + "DATE_RANGE_OPTIONS": { + "LAST_7_DAYS": "最近7天", + "LAST_14_DAYS": "最近14天", + "LAST_30_DAYS": "最近30天", + "THIS_MONTH": "This month", + "LAST_MONTH": "Last month", + "LAST_3_MONTHS": "最近3个月", + "LAST_6_MONTHS": "最近6个月", + "LAST_YEAR": "最近一年", + "CUSTOM_DATE_RANGE": "自定义日期范围" + }, + "CUSTOM_DATE_RANGE": { + "CONFIRM": "应用", + "PLACEHOLDER": "选择日期范围" + }, + "GROUP_BY_FILTER_DROPDOWN_LABEL": "分组依据", + "DURATION_FILTER_LABEL": "持续时间", + "GROUPING_OPTIONS": { + "DAY": "日", + "WEEK": "周", + "MONTH": "月", + "YEAR": "年" + }, + "GROUP_BY_DAY_OPTIONS": [ + { + "id": 1, + "groupBy": "日" + } + ], + "GROUP_BY_WEEK_OPTIONS": [ + { + "id": 1, + "groupBy": "日" + }, + { + "id": 2, + "groupBy": "周" + } + ], + "GROUP_BY_MONTH_OPTIONS": [ + { + "id": 1, + "groupBy": "日" + }, + { + "id": 2, + "groupBy": "周" + }, + { + "id": 3, + "groupBy": "月" + } + ], + "GROUP_BY_YEAR_OPTIONS": [ + { + "id": 1, + "groupBy": "日" + }, + { + "id": 2, + "groupBy": "周" + }, + { + "id": 3, + "groupBy": "月" + } + ], + "BUSINESS_HOURS": "工作时间", + "FILTER_ACTIONS": { + "CLEAR_FILTER": "清除筛选条件", + "EMPTY_LIST": "没有检索到相关信息" + }, + "PAGINATION": { + "RESULTS": "显示 {start} 到 {end} 条,共 {total} 条结果", + "PER_PAGE_TEMPLATE": "{size} / page" + } + }, + "AGENT_REPORTS": { + "HEADER": "客服概览", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", + "LOADING_CHART": "正在载入图表数据...", + "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", + "DOWNLOAD_AGENT_REPORTS": "下载客服报表", + "FILTER_DROPDOWN_LABEL": "选择客服", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "搜索客服代表" + } + }, + "METRICS": { + "CONVERSATIONS": { + "NAME": "会话", + "DESC": "(总计)" + }, + "INCOMING_MESSAGES": { + "NAME": "收到的消息", + "DESC": "(总计)" + }, + "OUTGOING_MESSAGES": { + "NAME": "发送的消息", + "DESC": "(总计)" + }, + "FIRST_RESPONSE_TIME": { + "NAME": "首次响应时间", + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "首次响应时间为 {metricValue}(基于 {conversationCount} 个对话)" + }, + "RESOLUTION_TIME": { + "NAME": "解决时间", + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "解决时间为 {metricValue}(基于 {conversationCount} 个对话)" }, "RESOLUTION_COUNT": { "NAME": "已解决的数量", @@ -37,7 +176,475 @@ { "id": 1, "name": "最近30天" + }, + { + "id": 2, + "name": "最近3个月" + }, + { + "id": 3, + "name": "最近6个月" + }, + { + "id": 4, + "name": "最近一年" + }, + { + "id": 5, + "name": "自定义日期范围" } - ] + ], + "CUSTOM_DATE_RANGE": { + "CONFIRM": "应用", + "PLACEHOLDER": "选择日期范围" + } + }, + "LABEL_REPORTS": { + "HEADER": "标签概览", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", + "LOADING_CHART": "正在载入图表数据...", + "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", + "DOWNLOAD_LABEL_REPORTS": "下载标签报表", + "FILTER_DROPDOWN_LABEL": "选择标签", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "搜索标签" + } + }, + "METRICS": { + "CONVERSATIONS": { + "NAME": "会话", + "DESC": "(总计)" + }, + "INCOMING_MESSAGES": { + "NAME": "收到的消息", + "DESC": "(总计)" + }, + "OUTGOING_MESSAGES": { + "NAME": "发送的消息", + "DESC": "(总计)" + }, + "FIRST_RESPONSE_TIME": { + "NAME": "首次响应时间", + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "首次响应时间为 {metricValue}(基于 {conversationCount} 个对话)" + }, + "RESOLUTION_TIME": { + "NAME": "解决时间", + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "解决时间为 {metricValue}(基于 {conversationCount} 个对话)" + }, + "RESOLUTION_COUNT": { + "NAME": "已解决的数量", + "DESC": "(总计)" + } + }, + "DATE_RANGE": [ + { + "id": 0, + "name": "最近7天" + }, + { + "id": 1, + "name": "最近30天" + }, + { + "id": 2, + "name": "最近3个月" + }, + { + "id": 3, + "name": "最近6个月" + }, + { + "id": 4, + "name": "最近一年" + }, + { + "id": 5, + "name": "自定义日期范围" + } + ], + "CUSTOM_DATE_RANGE": { + "CONFIRM": "应用", + "PLACEHOLDER": "选择日期范围" + } + }, + "INBOX_REPORTS": { + "HEADER": "收件箱概览", + "DESCRIPTION": "在一个地方快速查看您的收件箱表现,包括会话、响应时间、解决时间和已解决案例等关键指标。点击收件箱名称以了解更多详细信息。", + "LOADING_CHART": "正在载入图表数据...", + "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", + "DOWNLOAD_INBOX_REPORTS": "下载收件箱报表", + "FILTER_DROPDOWN_LABEL": "选择收件箱", + "ALL_INBOXES": "All Inboxes", + "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, + "METRICS": { + "CONVERSATIONS": { + "NAME": "会话", + "DESC": "(总计)" + }, + "INCOMING_MESSAGES": { + "NAME": "收到的消息", + "DESC": "(总计)" + }, + "OUTGOING_MESSAGES": { + "NAME": "发送的消息", + "DESC": "(总计)" + }, + "FIRST_RESPONSE_TIME": { + "NAME": "首次响应时间", + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "首次响应时间为 {metricValue}(基于 {conversationCount} 个对话)" + }, + "RESOLUTION_TIME": { + "NAME": "解决时间", + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "解决时间为 {metricValue}(基于 {conversationCount} 个对话)" + }, + "RESOLUTION_COUNT": { + "NAME": "已解决的数量", + "DESC": "(总计)" + } + }, + "DATE_RANGE": [ + { + "id": 0, + "name": "最近7天" + }, + { + "id": 1, + "name": "最近30天" + }, + { + "id": 2, + "name": "最近3个月" + }, + { + "id": 3, + "name": "最近6个月" + }, + { + "id": 4, + "name": "最近一年" + }, + { + "id": 5, + "name": "自定义日期范围" + } + ], + "CUSTOM_DATE_RANGE": { + "CONFIRM": "应用", + "PLACEHOLDER": "选择日期范围" + } + }, + "TEAM_REPORTS": { + "HEADER": "团队概览", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "LOADING_CHART": "正在载入图表数据...", + "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", + "DOWNLOAD_TEAM_REPORTS": "下载团队报表", + "FILTER_DROPDOWN_LABEL": "选择团队", + "FILTERS": { + "ADD_FILTER": "添加过滤器", + "CLEAR_ALL": "清除全部", + "NO_FILTER": "没有可用的过滤器", + "INPUT_PLACEHOLDER": { + "TEAMS": "查找团队" + } + }, + "METRICS": { + "CONVERSATIONS": { + "NAME": "会话", + "DESC": "(总计)" + }, + "INCOMING_MESSAGES": { + "NAME": "收到的消息", + "DESC": "(总计)" + }, + "OUTGOING_MESSAGES": { + "NAME": "发送的消息", + "DESC": "(总计)" + }, + "FIRST_RESPONSE_TIME": { + "NAME": "首次响应时间", + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "首次响应时间为 {metricValue}(基于 {conversationCount} 个对话)" + }, + "RESOLUTION_TIME": { + "NAME": "解决时间", + "DESC": "( 平均)", + "INFO_TEXT": "用于计算的对话总数:", + "TOOLTIP_TEXT": "解决时间为 {metricValue}(基于 {conversationCount} 个对话)" + }, + "RESOLUTION_COUNT": { + "NAME": "已解决的数量", + "DESC": "(总计)" + } + }, + "DATE_RANGE": [ + { + "id": 0, + "name": "最近7天" + }, + { + "id": 1, + "name": "最近30天" + }, + { + "id": 2, + "name": "最近3个月" + }, + { + "id": 3, + "name": "最近6个月" + }, + { + "id": 4, + "name": "最近一年" + }, + { + "id": 5, + "name": "自定义日期范围" + } + ], + "CUSTOM_DATE_RANGE": { + "CONFIRM": "应用", + "PLACEHOLDER": "选择日期范围" + } + }, + "CSAT_REPORTS": { + "HEADER": "CSAT 报告", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", + "DOWNLOAD": "下载 CSAT 报告", + "DOWNLOAD_FAILED": "下载 CSAT 报告失败", + "FILTERS": { + "ADD_FILTER": "添加过滤器", + "CLEAR_ALL": "清除全部", + "NO_FILTER": "没有可用的过滤器", + "INPUT_PLACEHOLDER": { + "AGENTS": "搜索客服代表", + "INBOXES": "Search inboxes", + "TEAMS": "查找团队", + "RATINGS": "Search ratings" + }, + "AGENTS": { + "LABEL": "客服" + }, + "INBOXES": { + "LABEL": "收件箱" + }, + "TEAMS": { + "LABEL": "团队" + }, + "RATINGS": { + "LABEL": "评分" + } + }, + "TABLE": { + "HEADER": { + "CONTACT_NAME": "联系人", + "AGENT_NAME": "客服", + "RATING": "评分", + "FEEDBACK_TEXT": "反馈评论", + "CONVERSATION": "会话", + "CUSTOMER": "Customer", + "RESPONSE": "回复", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" + }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", + "METRIC": { + "TOTAL_RESPONSES": { + "LABEL": "总回复数", + "TOOLTIP": "收集到的回复总数" + }, + "SATISFACTION_SCORE": { + "LABEL": "满意度得分", + "TOOLTIP": "正面回复数 / 总回复数 * 100" + }, + "RESPONSE_RATE": { + "LABEL": "回复率", + "TOOLTIP": "总回复数 / 发送的 CSAT 调查消息总数 * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "保存", + "CANCEL": "取消", + "SAVING": "保存中...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "立即升级", + "CANCEL_ANYTIME": "您可以随时更改或取消您的计划" + } + } + }, + "BOT_REPORTS": { + "HEADER": "机器人报告", + "METRIC": { + "TOTAL_CONVERSATIONS": { + "LABEL": "会话数量", + "TOOLTIP": "机器人处理的会话总数" + }, + "TOTAL_RESPONSES": { + "LABEL": "总回复数", + "TOOLTIP": "机器人发送的回复总数" + }, + "RESOLUTION_RATE": { + "LABEL": "解决率", + "TOOLTIP": "机器人解决的会话数 / 机器人处理的会话总数 * 100" + }, + "HANDOFF_RATE": { + "LABEL": "转交率", + "TOOLTIP": "转交给客服的会话数 / 机器人处理的会话总数 * 100" + } + } + }, + "OVERVIEW_REPORTS": { + "HEADER": "概览", + "LIVE": "实时", + "ACCOUNT_CONVERSATIONS": { + "HEADER": "未解决会话", + "LOADING_MESSAGE": "正在加载会话指标...", + "OPEN": "打开", + "UNATTENDED": "未处理", + "UNASSIGNED": "未分配", + "PENDING": "等待中" + }, + "CONVERSATION_HEATMAP": { + "HEADER": "会话流量", + "NO_CONVERSATIONS": "没有会话", + "CONVERSATION": "{count} 个会话", + "CONVERSATIONS": "{count} 个会话", + "DOWNLOAD_REPORT": "下载报告" + }, + "RESOLUTION_HEATMAP": { + "HEADER": "Resolutions", + "NO_CONVERSATIONS": "没有会话", + "CONVERSATION": "{count} 个会话", + "CONVERSATIONS": "{count} 个会话", + "DOWNLOAD_REPORT": "下载报告" + }, + "AGENT_CONVERSATIONS": { + "HEADER": "按客服划分的会话", + "LOADING_MESSAGE": "正在加载客服指标...", + "NO_AGENTS": "没有客服的会话", + "TABLE_HEADER": { + "AGENT": "客服", + "OPEN": "打开", + "UNATTENDED": "未处理", + "STATUS": "状态" + } + }, + "TEAM_CONVERSATIONS": { + "ALL_TEAMS": "所有团队", + "HEADER": "团队对话统计", + "LOADING_MESSAGE": "正在加载团队指标...", + "NO_TEAMS": "没有可用数据", + "TABLE_HEADER": { + "TEAM": "团队", + "OPEN": "打开", + "UNATTENDED": "未处理", + "STATUS": "状态" + } + }, + "AGENT_STATUS": { + "HEADER": "客服状态", + "ONLINE": "在线", + "BUSY": "忙碌", + "OFFLINE": "离线" + } + }, + "DAYS_OF_WEEK": { + "SUNDAY": "周日", + "MONDAY": "周一", + "TUESDAY": "周二", + "WEDNESDAY": "周三", + "THURSDAY": "周四", + "FRIDAY": "周五", + "SATURDAY": "周六" + }, + "SLA_REPORTS": { + "HEADER": "SLA 报告", + "NO_RECORDS": "没有可用的 SLA 应用会话。", + "LOADING": "正在加载 SLA 数据...", + "DOWNLOAD_SLA_REPORTS": "下载 SLA 报告", + "DOWNLOAD_FAILED": "下载 SLA 报告失败", + "DROPDOWN": { + "ADD_FIlTER": "添加过滤器", + "CLEAR_ALL": "清除全部", + "CLEAR_FILTER": "清除过滤器", + "EMPTY_LIST": "没有检索到相关信息", + "NO_FILTER": "没有可用的过滤器", + "SEARCH": "搜索过滤器", + "INPUT_PLACEHOLDER": { + "SLA": "SLA 名称", + "AGENTS": "客服名称", + "INBOXES": "收件箱名称", + "LABELS": "标签名称", + "TEAMS": "团队名称" + }, + "SLA": "SLA 策略", + "INBOXES": "收件箱", + "AGENTS": "客服", + "LABELS": "标签", + "TEAMS": "团队" + }, + "WITH": "与", + "METRICS": { + "HIT_RATE": { + "LABEL": "命中率", + "TOOLTIP": "成功完成的 SLA 百分比" + }, + "NO_OF_MISSES": { + "LABEL": "未命中次数", + "TOOLTIP": "特定时间段内的 SLA 未命中总数" + }, + "NO_OF_CONVERSATIONS": { + "LABEL": "会话数量", + "TOOLTIP": "带有 SLA 的会话总数" + } + }, + "TABLE": { + "HEADER": { + "POLICY": "策略", + "CONVERSATION": "会话", + "AGENT": "客服" + }, + "VIEW_DETAILS": "查看详情" + } + }, + "SUMMARY_REPORTS": { + "INBOX": "收件箱", + "AGENT": "客服", + "TEAM": "团队", + "LABEL": "标签", + "AVG_RESOLUTION_TIME": "平均解决时间", + "AVG_FIRST_RESPONSE_TIME": "平均首次响应时间", + "AVG_REPLY_TIME": "平均客户等待时间", + "RESOLUTION_COUNT": "已解决的数量", + "CONVERSATIONS": "会话数量" } } diff --git a/app/javascript/dashboard/i18n/locale/zh/resetPassword.json b/app/javascript/dashboard/i18n/locale/zh/resetPassword.json index 25e909ab0..da6d6516b 100644 --- a/app/javascript/dashboard/i18n/locale/zh/resetPassword.json +++ b/app/javascript/dashboard/i18n/locale/zh/resetPassword.json @@ -1,14 +1,16 @@ { "RESET_PASSWORD": { "TITLE": "重置密码", + "DESCRIPTION": "输入您用来登录到Chatwoot 的电子邮件地址,获取密码重置说明。", + "GO_BACK_TO_LOGIN": "回到登录页面", "EMAIL": { "LABEL": "Email", - "PLACEHOLDER": "请输入您的电子邮件", - "ERROR": "请输入一个有效的电子邮件" + "PLACEHOLDER": "请输入 Email 地址.", + "ERROR": "请输入一个有效的电子邮件." }, "API": { - "SUCCESS_MESSAGE": "密码重置链接已发送到您的电子邮件", - "ERROR_MESSAGE": "无法连接服务器,请稍后再试" + "SUCCESS_MESSAGE": "密码重置链接已发送到您的电子邮件.", + "ERROR_MESSAGE": "无法连接 Woot 服务器,请稍后再试。" }, "SUBMIT": "提交" } diff --git a/app/javascript/dashboard/i18n/locale/zh/setNewPassword.json b/app/javascript/dashboard/i18n/locale/zh/setNewPassword.json index f2e9b2296..43dea4d6f 100644 --- a/app/javascript/dashboard/i18n/locale/zh/setNewPassword.json +++ b/app/javascript/dashboard/i18n/locale/zh/setNewPassword.json @@ -4,16 +4,19 @@ "PASSWORD": { "LABEL": "密码", "PLACEHOLDER": "密码", - "ERROR": "密码太短了" + "ERROR": "密码太短了." }, "CONFIRM_PASSWORD": { - "LABEL": "请确认密码", + "LABEL": "请重新输入一次密码", "PLACEHOLDER": "确认密码", - "ERROR": "密码不匹配" + "ERROR": "密码不匹配." }, "API": { - "SUCCESS_MESSAGE": "成功修改密码", - "ERROR_MESSAGE": "无法连接服务器,请稍后再试" + "SUCCESS_MESSAGE": "成功修改密码.", + "ERROR_MESSAGE": "无法连接Woot服务器,请稍后再试" + }, + "CAPTCHA": { + "ERROR": "验证码过期。请重新获取" }, "SUBMIT": "提交" } diff --git a/app/javascript/dashboard/i18n/locale/zh/settings.json b/app/javascript/dashboard/i18n/locale/zh/settings.json index e9449cff0..1ba9a5662 100644 --- a/app/javascript/dashboard/i18n/locale/zh/settings.json +++ b/app/javascript/dashboard/i18n/locale/zh/settings.json @@ -3,8 +3,14 @@ "LINK": "个人资料设置", "TITLE": "个人资料设置", "BTN_TEXT": "更新个人资料", + "DELETE_AVATAR": "删除头像", + "AVATAR_DELETE_SUCCESS": "头像已成功删除", + "AVATAR_DELETE_FAILED": "删除头像时出现错误,请重试", + "UPDATE_SUCCESS": "您的个人资料已更新成功", + "PASSWORD_UPDATE_SUCCESS": "您的密码已成功更改。", "AFTER_EMAIL_CHANGED": "您的个人资料已成功更新,请在您的登录凭据更改后重新登录", "FORM": { + "PICTURE": "个人资料图片", "AVATAR": "头像", "ERROR": "请修正表单错误", "REMOVE_IMAGE": "删除", @@ -14,19 +20,148 @@ "TITLE": "个人信息", "NOTE": "您的电子邮件地址是您的身份并用于登录。" }, + "SEND_MESSAGE": { + "TITLE": "发送消息的快捷键", + "NOTE": "您可以根据您的写入偏好选择一个快捷键 (输入或 Cmd/Ctrl+Enter)。", + "UPDATE_SUCCESS": "您的设置已经更新成功", + "CARD": { + "ENTER_KEY": { + "HEADING": "Enter (↵)", + "CONTENT": "按 Enter 键发送消息,而不是单击发送按钮。" + }, + "CMD_ENTER_KEY": { + "HEADING": "Cmd/Ctrl + Enter (⌘ + ↵)", + "CONTENT": "按下 Cmd/Ctrl + Enter 发送消息,而不是点击发送按钮。" + } + } + }, + "INTERFACE_SECTION": { + "TITLE": "界面", + "NOTE": "自定义您的 Chatwoot 仪表板的外观和感觉。", + "FONT_SIZE": { + "TITLE": "字体大小", + "NOTE": "根据您的偏好调整仪表板中的文本大小。", + "UPDATE_SUCCESS": "您的字体设置已成功更新", + "UPDATE_ERROR": "更新字体设置时出错,请重试", + "OPTIONS": { + "SMALLER": "较小", + "SMALL": "小", + "DEFAULT": "默认", + "LARGE": "大", + "LARGER": "较大", + "EXTRA_LARGE": "特大" + } + }, + "LANGUAGE": { + "TITLE": "首选语言", + "NOTE": "选择您想要使用的语言。", + "UPDATE_SUCCESS": "您的语言设置已成功更新", + "UPDATE_ERROR": "更新语言设置时出错,请重试", + "USE_ACCOUNT_DEFAULT": "使用账户默认值" + } + }, + "MESSAGE_SIGNATURE_SECTION": { + "TITLE": "个人消息签名", + "NOTE": "创建一个唯一的消息签名来显示在您从任何收件箱发送的消息的末尾。 您也可以包含一个内联图片,它支持在直播聊天、电子邮件和API收件箱中。", + "BTN_TEXT": "保存消息签名", + "API_ERROR": "无法保存签名!请重试", + "API_SUCCESS": "签名保存成功", + "IMAGE_UPLOAD_ERROR": "无法上传图片!请再试一次", + "IMAGE_UPLOAD_SUCCESS": "图片添加成功。请点击保存签名。", + "IMAGE_UPLOAD_SIZE_ERROR": "图片大小应该小于{size}MB" + }, + "MESSAGE_SIGNATURE": { + "LABEL": "消息签名", + "ERROR": "消息签名不能为空", + "PLACEHOLDER": "在此插入您的个人消息签名。" + }, "PASSWORD_SECTION": { "TITLE": "密码", - "NOTE": "更新您的密码会在多个设备中重置您的登录信息。" + "NOTE": "更新您的密码会在多个设备中重置您的登录信息。", + "BTN_TEXT": "更改密码" + }, + "SECURITY_SECTION": { + "TITLE": "安全", + "NOTE": "Manage additional security features for your account.", + "MFA_BUTTON": "Manage Two-Factor Authentication" }, "ACCESS_TOKEN": { "TITLE": "访问令牌", - "NOTE": "如果您正在构建基于 API 的集成,这个令牌可以被使用" + "NOTE": "如果您正在构建基于 API 的集成,这个令牌可以被使用", + "COPY": "复制", + "RESET": "重置", + "CONFIRM_RESET": "您确定吗?", + "CONFIRM_HINT": "再次点击以确认", + "RESET_SUCCESS": "成功重新生成访问令牌", + "RESET_ERROR": "无法重新生成访问令牌。请重试" + }, + "AUDIO_NOTIFICATIONS_SECTION": { + "TITLE": "音频提醒", + "NOTE": "在仪表板中为新消息和会话启用音频提醒。", + "PLAY": "播放声音", + "ALERT_TYPES": { + "NONE": "无", + "MINE": "分配给我的", + "ALL": "所有", + "ASSIGNED": "分配给我的会话", + "UNASSIGNED": "未分配的会话", + "NOTME": "分配给其他人的开放会话" + }, + "ALERT_COMBINATIONS": { + "NONE": "您尚未选择任何选项,您不会收到任何音频提醒。", + "ASSIGNED": "您将收到分配给您的会话的提醒。", + "UNASSIGNED": "您将收到任何未分配会话的提醒。", + "NOTME": "您将收到分配给其他人的会话的提醒。", + "ASSIGNED+UNASSIGNED": "您将收到分配给您的会话和任何未处理会话的提醒。", + "ASSIGNED+NOTME": "您将收到分配给您的会话和分配给其他人的会话的提醒,但不会收到未分配会话的提醒。", + "NOTME+UNASSIGNED": "您将收到未处理会话和分配给其他人的会话的提醒。", + "ASSIGNED+NOTME+UNASSIGNED": "您将收到所有会话的提醒。" + }, + "ALERT_TYPE": { + "TITLE": "会话提醒事件", + "NONE": "无", + "ASSIGNED": "分配会话", + "ALL_CONVERSATIONS": "所有会话" + }, + "DEFAULT_TONE": { + "TITLE": "提醒音调:" + }, + "CONDITIONS": { + "TITLE": "提醒条件:", + "CONDITION_ONE": "仅在浏览器窗口未激活时发送音频提醒", + "CONDITION_TWO": "每30秒发送一次提醒,直到所有分配的会话被阅读" + }, + "SOUND_PERMISSION_ERROR": "您的浏览器中禁用了自动播放。要自动听到提醒,请在浏览器设置中启用声音权限或与页面进行交互。", + "READ_MORE": "阅读更多" }, "EMAIL_NOTIFICATIONS_SECTION": { "TITLE": "电子邮件通知", "NOTE": "在此更新您的电子邮件通知设置", "CONVERSATION_ASSIGNMENT": "当对话分配给我时发送电子邮件通知", - "CONVERSATION_CREATION": "当对话分配给我时发送电子邮件通知" + "CONVERSATION_CREATION": "当对话分配给我时发送电子邮件通知", + "CONVERSATION_MENTION": "当您在会话中被提及时发送电子邮件通知", + "ASSIGNED_CONVERSATION_NEW_MESSAGE": "在已分配的会话中创建新消息时发送电子邮件通知", + "PARTICIPATING_CONVERSATION_NEW_MESSAGE": "当参与会话中创建新消息时发送电子邮件通知", + "SLA_MISSED_FIRST_RESPONSE": "当会话错过首次响应 SLA 时发送电子邮件通知", + "SLA_MISSED_NEXT_RESPONSE": "当会话错过下次响应 SLA 时发送电子邮件通知", + "SLA_MISSED_RESOLUTION": "当会话错过解决 SLA 时发送电子邮件通知" + }, + "NOTIFICATIONS": { + "TITLE": "通知偏好", + "TYPE_TITLE": "通知类型", + "EMAIL": "电子邮件", + "PUSH": "推送通知", + "TYPES": { + "CONVERSATION_CREATED": "新会话已创建", + "CONVERSATION_ASSIGNED": "会话已分配给您", + "CONVERSATION_MENTION": "您在会话中被提及", + "ASSIGNED_CONVERSATION_NEW_MESSAGE": "在分配的会话中创建了新消息", + "PARTICIPATING_CONVERSATION_NEW_MESSAGE": "在参与的会话中创建了新消息", + "SLA_MISSED_FIRST_RESPONSE": "会话错过了首次响应 SLA", + "SLA_MISSED_NEXT_RESPONSE": "会话错过了下次响应 SLA", + "SLA_MISSED_RESOLUTION": "会话错过了解决 SLA" + }, + "BROWSER_PERMISSION": "为您的浏览器启用推送通知,以便您能够接收它们" }, "API": { "UPDATE_SUCCESS": "您的通知设置已成功更新", @@ -34,72 +169,122 @@ }, "PUSH_NOTIFICATIONS_SECTION": { "TITLE": "推送通知", - "NOTE": "在此更新您的电子邮件通知设置", + "NOTE": "在此更新您的推送通知设置", "CONVERSATION_ASSIGNMENT": "当对话被分配给我时发送推送通知", "CONVERSATION_CREATION": "创建新对话时发送推送通知", + "CONVERSATION_MENTION": "当您在会话中被提及时发送推送通知", + "ASSIGNED_CONVERSATION_NEW_MESSAGE": "在已分配的会话中创建新消息时发送推送通知", + "PARTICIPATING_CONVERSATION_NEW_MESSAGE": "当参与会话中创建新消息时发送推送通知", "HAS_ENABLED_PUSH": "您已启用此浏览器的推送。", - "REQUEST_PUSH": "启用推送通知" + "REQUEST_PUSH": "启用推送通知", + "SLA_MISSED_FIRST_RESPONSE": "当会话错过首次响应 SLA 时发送推送通知", + "SLA_MISSED_NEXT_RESPONSE": "当会话错过下次响应 SLA 时发送推送通知", + "SLA_MISSED_RESOLUTION": "当会话错过解决 SLA 时发送推送通知" }, "PROFILE_IMAGE": { "LABEL": "头像" }, "NAME": { - "LABEL": "Your full name", - "ERROR": "Please enter a valid full name", - "PLACEHOLDER": "Please enter your full name" + "LABEL": "您的全名", + "ERROR": "请输入一个有效的全名", + "PLACEHOLDER": "请输入您的姓名" }, "DISPLAY_NAME": { - "LABEL": "Display name", - "ERROR": "Please enter a valid display name", - "PLACEHOLDER": "Please enter a display name, this would be displayed in conversations" + "LABEL": "展示名", + "ERROR": "请输入一个有效的全名", + "PLACEHOLDER": "请输入显示名称,将会在对话中显示" }, "AVAILABILITY": { "LABEL": "有效的", - "STATUSES_LIST": [ - "在线的", - "忙碌中", - "离线的" - ] + "STATUS": { + "ONLINE": "在线", + "BUSY": "忙碌中", + "OFFLINE": "离线" + }, + "SET_AVAILABILITY_SUCCESS": "可用性已成功设置", + "SET_AVAILABILITY_ERROR": "无法设置可用性,请重试", + "IMPERSONATING_ERROR": "当您处于模拟用户状态时,无法更改其在线状态" }, "EMAIL": { "LABEL": "您的电子邮件地址", "ERROR": "请输入一个有效的电子邮件", "PLACEHOLDER": "请输入您的名字,这将会在对话中显示" }, + "CURRENT_PASSWORD": { + "LABEL": "当前密码", + "ERROR": "请输入当前密码", + "PLACEHOLDER": "请输入当前密码" + }, "PASSWORD": { - "LABEL": "密码", + "LABEL": "新密码", "ERROR": "请输入长度6或更长的密码", "PLACEHOLDER": "请输入新密码" }, "PASSWORD_CONFIRMATION": { "LABEL": "重新输入一次密码", "ERROR": "两次密码不一致", - "PLACEHOLDER": "请重新输入密码" + "PLACEHOLDER": "请重新输入您的新密码" } } }, "SIDEBAR_ITEMS": { - "CHANGE_AVAILABILITY_STATUS": "改變", + "CHANGE_AVAILABILITY_STATUS": "更改", "CHANGE_ACCOUNTS": "切换账户", + "SWITCH_ACCOUNT": "切换账户", + "CONTACT_SUPPORT": "联系支持", "SELECTOR_SUBTITLE": "从以下列表中选择一个账户", "PROFILE_SETTINGS": "个人资料设置", - "LOGOUT": "退出登录" + "YEAR_IN_REVIEW": "Year in Review", + "KEYBOARD_SHORTCUTS": "键盘快捷键", + "APPEARANCE": "更改外观", + "SUPER_ADMIN_CONSOLE": "超级管理员控制台", + "DOCS": "阅读文档", + "CHANGELOG": "更新日志", + "LOGOUT": "注销" }, "APP_GLOBAL": { "TRIAL_MESSAGE": "剩余试用期天数", - "TRAIL_BUTTON": "立即购买" + "TRAIL_BUTTON": "立即购买", + "DELETED_USER": "已删除用户", + "EMAIL_VERIFICATION_PENDING": "您似乎尚未验证您的电子邮件地址。请检查您的收件箱以获取验证邮件。", + "RESEND_VERIFICATION_MAIL": "重新发送验证邮件", + "EMAIL_VERIFICATION_SENT": "验证邮件已发送。请检查您的收件箱。", + "ACCOUNT_SUSPENDED": { + "TITLE": "账户已暂停", + "MESSAGE": "您的账户已被暂停。请联系支持团队以获取更多信息。" + }, + "NO_ACCOUNTS": { + "TITLE": "No account found", + "MESSAGE_CLOUD": "You are not part of any accounts right now. If you think this is a mistake, please reach out to our support team.", + "MESSAGE_SELF_HOSTED": "You are not part of any accounts right now. Please reach out to your administrator.", + "LOGOUT": "注销" + } }, "COMPONENTS": { "CODE": { "BUTTON_TEXT": "复制", - "COPY_SUCCESSFUL": "代码复制到剪贴板成功" + "CODEPEN": "在 CodePen 中打开", + "COPY_SUCCESSFUL": "已复制到剪贴板" + }, + "SHOW_MORE_BLOCK": { + "SHOW_MORE": "显示更多", + "SHOW_LESS": "显示更少" }, "FILE_BUBBLE": { "DOWNLOAD": "下载", - "UPLOADING": "上传中..." + "UPLOADING": "上传中...", + "INSTAGRAM_STORY_UNAVAILABLE": "本信息不存在", + "INSTAGRAM_STORY_REPLY": "回复您的故事:" + }, + "LOCATION_BUBBLE": { + "SEE_ON_MAP": "在地图上查看" }, "FORM_BUBBLE": { "SUBMIT": "提交" + }, + "MEDIA": { + "IMAGE_UNAVAILABLE": "此图片不再可用。", + "LOADING_FAILED": "加载失败" } }, "CONFIRM_EMAIL": "正在验证...", @@ -109,31 +294,629 @@ } }, "SIDEBAR": { + "NO_ITEMS": "无项目", + "CURRENTLY_VIEWING_ACCOUNT": "当前查看:", + "SWITCH": "切换", + "INBOX_VIEW": "收件箱视图", "CONVERSATIONS": "会话", + "INBOX": "我的收件箱", + "ALL_CONVERSATIONS": "所有会话", + "MENTIONED_CONVERSATIONS": "提及", + "PARTICIPATING_CONVERSATIONS": "参与者", + "UNATTENDED_CONVERSATIONS": "未处理", "REPORTS": "报告", "SETTINGS": "设置", + "CONTACTS": "联系人", + "ACTIVE": "状态", + "COMPANIES": "公司", + "ALL_COMPANIES": "All Companies", + "CAPTAIN": "Captain", + "CAPTAIN_ASSISTANTS": "助手", + "CAPTAIN_DOCUMENTS": "文档", + "CAPTAIN_RESPONSES": "常见问题", + "CAPTAIN_TOOLS": "工具", + "CAPTAIN_SCENARIOS": "Scenarios", + "CAPTAIN_PLAYGROUND": "试验场", + "CAPTAIN_INBOXES": "收件箱", + "CAPTAIN_SETTINGS": "设置", "HOME": "首页", - "AGENTS": "客服代理们", + "AGENTS": "客服代理", + "AGENT_BOTS": "机器人", + "AUDIT_LOGS": "审计日志", "INBOXES": "收件箱", + "NOTIFICATIONS": "消息通知", "CANNED_RESPONSES": "预设回复", "INTEGRATIONS": "集成方式", - "ACCOUNT_SETTINGS": "帐户设置", - "LABELS": "标签" + "PROFILE_SETTINGS": "个人资料设置", + "ACCOUNT_SETTINGS": "账户设置", + "APPLICATIONS": "应用程序", + "LABELS": "标签", + "CUSTOM_ATTRIBUTES": "自定义属性", + "AUTOMATION": "自动化", + "MACROS": "宏", + "TEAMS": "团队", + "BILLING": "计费", + "CUSTOM_VIEWS_FOLDER": "文件夹", + "CUSTOM_VIEWS_SEGMENTS": "分段", + "ALL_CONTACTS": "所有联系人", + "TAGGED_WITH": "标记为", + "NEW_LABEL": "新标签", + "NEW_TEAM": "新团队", + "NEW_INBOX": "新收件箱", + "REPORTS_CONVERSATION": "会话", + "CSAT": "客户满意度", + "LIVE_CHAT": "在线聊天", + "SMS": "短信", + "WHATSAPP": "WhatsApp", + "CAMPAIGNS": "活动", + "ONGOING": "进行中", + "ONE_OFF": "一次性", + "REPORTS_SLA": "SLA", + "REPORTS_BOT": "机器人", + "REPORTS_AGENT": "客服", + "REPORTS_LABEL": "标签", + "REPORTS_INBOX": "收件箱", + "REPORTS_TEAM": "团队", + "AGENT_ASSIGNMENT": "Agent Assignment", + "SET_AVAILABILITY_TITLE": "将自己设置为", + "SET_YOUR_AVAILABILITY": "设置您的可用性", + "SLA": "SLA", + "CUSTOM_ROLES": "自定义角色", + "BETA": "测试版", + "REPORTS_OVERVIEW": "概览", + "REAUTHORIZE": "您的收件箱连接已过期,请重新连接以继续接收和发送消息", + "HELP_CENTER": { + "TITLE": "帮助中心", + "ARTICLES": "文章", + "CATEGORIES": "类别", + "LOCALES": "语言", + "SETTINGS": "设置" + }, + "CHANNELS": "频道", + "SET_AUTO_OFFLINE": { + "TEXT": "自动标记离线状态", + "INFO_TEXT": "当您不使用应用程序或仪表板时,让系统自动标记您离线。", + "INFO_SHORT": "当您不使用应用程序时自动标记离线。" + }, + "DOCS": "阅读文档", + "SECURITY": "安全", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "助手", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "特性", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } + }, + "BILLING_SETTINGS": { + "TITLE": "计费方式", + "DESCRIPTION": "在此管理您的订阅,升级您的计划并为您的团队获取更多功能。", + "CURRENT_PLAN": { + "TITLE": "当前计划", + "PLAN_NOTE": "您当前订阅的是 **{plan}** 计划,拥有 **{quantity}** 个许可证", + "SEAT_COUNT": "座位数", + "RENEWS_ON": "续订于" + }, + "VIEW_PRICING": "查看价格", + "MANAGE_SUBSCRIPTION": { + "TITLE": "管理您的订阅", + "DESCRIPTION": "查看您之前的发票,编辑您的账单详细信息或取消您的订阅。", + "BUTTON_TXT": "前往账单门户" + }, + "CAPTAIN": { + "TITLE": "Captain", + "DESCRIPTION": "管理 Captain AI 的使用和积分。", + "BUTTON_TXT": "购买更多积分", + "DOCUMENTS": "文档", + "RESPONSES": "常见问题", + "UPGRADE": "Captain 在免费计划中不可用,立即升级以获取助手、副驾驶等更多功能。", + "REFRESH_CREDITS": "刷新" + }, + "CHAT_WITH_US": { + "TITLE": "需要帮助吗?", + "DESCRIPTION": "您在计费方面遇到任何问题吗?我们在此为您提供帮助。", + "BUTTON_TXT": "联系我们" + }, + "NO_BILLING_USER": "您的计费账户正在配置中。请刷新页面并重试。", + "TOPUP": { + "BUY_CREDITS": "购买更多积分", + "MODAL_TITLE": "Buy AI Credits", + "MODAL_DESCRIPTION": "Purchase additional credits for Captain AI.", + "CREDITS": "CREDITS", + "ONE_TIME": "one-time", + "POPULAR": "Most Popular", + "NOTE_TITLE": "Note:", + "NOTE_DESCRIPTION": "Credits are added immediately and expire in 6 months. An active subscription is required to use credits. Purchased credits are consumed after your monthly plan credits.", + "CANCEL": "取消", + "PURCHASE": "Purchase Credits", + "LOADING": "Loading options...", + "FETCH_ERROR": "Failed to load credit options. Please try again.", + "PURCHASE_ERROR": "Failed to process purchase. Please try again.", + "PURCHASE_SUCCESS": "Successfully added {credits} credits to your account", + "CONFIRM": { + "TITLE": "Confirm Purchase", + "DESCRIPTION": "You are about to purchase {credits} credits for {amount}.", + "INSTANT_DEDUCTION_NOTE": "Your saved card will be charged immediately upon confirmation.", + "GO_BACK": "返回", + "CONFIRM_PURCHASE": "Confirm Purchase" + } + } + }, + "SECURITY_SETTINGS": { + "TITLE": "安全", + "DESCRIPTION": "管理您的账户安全设置。", + "LINK_TEXT": "了解更多关于 SAML SSO 的信息", + "SAML_DISABLED_MESSAGE": "SAML SSO is currently disabled. Please contact your administrator to enable this feature.", + "SAML": { + "TITLE": "SAML SSO", + "NOTE": "Configure SAML single sign-on for your account. Users will authenticate through your identity provider instead of using email/password.", + "ACS_URL": { + "LABEL": "ACS URL", + "TOOLTIP": "Assertion Consumer Service URL - Configure this URL in your IdP as the destination for SAML responses" + }, + "SSO_URL": { + "LABEL": "SSO URL", + "HELP": "The URL where SAML authentication requests will be sent", + "PLACEHOLDER": "https://your-idp.com/saml/sso" + }, + "CERTIFICATE": { + "LABEL": "Signing certificate in PEM format", + "HELP": "The public certificate from your identity provider used to verify SAML responses", + "PLACEHOLDER": "-----BEGIN CERTIFICATE-----\nMIIC..." + }, + "FINGERPRINT": { + "LABEL": "Fingerprint", + "TOOLTIP": "SHA-1 fingerprint of the certificate - Use this to verify the certificate in your IdP configuration" + }, + "COPY_SUCCESS": "已复制到剪贴板", + "SP_ENTITY_ID": { + "LABEL": "SP Entity ID", + "HELP": "Unique identifier for this application as a service provider (auto-generated).", + "TOOLTIP": "Unique identifier for Chatwoot as the Service Provider - Configure this in your IdP settings" + }, + "IDP_ENTITY_ID": { + "LABEL": "Identity Provider Entity ID", + "HELP": "Unique identifier for your identity provider (usually found in IdP configuration)", + "PLACEHOLDER": "https://your-idp.com/saml" + }, + "UPDATE_BUTTON": "更新 SAML 设置", + "API": { + "SUCCESS": "SAML settings updated successfully", + "ERROR": "Failed to update SAML settings", + "ERROR_LOADING": "Failed to load SAML settings", + "DISABLED": "SAML settings disabled successfully" + }, + "VALIDATION": { + "REQUIRED_FIELDS": "SSO URL, Identity Provider Entity ID, and Certificate are required fields", + "SSO_URL_ERROR": "Please enter a valid SSO URL", + "CERTIFICATE_ERROR": "Certificate is required", + "IDP_ENTITY_ID_ERROR": "Identity Provider Entity ID is required" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The SAML SSO feature is only available in the Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade to an Enterprise plan to access SAML single sign-on and other advanced security features.", + "ASK_ADMIN": "请联系您的管理员进行升级。" + }, + "PAYWALL": { + "TITLE": "Upgrade to enable SAML SSO", + "AVAILABLE_ON": "The SAML SSO feature is only available in the Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to get access to SAML single sign-on and other advanced features.", + "UPGRADE_NOW": "立即升级", + "CANCEL_ANYTIME": "您可以随时更改或取消您的计划" + }, + "ATTRIBUTE_MAPPING": { + "TITLE": "SAML Attribute Setup", + "DESCRIPTION": "The following attribute mappings must be configured in your identity provider" + }, + "INFO_SECTION": { + "TITLE": "Service Provider Information", + "TOOLTIP": "Copy these values and configure them in your Identity Provider to establish the SAML connection" + } + } + }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "搜索属性" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "解决会话", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "解决会话", + "CANCEL": "取消" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "是", + "NO": "否" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "立即升级", + "CANCEL_ANYTIME": "您可以随时更改或取消您的计划" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "请联系您的管理员进行升级。" + } + } }, "CREATE_ACCOUNT": { - "NEW_ACCOUNT": "New Account", - "SELECTOR_SUBTITLE": "Create a new account", + "NO_ACCOUNT_WARNING": "哦,糟糕!我们找不到任何 Chatwoot 账户。请创建一个新账户以继续。", + "NEW_ACCOUNT": "新账户", + "SELECTOR_SUBTITLE": "创建一个新账户", "API": { - "SUCCESS_MESSAGE": "Account created successfully", - "EXIST_MESSAGE": "Account already exists", + "SUCCESS_MESSAGE": "账户创建成功", + "EXIST_MESSAGE": "账户已存在", "ERROR_MESSAGE": "无法连接服务器,请稍后再试" }, "FORM": { "NAME": { - "LABEL": "帐户名称", + "LABEL": "公司名称", "PLACEHOLDER": "Wayne企业" }, - "SUBMIT": "提交" + "SUBMIT": "提交", + "CANCEL": "取消" + } + }, + "KEYBOARD_SHORTCUTS": { + "TOGGLE_MODAL": "查看所有快捷键", + "TITLE": { + "OPEN_CONVERSATION": "打开对话", + "RESOLVE_AND_NEXT": "解决并移动到下一个", + "NAVIGATE_DROPDOWN": "导航下拉项", + "RESOLVE_CONVERSATION": "解决对话", + "GO_TO_CONVERSATION_DASHBOARD": "前往对话仪表板", + "ADD_ATTACHMENT": "添加附件", + "GO_TO_CONTACTS_DASHBOARD": "前往联系人仪表板", + "TOGGLE_SIDEBAR": "切换侧边栏", + "GO_TO_REPORTS_SIDEBAR": "前往报告侧边栏", + "MOVE_TO_NEXT_TAB": "移动到对话列表中的下一个标签", + "GO_TO_SETTINGS": "前往设置", + "SWITCH_TO_PRIVATE_NOTE": "切换到私人笔记", + "SWITCH_TO_REPLY": "切换到回复", + "TOGGLE_SNOOZE_DROPDOWN": "切换暂停下拉菜单" + } + }, + "ASSIGNMENT_POLICY": { + "INDEX": { + "HEADER": { + "TITLE": "Agent assignment", + "DESCRIPTION": "Define policies to effectively manage workload and route conversations based on the needs of inboxes and agents. Learn more here" + }, + "ASSIGNMENT_POLICY": { + "TITLE": "Assignment policy", + "DESCRIPTION": "Manage how conversations get assigned in inboxes.", + "FEATURES": [ + "Assign by conversations evenly or by available capacity", + "Add fair distribution rules to avoid overloading any agent", + "Add inboxes to a policy - one policy per inbox" + ] + }, + "AGENT_CAPACITY_POLICY": { + "TITLE": "Agent capacity policy", + "DESCRIPTION": "Manage workload for agents.", + "FEATURES": [ + "Define maximum conversations per inbox", + "Create exceptions based on labels and time", + "Add agents to a policy - one policy per agent" + ] + } + }, + "AGENT_ASSIGNMENT_POLICY": { + "INDEX": { + "HEADER": { + "TITLE": "Assignment policy", + "CREATE_POLICY": "New policy" + }, + "CARD": { + "ORDER": "Order", + "PRIORITY": "优先级", + "ACTIVE": "状态", + "INACTIVE": "Inactive", + "POPOVER": "Added inboxes", + "EDIT": "编辑" + }, + "NO_RECORDS_FOUND": "No assignment policies found" + }, + "CREATE": { + "HEADER": { + "TITLE": "Create assignment policy" + }, + "CREATE_BUTTON": "Create policy", + "API": { + "SUCCESS_MESSAGE": "Assignment policy created successfully", + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" + } + }, + "EDIT": { + "HEADER": { + "TITLE": "Edit assignment policy" + }, + "EDIT_BUTTON": "Update policy", + "CONFIRM_ADD_INBOX_DIALOG": { + "TITLE": "Add inbox", + "DESCRIPTION": "{inboxName} inbox is already linked to another policy. Are you sure you want to link it to this policy? It will be unlinked from the other policy.", + "CONFIRM_BUTTON_LABEL": "Continue", + "CANCEL_BUTTON_LABEL": "取消" + }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, + "API": { + "SUCCESS_MESSAGE": "Assignment policy updated successfully", + "ERROR_MESSAGE": "Failed to update assignment policy" + }, + "INBOX_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox added to policy successfully", + "ERROR_MESSAGE": "Failed to add inbox to policy" + }, + "REMOVE": { + "SUCCESS_MESSAGE": "Inbox removed from policy successfully", + "ERROR_MESSAGE": "Failed to remove inbox from policy" + } + } + }, + "FORM": { + "NAME": { + "LABEL": "Policy name:", + "PLACEHOLDER": "Enter policy name" + }, + "DESCRIPTION": { + "LABEL": "描述:", + "PLACEHOLDER": "输入描述" + }, + "STATUS": { + "LABEL": "状态:", + "PLACEHOLDER": "选择状态", + "ACTIVE": "Policy is active", + "INACTIVE": "Policy is inactive" + }, + "ASSIGNMENT_ORDER": { + "LABEL": "Assignment order", + "ROUND_ROBIN": { + "LABEL": "Round robin", + "DESCRIPTION": "Assign conversations evenly among agents." + }, + "BALANCED": { + "LABEL": "Balanced", + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" + } + }, + "ASSIGNMENT_PRIORITY": { + "LABEL": "Assignment priority", + "EARLIEST_CREATED": { + "LABEL": "Earliest created", + "DESCRIPTION": "The conversation that was created first gets assigned first." + }, + "LONGEST_WAITING": { + "LABEL": "Longest waiting", + "DESCRIPTION": "The conversation waiting the longest gets assigned first." + } + }, + "FAIR_DISTRIBUTION": { + "LABEL": "Fair distribution policy", + "DESCRIPTION": "Set the maximum number of conversations that can be assigned per agent within a time window to avoid overloading any one agent. This required field defaults to 100 conversations per hour.", + "INPUT_MAX": "Assign max", + "DURATION": "Conversations per agent in every" + }, + "INBOXES": { + "LABEL": "Added inboxes", + "DESCRIPTION": "Add inboxes for which this policy will be applicable.", + "ADD_BUTTON": "Add inbox", + "DROPDOWN": { + "SEARCH_PLACEHOLDER": "Search and select inboxes to add", + "ADD_BUTTON": "添加" + }, + "EMPTY_STATE": "No inboxes added to this policy, add an inbox to get started", + "API": { + "SUCCESS_MESSAGE": "Inbox successfully added to policy", + "ERROR_MESSAGE": "Failed to add inbox to policy" + } + } + }, + "DELETE_POLICY": { + "SUCCESS_MESSAGE": "Assignment policy deleted successfully", + "ERROR_MESSAGE": "Failed to delete assignment policy" + } + }, + "AGENT_CAPACITY_POLICY": { + "INDEX": { + "HEADER": { + "TITLE": "Agent capacity", + "CREATE_POLICY": "New policy" + }, + "CARD": { + "POPOVER": "Added agents", + "EDIT": "编辑" + }, + "NO_RECORDS_FOUND": "No agent capacity policies found" + }, + "CREATE": { + "HEADER": { + "TITLE": "Create agent capacity policy" + }, + "CREATE_BUTTON": "Create policy", + "API": { + "SUCCESS_MESSAGE": "Agent capacity policy created successfully", + "ERROR_MESSAGE": "Failed to create agent capacity policy" + } + }, + "EDIT": { + "HEADER": { + "TITLE": "Edit agent capacity policy" + }, + "EDIT_BUTTON": "Update policy", + "CONFIRM_ADD_AGENT_DIALOG": { + "TITLE": "Add agent", + "DESCRIPTION": "{agentName} is already linked to another policy. Are you sure you want to link it to this policy? It will be unlinked from the other policy.", + "CONFIRM_BUTTON_LABEL": "Continue", + "CANCEL_BUTTON_LABEL": "取消" + }, + "API": { + "SUCCESS_MESSAGE": "Agent capacity policy updated successfully", + "ERROR_MESSAGE": "Failed to update agent capacity policy" + }, + "AGENT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Agent added to policy successfully", + "ERROR_MESSAGE": "Failed to add agent to policy" + }, + "REMOVE": { + "SUCCESS_MESSAGE": "Agent removed from policy successfully", + "ERROR_MESSAGE": "Failed to remove agent from policy" + } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } + } + }, + "FORM": { + "NAME": { + "LABEL": "Policy name:", + "PLACEHOLDER": "Enter policy name" + }, + "DESCRIPTION": { + "LABEL": "描述:", + "PLACEHOLDER": "输入描述" + }, + "INBOX_CAPACITY_LIMIT": { + "LABEL": "Inbox capacity limits", + "ADD_BUTTON": "Add inbox", + "FIELD": { + "SELECT_INBOX": "Select inbox", + "MAX_CONVERSATIONS": "Max conversations", + "SET_LIMIT": "Set limit" + }, + "EMPTY_STATE": "没有设置收件箱限制" + }, + "EXCLUSION_RULES": { + "LABEL": "Exclusion rules", + "DESCRIPTION": "Conversations that satisfy the following conditions would not count towards agent capacity", + "TAGS": { + "LABEL": "Exclude conversations tagged with specific labels", + "ADD_TAG": "添加标签", + "DROPDOWN": { + "SEARCH_PLACEHOLDER": "Search and select tags to add" + }, + "EMPTY_STATE": "No tags added to this policy." + }, + "DURATION": { + "LABEL": "Exclude conversations older than a specified duration", + "PLACEHOLDER": "Set time" + } + }, + "USERS": { + "LABEL": "Assigned agents", + "DESCRIPTION": "Add agents for which this policy will be applicable.", + "ADD_BUTTON": "Add agent", + "DROPDOWN": { + "SEARCH_PLACEHOLDER": "Search and select agents to add", + "ADD_BUTTON": "添加" + }, + "EMPTY_STATE": "No agents added", + "API": { + "SUCCESS_MESSAGE": "Agent successfully added to policy", + "ERROR_MESSAGE": "Failed to add agent to policy" + } + } + }, + "DELETE_POLICY": { + "SUCCESS_MESSAGE": "Agent capacity policy deleted successfully", + "ERROR_MESSAGE": "Failed to delete agent capacity policy" + } + }, + "DELETE_POLICY": { + "TITLE": "Delete policy", + "DESCRIPTION": "Are you sure you want to delete this policy? This action cannot be undone.", + "CONFIRM_BUTTON_LABEL": "删除", + "CANCEL_BUTTON_LABEL": "取消" } } } diff --git a/app/javascript/dashboard/i18n/locale/zh/signup.json b/app/javascript/dashboard/i18n/locale/zh/signup.json index 3f0629b98..c7912ac8b 100644 --- a/app/javascript/dashboard/i18n/locale/zh/signup.json +++ b/app/javascript/dashboard/i18n/locale/zh/signup.json @@ -1,32 +1,50 @@ { "REGISTER": { - "TRY_WOOT": "注册帐户", + "TRY_WOOT": "创建新账户", + "GET_STARTED": "开始使用Chatwoot", "TITLE": "注册", - "TERMS_ACCEPT": "通过注册,您同意我们的 T & C隐私政策", - "ACCOUNT_NAME": { - "LABEL": "帐户名称", - "PLACEHOLDER": "Wayne企业", - "ERROR": "帐号名称太短了" + "TESTIMONIAL_HEADER": "只差最后一步就可以了", + "TESTIMONIAL_CONTENT": "您离吸引客户、留住客户和寻找新客户仅一步之遥。", + "TERMS_ACCEPT": "通过创建账户, 你将同意我们的 T & C 以及 隐私政策", + "OAUTH": { + "GOOGLE_SIGNUP": "使用 Google 注册" + }, + "COMPANY_NAME": { + "LABEL": "公司名称", + "PLACEHOLDER": "输入您的公司名称。例如, Wayne Enterprises", + "ERROR": "公司名称太短了。" + }, + "FULL_NAME": { + "LABEL": "名字", + "PLACEHOLDER": "输入您的全名,例如 Bruce Wayne", + "ERROR": "帐号名称太短了." }, "EMAIL": { - "LABEL": "Email", - "PLACEHOLDER": "bruce{'@'}wayne{'.'}enterprises", - "ERROR": "电子邮件无效" + "LABEL": "工作邮箱", + "PLACEHOLDER": "请输入您的工作邮箱地址。例如:bruce{'@'}wayne{'.'}enterprises", + "ERROR": "请输入一个有效的电子邮件." }, "PASSWORD": { "LABEL": "密码", "PLACEHOLDER": "密码", - "ERROR": "密码太短了" + "ERROR": "密码太短了.", + "IS_INVALID_PASSWORD": "密码应至少应该包含:1个大写字母、1个小写字母、1个数字和1个特殊字符。", + "REQUIREMENTS_LENGTH": "At least 6 characters long", + "REQUIREMENTS_UPPERCASE": "At least one uppercase letter", + "REQUIREMENTS_LOWERCASE": "At least one lowercase letter", + "REQUIREMENTS_NUMBER": "At least one number", + "REQUIREMENTS_SPECIAL": "At least one special character" }, "CONFIRM_PASSWORD": { - "LABEL": "请确认密码", - "PLACEHOLDER": "请确认密码", - "ERROR": "密码不匹配" + "LABEL": "确认密码", + "PLACEHOLDER": "请重新输入一次密码", + "ERROR": "密码不匹配." }, "API": { "SUCCESS_MESSAGE": "注册成功", - "ERROR_MESSAGE": "无法连接服务器,请稍后再试" + "ERROR_MESSAGE": "无法与 Woot 服务器建立连接。请重试。" }, - "SUBMIT": "提交" + "SUBMIT": "创建新账户", + "HAVE_AN_ACCOUNT": "已经有帐号?" } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/auditLogs.json b/app/javascript/dashboard/i18n/locale/zh_CN/auditLogs.json index b7fca9a39..a0e8ec466 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/auditLogs.json @@ -23,9 +23,9 @@ }, "DEFAULT_USER": "系统", "AUTOMATION_RULE": { - "ADD": "{agentName} 创建了一个新的自动化规则 (##{id})", - "EDIT": "{agentName} 更新了一个自动化规则 (##{id})", - "DELETE": "{agentName} 删除了一个自动化规则 (##{id})" + "ADD": "{agentName} 创建了一个新的自动化规则 (#{id})", + "EDIT": "{agentName} 更新了一个自动化规则 (#{id})", + "DELETE": "{agentName} 删除了一个自动化规则 (#{id})" }, "ACCOUNT_USER": { "ADD": "{agentName} 邀请了 {invitee} 加入账户作为 {role}", @@ -36,39 +36,39 @@ } }, "INBOX": { - "ADD": "{agentName} 创建了一个新的收件箱 (##{id})", - "EDIT": "{agentName} 更新了一个收件箱 (##{id})", - "DELETE": "{agentName} 删除了一个收件箱 (##{id})" + "ADD": "{agentName} 创建了一个新的收件箱 (#{id})", + "EDIT": "{agentName} 更新了一个收件箱 (#{id})", + "DELETE": "{agentName} 删除了一个收件箱 (#{id})" }, "WEBHOOK": { - "ADD": "{agentName} 创建了一个新的 webhook (##{id})", - "EDIT": "{agentName} 更新了一个 webhook (##{id})", - "DELETE": "{agentName} 删除了一个 webhook (##{id})" + "ADD": "{agentName} 创建了一个新的 webhook (#{id})", + "EDIT": "{agentName} 更新了一个 webhook (#{id})", + "DELETE": "{agentName} 删除了一个 webhook (#{id})" }, "USER_ACTION": { "SIGN_IN": "{agentName} 登录", "SIGN_OUT": "{agentName} 登出" }, "TEAM": { - "ADD": "{agentName} 创建了一个新的团队 (##{id})", - "EDIT": "{agentName} 更新了一个团队 (##{id})", - "DELETE": "{agentName} 删除了一个团队 (##{id})" + "ADD": "{agentName} 创建了一个新的团队 (#{id})", + "EDIT": "{agentName} 更新了一个团队 (#{id})", + "DELETE": "{agentName} 删除了一个团队 (#{id})" }, "MACRO": { - "ADD": "{agentName} 创建了一个新的宏 (##{id})", - "EDIT": "{agentName} 更新了一个宏 (##{id})", - "DELETE": "{agentName} 删除了一个宏 (##{id})" + "ADD": "{agentName} 创建了一个新的宏 (#{id})", + "EDIT": "{agentName} 更新了一个宏 (#{id})", + "DELETE": "{agentName} 删除了一个宏 (#{id})" }, "INBOX_MEMBER": { - "ADD": "{agentName} 将 {user} 添加到收件箱 (##{inbox_id})", - "REMOVE": "{agentName} 将 {user} 从收件箱 (##{inbox_id}) 中移除" + "ADD": "{agentName} 将 {user} 添加到收件箱 (#{inbox_id})", + "REMOVE": "{agentName} 将 {user} 从收件箱 (#{inbox_id}) 中移除" }, "TEAM_MEMBER": { - "ADD": "{agentName} 将 {user} 添加到团队 (##{team_id})", - "REMOVE": "{agentName} 将 {user} 从团队 (##{team_id}) 中移除" + "ADD": "{agentName} 将 {user} 添加到团队 (#{team_id})", + "REMOVE": "{agentName} 将 {user} 从团队 (#{team_id}) 中移除" }, "ACCOUNT": { - "EDIT": "{agentName} 更新了账户配置 (##{id})" + "EDIT": "{agentName} 更新了账户配置 (#{id})" }, "CONVERSATION": { "DELETE": "{agentName} 删除了对话 #{id}" diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/chatlist.json b/app/javascript/dashboard/i18n/locale/zh_CN/chatlist.json index 3e63b4ffa..947d20d58 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/chatlist.json @@ -107,7 +107,7 @@ "CONTENT": "共享联系人" }, "embed": { - "CONTENT": "" + "CONTENT": "嵌入内容" } }, "CHAT_SORT_BY_FILTER": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/companies.json b/app/javascript/dashboard/i18n/locale/zh_CN/companies.json index 7fed256ac..df37de873 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/companies.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/companies.json @@ -20,7 +20,7 @@ "SEARCH_PLACEHOLDER": "搜索公司...", "LOADING": "正在加载公司...", "UNNAMED": "未命名的公司", - "CONTACTS_COUNT": "", + "CONTACTS_COUNT": "{n} 个联系人 | {n} 个联系人", "EMPTY_STATE": { "TITLE": "没有找到公司" } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json index 466014044..81965842b 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json @@ -685,6 +685,16 @@ "SANDBOX": "Sandbox", "LIVE": "实时" } + }, + "WEBHOOK": { + "TITLE": "Webhook Configuration", + "DESCRIPTION": "Webhook URL is required for your WhatsApp Business Account to receive messages from customers", + "ACTION_REQUIRED": "Webhook not configured", + "REGISTER_BUTTON": "Register Webhook", + "REGISTER_SUCCESS": "Webhook registered successfully", + "REGISTER_ERROR": "Failed to register webhook. Please try again.", + "CONFIGURED_SUCCESS": "Webhook configured successfully", + "URL_MISMATCH": "Webhook URL mismatch" } }, "SETTINGS": "设置", @@ -701,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "客服代理们", "INBOX_AGENTS_SUB_TEXT": "添加或删除此收件箱中的客服", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/search.json b/app/javascript/dashboard/i18n/locale/zh_CN/search.json index 6a46957cd..e5af6c794 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/search.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/search.json @@ -49,7 +49,7 @@ "AND": "和", "APPLY": "应用", "BEFORE_DATE": "在{date}之前", - "AFTER_DATE": "在{data}之后", + "AFTER_DATE": "在{date}之后", "TIME_RANGE": "按时间筛选", "CLEAR_FILTER": "清除筛选条件" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/yearInReview.json b/app/javascript/dashboard/i18n/locale/zh_CN/yearInReview.json index 0124c02ad..d9f5ca929 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/yearInReview.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/yearInReview.json @@ -35,7 +35,7 @@ "MESSAGES": { "SWIFT_HELPER": "You replied in {time} on average. Faster than most notifications.", "QUICK_RESPONDER": "You replied in {time} on average. The inbox barely waited.", - "STEADY_SUPPORT": "", + "STEADY_SUPPORT": "平均回复时间为 {time}。节奏平稳,回复扎实。", "THOUGHTFUL_ADVISOR": "You replied in {time} on average. Took the time to get it right." } }, diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/bulkActions.json b/app/javascript/dashboard/i18n/locale/zh_TW/bulkActions.json index 0384fae1f..dce7ec159 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/bulkActions.json @@ -22,10 +22,6 @@ "UPDATE_SUCCESFUL": "對話狀態更新成功。", "UPDATE_FAILED": "更新對話失敗。請再試一次。" }, - "RESOLVE": { - "ALL_MISSING_ATTRIBUTES": "由於缺少所需屬性而無法解析對話", - "PARTIAL_SUCCESS": "某些對話​​在解析之前需要必需的屬性,因此被跳過" - }, "RESOLVE": { "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json b/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json index 02bee8ec7..40ed91076 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json @@ -374,16 +374,6 @@ "ERROR_MESSAGE": "刪除文章時出錯" } }, - "REORDER_ARTICLE": { - "API": { - "ERROR_MESSAGE": "無法對文章重新排序。請再試一次。" - } - }, - "REORDER_CATEGORY": { - "API": { - "ERROR_MESSAGE": "無法對類別重新排序。請再試一次。" - } - }, "REORDER_ARTICLE": { "API": { "ERROR_MESSAGE": "Unable to reorder articles. Please try again." diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json index bd56a417a..5bdc81639 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json @@ -711,7 +711,7 @@ "ALLOWED_DOMAINS": { "TITLE": "Allowed Domains", "SUBTITLE": "Add wildcard or regular domains separated by commas (leave blank to allow all), e.g. *.chatwoot.dev, chatwoot.com.", - "PLACEHOLDER": "Enter domains separated by commas (eg: *.chatwoot.dev, chatwoot.com)" + "PLACEHOLDER": "example.com, www.example.com, app.example.com" }, "INBOX_AGENTS": "客服", "INBOX_AGENTS_SUB_TEXT": "新增或刪除此收件匣中的客服", diff --git a/app/javascript/widget/i18n/locale/zh.json b/app/javascript/widget/i18n/locale/zh.json index 45ffcc28f..3eb08c8f0 100644 --- a/app/javascript/widget/i18n/locale/zh.json +++ b/app/javascript/widget/i18n/locale/zh.json @@ -1,27 +1,153 @@ { "COMPONENTS": { "FILE_BUBBLE": { - "DOWNLOAD": "Download", - "UPLOADING": "Uploading..." + "DOWNLOAD": "下载", + "UPLOADING": "上传中..." }, "FORM_BUBBLE": { - "SUBMIT": "Submit" + "SUBMIT": "提交" + }, + "MESSAGE_BUBBLE": { + "RETRY": "请重新发送消息", + "ERROR_MESSAGE": "无法发送,请重试" } }, - "AGENT_AVAILABILITY": { - "IS_AVAILABLE": "is available", - "ARE_AVAILABLE": "are available", - "OTHERS_ARE_AVAILABLE": "others are available", - "AND": "and" + "THUMBNAIL": { + "AUTHOR": { + "NOT_AVAILABLE": "Not available" + } }, + "TEAM_AVAILABILITY": { + "ONLINE": "在线", + "OFFLINE": "当前已离线", + "BACK_AS_SOON_AS_POSSIBLE": "We will be back as soon as possible" + }, + "REPLY_TIME": { + "IN_A_FEW_MINUTES": "通常在几分钟内回复您", + "IN_A_FEW_HOURS": "通常在几小时内回复您", + "IN_A_DAY": "通常在一天之内回复您", + "BACK_IN_HOURS": "We will be back online in {n} hour | We will be back online in {n} hours", + "BACK_IN_MINUTES": "We will be back online in {time} minutes", + "BACK_AT_TIME": "We will be back online at {time}", + "BACK_ON_DAY": "We will be back online on {day}", + "BACK_TOMORROW": "We will be back online tomorrow", + "BACK_IN_SOME_TIME": "We will be back online in some time" + }, + "DAY_NAMES": { + "SUNDAY": "周日", + "MONDAY": "周一", + "TUESDAY": "周二", + "WEDNESDAY": "周三", + "THURSDAY": "周四", + "FRIDAY": "周五", + "SATURDAY": "周六" + }, + "START_CONVERSATION": "开始会话", + "END_CONVERSATION": "结束对话", + "CONTINUE_CONVERSATION": "继续对话", + "YOU": "您", + "START_NEW_CONVERSATION": "开始新的对话", + "VIEW_UNREAD_MESSAGES": "您有未读消息", "UNREAD_VIEW": { - "VIEW_MESSAGES_BUTTON": "See new messages", - "CLOSE_MESSAGES_BUTTON": "Close" + "VIEW_MESSAGES_BUTTON": "查看新消息", + "CLOSE_MESSAGES_BUTTON": "关闭", + "COMPANY_FROM": "发自", + "BOT": "机器人" }, "BUBBLE": { - "LABEL": "Chat with us" + "LABEL": "联系我们" }, - "POWERED_BY": "Powered by Chatwoot", - "EMAIL_PLACEHOLDER": "Please enter your email", - "CHAT_PLACEHOLDER": "Type your message" + "POWERED_BY": "由 Chatwoot 支持", + "EMAIL_PLACEHOLDER": "请输入您的电子邮件", + "CHAT_PLACEHOLDER": "输入您的消息", + "TODAY": "今天", + "YESTERDAY": "昨天", + "PRE_CHAT_FORM": { + "FIELDS": { + "FULL_NAME": { + "LABEL": "名字", + "PLACEHOLDER": "请输入您的姓名", + "REQUIRED_ERROR": "必须填写姓名" + }, + "EMAIL_ADDRESS": { + "LABEL": "电子邮件地址", + "PLACEHOLDER": "请输入您的邮箱地址", + "REQUIRED_ERROR": "电子邮件地址是必填项", + "VALID_ERROR": "请输入一个有效的电子邮件" + }, + "PHONE_NUMBER": { + "LABEL": "电话号码", + "PLACEHOLDER": "请输入您的手机号码", + "REQUIRED_ERROR": "电话号码是必填项", + "DIAL_CODE_VALID_ERROR": "请选择国家代码", + "VALID_ERROR": "请输入一个有效的电话号码", + "DROPDOWN_EMPTY": "没有检索到相关信息", + "DROPDOWN_SEARCH": "搜索国家/地区" + }, + "MESSAGE": { + "LABEL": "消息", + "PLACEHOLDER": "请输入您的消息", + "ERROR": "消息太短了" + } + }, + "CAMPAIGN_HEADER": "请在开始对话之前提供您的姓名和电子邮件", + "IS_REQUIRED": "是必填项", + "REQUIRED": "必填项", + "REGEX_ERROR": "请提供一个有效的值" + }, + "FILE_SIZE_LIMIT": "文件超过大小 {MAXIMUM_FILE_UPLOAD_SIZE} 附件限制", + "CHAT_FORM": { + "INVALID": { + "FIELD": "无效字段" + } + }, + "EMOJI": { + "PLACEHOLDER": "搜索表情符号", + "NOT_FOUND": "没有适合你的搜索结果", + "ARIA_LABEL": "Emoji选择器" + }, + "CSAT": { + "TITLE": "评价您的对话", + "SUBMITTED_TITLE": "感谢您提交评分", + "PLACEHOLDER": "请告诉我们更多..." + }, + "EMAIL_TRANSCRIPT": { + "BUTTON_TEXT": "请求会话抄本", + "SEND_EMAIL_SUCCESS": "已成功发送聊天记录", + "SEND_EMAIL_ERROR": "出现错误,请重试" + }, + "INTEGRATIONS": { + "DYTE": { + "CLICK_HERE_TO_JOIN": "点击这里加入", + "LEAVE_THE_ROOM": "离开来电" + } + }, + "PORTAL": { + "POPULAR_ARTICLES": "最受欢迎文章", + "VIEW_ALL_ARTICLES": "查看所有文章", + "IFRAME_LOAD_ERROR": "加载文章时出错,请刷新页面后重试。" + }, + "ATTACHMENTS": { + "image": { + "CONTENT": "图片消息" + }, + "audio": { + "CONTENT": "音频消息" + }, + "video": { + "CONTENT": "视频消息" + }, + "file": { + "CONTENT": "附件" + }, + "location": { + "CONTENT": "位置" + }, + "fallback": { + "CONTENT": "分享了一个网址" + } + }, + "FOOTER_REPLY_TO": { + "REPLY_TO": "回复:" + } } diff --git a/config/locales/devise.ca.yml b/config/locales/devise.ca.yml index c8a950528..0230d2156 100644 --- a/config/locales/devise.ca.yml +++ b/config/locales/devise.ca.yml @@ -11,7 +11,7 @@ ca: invalid: "%{authentication_keys} o contrasenya invàlids." locked: "El teu compte està bloquejat." last_attempt: "You have one more attempt before your account is locked." - not_found_in_database: "Invalid email or password." + not_found_in_database: "%{authentication_keys} o contrasenya invàlids." timeout: "La teva sessió ha caducat. Si us plau, torna a iniciar sessió per a continuar." unauthenticated: "Has d'iniciar sessió o bé registrar-te abans de continuar." unconfirmed: "Has de confirmar el teu compte abans de continuar." diff --git a/config/locales/devise.id.yml b/config/locales/devise.id.yml index fc6bfb26a..13c2354e2 100644 --- a/config/locales/devise.id.yml +++ b/config/locales/devise.id.yml @@ -57,4 +57,5 @@ id: not_found: "tidak ditemukan" not_locked: "tidak terkunci" not_saved: + one: "1 kesalahan mengakibatkan %{resource} ini tidak dapat disimpan:" other: "%{count} kesalahan mengakibatkan %{resource} ini tidak dapat disimpan:" diff --git a/config/locales/devise.ja.yml b/config/locales/devise.ja.yml index a5840c6fc..c3e3fa27a 100644 --- a/config/locales/devise.ja.yml +++ b/config/locales/devise.ja.yml @@ -57,4 +57,5 @@ ja: not_found: "見つかりませんでした" not_locked: "はロックされていません" not_saved: + one: "1 個のエラーが発生し、 %{resource} を保存できませんでした:" other: "%{count} 個のエラーが発生し、 %{resource} を保存できませんでした:" diff --git a/config/locales/devise.ms.yml b/config/locales/devise.ms.yml index cecd08588..16b3b47a3 100644 --- a/config/locales/devise.ms.yml +++ b/config/locales/devise.ms.yml @@ -57,4 +57,5 @@ ms: not_found: "not found" not_locked: "was not locked" not_saved: + one: "1 error prohibited this %{resource} from being saved:" other: "%{count} errors prohibited this %{resource} from being saved:" diff --git a/config/locales/devise.th.yml b/config/locales/devise.th.yml index 18e1572bb..fa41d7ef8 100644 --- a/config/locales/devise.th.yml +++ b/config/locales/devise.th.yml @@ -57,4 +57,5 @@ th: not_found: "not found" not_locked: "was not locked" not_saved: + one: "1 error prohibited this %{resource} from being saved:" other: "%{count} errors prohibited this %{resource} from being saved:" diff --git a/config/locales/devise.vi.yml b/config/locales/devise.vi.yml index 15dca044a..d79e17a9d 100644 --- a/config/locales/devise.vi.yml +++ b/config/locales/devise.vi.yml @@ -57,4 +57,5 @@ vi: not_found: "không tìm thấy" not_locked: "không được khoá" not_saved: + one: "Có 1 lỗi được tìm thấy từ %{resource}:" other: "Có %{count} lỗi được tìm thấy từ %{resource}:" diff --git a/config/locales/devise.zh.yml b/config/locales/devise.zh.yml index 2bf2831a8..0aa3f01ab 100644 --- a/config/locales/devise.zh.yml +++ b/config/locales/devise.zh.yml @@ -1,5 +1,5 @@ #Additional translations at https://github.com/plataformatec/devise/wiki/I18n -zh_CN: +zh: devise: confirmations: confirmed: "您的电子邮件地址已成功确认。" @@ -57,4 +57,5 @@ zh_CN: not_found: "找不到" not_locked: "未锁定" not_saved: + one: "1 个错误禁止保存 %{resource}:" other: "%{count} 个错误禁止保存 %{resource}:" diff --git a/config/locales/devise.zh_CN.yml b/config/locales/devise.zh_CN.yml index 2bf2831a8..e91af4dde 100644 --- a/config/locales/devise.zh_CN.yml +++ b/config/locales/devise.zh_CN.yml @@ -57,4 +57,5 @@ zh_CN: not_found: "找不到" not_locked: "未锁定" not_saved: + one: "1 个错误禁止保存 %{resource}:" other: "%{count} 个错误禁止保存 %{resource}:" diff --git a/config/locales/devise.zh_TW.yml b/config/locales/devise.zh_TW.yml index 09c0bd4c0..02c32f76f 100644 --- a/config/locales/devise.zh_TW.yml +++ b/config/locales/devise.zh_TW.yml @@ -1,60 +1,61 @@ +#Additional translations at https://github.com/plataformatec/devise/wiki/I18n zh_TW: devise: confirmations: - confirmed: 您的信箱已通過驗證,現在您已成功登入。 - send_instructions: 您將在幾分鐘後收到一封電子郵件,內有驗證帳號的步驟說明。 - send_paranoid_instructions: 如果我們有您的信箱,您將會收到一封驗證您的帳號的電子郵件。 + confirmed: "您的信箱已通過驗證,現在您已成功登入。" + send_instructions: "您將在幾分鐘後收到一封電子郵件,內有驗證帳號的步驟說明。" + send_paranoid_instructions: "如果我們有您的信箱,您將會收到一封驗證您的帳號的電子郵件。" failure: - already_authenticated: 您已經登入。 - inactive: 您的帳號尚未被啟用。 - invalid: '%{authentication_keys}密碼或帳號尚未審核。' - locked: 您的帳號已被鎖定。 - last_attempt: 您還有最後一次嘗試機會,再次失敗您的帳號將會被鎖定。 - not_found_in_database: '%{authentication_keys}或密碼錯誤。' - timeout: 您的登入時效過期,請重新登入。 - unauthenticated: 您需要先登入或註冊後才能繼續。 - unconfirmed: 您的帳號需要經過驗證後,才能繼續。 + already_authenticated: "您已經登入。" + inactive: "您的帳號尚未被啟用。" + invalid: "%{authentication_keys}密碼或帳號尚未審核。" + locked: "您的帳號已被鎖定。" + last_attempt: "您還有最後一次嘗試機會,再次失敗您的帳號將會被鎖定。" + not_found_in_database: "%{authentication_keys}或密碼錯誤。" + timeout: "您的登入時效過期,請重新登入。" + unauthenticated: "您需要先登入或註冊後才能繼續。" + unconfirmed: "您的帳號需要經過驗證後,才能繼續。" mailer: confirmation_instructions: - subject: 確認指令 + subject: "確認指令" reset_password_instructions: - subject: 重設密碼 + subject: "重設密碼" unlock_instructions: - subject: 帳號解鎖步驟 + subject: "帳號解鎖步驟" password_change: - subject: 密碼已更改 + subject: "密碼已更改" omniauth_callbacks: - failure: 因為 %{reason},無法從 %{kind} 驗證。 - success: 成功從 %{kind} 驗證。 + failure: "因為 %{reason},無法從 %{kind} 驗證。" + success: "成功從 %{kind} 驗證。" passwords: - no_token: 這是密碼重設頁面,僅能透過密碼重設信件進入。如果您是透過重設信件進入的,請確認您的網址是完整的。 - send_instructions: 您將在幾分鐘後收到一封電子郵件,內有重新設定密碼的步驟說明。 - send_paranoid_instructions: 如果我們有您的信箱,您將會收到一封內含可重新設定密碼連結的電子郵件。 - updated: 您的密碼已被修改,您現在已經登入。 - updated_not_active: 您的密碼已被修改。 + no_token: "這是密碼重設頁面,僅能透過密碼重設信件進入。如果您是透過重設信件進入的,請確認您的網址是完整的。" + send_instructions: "您將在幾分鐘後收到一封電子郵件,內有重新設定密碼的步驟說明。" + send_paranoid_instructions: "如果我們有您的信箱,您將會收到一封內含可重新設定密碼連結的電子郵件。" + updated: "您的密碼已被修改,您現在已經登入。" + updated_not_active: "您的密碼已被修改。" registrations: - destroyed: 再會!您的帳號已被取消。有緣再會。 - signed_up: 註冊成功,歡迎! - signed_up_but_inactive: 您已註冊成功。然而因為您的帳號尚未啓動,暫時無法登入,抱歉! - signed_up_but_locked: 您已註冊成功。 然而因為您的帳號已被鎖定,暫時無法登入,抱歉! - signed_up_but_unconfirmed: 確認信件已送至您的 Email 信箱,請點擊信件內連結以啓動您的帳號。 - update_needs_confirmation: 您已經成功的更新帳號資訊,但我們仍需確認您的電子信箱,請至新信箱收信並點擊連結以確認您的新電子郵件帳號。 - updated: 您已經成功的更新帳號資訊。 + destroyed: "再會!您的帳號已被取消。有緣再會。" + signed_up: "註冊成功,歡迎!" + signed_up_but_inactive: "您已註冊成功。然而因為您的帳號尚未啓動,暫時無法登入,抱歉!" + signed_up_but_locked: "您已註冊成功。 然而因為您的帳號已被鎖定,暫時無法登入,抱歉!" + signed_up_but_unconfirmed: "確認信件已送至您的 Email 信箱,請點擊信件內連結以啓動您的帳號。" + update_needs_confirmation: "您已經成功的更新帳號資訊,但我們仍需確認您的電子信箱,請至新信箱收信並點擊連結以確認您的新電子郵件帳號。" + updated: "您已經成功的更新帳號資訊。" sessions: - signed_in: 成功登入。 - signed_out: 成功登出。 - already_signed_out: 成功登出。 + signed_in: "成功登入。" + signed_out: "成功登出。" + already_signed_out: "成功登出。" unlocks: - send_instructions: 您將在幾分鐘後收到一封電子郵件,內有將帳號解除鎖定的步驟說明。 - send_paranoid_instructions: 如果您的帳號已存在,您的電子信箱將會收到如何解鎖帳號的指示。 - unlocked: 您的帳號已被解鎖,現在已經登入。 + send_instructions: "您將在幾分鐘後收到一封電子郵件,內有將帳號解除鎖定的步驟說明。" + send_paranoid_instructions: "如果您的帳號已存在,您的電子信箱將會收到如何解鎖帳號的指示。" + unlocked: "您的帳號已被解鎖,現在已經登入。" errors: messages: - already_confirmed: 已經驗證,請直接登入。 - confirmation_period_expired: 必須在 %{period} 內驗證,請重新申請。 - expired: 已經過期,請重新申請。 - not_found: 找不到。 - not_locked: 並未被鎖定。 + already_confirmed: "已經驗證,請直接登入。" + confirmation_period_expired: "必須在 %{period} 內驗證,請重新申請。" + expired: "已經過期,請重新申請。" + not_found: "找不到。" + not_locked: "並未被鎖定。" not_saved: - one: 1 個錯誤禁止儲存此 %{resource}: - other: 有 %{count} 個錯誤導致 %{resource} 不能被儲存: + one: "1 個錯誤禁止儲存此 %{resource}:" + other: "有 %{count} 個錯誤導致 %{resource} 不能被儲存:" diff --git a/config/locales/id.yml b/config/locales/id.yml index cb343a0ee..2d71ab5f6 100644 --- a/config/locales/id.yml +++ b/config/locales/id.yml @@ -417,12 +417,16 @@ id: button: Buka percakapan time_units: days: + one: '%{count} days' other: '%{count} days' hours: + one: '%{count} hours' other: '%{count} hours' minutes: + one: '%{count} minutes' other: '%{count} minutes' seconds: + one: '%{count} seconds' other: '%{count} seconds' auto_assignment: default_policy_name: 'Default Policy' diff --git a/config/locales/ja.yml b/config/locales/ja.yml index 54b5c3666..26f9a2012 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -417,12 +417,16 @@ ja: button: 会話を開く time_units: days: + one: '%{count} 日' other: '%{count} 日' hours: + one: '%{count} 時間' other: '%{count} 時間' minutes: + one: '%{count} 分' other: '%{count} 分' seconds: + one: '%{count} 秒' other: '%{count} 秒' auto_assignment: default_policy_name: 'Default Policy' diff --git a/config/locales/ko.yml b/config/locales/ko.yml index 11b6e4242..1e32c6457 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -1,21 +1,38 @@ ---- +#Files in the config/locales directory are used for internationalization +#and are automatically loaded by Rails. If you want to use locales other +#than English, add the necessary files in this directory. +#To use the locales, use `I18n.t`: +#I18n.t 'hello' +#In views, this is aliased to just `t`: +#<%= t('hello') %> +#To use a different locale, set it with `I18n.locale`: +#I18n.locale = :es +#This would use the information in config/locales/es.yml. +#The following keys must be escaped otherwise they will not be retrieved by +#the default I18n backend: +#true, false, on, off, yes, no +#Instead, surround them with single quotes. +#en: +#'true': 'foo' +#To learn more, please read the Rails Internationalization guide +#available at https://guides.rubyonrails.org/i18n.html. ko: - hello: 안녕하세요 + hello: '안녕하세요' inbox: reauthorization: - success: 채널이 성공적으로 재인증되었습니다 - not_required: 이 받은 메시지함은 재인증이 필요하지 않습니다 - invalid_channel: 재인증에 유효하지 않은 채널 유형입니다 + success: '채널이 성공적으로 재인증되었습니다' + not_required: '이 받은 메시지함은 재인증이 필요하지 않습니다' + invalid_channel: '재인증에 유효하지 않은 채널 유형입니다' auth: saml: - invalid_email: 올바른 이메일 주소를 입력하십시오. - authentication_failed: 인증에 실패했습니다. 자격 증명을 확인하고 다시 시도하십시오. + invalid_email: '올바른 이메일 주소를 입력하십시오.' + authentication_failed: '인증에 실패했습니다. 자격 증명을 확인하고 다시 시도하십시오.' messages: + reset_password: 비밀번호 재설정 요청이 성공적으로 처리되었습니다. 해당 이메일이 존재하는 경우 안내 이메일이 발송됩니다. reset_password_saml_user: 이 계정은 SAML 인증을 사용합니다. 비밀번호 재설정을 사용할 수 없습니다. 관리자에게 문의하십시오. login_saml_user: 이 계정은 SAML 인증을 사용합니다. 조직의 SAML 제공자를 통해 로그인하십시오. saml_not_available: 이 설치에서는 SAML 인증을 사용할 수 없습니다. inbox_deletetion_response: 받은 메시지함 삭제 요청이 곧 처리될 예정입니다. - reset_password: 비밀번호 재설정 요청이 성공적으로 처리되었습니다. 해당 이메일이 존재하는 경우 안내 이메일이 발송됩니다. errors: validations: presence: 비어 있을 수 없습니다 @@ -25,8 +42,8 @@ ko: disposable_email: 일회용 이메일은 허용되지 않습니다 blocked_domain: 이 도메인은 허용되지 않습니다. 오류라고 생각되시면 지원팀에 문의하십시오. invalid_email: 유효하지 않은 이메일을 입력하셨습니다 - email_already_exists: 이미 %{email}로 계정이 등록되어 있습니다 - invalid_params: 유효하지 않습니다. 가입 정보를 확인하고 다시 시도하십시오 + email_already_exists: '이미 %{email}로 계정이 등록되어 있습니다' + invalid_params: '유효하지 않습니다. 가입 정보를 확인하고 다시 시도하십시오' failed: 가입에 실패했습니다 assignment_policy: not_found: 배정 정책을 찾을 수 없습니다 @@ -54,47 +71,45 @@ ko: query_missing: 매개변수 q로 검색 문자열을 지정하십시오 messages: search: - time_range_limit_exceeded: 검색은 최근 %{days}일로 제한됩니다 + time_range_limit_exceeded: '검색은 최근 %{days}일로 제한됩니다' categories: locale: unique: 카테고리와 포털에서 고유해야 합니다 dyte: - invalid_message_type: 유효하지 않은 메시지 유형입니다. 작업이 허용되지 않습니다 + invalid_message_type: '유효하지 않은 메시지 유형입니다. 작업이 허용되지 않습니다' slack: - invalid_channel_id: 유효하지 않은 Slack 채널입니다. 다시 시도하십시오 + invalid_channel_id: '유효하지 않은 Slack 채널입니다. 다시 시도하십시오' whatsapp: - token_exchange_failed: 액세스 토큰 교환에 실패했습니다. 다시 시도하십시오. - invalid_token_permissions: 액세스 토큰에 WhatsApp에 필요한 권한이 없습니다. - phone_info_fetch_failed: 전화번호 정보를 가져오지 못했습니다. 다시 시도하십시오. - phone_number_already_exists: 이 전화번호(%{phone_number})에 대한 채널이 이미 존재합니다. 오류가 계속되면 - 지원팀에 문의하십시오 + token_exchange_failed: '액세스 토큰 교환에 실패했습니다. 다시 시도하십시오.' + invalid_token_permissions: '액세스 토큰에 WhatsApp에 필요한 권한이 없습니다.' + phone_info_fetch_failed: '전화번호 정보를 가져오지 못했습니다. 다시 시도하십시오.' + phone_number_already_exists: '이 전화번호(%{phone_number})에 대한 채널이 이미 존재합니다. 오류가 계속되면 지원팀에 문의하십시오' reauthorization: - generic: WhatsApp 재인증에 실패했습니다. 다시 시도하십시오. - not_supported: 이 유형의 WhatsApp 채널은 재인증을 지원하지 않습니다. + generic: 'WhatsApp 재인증에 실패했습니다. 다시 시도하십시오.' + not_supported: '이 유형의 WhatsApp 채널은 재인증을 지원하지 않습니다.' inboxes: imap: socket_error: 네트워크 연결, IMAP 주소를 확인하고 다시 시도하십시오. no_response_error: IMAP 자격 증명을 확인하고 다시 시도하십시오. host_unreachable_error: 호스트에 연결할 수 없습니다. IMAP 주소, IMAP 포트를 확인하고 다시 시도하십시오. - connection_timed_out_error: "%{address}:%{port} 연결 시간이 초과되었습니다" + connection_timed_out_error: '%{address}:%{port} 연결 시간이 초과되었습니다' connection_closed_error: 연결이 종료되었습니다. - validations: - name: 기호로 시작하거나 끝나서는 안 되며, < > / \ @ 문자를 포함할 수 없습니다. smtp: authentication_error: SMTP 인증에 실패했습니다. 로그인 자격 증명을 확인하십시오. connection_error: SMTP 서버에 연결할 수 없습니다. 서버 주소와 포트를 확인하십시오. ssl_error: SSL/TLS 오류가 발생했습니다. 암호화 설정을 확인하십시오. smtp_error: SMTP 서버 오류가 발생했습니다. 설정을 확인한 후 다시 시도하십시오. + validations: + name: 기호로 시작하거나 끝나서는 안 되며, < > / \ @ 문자를 포함할 수 없습니다. custom_filters: number_of_records: 한도에 도달했습니다. 사용자당 계정별 허용되는 최대 사용자 정의 필터 수는 1000개입니다. - invalid_attribute: 유효하지 않은 속성 키 - [%{key}]. 키는 [%{allowed_keys}] 중 하나이거나 계정에 - 정의된 사용자 정의 속성이어야 합니다. + invalid_attribute: 유효하지 않은 속성 키 - [%{key}]. 키는 [%{allowed_keys}] 중 하나이거나 계정에 정의된 사용자 정의 속성이어야 합니다. invalid_operator: 유효하지 않은 연산자입니다. %{attribute_name}에 허용되는 연산자는 [%{allowed_keys}]입니다. invalid_query_operator: 쿼리 연산자는 "AND" 또는 "OR"이어야 합니다. invalid_value: 유효하지 않은 값입니다. %{attribute_name}에 제공된 값이 유효하지 않습니다 custom_attribute_definition: - key_conflict: 제공된 키는 기본 속성과 충돌할 수 있으므로 허용되지 않습니다. attribute_key_format: 문자, 숫자, 밑줄, 하이픈 및 점만 포함해야 합니다 + key_conflict: 제공된 키는 기본 속성과 충돌할 수 있으므로 허용되지 않습니다. mfa: already_enabled: MFA가 이미 활성화되어 있습니다 not_enabled: MFA가 활성화되지 않았습니다 @@ -148,6 +163,14 @@ ko: avg_resolution_time: 평균 해결 시간 resolution_count: 해결 수 avg_customer_waiting_time: 평균 고객 대기 시간 + conversation_csv: + conversations_count: 대화 수 + incoming_messages_count: 수신 메시지 + outgoing_messages_count: 발신 메시지 + avg_first_response_time: 평균 첫 응답 시간 + avg_resolution_time: 평균 해결 시간 + resolution_count: 해결 수 + avg_customer_waiting_time: 평균 고객 대기 시간 conversation_traffic_csv: timezone: 시간대 sla_csv: @@ -171,213 +194,194 @@ ko: feedback: 피드백 의견 recorded_at: 기록 날짜 review_notes: 리뷰 메모 - conversation_csv: - conversations_count: 대화 수 - incoming_messages_count: 수신 메시지 - outgoing_messages_count: 발신 메시지 - avg_first_response_time: 평균 첫 응답 시간 - avg_resolution_time: 평균 해결 시간 - resolution_count: 해결 수 - avg_customer_waiting_time: 평균 고객 대기 시간 notifications: notification_title: - conversation_creation: "%{inbox_name}에 대화(#%{display_id})가 생성되었습니다" - conversation_assignment: 대화(#%{display_id})가 회원님에게 배정되었습니다 - assigned_conversation_new_message: 대화(#%{display_id})에 새 메시지가 생성되었습니다 - conversation_mention: 대화(#%{display_id})에서 회원님이 언급되었습니다 - sla_missed_first_response: 대화(#%{display_id})의 SLA 목표 첫 응답 시간이 초과되었습니다 - sla_missed_next_response: 대화(#%{display_id})의 SLA 목표 다음 응답 시간이 초과되었습니다 - sla_missed_resolution: 대화(#%{display_id})의 SLA 목표 해결 시간이 초과되었습니다 - attachment: 첨부 파일 - no_content: 내용 없음 + conversation_creation: '%{inbox_name}에 대화(#%{display_id})가 생성되었습니다' + conversation_assignment: '대화(#%{display_id})가 회원님에게 배정되었습니다' + assigned_conversation_new_message: '대화(#%{display_id})에 새 메시지가 생성되었습니다' + conversation_mention: '대화(#%{display_id})에서 회원님이 언급되었습니다' + sla_missed_first_response: '대화(#%{display_id})의 SLA 목표 첫 응답 시간이 초과되었습니다' + sla_missed_next_response: '대화(#%{display_id})의 SLA 목표 다음 응답 시간이 초과되었습니다' + sla_missed_resolution: '대화(#%{display_id})의 SLA 목표 해결 시간이 초과되었습니다' + attachment: '첨부 파일' + no_content: '내용 없음' conversations: captain: - handoff: 추가 지원을 위해 다른 에이전트로 전환합니다. + handoff: '추가 지원을 위해 다른 에이전트로 전환합니다.' messages: - instagram_story_content: "%{story_sender}님이 스토리에서 회원님을 언급했습니다: " + instagram_story_content: '%{story_sender}님이 스토리에서 회원님을 언급했습니다: ' instagram_deleted_story_content: 이 스토리는 더 이상 사용할 수 없습니다. - instagram_shared_story_content: 공유된 스토리 - instagram_shared_post_content: 공유된 게시물 + instagram_shared_story_content: '공유된 스토리' + instagram_shared_post_content: '공유된 게시물' deleted: 이 메시지는 삭제되었습니다 whatsapp: - list_button_label: 항목 선택 + list_button_label: '항목 선택' delivery_status: error_code: '오류 코드: %{error_code}' activity: captain: - resolved: "%{user_name}님이 비활성으로 인해 대화를 해결됨으로 표시했습니다" - open: "%{user_name}님이 대화를 열림으로 표시했습니다" - resolved_with_reason: 대화가 %{user_name}에 의해 해결됨으로 표시되었습니다 (%{reason}) + resolved: '%{user_name}님이 비활성으로 인해 대화를 해결됨으로 표시했습니다' + resolved_with_reason: '대화가 %{user_name}에 의해 해결됨으로 표시되었습니다 (%{reason})' resolved_by_tool: '대화가 %{user_name}에 의해 해결됨으로 표시되었습니다: %{reason}' - open_with_reason: 대화가 %{user_name}에 의해 열림으로 표시되었습니다 (%{reason}) - auto_opened_after_agent_reply: 상담원 답장 후 대화가 자동으로 열림으로 표시되었습니다 + open: '%{user_name}님이 대화를 열림으로 표시했습니다' + open_with_reason: '대화가 %{user_name}에 의해 열림으로 표시되었습니다 (%{reason})' + auto_opened_after_agent_reply: '상담원 답장 후 대화가 자동으로 열림으로 표시되었습니다' agent_bot: - error_moved_to_open: 에이전트 봇 오류로 인해 시스템이 대화를 열림으로 표시했습니다. + error_moved_to_open: '에이전트 봇 오류로 인해 시스템이 대화를 열림으로 표시했습니다.' status: - resolved: "%{user_name}님이 대화를 해결됨으로 표시했습니다" - contact_resolved: "%{contact_name}님이 대화를 해결했습니다" - open: "%{user_name}님이 대화를 다시 열었습니다" - pending: "%{user_name}님이 대화를 보류 중으로 표시했습니다" - snoozed: "%{user_name}님이 대화를 일시 중단했습니다" - auto_resolved_days: "%{count}일간 비활성으로 인해 시스템이 대화를 해결됨으로 표시했습니다" - auto_resolved_hours: "%{count}시간 비활성으로 인해 시스템이 대화를 해결됨으로 표시했습니다" - auto_resolved_minutes: "%{count}분간 비활성으로 인해 시스템이 대화를 해결됨으로 표시했습니다" + resolved: '%{user_name}님이 대화를 해결됨으로 표시했습니다' + contact_resolved: '%{contact_name}님이 대화를 해결했습니다' + open: '%{user_name}님이 대화를 다시 열었습니다' + pending: '%{user_name}님이 대화를 보류 중으로 표시했습니다' + snoozed: '%{user_name}님이 대화를 일시 중단했습니다' + auto_resolved_days: '%{count}일간 비활성으로 인해 시스템이 대화를 해결됨으로 표시했습니다' + auto_resolved_hours: '%{count}시간 비활성으로 인해 시스템이 대화를 해결됨으로 표시했습니다' + auto_resolved_minutes: '%{count}분간 비활성으로 인해 시스템이 대화를 해결됨으로 표시했습니다' system_auto_open: 새 수신 메시지로 인해 시스템이 대화를 다시 열었습니다. priority: - added: "%{user_name}님이 우선순위를 %{new_priority}(으)로 설정했습니다" - updated: "%{user_name}님이 우선순위를 %{old_priority}에서 %{new_priority}(으)로 변경했습니다" - removed: "%{user_name}님이 우선순위를 제거했습니다" + added: '%{user_name}님이 우선순위를 %{new_priority}(으)로 설정했습니다' + updated: '%{user_name}님이 우선순위를 %{old_priority}에서 %{new_priority}(으)로 변경했습니다' + removed: '%{user_name}님이 우선순위를 제거했습니다' assignee: - self_assigned: "%{user_name}님이 이 대화를 자기 자신에게 배정했습니다" - assigned: "%{user_name}님이 %{assignee_name}에게 배정했습니다" - removed: "%{user_name}님이 대화 배정을 해제했습니다" + self_assigned: '%{user_name}님이 이 대화를 자기 자신에게 배정했습니다' + assigned: '%{user_name}님이 %{assignee_name}에게 배정했습니다' + removed: '%{user_name}님이 대화 배정을 해제했습니다' team: - assigned: "%{user_name}님이 %{team_name}에 배정했습니다" - assigned_with_assignee: "%{user_name}님이 %{team_name}을(를) 통해 %{assignee_name}에게 - 배정했습니다" - removed: "%{user_name}님이 %{team_name}에서 배정을 해제했습니다" + assigned: '%{user_name}님이 %{team_name}에 배정했습니다' + assigned_with_assignee: '%{user_name}님이 %{team_name}을(를) 통해 %{assignee_name}에게 배정했습니다' + removed: '%{user_name}님이 %{team_name}에서 배정을 해제했습니다' labels: - added: "%{user_name}님이 %{labels}을(를) 추가했습니다" - removed: "%{user_name}님이 %{labels}을(를) 제거했습니다" + added: '%{user_name}님이 %{labels}을(를) 추가했습니다' + removed: '%{user_name}님이 %{labels}을(를) 제거했습니다' sla: - added: "%{user_name}님이 SLA 정책 %{sla_name}을(를) 추가했습니다" - removed: "%{user_name}님이 SLA 정책 %{sla_name}을(를) 제거했습니다" + added: '%{user_name}님이 SLA 정책 %{sla_name}을(를) 추가했습니다' + removed: '%{user_name}님이 SLA 정책 %{sla_name}을(를) 제거했습니다' linear: - issue_created: "%{user_name}님이 Linear 이슈 %{issue_id}을(를) 생성했습니다" - issue_linked: "%{user_name}님이 Linear 이슈 %{issue_id}을(를) 연결했습니다" - issue_unlinked: "%{user_name}님이 Linear 이슈 %{issue_id}의 연결을 해제했습니다" + issue_created: '%{user_name}님이 Linear 이슈 %{issue_id}을(를) 생성했습니다' + issue_linked: '%{user_name}님이 Linear 이슈 %{issue_id}을(를) 연결했습니다' + issue_unlinked: '%{user_name}님이 Linear 이슈 %{issue_id}의 연결을 해제했습니다' csat: - not_sent_due_to_messaging_window: 발신 메시지 제한으로 인해 CSAT 설문이 전송되지 않았습니다 + not_sent_due_to_messaging_window: '발신 메시지 제한으로 인해 CSAT 설문이 전송되지 않았습니다' auto_resolve: - not_sent_due_to_messaging_window: 발신 메시지 제한으로 인해 자동 해결 메시지가 전송되지 않았습니다 - muted: "%{user_name}님이 대화를 음소거했습니다" - unmuted: "%{user_name}님이 대화 음소거를 해제했습니다" - auto_resolution_message: 한동안 활동이 없어 대화를 종료합니다. 추가 도움이 필요하시면 새 대화를 시작해 주십시오. + not_sent_due_to_messaging_window: '발신 메시지 제한으로 인해 자동 해결 메시지가 전송되지 않았습니다' + muted: '%{user_name}님이 대화를 음소거했습니다' + unmuted: '%{user_name}님이 대화 음소거를 해제했습니다' + auto_resolution_message: '한동안 활동이 없어 대화를 종료합니다. 추가 도움이 필요하시면 새 대화를 시작해 주십시오.' templates: - greeting_message_body: "%{account_name}은(는) 보통 몇 시간 내에 답변합니다." - ways_to_reach_you_message_body: 저희가 연락드릴 방법을 알려주세요. - email_input_box_message_body: 이메일로 연락받기 - csat_input_message_body: 대화를 평가해 주십시오 + greeting_message_body: '%{account_name}은(는) 보통 몇 시간 내에 답변합니다.' + ways_to_reach_you_message_body: '저희가 연락드릴 방법을 알려주세요.' + email_input_box_message_body: '이메일로 연락받기' + csat_input_message_body: '대화를 평가해 주십시오' reply: email: header: - notifications: 알림 - from_with_name: "%{assignee_name} from %{inbox_name} <%{from_email}>" - reply_with_name: "%{inbox_name}의 %{assignee_name} " - friendly_name: "%{sender_name} from %{business_name} <%{from_email}>" - professional_name: "%{business_name} <%{from_email}>" + notifications: '알림' + from_with_name: '%{assignee_name} from %{inbox_name} <%{from_email}>' + reply_with_name: '%{inbox_name}의 %{assignee_name} ' + friendly_name: '%{sender_name} from %{business_name} <%{from_email}>' + professional_name: '%{business_name} <%{from_email}>' channel_email: header: - reply_with_name: "%{assignee_name} from %{inbox_name} <%{from_email}>" - reply_with_inbox_name: "%{inbox_name} <%{from_email}>" - email_subject: 이 대화에 새 메시지가 있습니다 - transcript_subject: 대화 기록 + reply_with_name: '%{assignee_name} from %{inbox_name} <%{from_email}>' + reply_with_inbox_name: '%{inbox_name} <%{from_email}>' + email_subject: '이 대화에 새 메시지가 있습니다' + transcript_subject: '대화 기록' survey: - response: 이 대화를 평가해 주십시오, %{link} + response: '이 대화를 평가해 주십시오, %{link}' contacts: online: - delete: "%{contact_name}님이 온라인 상태입니다. 나중에 다시 시도하십시오" + delete: '%{contact_name}님이 온라인 상태입니다. 나중에 다시 시도하십시오' integration_apps: + #Note: webhooks and dashboard_apps don't need short_description as they use different modal components dashboard_apps: - name: 대시보드 앱 - description: 대시보드 앱을 사용하면 사용자 정보, 주문 또는 결제 내역을 표시하는 애플리케이션을 만들고 포함하여 고객 지원 에이전트에게 - 더 많은 컨텍스트를 제공할 수 있습니다. + name: '대시보드 앱' + description: '대시보드 앱을 사용하면 사용자 정보, 주문 또는 결제 내역을 표시하는 애플리케이션을 만들고 포함하여 고객 지원 에이전트에게 더 많은 컨텍스트를 제공할 수 있습니다.' dyte: - name: Dyte - short_description: Chatwoot에서 직접 고객과 영상/음성 통화를 시작합니다. - description: Dyte는 애플리케이션에 오디오 및 비디오 기능을 통합하는 제품입니다. 이 통합을 사용하면 에이전트가 Chatwoot에서 - 직접 고객과 영상/음성 통화를 시작할 수 있습니다. - meeting_name: "%{agent_name}님이 회의를 시작했습니다" + name: 'Dyte' + short_description: 'Chatwoot에서 직접 고객과 영상/음성 통화를 시작합니다.' + description: 'Dyte는 애플리케이션에 오디오 및 비디오 기능을 통합하는 제품입니다. 이 통합을 사용하면 에이전트가 Chatwoot에서 직접 고객과 영상/음성 통화를 시작할 수 있습니다.' + meeting_name: '%{agent_name}님이 회의를 시작했습니다' slack: - name: Slack - short_description: Slack에서 직접 알림을 받고 대화에 응답합니다. - description: Chatwoot을 Slack과 통합하여 팀의 동기화를 유지합니다. 이 통합을 통해 새 대화에 대한 알림을 받고 Slack - 인터페이스에서 직접 응답할 수 있습니다. + name: 'Slack' + short_description: 'Slack에서 직접 알림을 받고 대화에 응답합니다.' + description: "Chatwoot을 Slack과 통합하여 팀의 동기화를 유지합니다. 이 통합을 통해 새 대화에 대한 알림을 받고 Slack 인터페이스에서 직접 응답할 수 있습니다." webhooks: - name: Webhooks - description: Webhook 이벤트는 Chatwoot 계정의 활동에 대한 실시간 업데이트를 제공합니다. 원하는 이벤트를 구독하면 - Chatwoot이 업데이트와 함께 HTTP 콜백을 전송합니다. + name: 'Webhooks' + description: 'Webhook 이벤트는 Chatwoot 계정의 활동에 대한 실시간 업데이트를 제공합니다. 원하는 이벤트를 구독하면 Chatwoot이 업데이트와 함께 HTTP 콜백을 전송합니다.' dialogflow: - name: Dialogflow - short_description: 에이전트에게 전달하기 전에 초기 문의를 처리할 챗봇을 구축합니다. - description: Dialogflow로 챗봇을 구축하고 받은 메시지함에 쉽게 통합할 수 있습니다. 이 봇은 초기 문의를 처리한 후 - 고객 서비스 에이전트에게 전달합니다. + name: 'Dialogflow' + short_description: '에이전트에게 전달하기 전에 초기 문의를 처리할 챗봇을 구축합니다.' + description: 'Dialogflow로 챗봇을 구축하고 받은 메시지함에 쉽게 통합할 수 있습니다. 이 봇은 초기 문의를 처리한 후 고객 서비스 에이전트에게 전달합니다.' google_translate: - name: Google Translate - short_description: 에이전트를 위해 고객 메시지를 자동으로 번역합니다. - description: Google Translate를 통합하여 에이전트가 고객 메시지를 쉽게 번역할 수 있도록 합니다. 이 통합은 언어를 - 자동으로 감지하여 에이전트 또는 관리자가 선호하는 언어로 변환합니다. + name: 'Google Translate' + short_description: '에이전트를 위해 고객 메시지를 자동으로 번역합니다.' + description: "Google Translate를 통합하여 에이전트가 고객 메시지를 쉽게 번역할 수 있도록 합니다. 이 통합은 언어를 자동으로 감지하여 에이전트 또는 관리자가 선호하는 언어로 변환합니다." openai: - name: OpenAI - short_description: AI 기반 답변 제안, 요약 및 메시지 개선. - description: 답변 제안, 요약, 메시지 재구성, 맞춤법 검사 및 라벨 분류 등의 기능으로 OpenAI의 대규모 언어 모델의 성능을 - 활용합니다. + name: 'OpenAI' + short_description: 'AI 기반 답변 제안, 요약 및 메시지 개선.' + description: '답변 제안, 요약, 메시지 재구성, 맞춤법 검사 및 라벨 분류 등의 기능으로 OpenAI의 대규모 언어 모델의 성능을 활용합니다.' linear: - name: Linear - short_description: 대화에서 직접 Linear 이슈를 생성하고 연결합니다. - description: 대화 창에서 직접 Linear에 이슈를 생성합니다. 또는 기존 Linear 이슈를 연결하여 더 효율적인 이슈 추적 - 프로세스를 구현할 수 있습니다. + name: 'Linear' + short_description: '대화에서 직접 Linear 이슈를 생성하고 연결합니다.' + description: '대화 창에서 직접 Linear에 이슈를 생성합니다. 또는 기존 Linear 이슈를 연결하여 더 효율적인 이슈 추적 프로세스를 구현할 수 있습니다.' notion: - name: Notion - short_description: 데이터베이스, 문서 및 페이지를 Captain과 직접 통합합니다. - description: Notion 워크스페이스를 연결하여 Captain이 데이터베이스, 문서 및 페이지의 콘텐츠를 사용하여 지능적인 응답을 - 생성하고 더 맥락에 맞는 고객 지원을 제공할 수 있도록 합니다. + name: 'Notion' + short_description: '데이터베이스, 문서 및 페이지를 Captain과 직접 통합합니다.' + description: 'Notion 워크스페이스를 연결하여 Captain이 데이터베이스, 문서 및 페이지의 콘텐츠를 사용하여 지능적인 응답을 생성하고 더 맥락에 맞는 고객 지원을 제공할 수 있도록 합니다.' shopify: - name: Shopify - short_description: Shopify 스토어에서 주문 정보와 고객 데이터에 접근합니다. - description: Shopify 스토어를 연결하여 대화 내에서 직접 주문 세부 정보, 고객 정보 및 제품 데이터에 접근하고 지원 팀이 - 더 빠르고 맥락에 맞는 지원을 제공할 수 있도록 합니다. + name: 'Shopify' + short_description: 'Shopify 스토어에서 주문 정보와 고객 데이터에 접근합니다.' + description: 'Shopify 스토어를 연결하여 대화 내에서 직접 주문 세부 정보, 고객 정보 및 제품 데이터에 접근하고 지원 팀이 더 빠르고 맥락에 맞는 지원을 제공할 수 있도록 합니다.' leadsquared: - name: LeadSquared - short_description: 연락처와 대화를 LeadSquared CRM과 동기화합니다. - description: 연락처와 대화를 LeadSquared CRM과 동기화합니다. 이 통합은 새 연락처가 추가되면 자동으로 LeadSquared에 - 리드를 생성하고, 영업 팀에 완전한 컨텍스트를 제공하기 위해 대화 활동을 기록합니다. + name: 'LeadSquared' + short_description: '연락처와 대화를 LeadSquared CRM과 동기화합니다.' + description: '연락처와 대화를 LeadSquared CRM과 동기화합니다. 이 통합은 새 연락처가 추가되면 자동으로 LeadSquared에 리드를 생성하고, 영업 팀에 완전한 컨텍스트를 제공하기 위해 대화 활동을 기록합니다.' captain: copilot_message_required: 메시지가 필요합니다 - copilot_error: 이 받은 메시지함에 어시스턴트를 연결하여 Copilot을 사용하십시오 - copilot_limit: Copilot 크레딧이 부족합니다. 청구 섹션에서 추가 크레딧을 구매할 수 있습니다. + copilot_error: '이 받은 메시지함에 어시스턴트를 연결하여 Copilot을 사용하십시오' + copilot_limit: 'Copilot 크레딧이 부족합니다. 청구 섹션에서 추가 크레딧을 구매할 수 있습니다.' + upgrade: 'Captain AI를 활성화하려면 플랜을 업그레이드하십시오' + disabled: '이 계정에서 Captain AI가 비활성화되어 있습니다.' + api_key_missing: 'Captain AI API 키가 구성되지 않았습니다.' copilot: - using_tool: 도구 %{function_name} 사용 중 - completed_tool_call: "%{function_name} 도구 호출 완료" - invalid_tool_call: 유효하지 않은 도구 호출 - tool_not_available: 도구를 사용할 수 없습니다 + using_tool: '도구 %{function_name} 사용 중' + completed_tool_call: '%{function_name} 도구 호출 완료' + invalid_tool_call: '유효하지 않은 도구 호출' + tool_not_available: '도구를 사용할 수 없습니다' documents: - limit_exceeded: 문서 한도 초과 - pdf_format_error: PDF 파일이어야 합니다 - pdf_size_error: 10MB 미만이어야 합니다 - pdf_upload_failed: OpenAI에 PDF 업로드 실패 + limit_exceeded: '문서 한도 초과' + pdf_format_error: 'PDF 파일이어야 합니다' + pdf_size_error: '10MB 미만이어야 합니다' + pdf_upload_failed: 'OpenAI에 PDF 업로드 실패' pdf_upload_success: 'file_id: %{file_id}로 PDF가 성공적으로 업로드되었습니다' pdf_processing_failed: 'PDF 문서 %{document_id} 처리 실패: %{error}' - pdf_processing_success: PDF 문서 %{document_id}이(가) 성공적으로 처리되었습니다 + pdf_processing_success: 'PDF 문서 %{document_id}이(가) 성공적으로 처리되었습니다' faq_generation_complete: 'FAQ 생성 완료. 생성된 총 FAQ 수: %{count}' - using_paginated_faq: 문서 %{document_id}에 대해 페이지별 FAQ 생성 사용 - using_standard_faq: 문서 %{document_id}에 대해 표준 FAQ 생성 사용 + using_paginated_faq: '문서 %{document_id}에 대해 페이지별 FAQ 생성 사용' + using_standard_faq: '문서 %{document_id}에 대해 표준 FAQ 생성 사용' response_creation_error: '응답 문서 생성 오류: %{error}' - missing_openai_file_id: 페이지별 처리를 위해 문서에 openai_file_id가 있어야 합니다 + missing_openai_file_id: '페이지별 처리를 위해 문서에 openai_file_id가 있어야 합니다' openai_api_error: 'OpenAI API 오류: %{error}' - starting_paginated_faq: 페이지별 FAQ 생성 시작 (청크당 %{pages_per_chunk}페이지) + starting_paginated_faq: '페이지별 FAQ 생성 시작 (청크당 %{pages_per_chunk}페이지)' stopping_faq_generation: '처리 중지. 사유: %{reason}' paginated_faq_complete: '페이지별 생성 완료. 총 FAQ: %{total_faqs}, 처리된 페이지: %{pages_processed}' - processing_pages: 페이지 %{start}-%{end} 처리 중 (반복 %{iteration}) + processing_pages: '페이지 %{start}-%{end} 처리 중 (반복 %{iteration})' chunk_generated: '청크에서 %{chunk_faqs}개의 FAQ 생성. 현재까지 총: %{total_faqs}' page_processing_error: '페이지 %{start}-%{end} 처리 오류: %{error}' custom_tool: - slug_generation_failed: 5회 시도 후에도 고유 슬러그를 생성할 수 없습니다 - upgrade: Captain AI를 활성화하려면 플랜을 업그레이드하십시오 - disabled: 이 계정에서 Captain AI가 비활성화되어 있습니다. - api_key_missing: Captain AI API 키가 구성되지 않았습니다. + slug_generation_failed: '5회 시도 후에도 고유 슬러그를 생성할 수 없습니다' public_portal: search: search_placeholder: 게시물을 제목이나 내용으로 검색하세요... empty_placeholder: 검색 결과가 없습니다. loading_placeholder: 검색중... results_title: 검색 결과 - toc_header: 이 페이지에서 + toc_header: '이 페이지에서' hero: sub_title: 게시물을 여기서 검색하거나 아래에서 카테고리를 탐색해보세요. common: home: 홈 - last_updated_on: "%{last_updated_on}에 마지막으로 업데이트 됨" + last_updated_on: '%{last_updated_on}에 마지막으로 업데이트 됨' view_all_articles: 모두 보기 article: 게시물 articles: 게시물 @@ -413,23 +417,26 @@ ko: button: 대화 열기 time_units: days: - one: "%{count}일" - other: "%{count}일" + one: '%{count}일' + other: '%{count}일' hours: - one: "%{count}시간" - other: "%{count}시간" + one: '%{count}시간' + other: '%{count}시간' minutes: - one: "%{count}분" - other: "%{count}분" + one: '%{count}분' + other: '%{count}분' seconds: - one: "%{count}초" - other: "%{count}초" + one: '%{count}초' + other: '%{count}초' + auto_assignment: + default_policy_name: '기본 정책' + policy_actor: '%{policy_name}을 통한 자동화 시스템' automation: - system_name: 자동화 시스템 + system_name: '자동화 시스템' crm: - no_message: 대화에 메시지가 없습니다 - attachment: "[첨부 파일: %{type}]" - no_content: "[내용 없음]" + no_message: '대화에 메시지가 없습니다' + attachment: '[첨부 파일: %{type}]' + no_content: '[내용 없음]' created_activity: | %{brand_name}에서 새 대화가 시작되었습니다 @@ -447,16 +454,13 @@ ko: 기록: %{format_messages} agent_capacity_policy: - inbox_already_assigned: 받은 메시지함이 이미 이 정책에 배정되어 있습니다 + inbox_already_assigned: '받은 메시지함이 이미 이 정책에 배정되어 있습니다' portals: send_instructions: - email_required: 이메일이 필요합니다 - invalid_email_format: 유효하지 않은 이메일 형식 - custom_domain_not_configured: 사용자 정의 도메인이 구성되지 않았습니다 - instructions_sent_successfully: 안내가 성공적으로 전송되었습니다 - subject: "%{custom_domain} 설정 완료하기" + email_required: '이메일이 필요합니다' + invalid_email_format: '유효하지 않은 이메일 형식' + custom_domain_not_configured: '사용자 정의 도메인이 구성되지 않았습니다' + instructions_sent_successfully: '안내가 성공적으로 전송되었습니다' + subject: '%{custom_domain} 설정 완료하기' ssl_status: - custom_domain_not_configured: 사용자 정의 도메인이 구성되지 않았습니다 - auto_assignment: - default_policy_name: 기본 정책 - policy_actor: "%{policy_name}을 통한 자동화 시스템" + custom_domain_not_configured: '사용자 정의 도메인이 구성되지 않았습니다' diff --git a/config/locales/ms.yml b/config/locales/ms.yml index 920165dac..da670486b 100644 --- a/config/locales/ms.yml +++ b/config/locales/ms.yml @@ -417,12 +417,16 @@ ms: button: Open conversation time_units: days: + one: '%{count} days' other: '%{count} days' hours: + one: '%{count} hours' other: '%{count} hours' minutes: + one: '%{count} minutes' other: '%{count} minutes' seconds: + one: '%{count} seconds' other: '%{count} seconds' auto_assignment: default_policy_name: 'Default Policy' diff --git a/config/locales/pt_BR.yml b/config/locales/pt_BR.yml index d31dd0422..f73fa1834 100644 --- a/config/locales/pt_BR.yml +++ b/config/locales/pt_BR.yml @@ -196,7 +196,7 @@ pt_BR: review_notes: Notas de Avaliação notifications: notification_title: - conversation_creation: '' + conversation_creation: 'A conversa (#%{display_id}) foi criada em %{inbox_name}' conversation_assignment: 'Uma conversa (#%{display_id}) foi atribuída a você' assigned_conversation_new_message: 'Uma nova mensagem foi criada na conversa (#%{display_id})' conversation_mention: 'Você foi mencionado em uma conversa (#%{display_id})' diff --git a/config/locales/th.yml b/config/locales/th.yml index 2b2f3ebf6..41617a0b4 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -417,12 +417,16 @@ th: button: เปิดดูการสนทนา time_units: days: + one: '%{count} days' other: '%{count} days' hours: + one: '%{count} hours' other: '%{count} hours' minutes: + one: '%{count} minutes' other: '%{count} minutes' seconds: + one: '%{count} seconds' other: '%{count} seconds' auto_assignment: default_policy_name: 'Default Policy' diff --git a/config/locales/vi.yml b/config/locales/vi.yml index f29d46a41..cf5dfd74f 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -417,12 +417,16 @@ vi: button: Mở cuộc trò chuyện time_units: days: + one: '%{count} days' other: '%{count} days' hours: + one: '%{count} hours' other: '%{count} hours' minutes: + one: '%{count} minutes' other: '%{count} minutes' seconds: + one: '%{count} seconds' other: '%{count} seconds' auto_assignment: default_policy_name: 'Default Policy' diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 20e3811d5..5253f6769 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -16,30 +16,451 @@ #'true': 'foo' #To learn more, please read the Rails Internationalization guide #available at https://guides.rubyonrails.org/i18n.html. -zh_CN: - hello: "您好世界" +zh: + hello: '您好世界' + inbox: + reauthorization: + success: 'Channel reauthorized successfully' + not_required: 'Reauthorization is not required for this inbox' + invalid_channel: 'Invalid channel type for reauthorization' + auth: + saml: + invalid_email: '请输入一个有效的电子邮件' + authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: 哇!密码重置请求成功。请检查您的邮件获取说明。 - reset_password_failure: 哎呀!我们找不到指定电子邮件的任何用户。 + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. + reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. + login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. + saml_not_available: SAML authentication is not available in this installation. + inbox_deletetion_response: 您的收件箱删除请求将在一段时间内处理。 errors: + validations: + presence: 不能为空 + webhook: + invalid: 无效的事件 signup: disposable_email: 我们不允许可用的电子邮件 + blocked_domain: 该域名不被允许。如果您认为这是一个错误,请联系支持团队。 invalid_email: 您输入了一个无效的电子邮件 - email_already_exists: "您已经注册了 %{email} 的帐户" + email_already_exists: '您已经注册了 %{email} 的帐户' + invalid_params: '无效,请检查注册参数并重试' failed: 注册失败 + assignment_policy: + not_found: Assignment policy not found + attachments: + invalid: Invalid attachment + saml: + feature_not_enabled: SAML feature not enabled for this account + sso_not_enabled: SAML SSO is not enabled for this installation + data_import: + data_type: + invalid: 错误的数据类型 + contacts: + import: + failed: 文件为空 + export: + success: 联系人导出文件完成后我们会通知您。 + email: + invalid: 无效的电子邮件 + phone_number: + invalid: 应该是e164格式 + companies: + domain: + invalid: must be a valid domain name + search: + query_missing: Specify search string with parameter q + messages: + search: + time_range_limit_exceeded: 'Search is limited to the last %{days} days' + categories: + locale: + unique: 在类别和门户中应该是唯一的 + dyte: + invalid_message_type: '无效的消息类型。不允许操作' + slack: + invalid_channel_id: '无效的Slack频道。请重试' + whatsapp: + token_exchange_failed: 'Failed to exchange code for access token. Please try again.' + invalid_token_permissions: 'The access token does not have the required permissions for WhatsApp.' + phone_info_fetch_failed: 'Failed to fetch phone number information. Please try again.' + phone_number_already_exists: 'Channel already exists for this phone number: %{phone_number}, please contact support if the error persists' + reauthorization: + generic: 'Failed to reauthorize WhatsApp. Please try again.' + not_supported: 'Reauthorization is not supported for this type of WhatsApp channel.' + inboxes: + imap: + socket_error: 请检查网络连接,IMAP地址,然后再试一次。 + no_response_error: 请检查 IMAP 凭据,然后重试。 + host_unreachable_error: 主机无法访问。请检查 IMAP 地址,然后重试。 + connection_timed_out_error: 连接超时 %{address}:%{port} + connection_closed_error: 连接已关闭。 + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. + validations: + name: 不应该以符号开头或结尾,它不应该有 < > / \ @ 字符。 + custom_filters: + number_of_records: 已达到上限。每个账户允许用户自定义过滤器的最大数目为1000个。 + invalid_attribute: 无效的属性键 - [%{key}]。键应为 [%{allowed_keys}] 之一或帐户中定义的自定义属性。 + invalid_operator: 无效的操作符。%{attribute_name} 允许的操作符为 [%{allowed_keys}]。 + invalid_query_operator: 查询操作符必须为 "AND" 或 "OR"。 + invalid_value: 无效的值。为 %{attribute_name} 提供的值无效 + custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots + key_conflict: 提供的键不允许使用,因为它可能与默认属性冲突。 + mfa: + already_enabled: MFA 已启用 + not_enabled: MFA is not enabled + invalid_code: Invalid verification code + invalid_backup_code: Invalid backup code + invalid_token: Invalid or expired MFA token + invalid_credentials: Invalid credentials or verification code + feature_unavailable: MFA feature is not available. Please configure encryption keys. + topup: + credits_required: Credits amount is required + invalid_credits: Invalid credits amount + invalid_option: Invalid topup option + plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. + stripe_customer_not_configured: Stripe customer not configured + no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months + profile: + mfa: + enabled: MFA enabled successfully + disabled: MFA disabled successfully + account_saml_settings: + invalid_certificate: must be a valid X.509 certificate in PEM format + reports: + period: 报告周期 %{since} 至 %{until} + utc_warning: 生成的报表在 UTC 时区 + agent_csv: + agent_name: 客服名称 + conversations_count: 分配的对话数量 + avg_first_response_time: 平均首次响应时间 + avg_resolution_time: 平均解决时间 + resolution_count: 已解决的数量 + avg_customer_waiting_time: 平均客户等待时间 + inbox_csv: + inbox_name: 收件箱名称 + inbox_type: 收件箱类型 + conversations_count: 对话数量 + avg_first_response_time: 平均首次响应时间 + avg_resolution_time: 平均解决时间 + label_csv: + label_title: 标签 + conversations_count: 对话数量 + avg_first_response_time: 平均首次响应时间 + avg_resolution_time: 平均解决时间 + avg_reply_time: Avg reply time + resolution_count: 已解决的数量 + team_csv: + team_name: 团队名称 + conversations_count: 对话数量 + avg_first_response_time: 平均首次响应时间 + avg_resolution_time: 平均解决时间 + resolution_count: 已解决的数量 + avg_customer_waiting_time: 平均客户等待时间 + conversation_csv: + conversations_count: 会话 + incoming_messages_count: 收到的消息 + outgoing_messages_count: 发送的消息 + avg_first_response_time: 平均首次响应时间 + avg_resolution_time: 平均解决时间 + resolution_count: Resolution count + avg_customer_waiting_time: 平均客户等待时间 + conversation_traffic_csv: + timezone: 时区 + sla_csv: + conversation_id: 对话ID + sla_policy_breached: SLA 政策 + assignee: 负责人 + team: 团队 + inbox: 收件箱 + labels: 标签 + conversation_link: 对话链接 + breached_events: 违反的事件 + default_group_by: 天 + csat: + headers: + contact_name: 联系人名称 + contact_email_address: 联系人邮箱地址 + contact_phone_number: 联系人电话号码 + link_to_the_conversation: 链接到会话 + agent_name: 客服名称 + rating: 评分 + feedback: 意见反馈 + recorded_at: 录制日期 + review_notes: Review Notes + notifications: + notification_title: + conversation_creation: '在 %{inbox_name} 中创建了一个对话 (#%{display_id})' + conversation_assignment: '对话 (#%{display_id}) 已分配给您' + assigned_conversation_new_message: '在对话 (#%{display_id}) 中创建了一条新消息' + conversation_mention: '您在对话 (#%{display_id}) 中被提及' + sla_missed_first_response: '对话 (#%{display_id}) 的首次响应 SLA 目标未达成' + sla_missed_next_response: '对话 (#%{display_id}) 的下次响应 SLA 目标未达成' + sla_missed_resolution: '对话 (#%{display_id}) 的解决 SLA 目标未达成' + attachment: '附件' + no_content: '无内容' conversations: + captain: + handoff: '正在转接另一个客服以获得进一步协助。' + messages: + instagram_story_content: '%{story_sender} 会话中提到了你: ' + instagram_deleted_story_content: 本信息不存在 + instagram_shared_story_content: 'Shared story' + instagram_shared_post_content: 'Shared post' + deleted: 此消息已被删除 + whatsapp: + list_button_label: 'Choose an item' + delivery_status: + error_code: '错误代码: %{error_code}' activity: + captain: + resolved: '对话被系统标记为已解决, 原因是 %{user_name} 不活跃' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' + open: '对话被 %{user_name} 打开' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' + agent_bot: + error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: - resolved: "对话被标记由 %{user_name} 解决" - open: "对话被 %{user_name} 重新打开" - auto_resolved: "Conversation was marked resolved by system due to %{duration} days of inactivity" + resolved: '对话被标记由 %{user_name} 解决' + contact_resolved: '对话被 %{contact_name} 重新打开' + open: '对话被 %{user_name} 重新打开' + pending: '对话被标记由 %{user_name} 待处理' + snoozed: '对话被 %{user_name} 暂停' + auto_resolved_days: '对话被系统标记为已解决, 原因是 %{count} 天不活跃' + auto_resolved_hours: '对话被系统标记为已解决, 原因是 %{count} 小时不活跃' + auto_resolved_minutes: '对话被系统标记为已解决, 原因是 %{count} 分钟不活跃' + system_auto_open: 由于收到新的消息,系统重新打开了对话。 + priority: + added: '%{user_name} 将优先级设置为 %{new_priority}' + updated: '%{user_name} 将优先级从 %{old_priority} 更改为 %{new_priority}' + removed: '%{user_name} 取消了优先级' assignee: - assigned: "由 %{assignee_name} 分配给 %{user_name}" - removed: "对话未被 %{user_name} 分配" + self_assigned: '%{user_name} 自行分配这次会话' + assigned: '由 %{assignee_name} 分配给 %{user_name}' + removed: '对话未被 %{user_name} 分配' + team: + assigned: '由 %{team_name} 分配给 %{user_name}' + assigned_with_assignee: '由 %{assignee_name} 分配给 %{team_name} 团队的 %{user_name}' + removed: '由 %{user_name} 从 %{team_name} 中取消分配' + labels: + added: '%{user_name} 添加 %{labels}' + removed: '%{user_name} 移除 %{labels}' + sla: + added: '%{user_name} 添加了 SLA 策略 %{sla_name}' + removed: '%{user_name} 移除了 SLA 策略 %{sla_name}' + linear: + issue_created: 'Linear issue %{issue_id} was created by %{user_name}' + issue_linked: 'Linear issue %{issue_id} was linked by %{user_name}' + issue_unlinked: 'Linear issue %{issue_id} was unlinked by %{user_name}' + csat: + not_sent_due_to_messaging_window: 'CSAT survey not sent due to outgoing message restrictions' + auto_resolve: + not_sent_due_to_messaging_window: 'Auto-resolve message not sent due to outgoing message restrictions' + muted: '%{user_name} 已将会话静音' + unmuted: '%{user_name} 已将会话取消静音' + auto_resolution_message: '由于对话长时间未活跃,已将其标记为已解决。如果您需要进一步帮助,请开始新的对话。' templates: - greeting_message_body: "%{account_name} 通常在几小时内回复。" - ways_to_reach_you_message_body: "给团队一个联系您的方法。" - email_input_box_message_body: "通过电子邮件得到通知" + greeting_message_body: '%{account_name} 通常在几小时内回复。' + ways_to_reach_you_message_body: '给团队一个联系您的方法。' + email_input_box_message_body: '通过电子邮件得到通知' + csat_input_message_body: '请为会话评分' reply: - email_subject: "此对话中的新消息" - transcript_subject: "Conversation Transcript" + email: + header: + notifications: '消息通知' + from_with_name: '%{assignee_name} 来自 %{inbox_name} <%{from_email}>' + reply_with_name: '%{assignee_name} 来自 %{inbox_name} ' + friendly_name: '%{sender_name} 来自 %{business_name} <%{from_email}>' + professional_name: '%{business_name} <%{from_email}>' + channel_email: + header: + reply_with_name: '%{assignee_name} 来自 %{inbox_name} <%{from_email}>' + reply_with_inbox_name: '%{inbox_name} <%{from_email}>' + email_subject: '此对话中的新消息' + transcript_subject: '会话记录' + survey: + response: '请为会话评分, %{link}' + contacts: + online: + delete: '%{contact_name} 在线, 请重试' + integration_apps: + #Note: webhooks and dashboard_apps don't need short_description as they use different modal components + dashboard_apps: + name: '仪表板应用' + description: '仪表板应用允许您创建和嵌入显示用户信息、订单或支付历史的应用程序,为您的客户支持代理提供更多上下文。' + dyte: + name: 'Dyte' + short_description: '直接从 Chatwoot 开始与客户的视频/语音通话。' + description: 'Dyte 是一个将音频和视频功能集成到您的应用程序中的产品。通过此集成,您的代理可以直接从 Chatwoot 开始与客户的视频/语音通话。' + meeting_name: '%{agent_name} 已开始会议' + slack: + name: 'Slack' + short_description: '在 Slack 直接接收通知和回复对话。' + description: "将 Chatwoot 与 Slack 集成,以保持团队的同步。此集成允许您接收新对话的通知并直接在 Slack 界面中响应它们。" + webhooks: + name: 'Webhooks' + description: 'Webhook 事件提供有关 Chatwoot 帐户中活动的实时更新。您可以订阅您喜欢的事件,Chatwoot 将向您发送带有更新的 HTTP 回调。' + dialogflow: + name: 'Dialogflow' + short_description: '构建聊天机器人来处理初步咨询,然后再转接给客服。' + description: '使用 Dialogflow 构建聊天机器人,并轻松将其集成到您的收件箱中。这些机器人可以在将查询转移给客户服务代理之前处理初始查询。' + google_translate: + name: 'Google 翻译' + short_description: '自动为客服翻译客户的消息。' + description: "集成 Google 翻译以帮助代理轻松翻译客户消息。此集成会自动检测语言并将其转换为代理或管理员的首选语言。" + openai: + name: 'OpenAI' + short_description: 'AI 驱动的答复建议、摘要和消息增强。' + description: '利用 OpenAI 的大型语言模型功能,例如回复建议、摘要、消息改写、拼写检查和标签分类。' + linear: + name: 'Linear' + short_description: '直接在会话中创建并关联 Linear 问题。' + description: '直接从对话窗口在 Linear 中创建问题。或者,链接现有的 Linear 问题以简化问题跟踪过程。' + notion: + name: 'Notion' + short_description: 'Integrate databases, documents and pages directly with Captain.' + description: 'Connect your Notion workspace to enable Captain to access and generate intelligent responses using content from your databases, documents, and pages to provide more contextual customer support.' + shopify: + name: 'Shopify' + short_description: '从您的 Shopify 商店访问订单详情和客户数据。' + description: 'Connect your Shopify store to access order details, customer information, and product data directly within your conversations and helps your support team provide faster, more contextual assistance to your customers.' + leadsquared: + name: 'LeadSquared' + short_description: '与 LeadSquared CRM 同步您的联系人和对话。' + description: '与 LeadSquared CRM 同步您的联系人和对话。 当添加新联系人时,这种集成会自动在潜在客户创建线索,并记录对话活动,为您的销售团队提供完整的上下文。' + captain: + copilot_message_required: 消息是必填项 + copilot_error: '请为该收件箱连接一个助手以使用 Copilot' + copilot_limit: '您的 Copilot 积分已用完。您可以从计费部分购买更多积分。' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' + copilot: + using_tool: '使用工具 %{function_name}' + completed_tool_call: '%{function_name} 工具调用完成' + invalid_tool_call: '无效的工具调用' + tool_not_available: '工具不可用' + documents: + limit_exceeded: 'Document limit exceeded' + pdf_format_error: 'must be a PDF file' + pdf_size_error: 'must be less than 10MB' + pdf_upload_failed: 'Failed to upload PDF to OpenAI' + pdf_upload_success: 'PDF uploaded successfully with file_id: %{file_id}' + pdf_processing_failed: 'Failed to process PDF document %{document_id}: %{error}' + pdf_processing_success: 'Successfully processed PDF document %{document_id}' + faq_generation_complete: 'FAQ generation complete. Total FAQs created: %{count}' + using_paginated_faq: 'Using paginated FAQ generation for document %{document_id}' + using_standard_faq: 'Using standard FAQ generation for document %{document_id}' + response_creation_error: 'Error in creating response document: %{error}' + missing_openai_file_id: 'Document must have openai_file_id for paginated processing' + openai_api_error: 'OpenAI API Error: %{error}' + starting_paginated_faq: 'Starting paginated FAQ generation (%{pages_per_chunk} pages per chunk)' + stopping_faq_generation: 'Stopping processing. Reason: %{reason}' + paginated_faq_complete: 'Paginated generation complete. Total FAQs: %{total_faqs}, Pages processed: %{pages_processed}' + processing_pages: 'Processing pages %{start}-%{end} (iteration %{iteration})' + chunk_generated: 'Chunk generated %{chunk_faqs} FAQs. Total so far: %{total_faqs}' + page_processing_error: 'Error processing pages %{start}-%{end}: %{error}' + custom_tool: + slug_generation_failed: 'Unable to generate unique slug after 5 attempts' + public_portal: + search: + search_placeholder: 搜索文章的标题或正文... + empty_placeholder: 未找到结果。 + loading_placeholder: 搜索中... + results_title: 搜索结果 + toc_header: '在此页面' + hero: + sub_title: 在这里搜索文章或浏览下面的分类 + common: + home: 首页 + last_updated_on: 最近更新时间为 %{last_updated_on} + view_all_articles: 查看全部 + article: 文章 + articles: 文章 + author: 作者 + authors: 作者 + other: 其他 + others: 其他 + by: 作者: + no_articles: 没有文章在这里 + footer: + made_with: 制作于 + header: + go_to_homepage: 网站 + visit_website: Visit website + appearance: + system: 系统 + light: 浅色 + dark: 暗色 + featured_articles: 精选文章 + uncategorized: 未分类 + 404: + title: 页面不存在 + description: 我们找不到您想要的页面。 + back_to_home: 前往主页 + slack_unfurl: + fields: + name: 姓名: + email: 电子邮件 + phone_number: 手机号码 + company_name: 公司 + inbox_name: 收件箱 + inbox_type: 收件箱类型 + button: 重新打开会话 + time_units: + days: + one: '%{count} 天' + other: '%{count} 天' + hours: + one: '%{count} 小时' + other: '%{count} 小时' + minutes: + one: '%{count} 分钟' + other: '%{count} 分钟' + seconds: + one: '%{count} 秒' + other: '%{count} 秒' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' + automation: + system_name: '自动化系统' + crm: + no_message: '对话中没有消息' + attachment: '[附件:%{type}]' + no_content: '[无内容]' + created_activity: | + %{brand_name} 的新对话 + + 通道:%{channel_info} + 创建于:%{formatted_creation_time} + 对话 ID:%{display_id} + 在 %{brand_name} 中查看:%{url} + transcript_activity: | + 来自 %{brand_name} 的对话副本 + + 通道:%{channel_info} + 对话 ID:%{display_id} + 在 %{brand_name} 中查看:%{url} + + 副本: + %{format_messages} + agent_capacity_policy: + inbox_already_assigned: 'Inbox has already been assigned to this policy' + portals: + send_instructions: + email_required: 'Email 是必填项' + invalid_email_format: 'Invalid email format' + custom_domain_not_configured: 'Custom domain is not configured' + instructions_sent_successfully: 'Instructions sent successfully' + subject: 'Finish setting up %{custom_domain}' + ssl_status: + custom_domain_not_configured: 'Custom domain is not configured' diff --git a/config/locales/zh_CN.yml b/config/locales/zh_CN.yml index 52c1c0f10..803822b0f 100644 --- a/config/locales/zh_CN.yml +++ b/config/locales/zh_CN.yml @@ -417,12 +417,16 @@ zh_CN: button: 重新打开会话 time_units: days: + one: '%{count} 天' other: '%{count} 天' hours: + one: '%{count} 小时' other: '%{count} 小时' minutes: + one: '%{count} 分钟' other: '%{count} 分钟' seconds: + one: '%{count} 秒' other: '%{count} 秒' auto_assignment: default_policy_name: 'Default Policy'