diff --git a/app/javascript/dashboard/routes/dashboard/helpcenter/helpcenter.routes.js b/app/javascript/dashboard/routes/dashboard/helpcenter/helpcenter.routes.js
index aee5992c6..fba4ba666 100644
--- a/app/javascript/dashboard/routes/dashboard/helpcenter/helpcenter.routes.js
+++ b/app/javascript/dashboard/routes/dashboard/helpcenter/helpcenter.routes.js
@@ -22,9 +22,6 @@ const PortalsLocalesIndexPage = () =>
const PortalsSettingsIndexPage = () =>
import('./pages/PortalsSettingsIndexPage.vue');
-const PdfDocumentsPage = () =>
- import('../../../components-next/HelpCenter/Pages/PdfDocumentsPage/PdfDocumentsPage.vue');
-
const meta = {
featureFlag: FEATURE_FLAGS.HELP_CENTER,
permissions: ['administrator', 'agent', 'knowledge_base_manage'],
@@ -85,12 +82,6 @@ const portalRoutes = [
meta,
component: PortalsSettingsIndexPage,
},
- {
- path: getPortalRoute(':portalSlug/pdf-documents'),
- name: 'portals_pdf_documents_index',
- meta,
- component: PdfDocumentsPage,
- },
{
path: getPortalRoute('new'),
name: 'portals_new',
From d5286c95354050fd796d36691b3fcfb7061aa29b Mon Sep 17 00:00:00 2001
From: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Date: Wed, 6 Aug 2025 13:11:22 +0530
Subject: [PATCH 11/93] fix: Installation name not showing (#12096)
---
.../dashboard/components/ui/Wizard.vue | 4 -
.../widget-preview/components/Widget.vue | 14 ++-
.../dashboard/settings/inbox/ChannelList.vue | 16 ++--
.../settings/inbox/InboxChannels.vue | 14 +--
.../settings/inbox/channels/Facebook.vue | 22 ++---
.../settings/inbox/channels/Instagram.vue | 2 -
.../integrations/DashboardApps/Index.vue | 2 -
.../dashboard/settings/integrations/Index.vue | 6 +-
.../settings/integrations/Integration.vue | 11 +--
.../settings/integrations/IntegrationItem.vue | 6 +-
.../settings/integrations/ShowIntegration.vue | 3 -
.../Slack/SelectChannelWarning.vue | 12 +--
.../settings/integrations/Webhooks/Index.vue | 7 +-
.../integrations/Webhooks/NewWebHook.vue | 15 +--
.../dashboard/settings/profile/Index.vue | 16 ++--
app/javascript/shared/components/Branding.vue | 11 ++-
.../composables/specs/useBranding.spec.js | 96 +++++++++++++++++++
.../shared/composables/useBranding.js | 26 +++++
.../shared/mixins/globalConfigMixin.js | 12 ---
.../v3/views/auth/reset/password/Index.vue | 17 +---
app/javascript/v3/views/auth/signup/Index.vue | 14 ++-
.../auth/signup/components/Signup/Form.vue | 2 -
app/javascript/v3/views/login/Index.vue | 14 +--
23 files changed, 215 insertions(+), 127 deletions(-)
create mode 100644 app/javascript/shared/composables/specs/useBranding.spec.js
create mode 100644 app/javascript/shared/composables/useBranding.js
delete mode 100644 app/javascript/shared/mixins/globalConfigMixin.js
diff --git a/app/javascript/dashboard/components/ui/Wizard.vue b/app/javascript/dashboard/components/ui/Wizard.vue
index 2219a07c1..6ab196d9d 100644
--- a/app/javascript/dashboard/components/ui/Wizard.vue
+++ b/app/javascript/dashboard/components/ui/Wizard.vue
@@ -1,9 +1,5 @@
@@ -290,22 +258,30 @@ export default {
+
+
{
override_default_response_type: true,
extras: {
setup: {},
- featureType: '',
+ featureType: 'whatsapp_business_app_onboarding',
sessionInfoVersion: '3',
},
}
diff --git a/app/services/whatsapp/facebook_api_client.rb b/app/services/whatsapp/facebook_api_client.rb
index 441e41b1a..55ce4e698 100644
--- a/app/services/whatsapp/facebook_api_client.rb
+++ b/app/services/whatsapp/facebook_api_client.rb
@@ -50,6 +50,16 @@ class Whatsapp::FacebookApiClient
handle_response(response, 'Phone registration failed')
end
+ def phone_number_verified?(phone_number_id)
+ response = HTTParty.get(
+ "#{BASE_URI}/#{@api_version}/#{phone_number_id}",
+ headers: request_headers
+ )
+
+ data = handle_response(response, 'Phone status check failed')
+ data['code_verification_status'] == 'VERIFIED'
+ end
+
def subscribe_waba_webhook(waba_id, callback_url, verify_token)
response = HTTParty.post(
"#{BASE_URI}/#{@api_version}/#{waba_id}/subscribed_apps",
diff --git a/app/services/whatsapp/webhook_setup_service.rb b/app/services/whatsapp/webhook_setup_service.rb
index 6aff531f7..a3faaaa56 100644
--- a/app/services/whatsapp/webhook_setup_service.rb
+++ b/app/services/whatsapp/webhook_setup_service.rb
@@ -8,7 +8,8 @@ class Whatsapp::WebhookSetupService
def perform
validate_parameters!
- register_phone_number
+ # Since coexistence method does not need to register, we check it
+ register_phone_number unless phone_number_verified?
setup_webhook
end
@@ -64,4 +65,13 @@ class Whatsapp::WebhookSetupService
"#{frontend_url}/webhooks/whatsapp/#{phone_number}"
end
+
+ def phone_number_verified?
+ phone_number_id = @channel.provider_config['phone_number_id']
+
+ @api_client.phone_number_verified?(phone_number_id)
+ rescue StandardError => e
+ Rails.logger.error("[WHATSAPP] Phone registration status check failed, but continuing: #{e.message}")
+ false
+ end
end
diff --git a/app/views/super_admin/app_configs/show.html.erb b/app/views/super_admin/app_configs/show.html.erb
index 6f95a6418..8bf513597 100644
--- a/app/views/super_admin/app_configs/show.html.erb
+++ b/app/views/super_admin/app_configs/show.html.erb
@@ -53,9 +53,15 @@
- <% else %>
- <%= form.text_field "app_config[#{key}]", value: @app_config[key] %>
- <% end %>
+ <% elsif @installation_configs[key]&.dig('type') == 'select' && @installation_configs[key]&.dig('options').present? %>
+ <%= form.select "app_config[#{key}]",
+ @installation_configs[key]['options'].map { |val, label| [label, val] },
+ { selected: @app_config[key] },
+ class: "mt-2 border border-slate-100 p-1 rounded-md"
+ %>
+ <% else %>
+ <%= form.text_field "app_config[#{key}]", value: @app_config[key] %>
+ <% end %>
<%if @installation_configs[key]&.dig('description').present? %>
<%= @installation_configs[key]&.dig('description') %>
diff --git a/config/installation_config.yml b/config/installation_config.yml
index 53251fc3c..01799e830 100644
--- a/config/installation_config.yml
+++ b/config/installation_config.yml
@@ -10,7 +10,8 @@
# locked: if you don't specify locked attribute in yaml, the default value will be true,
# which means the particular config will be locked and won't be available in `super_admin/installation_configs`
# premium: These values get overwritten unless the user is on a premium plan
-# type: The type of the config. Default is text, boolean is also supported
+# type: The type of the config. Default is text, select and boolean are also supported
+# options: For select types, its required to have options for the select in the following pattern: "option_value":"Human readable option"
# ------- Branding Related Config ------- #
- name: INSTALLATION_NAME
diff --git a/spec/services/whatsapp/webhook_setup_service_spec.rb b/spec/services/whatsapp/webhook_setup_service_spec.rb
index 89beca922..7cee115c2 100644
--- a/spec/services/whatsapp/webhook_setup_service_spec.rb
+++ b/spec/services/whatsapp/webhook_setup_service_spec.rb
@@ -24,25 +24,19 @@ describe Whatsapp::WebhookSetupService do
end
describe '#perform' do
- context 'when all operations succeed' do
+ context 'when phone number is NOT verified (should register)' do
before do
+ allow(api_client).to receive(:phone_number_verified?).with('123456789').and_return(false)
allow(SecureRandom).to receive(:random_number).with(900_000).and_return(123_456)
allow(api_client).to receive(:register_phone_number).with('123456789', 223_456)
allow(api_client).to receive(:subscribe_waba_webhook)
- .with(waba_id, anything, 'test_verify_token')
- .and_return({ 'success' => true })
+ .with(waba_id, anything, 'test_verify_token').and_return({ 'success' => true })
allow(channel).to receive(:save!)
end
- it 'registers the phone number' do
+ it 'registers the phone number and sets up webhook' do
with_modified_env FRONTEND_URL: 'https://app.chatwoot.com' do
expect(api_client).to receive(:register_phone_number).with('123456789', 223_456)
- service.perform
- end
- end
-
- it 'sets up webhook subscription' do
- with_modified_env FRONTEND_URL: 'https://app.chatwoot.com' do
expect(api_client).to receive(:subscribe_waba_webhook)
.with(waba_id, 'https://app.chatwoot.com/webhooks/whatsapp/+1234567890', 'test_verify_token')
service.perform
@@ -50,33 +44,71 @@ describe Whatsapp::WebhookSetupService do
end
end
- context 'when phone registration fails' do
+ context 'when phone number IS verified (should NOT register)' do
before do
- allow(SecureRandom).to receive(:random_number).with(900_000).and_return(123_456)
- allow(api_client).to receive(:register_phone_number)
- .and_raise('Registration failed')
+ allow(api_client).to receive(:phone_number_verified?).with('123456789').and_return(true)
allow(api_client).to receive(:subscribe_waba_webhook)
- .and_return({ 'success' => true })
+ .with(waba_id, anything, 'test_verify_token').and_return({ 'success' => true })
end
- it 'continues with webhook setup' do
+ it 'does NOT register phone, but sets up webhook' do
with_modified_env FRONTEND_URL: 'https://app.chatwoot.com' do
+ expect(api_client).not_to receive(:register_phone_number)
+ expect(api_client).to receive(:subscribe_waba_webhook)
+ .with(waba_id, 'https://app.chatwoot.com/webhooks/whatsapp/+1234567890', 'test_verify_token')
+ service.perform
+ end
+ end
+ end
+
+ context 'when phone_number_verified? raises error' do
+ before do
+ allow(api_client).to receive(:phone_number_verified?).with('123456789').and_raise('API down')
+ allow(SecureRandom).to receive(:random_number).with(900_000).and_return(123_456)
+ allow(api_client).to receive(:register_phone_number)
+ allow(api_client).to receive(:subscribe_waba_webhook).and_return({ 'success' => true })
+ allow(channel).to receive(:save!)
+ end
+
+ it 'tries to register phone and proceeds with webhook setup' do
+ with_modified_env FRONTEND_URL: 'https://app.chatwoot.com' do
+ expect(api_client).to receive(:register_phone_number)
expect(api_client).to receive(:subscribe_waba_webhook)
expect { service.perform }.not_to raise_error
end
end
end
- context 'when webhook setup fails' do
+ context 'when phone registration fails (not blocking)' do
before do
+ allow(api_client).to receive(:phone_number_verified?).with('123456789').and_return(false)
+ allow(SecureRandom).to receive(:random_number).with(900_000).and_return(123_456)
+ allow(api_client).to receive(:register_phone_number).and_raise('Registration failed')
+ allow(api_client).to receive(:subscribe_waba_webhook).and_return({ 'success' => true })
+ allow(channel).to receive(:save!)
+ end
+
+ it 'continues with webhook setup even if registration fails' do
+ with_modified_env FRONTEND_URL: 'https://app.chatwoot.com' do
+ expect(api_client).to receive(:register_phone_number)
+ expect(api_client).to receive(:subscribe_waba_webhook)
+ expect { service.perform }.not_to raise_error
+ end
+ end
+ end
+
+ context 'when webhook setup fails (should raise)' do
+ before do
+ allow(api_client).to receive(:phone_number_verified?).with('123456789').and_return(false)
allow(SecureRandom).to receive(:random_number).with(900_000).and_return(123_456)
allow(api_client).to receive(:register_phone_number)
- allow(api_client).to receive(:subscribe_waba_webhook)
- .and_raise('Webhook failed')
+ allow(api_client).to receive(:subscribe_waba_webhook).and_raise('Webhook failed')
end
it 'raises an error' do
with_modified_env FRONTEND_URL: 'https://app.chatwoot.com' do
+ expect(api_client).to receive(:register_phone_number)
+ expect(api_client).to receive(:subscribe_waba_webhook)
expect { service.perform }.to raise_error(/Webhook setup failed/)
end
end
@@ -84,24 +116,25 @@ describe Whatsapp::WebhookSetupService do
context 'when required parameters are missing' do
it 'raises error when channel is nil' do
- service = described_class.new(nil, waba_id, access_token)
- expect { service.perform }.to raise_error(ArgumentError, 'Channel is required')
+ service_invalid = described_class.new(nil, waba_id, access_token)
+ expect { service_invalid.perform }.to raise_error(ArgumentError, 'Channel is required')
end
it 'raises error when waba_id is blank' do
- service = described_class.new(channel, '', access_token)
- expect { service.perform }.to raise_error(ArgumentError, 'WABA ID is required')
+ service_invalid = described_class.new(channel, '', access_token)
+ expect { service_invalid.perform }.to raise_error(ArgumentError, 'WABA ID is required')
end
it 'raises error when access_token is blank' do
- service = described_class.new(channel, waba_id, '')
- expect { service.perform }.to raise_error(ArgumentError, 'Access token is required')
+ service_invalid = described_class.new(channel, waba_id, '')
+ expect { service_invalid.perform }.to raise_error(ArgumentError, 'Access token is required')
end
end
context 'when PIN already exists' do
before do
channel.provider_config['verification_pin'] = 123_456
+ allow(api_client).to receive(:phone_number_verified?).with('123456789').and_return(false)
allow(api_client).to receive(:register_phone_number)
allow(api_client).to receive(:subscribe_waba_webhook).and_return({ 'success' => true })
allow(channel).to receive(:save!)
From 8ea21eeefde1a3b2523b70d2de36be4d6e0448d6 Mon Sep 17 00:00:00 2001
From: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Date: Mon, 11 Aug 2025 06:09:59 +0530
Subject: [PATCH 23/93] chore: Improve portal settings validation and error
handling (#12134)
# Pull Request Template
## Description
This PR includes:
1. Previously, the URL fields accepted any value starting with `https`.
Added proper URL validation to ensure valid URLs are entered.
2. Fixed an issue where form save errors displayed `[object Object]` in
the toast due to inconsistent error formatting from the backend.
Fixes https://linear.app/chatwoot/issue/CW-5389/help-center-bugs
## Type of change
- [x] Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
### Loom video
https://www.loom.com/share/63ddca2c5e2e45c99b66153ed146524f?sid=fd25331b-6b67-4722-9b36-1213496a0741
## Checklist:
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [ ] I have commented on my code, particularly in hard-to-understand
areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream
modules
---
app/controllers/api/v1/accounts/portals_controller.rb | 5 ++---
.../Pages/PortalSettingsPage/PortalBaseSettings.vue | 6 +++---
app/javascript/dashboard/i18n/locale/en/helpCenter.json | 2 +-
3 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/app/controllers/api/v1/accounts/portals_controller.rb b/app/controllers/api/v1/accounts/portals_controller.rb
index 18538e842..af96441f8 100644
--- a/app/controllers/api/v1/accounts/portals_controller.rb
+++ b/app/controllers/api/v1/accounts/portals_controller.rb
@@ -26,9 +26,8 @@ class Api::V1::Accounts::PortalsController < Api::V1::Accounts::BaseController
@portal.update!(portal_params.merge(live_chat_widget_params)) if params[:portal].present?
# @portal.custom_domain = parsed_custom_domain
process_attached_logo if params[:blob_id].present?
- rescue StandardError => e
- Rails.logger.error e
- render json: { error: @portal.errors.messages }.to_json, status: :unprocessable_entity
+ rescue ActiveRecord::RecordInvalid => e
+ render_record_invalid(e)
end
end
diff --git a/app/javascript/dashboard/components-next/HelpCenter/Pages/PortalSettingsPage/PortalBaseSettings.vue b/app/javascript/dashboard/components-next/HelpCenter/Pages/PortalSettingsPage/PortalBaseSettings.vue
index 7995270b5..862a2cd67 100644
--- a/app/javascript/dashboard/components-next/HelpCenter/Pages/PortalSettingsPage/PortalBaseSettings.vue
+++ b/app/javascript/dashboard/components-next/HelpCenter/Pages/PortalSettingsPage/PortalBaseSettings.vue
@@ -7,8 +7,8 @@ import { useStore, useStoreGetters } from 'dashboard/composables/store';
import { uploadFile } from 'dashboard/helper/uploadHelper';
import { checkFileSizeLimit } from 'shared/helpers/FileHelper';
import { useVuelidate } from '@vuelidate/core';
-import { required, minLength, helpers } from '@vuelidate/validators';
-import { shouldBeUrl, isValidSlug } from 'shared/helpers/Validators';
+import { required, minLength, helpers, url } from '@vuelidate/validators';
+import { isValidSlug } from 'shared/helpers/Validators';
import Button from 'dashboard/components-next/button/Button.vue';
import Input from 'dashboard/components-next/input/Input.vue';
@@ -71,7 +71,7 @@ const rules = {
isValidSlug
),
},
- homePageLink: { shouldBeUrl },
+ homePageLink: { url },
};
const v$ = useVuelidate(rules, state);
diff --git a/app/javascript/dashboard/i18n/locale/en/helpCenter.json b/app/javascript/dashboard/i18n/locale/en/helpCenter.json
index bd7fb986a..fd2b1a788 100644
--- a/app/javascript/dashboard/i18n/locale/en/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/en/helpCenter.json
@@ -732,7 +732,7 @@
"HOME_PAGE_LINK": {
"LABEL": "Home page link",
"PLACEHOLDER": "Portal home page link",
- "ERROR": "Invalid URL. The Home page link must start with 'http://' or 'https://'."
+ "ERROR": "Enter a valid URL. The Home page link must start with 'http://' or 'https://'."
},
"SLUG": {
"LABEL": "Slug",
From 3214d06a837f1c083c29594d1c5714cbe9e94733 Mon Sep 17 00:00:00 2001
From: Sojan Jose
Date: Sun, 10 Aug 2025 23:33:48 -0700
Subject: [PATCH 24/93] fix: Error shouldn't halt the campaign for entire
audience (#11980)
## Summary
- handle Twilio failures per contact when running one-off SMS campaigns
- rescue errors in WhatsApp and generic SMS one-off campaigns so they
continue
- add specs confirming campaigns continue sending when a single contact
fails
fixes: https://github.com/chatwoot/chatwoot/issues/9000
Co-authored-by: Muhsin Keloth
---
.../sms/oneoff_sms_campaign_service.rb | 2 ++
.../twilio/oneoff_sms_campaign_service.rb | 8 ++++-
.../whatsapp/oneoff_campaign_service.rb | 3 +-
.../sms/oneoff_sms_campaign_service_spec.rb | 17 ++++++++++
.../oneoff_sms_campaign_service_spec.rb | 31 +++++++++++++++++++
.../whatsapp/oneoff_campaign_service_spec.rb | 17 ++++++----
6 files changed, 70 insertions(+), 8 deletions(-)
diff --git a/app/services/sms/oneoff_sms_campaign_service.rb b/app/services/sms/oneoff_sms_campaign_service.rb
index 22d38ac20..b27ef9a41 100644
--- a/app/services/sms/oneoff_sms_campaign_service.rb
+++ b/app/services/sms/oneoff_sms_campaign_service.rb
@@ -29,5 +29,7 @@ class Sms::OneoffSmsCampaignService
def send_message(to:, content:)
channel.send_text_message(to, content)
+ rescue StandardError => e
+ Rails.logger.error("[SMS Campaign #{campaign.id}] Failed to send to #{to}: #{e.message}")
end
end
diff --git a/app/services/twilio/oneoff_sms_campaign_service.rb b/app/services/twilio/oneoff_sms_campaign_service.rb
index e99df36cc..391b043cc 100644
--- a/app/services/twilio/oneoff_sms_campaign_service.rb
+++ b/app/services/twilio/oneoff_sms_campaign_service.rb
@@ -23,7 +23,13 @@ class Twilio::OneoffSmsCampaignService
next if contact.phone_number.blank?
content = Liquid::CampaignTemplateService.new(campaign: campaign, contact: contact).call(campaign.message)
- channel.send_message(to: contact.phone_number, body: content)
+
+ begin
+ channel.send_message(to: contact.phone_number, body: content)
+ rescue Twilio::REST::TwilioError, Twilio::REST::RestError => e
+ Rails.logger.error("[Twilio Campaign #{campaign.id}] Failed to send to #{contact.phone_number}: #{e.message}")
+ next
+ end
end
end
end
diff --git a/app/services/whatsapp/oneoff_campaign_service.rb b/app/services/whatsapp/oneoff_campaign_service.rb
index c2f0080f3..47a971f41 100644
--- a/app/services/whatsapp/oneoff_campaign_service.rb
+++ b/app/services/whatsapp/oneoff_campaign_service.rb
@@ -89,6 +89,7 @@ class Whatsapp::OneoffCampaignService
rescue StandardError => e
Rails.logger.error "Failed to send WhatsApp template message to #{to}: #{e.message}"
Rails.logger.error "Backtrace: #{e.backtrace.first(5).join('\n')}"
- raise e
+ # continue processing remaining contacts
+ nil
end
end
diff --git a/spec/services/sms/oneoff_sms_campaign_service_spec.rb b/spec/services/sms/oneoff_sms_campaign_service_spec.rb
index a5c7d7e58..b1f48b0b9 100644
--- a/spec/services/sms/oneoff_sms_campaign_service_spec.rb
+++ b/spec/services/sms/oneoff_sms_campaign_service_spec.rb
@@ -20,6 +20,7 @@ describe Sms::OneoffSmsCampaignService do
body: { 'id' => '1' }.to_json,
headers: {}
)
+ allow_any_instance_of(described_class).to receive(:channel).and_return(sms_channel) # rubocop:disable RSpec/AnyInstance
end
it 'raises error if the campaign is completed' do
@@ -52,5 +53,21 @@ describe Sms::OneoffSmsCampaignService do
sms_campaign_service.perform
end
+
+ it 'continues processing contacts when sending message raises an error' do
+ contact_error, contact_success = FactoryBot.create_list(:contact, 2, :with_phone_number, account: account)
+ contact_error.update_labels([label1.title])
+ contact_success.update_labels([label1.title])
+
+ error_message = 'SMS provider error'
+
+ expect(sms_channel).to receive(:send_text_message).with(contact_error.phone_number, anything).and_raise(StandardError, error_message)
+ expect(sms_channel).to receive(:send_text_message).with(contact_success.phone_number, anything).and_return(nil)
+
+ expect(Rails.logger).to receive(:error).with("[SMS Campaign #{campaign.id}] Failed to send to #{contact_error.phone_number}: #{error_message}")
+
+ sms_campaign_service.perform
+ expect(campaign.reload.completed?).to be true
+ end
end
end
diff --git a/spec/services/twilio/oneoff_sms_campaign_service_spec.rb b/spec/services/twilio/oneoff_sms_campaign_service_spec.rb
index 0e6a993c2..90636a439 100644
--- a/spec/services/twilio/oneoff_sms_campaign_service_spec.rb
+++ b/spec/services/twilio/oneoff_sms_campaign_service_spec.rb
@@ -70,5 +70,36 @@ describe Twilio::OneoffSmsCampaignService do
sms_campaign_service.perform
end
+
+ it 'continues processing contacts when Twilio raises an error' do
+ contact_error, contact_success = FactoryBot.create_list(:contact, 2, :with_phone_number, account: account)
+ contact_error.update_labels([label1.title])
+ contact_success.update_labels([label1.title])
+
+ error = Twilio::REST::TwilioError.new("The 'To' number #{contact_error.phone_number} is not a valid phone number.")
+
+ allow(twilio_messages).to receive(:create).and_return(nil)
+
+ expect(twilio_messages).to receive(:create).with(
+ body: campaign.message,
+ messaging_service_sid: twilio_sms.messaging_service_sid,
+ to: contact_error.phone_number,
+ status_callback: 'http://localhost:3000/twilio/delivery_status'
+ ).and_raise(error)
+
+ expect(twilio_messages).to receive(:create).with(
+ body: campaign.message,
+ messaging_service_sid: twilio_sms.messaging_service_sid,
+ to: contact_success.phone_number,
+ status_callback: 'http://localhost:3000/twilio/delivery_status'
+ ).once
+
+ expect(Rails.logger).to receive(:error).with(
+ "[Twilio Campaign #{campaign.id}] Failed to send to #{contact_error.phone_number}: #{error.message}"
+ )
+
+ sms_campaign_service.perform
+ expect(campaign.reload.completed?).to be true
+ end
end
end
diff --git a/spec/services/whatsapp/oneoff_campaign_service_spec.rb b/spec/services/whatsapp/oneoff_campaign_service_spec.rb
index 33107e8de..5cf56bf25 100644
--- a/spec/services/whatsapp/oneoff_campaign_service_spec.rb
+++ b/spec/services/whatsapp/oneoff_campaign_service_spec.rb
@@ -151,18 +151,23 @@ describe Whatsapp::OneoffCampaignService do
end
context 'when send_template raises an error' do
- it 'logs error and re-raises' do
- contact = create(:contact, :with_phone_number, account: account)
- contact.update_labels([label1.title])
+ it 'logs error and continues processing remaining contacts' do
+ contact_error, contact_success = create_list(:contact, 2, :with_phone_number, account: account)
+ contact_error.update_labels([label1.title])
+ contact_success.update_labels([label1.title])
error_message = 'WhatsApp API error'
- allow(whatsapp_channel).to receive(:send_template).and_raise(StandardError, error_message)
+ allow(whatsapp_channel).to receive(:send_template).and_return(nil)
+
+ expect(whatsapp_channel).to receive(:send_template).with(contact_error.phone_number, anything).and_raise(StandardError, error_message)
+ expect(whatsapp_channel).to receive(:send_template).with(contact_success.phone_number, anything).once
expect(Rails.logger).to receive(:error)
- .with("Failed to send WhatsApp template message to #{contact.phone_number}: #{error_message}")
+ .with("Failed to send WhatsApp template message to #{contact_error.phone_number}: #{error_message}")
expect(Rails.logger).to receive(:error).with(/Backtrace:/)
- expect { described_class.new(campaign: campaign).perform }.to raise_error(StandardError, error_message)
+ described_class.new(campaign: campaign).perform
+ expect(campaign.reload.completed?).to be true
end
end
end
From f3bc2476fcc9ff12f94e2c55adcc006180e47e40 Mon Sep 17 00:00:00 2001
From: Chatwoot Bot <92152627+chatwoot-bot@users.noreply.github.com>
Date: Sun, 10 Aug 2025 23:59:22 -0700
Subject: [PATCH 25/93] chore: Update translations (#12073)
Co-authored-by: Muhsin Keloth
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
---
.../i18n/locale/am/conversation.json | 3 +
.../dashboard/i18n/locale/am/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/am/inbox.json | 18 ++++
.../dashboard/i18n/locale/am/inboxMgmt.json | 20 ++++
.../i18n/locale/am/integrations.json | 69 ++++++++++++
.../i18n/locale/ar/conversation.json | 3 +
.../i18n/locale/ar/generalSettings.json | 2 +-
.../dashboard/i18n/locale/ar/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ar/inbox.json | 18 ++++
.../dashboard/i18n/locale/ar/inboxMgmt.json | 20 ++++
.../i18n/locale/ar/integrations.json | 69 ++++++++++++
.../i18n/locale/az/conversation.json | 3 +
.../dashboard/i18n/locale/az/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/az/inbox.json | 18 ++++
.../dashboard/i18n/locale/az/inboxMgmt.json | 20 ++++
.../i18n/locale/az/integrations.json | 69 ++++++++++++
.../i18n/locale/bg/conversation.json | 3 +
.../dashboard/i18n/locale/bg/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/bg/inbox.json | 18 ++++
.../dashboard/i18n/locale/bg/inboxMgmt.json | 20 ++++
.../i18n/locale/bg/integrations.json | 69 ++++++++++++
.../i18n/locale/ca/conversation.json | 3 +
.../dashboard/i18n/locale/ca/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ca/inbox.json | 18 ++++
.../dashboard/i18n/locale/ca/inboxMgmt.json | 20 ++++
.../i18n/locale/ca/integrations.json | 69 ++++++++++++
.../i18n/locale/cs/conversation.json | 3 +
.../dashboard/i18n/locale/cs/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/cs/inbox.json | 18 ++++
.../dashboard/i18n/locale/cs/inboxMgmt.json | 20 ++++
.../i18n/locale/cs/integrations.json | 69 ++++++++++++
.../i18n/locale/da/conversation.json | 3 +
.../dashboard/i18n/locale/da/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/da/inbox.json | 18 ++++
.../dashboard/i18n/locale/da/inboxMgmt.json | 20 ++++
.../i18n/locale/da/integrations.json | 69 ++++++++++++
.../i18n/locale/de/conversation.json | 3 +
.../dashboard/i18n/locale/de/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/de/inbox.json | 18 ++++
.../dashboard/i18n/locale/de/inboxMgmt.json | 26 ++++-
.../i18n/locale/de/integrations.json | 69 ++++++++++++
.../i18n/locale/el/conversation.json | 3 +
.../dashboard/i18n/locale/el/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/el/inbox.json | 18 ++++
.../dashboard/i18n/locale/el/inboxMgmt.json | 20 ++++
.../i18n/locale/el/integrations.json | 69 ++++++++++++
.../i18n/locale/es/conversation.json | 3 +
.../dashboard/i18n/locale/es/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/es/inbox.json | 18 ++++
.../dashboard/i18n/locale/es/inboxMgmt.json | 20 ++++
.../i18n/locale/es/integrations.json | 69 ++++++++++++
.../i18n/locale/fa/conversation.json | 3 +
.../dashboard/i18n/locale/fa/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/fa/inbox.json | 18 ++++
.../dashboard/i18n/locale/fa/inboxMgmt.json | 20 ++++
.../i18n/locale/fa/integrations.json | 69 ++++++++++++
.../i18n/locale/fi/conversation.json | 3 +
.../dashboard/i18n/locale/fi/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/fi/inbox.json | 18 ++++
.../dashboard/i18n/locale/fi/inboxMgmt.json | 20 ++++
.../i18n/locale/fi/integrations.json | 69 ++++++++++++
.../i18n/locale/fr/conversation.json | 3 +
.../dashboard/i18n/locale/fr/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/fr/inbox.json | 18 ++++
.../dashboard/i18n/locale/fr/inboxMgmt.json | 20 ++++
.../i18n/locale/fr/integrations.json | 69 ++++++++++++
.../i18n/locale/he/conversation.json | 3 +
.../dashboard/i18n/locale/he/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/he/inbox.json | 18 ++++
.../dashboard/i18n/locale/he/inboxMgmt.json | 20 ++++
.../i18n/locale/he/integrations.json | 69 ++++++++++++
.../dashboard/i18n/locale/hi/campaign.json | 18 ++--
.../i18n/locale/hi/conversation.json | 3 +
.../i18n/locale/hi/generalSettings.json | 14 +--
.../dashboard/i18n/locale/hi/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/hi/inbox.json | 18 ++++
.../dashboard/i18n/locale/hi/inboxMgmt.json | 20 ++++
.../i18n/locale/hi/integrations.json | 69 ++++++++++++
.../i18n/locale/hr/conversation.json | 3 +
.../dashboard/i18n/locale/hr/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/hr/inbox.json | 18 ++++
.../dashboard/i18n/locale/hr/inboxMgmt.json | 20 ++++
.../i18n/locale/hr/integrations.json | 69 ++++++++++++
.../i18n/locale/hu/conversation.json | 3 +
.../dashboard/i18n/locale/hu/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/hu/inbox.json | 18 ++++
.../dashboard/i18n/locale/hu/inboxMgmt.json | 20 ++++
.../i18n/locale/hu/integrations.json | 69 ++++++++++++
.../i18n/locale/hy/conversation.json | 3 +
.../dashboard/i18n/locale/hy/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/hy/inbox.json | 18 ++++
.../dashboard/i18n/locale/hy/inboxMgmt.json | 20 ++++
.../i18n/locale/hy/integrations.json | 69 ++++++++++++
.../i18n/locale/id/conversation.json | 3 +
.../dashboard/i18n/locale/id/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/id/inbox.json | 18 ++++
.../dashboard/i18n/locale/id/inboxMgmt.json | 20 ++++
.../i18n/locale/id/integrations.json | 69 ++++++++++++
.../i18n/locale/is/conversation.json | 3 +
.../dashboard/i18n/locale/is/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/is/inbox.json | 18 ++++
.../dashboard/i18n/locale/is/inboxMgmt.json | 20 ++++
.../i18n/locale/is/integrations.json | 69 ++++++++++++
.../dashboard/i18n/locale/it/contact.json | 14 +--
.../i18n/locale/it/conversation.json | 23 ++--
.../i18n/locale/it/generalSettings.json | 92 ++++++++--------
.../dashboard/i18n/locale/it/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/it/inbox.json | 18 ++++
.../dashboard/i18n/locale/it/inboxMgmt.json | 102 +++++++++++-------
.../i18n/locale/it/integrations.json | 71 +++++++++++-
.../i18n/locale/ja/conversation.json | 3 +
.../dashboard/i18n/locale/ja/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ja/inbox.json | 18 ++++
.../dashboard/i18n/locale/ja/inboxMgmt.json | 20 ++++
.../i18n/locale/ja/integrations.json | 69 ++++++++++++
.../i18n/locale/ka/conversation.json | 3 +
.../dashboard/i18n/locale/ka/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ka/inbox.json | 18 ++++
.../dashboard/i18n/locale/ka/inboxMgmt.json | 20 ++++
.../i18n/locale/ka/integrations.json | 69 ++++++++++++
.../i18n/locale/ko/conversation.json | 3 +
.../dashboard/i18n/locale/ko/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ko/inbox.json | 18 ++++
.../dashboard/i18n/locale/ko/inboxMgmt.json | 20 ++++
.../i18n/locale/ko/integrations.json | 69 ++++++++++++
.../i18n/locale/lt/conversation.json | 3 +
.../dashboard/i18n/locale/lt/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/lt/inbox.json | 18 ++++
.../dashboard/i18n/locale/lt/inboxMgmt.json | 20 ++++
.../i18n/locale/lt/integrations.json | 69 ++++++++++++
.../i18n/locale/lv/conversation.json | 3 +
.../dashboard/i18n/locale/lv/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/lv/inbox.json | 18 ++++
.../dashboard/i18n/locale/lv/inboxMgmt.json | 20 ++++
.../i18n/locale/lv/integrations.json | 69 ++++++++++++
.../i18n/locale/ml/conversation.json | 3 +
.../dashboard/i18n/locale/ml/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ml/inbox.json | 18 ++++
.../dashboard/i18n/locale/ml/inboxMgmt.json | 20 ++++
.../i18n/locale/ml/integrations.json | 69 ++++++++++++
.../i18n/locale/ms/conversation.json | 3 +
.../dashboard/i18n/locale/ms/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ms/inbox.json | 18 ++++
.../dashboard/i18n/locale/ms/inboxMgmt.json | 20 ++++
.../i18n/locale/ms/integrations.json | 69 ++++++++++++
.../i18n/locale/ne/conversation.json | 3 +
.../dashboard/i18n/locale/ne/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ne/inbox.json | 18 ++++
.../dashboard/i18n/locale/ne/inboxMgmt.json | 20 ++++
.../i18n/locale/ne/integrations.json | 69 ++++++++++++
.../i18n/locale/nl/conversation.json | 3 +
.../dashboard/i18n/locale/nl/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/nl/inbox.json | 18 ++++
.../dashboard/i18n/locale/nl/inboxMgmt.json | 20 ++++
.../i18n/locale/nl/integrations.json | 69 ++++++++++++
.../i18n/locale/no/conversation.json | 3 +
.../dashboard/i18n/locale/no/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/no/inbox.json | 18 ++++
.../dashboard/i18n/locale/no/inboxMgmt.json | 20 ++++
.../i18n/locale/no/integrations.json | 69 ++++++++++++
.../i18n/locale/pl/conversation.json | 3 +
.../dashboard/i18n/locale/pl/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/pl/inbox.json | 18 ++++
.../dashboard/i18n/locale/pl/inboxMgmt.json | 20 ++++
.../i18n/locale/pl/integrations.json | 69 ++++++++++++
.../i18n/locale/pt/conversation.json | 3 +
.../dashboard/i18n/locale/pt/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/pt/inbox.json | 18 ++++
.../dashboard/i18n/locale/pt/inboxMgmt.json | 20 ++++
.../i18n/locale/pt/integrations.json | 69 ++++++++++++
.../i18n/locale/pt_BR/conversation.json | 3 +
.../i18n/locale/pt_BR/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/pt_BR/inbox.json | 18 ++++
.../i18n/locale/pt_BR/inboxMgmt.json | 20 ++++
.../i18n/locale/pt_BR/integrations.json | 69 ++++++++++++
.../i18n/locale/ro/conversation.json | 3 +
.../dashboard/i18n/locale/ro/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ro/inbox.json | 18 ++++
.../dashboard/i18n/locale/ro/inboxMgmt.json | 20 ++++
.../i18n/locale/ro/integrations.json | 69 ++++++++++++
.../i18n/locale/ru/conversation.json | 3 +
.../dashboard/i18n/locale/ru/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ru/inbox.json | 18 ++++
.../dashboard/i18n/locale/ru/inboxMgmt.json | 20 ++++
.../i18n/locale/ru/integrations.json | 69 ++++++++++++
.../i18n/locale/sh/conversation.json | 3 +
.../dashboard/i18n/locale/sh/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/sh/inbox.json | 18 ++++
.../dashboard/i18n/locale/sh/inboxMgmt.json | 20 ++++
.../i18n/locale/sh/integrations.json | 69 ++++++++++++
.../i18n/locale/sk/conversation.json | 3 +
.../dashboard/i18n/locale/sk/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/sk/inbox.json | 18 ++++
.../dashboard/i18n/locale/sk/inboxMgmt.json | 20 ++++
.../i18n/locale/sk/integrations.json | 69 ++++++++++++
.../i18n/locale/sl/conversation.json | 3 +
.../dashboard/i18n/locale/sl/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/sl/inbox.json | 18 ++++
.../dashboard/i18n/locale/sl/inboxMgmt.json | 20 ++++
.../i18n/locale/sl/integrations.json | 69 ++++++++++++
.../i18n/locale/sq/conversation.json | 3 +
.../dashboard/i18n/locale/sq/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/sq/inbox.json | 18 ++++
.../dashboard/i18n/locale/sq/inboxMgmt.json | 20 ++++
.../i18n/locale/sq/integrations.json | 69 ++++++++++++
.../i18n/locale/sr/conversation.json | 3 +
.../dashboard/i18n/locale/sr/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/sr/inbox.json | 18 ++++
.../dashboard/i18n/locale/sr/inboxMgmt.json | 20 ++++
.../i18n/locale/sr/integrations.json | 69 ++++++++++++
.../i18n/locale/sv/conversation.json | 3 +
.../dashboard/i18n/locale/sv/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/sv/inbox.json | 18 ++++
.../dashboard/i18n/locale/sv/inboxMgmt.json | 20 ++++
.../i18n/locale/sv/integrations.json | 69 ++++++++++++
.../i18n/locale/ta/conversation.json | 3 +
.../dashboard/i18n/locale/ta/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ta/inbox.json | 18 ++++
.../dashboard/i18n/locale/ta/inboxMgmt.json | 20 ++++
.../i18n/locale/ta/integrations.json | 69 ++++++++++++
.../i18n/locale/th/conversation.json | 3 +
.../dashboard/i18n/locale/th/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/th/inbox.json | 18 ++++
.../dashboard/i18n/locale/th/inboxMgmt.json | 20 ++++
.../i18n/locale/th/integrations.json | 69 ++++++++++++
.../i18n/locale/tl/conversation.json | 3 +
.../dashboard/i18n/locale/tl/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/tl/inbox.json | 18 ++++
.../dashboard/i18n/locale/tl/inboxMgmt.json | 20 ++++
.../i18n/locale/tl/integrations.json | 69 ++++++++++++
.../i18n/locale/tr/conversation.json | 3 +
.../i18n/locale/tr/generalSettings.json | 2 +-
.../dashboard/i18n/locale/tr/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/tr/inbox.json | 18 ++++
.../dashboard/i18n/locale/tr/inboxMgmt.json | 20 ++++
.../i18n/locale/tr/integrations.json | 69 ++++++++++++
.../i18n/locale/uk/conversation.json | 3 +
.../dashboard/i18n/locale/uk/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/uk/inbox.json | 18 ++++
.../dashboard/i18n/locale/uk/inboxMgmt.json | 20 ++++
.../i18n/locale/uk/integrations.json | 69 ++++++++++++
.../i18n/locale/ur/conversation.json | 3 +
.../dashboard/i18n/locale/ur/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ur/inbox.json | 18 ++++
.../dashboard/i18n/locale/ur/inboxMgmt.json | 20 ++++
.../i18n/locale/ur/integrations.json | 69 ++++++++++++
.../i18n/locale/ur_IN/conversation.json | 3 +
.../i18n/locale/ur_IN/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/ur_IN/inbox.json | 18 ++++
.../i18n/locale/ur_IN/inboxMgmt.json | 20 ++++
.../i18n/locale/ur_IN/integrations.json | 69 ++++++++++++
.../i18n/locale/vi/conversation.json | 3 +
.../dashboard/i18n/locale/vi/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/vi/inbox.json | 18 ++++
.../dashboard/i18n/locale/vi/inboxMgmt.json | 20 ++++
.../i18n/locale/vi/integrations.json | 69 ++++++++++++
.../i18n/locale/zh_CN/conversation.json | 3 +
.../i18n/locale/zh_CN/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/zh_CN/inbox.json | 18 ++++
.../i18n/locale/zh_CN/inboxMgmt.json | 20 ++++
.../i18n/locale/zh_CN/integrations.json | 69 ++++++++++++
.../i18n/locale/zh_TW/conversation.json | 3 +
.../i18n/locale/zh_TW/helpCenter.json | 27 ++++-
.../dashboard/i18n/locale/zh_TW/inbox.json | 18 ++++
.../i18n/locale/zh_TW/inboxMgmt.json | 20 ++++
.../i18n/locale/zh_TW/integrations.json | 69 ++++++++++++
config/locales/am.yml | 21 ++++
config/locales/ar.yml | 21 ++++
config/locales/az.yml | 21 ++++
config/locales/bg.yml | 21 ++++
config/locales/ca.yml | 21 ++++
config/locales/cs.yml | 21 ++++
config/locales/da.yml | 21 ++++
config/locales/de.yml | 21 ++++
config/locales/el.yml | 21 ++++
config/locales/es.yml | 21 ++++
config/locales/fa.yml | 21 ++++
config/locales/fi.yml | 21 ++++
config/locales/fr.yml | 21 ++++
config/locales/he.yml | 21 ++++
config/locales/hi.yml | 21 ++++
config/locales/hr.yml | 21 ++++
config/locales/hu.yml | 21 ++++
config/locales/hy.yml | 21 ++++
config/locales/id.yml | 21 ++++
config/locales/is.yml | 21 ++++
config/locales/it.yml | 49 ++++++---
config/locales/ja.yml | 21 ++++
config/locales/ka.yml | 21 ++++
config/locales/ko.yml | 21 ++++
config/locales/lt.yml | 21 ++++
config/locales/lv.yml | 21 ++++
config/locales/ml.yml | 21 ++++
config/locales/ms.yml | 21 ++++
config/locales/ne.yml | 21 ++++
config/locales/nl.yml | 21 ++++
config/locales/no.yml | 21 ++++
config/locales/pl.yml | 21 ++++
config/locales/pt.yml | 21 ++++
config/locales/pt_BR.yml | 21 ++++
config/locales/ro.yml | 21 ++++
config/locales/ru.yml | 21 ++++
config/locales/sh.yml | 21 ++++
config/locales/sk.yml | 21 ++++
config/locales/sl.yml | 21 ++++
config/locales/sq.yml | 21 ++++
config/locales/sr.yml | 21 ++++
config/locales/sv.yml | 21 ++++
config/locales/ta.yml | 21 ++++
config/locales/th.yml | 21 ++++
config/locales/tl.yml | 21 ++++
config/locales/tr.yml | 21 ++++
config/locales/uk.yml | 21 ++++
config/locales/ur.yml | 21 ++++
config/locales/ur_IN.yml | 21 ++++
config/locales/vi.yml | 21 ++++
config/locales/zh_CN.yml | 21 ++++
config/locales/zh_TW.yml | 21 ++++
318 files changed, 8148 insertions(+), 348 deletions(-)
diff --git a/app/javascript/dashboard/i18n/locale/am/conversation.json b/app/javascript/dashboard/i18n/locale/am/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/am/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/am/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/am/helpCenter.json b/app/javascript/dashboard/i18n/locale/am/helpCenter.json
index f437b83d9..bd7fb986a 100644
--- a/app/javascript/dashboard/i18n/locale/am/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/am/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/am/inbox.json b/app/javascript/dashboard/i18n/locale/am/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/am/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/am/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json
index 12580bcac..4006212a3 100644
--- a/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/am/integrations.json b/app/javascript/dashboard/i18n/locale/am/integrations.json
index d9bf469c7..1614931a0 100644
--- a/app/javascript/dashboard/i18n/locale/am/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/am/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ar/conversation.json b/app/javascript/dashboard/i18n/locale/ar/conversation.json
index 21c7267cf..45a488aaf 100644
--- a/app/javascript/dashboard/i18n/locale/ar/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ar/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "جاري جلب الوكلاء...",
"ASSIGN_TEAM": "تعيين فريق",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "معرف المحادثة {conversationId} تم تعيينه لـ \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ar/generalSettings.json b/app/javascript/dashboard/i18n/locale/ar/generalSettings.json
index 1aaf03e4b..5616421fd 100644
--- a/app/javascript/dashboard/i18n/locale/ar/generalSettings.json
+++ b/app/javascript/dashboard/i18n/locale/ar/generalSettings.json
@@ -29,7 +29,7 @@
"FAILURE": "Could not delete account, try again!",
"SCHEDULED_DELETION": {
"TITLE": "Account Scheduled for Deletion",
- "MESSAGE_MANUAL": "This account is scheduled for deletion on {deletionDate}. This was requested by an administrator. You can cancel the deletion before this date.",
+ "MESSAGE_MANUAL": "هذا الحساب مجدول للحذف بتاريخ {deletionDate}. تم طلبه من قبل المسؤول. يمكنك إلغاء الحذف قبل هذا التاريخ.",
"MESSAGE_INACTIVITY": "This account is scheduled for deletion on {deletionDate} due to account inactivity. You can cancel the deletion before this date.",
"CLEAR_BUTTON": "Cancel Scheduled Deletion"
}
diff --git a/app/javascript/dashboard/i18n/locale/ar/helpCenter.json b/app/javascript/dashboard/i18n/locale/ar/helpCenter.json
index 019ba02b4..6ca4d8338 100644
--- a/app/javascript/dashboard/i18n/locale/ar/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ar/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "حدث خطأ أثناء حذف البوابة"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "نطاق مخصص",
"LABEL": "نطاق مخصص:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "نطاق البوابة المخصص",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "تعديل",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "مباشر",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "نطاق مخصص",
"PLACEHOLDER": "نطاق البوابة المخصص",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "إرسال"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ar/inbox.json b/app/javascript/dashboard/i18n/locale/ar/inbox.json
index fe3de32c1..ffc8ed16b 100644
--- a/app/javascript/dashboard/i18n/locale/ar/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ar/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "تم تحديد جميع الإشعارات كمقروءة",
"DELETE_ALL": "تم حذف كل الإشعارات",
"DELETE_ALL_READ": "تم حذف كل الإشعارات المقروءة"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json
index c860f0a6f..05b9ab278 100644
--- a/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "تحديث",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ar/integrations.json b/app/javascript/dashboard/i18n/locale/ar/integrations.json
index 69c5b820b..f00d3fe1d 100644
--- a/app/javascript/dashboard/i18n/locale/ar/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ar/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "حذف"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/az/conversation.json b/app/javascript/dashboard/i18n/locale/az/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/az/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/az/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/az/helpCenter.json b/app/javascript/dashboard/i18n/locale/az/helpCenter.json
index f437b83d9..bd7fb986a 100644
--- a/app/javascript/dashboard/i18n/locale/az/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/az/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/az/inbox.json b/app/javascript/dashboard/i18n/locale/az/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/az/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/az/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json
index 12580bcac..4006212a3 100644
--- a/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/az/integrations.json b/app/javascript/dashboard/i18n/locale/az/integrations.json
index d9bf469c7..1614931a0 100644
--- a/app/javascript/dashboard/i18n/locale/az/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/az/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/bg/conversation.json b/app/javascript/dashboard/i18n/locale/bg/conversation.json
index a2dbc8481..ec7189e4c 100644
--- a/app/javascript/dashboard/i18n/locale/bg/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/bg/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/bg/helpCenter.json b/app/javascript/dashboard/i18n/locale/bg/helpCenter.json
index 1e4fd3244..88d5d7a0b 100644
--- a/app/javascript/dashboard/i18n/locale/bg/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/bg/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Редактирай",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/bg/inbox.json b/app/javascript/dashboard/i18n/locale/bg/inbox.json
index edc729481..8cdc2ab89 100644
--- a/app/javascript/dashboard/i18n/locale/bg/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/bg/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json
index 30fa620ff..3f41b6692 100644
--- a/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Обновяване",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/bg/integrations.json b/app/javascript/dashboard/i18n/locale/bg/integrations.json
index d77d1e895..6bcd3b584 100644
--- a/app/javascript/dashboard/i18n/locale/bg/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/bg/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Изтрий"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "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": "Create",
+ "CANCEL": "Отмени"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Отмени",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ca/conversation.json b/app/javascript/dashboard/i18n/locale/ca/conversation.json
index 5da99cfa7..220cafc46 100644
--- a/app/javascript/dashboard/i18n/locale/ca/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ca/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "S'estan carregant els agents...",
"ASSIGN_TEAM": "Assigna un equip",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Id de conversa {conversationId} assignat a \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ca/helpCenter.json b/app/javascript/dashboard/i18n/locale/ca/helpCenter.json
index 6e25c12f9..e0d9dfae1 100644
--- a/app/javascript/dashboard/i18n/locale/ca/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ca/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal esborrat correctament",
"DELETE_ERROR": "S'ha produït un error en suprimir el portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Domini personalitzat",
"LABEL": "Domini personalitzat:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Domini personalitzat del portal",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edita",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "En directe",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Domini personalitzat",
"PLACEHOLDER": "Domini personalitzat del portal",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Envia"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ca/inbox.json b/app/javascript/dashboard/i18n/locale/ca/inbox.json
index 6601e9fd2..dfd9088ef 100644
--- a/app/javascript/dashboard/i18n/locale/ca/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ca/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Totes les notificacions s'han marcat com a llegides",
"DELETE_ALL": "S'han suprimit totes les notificacions",
"DELETE_ALL_READ": "S'han suprimit totes les notificacions de lectura"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json
index 3a7961688..6ca31f720 100644
--- a/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Actualitza l'API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Introdueix la nova clau de l'API aquí",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Actualitza",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connectar",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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": "Token de verificació del webhook",
"WHATSAPP_WEBHOOK_SUBHEADER": "Aquest testimoni s'utilitza per verificar l'autenticitat del punt final del webhook.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ca/integrations.json b/app/javascript/dashboard/i18n/locale/ca/integrations.json
index 68e5f6994..4607a2fe1 100644
--- a/app/javascript/dashboard/i18n/locale/ca/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ca/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Esborrar"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Títol",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Descripció",
+ "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": "Crear",
+ "CANCEL": "Cancel·la"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel·la",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/cs/conversation.json b/app/javascript/dashboard/i18n/locale/cs/conversation.json
index b69100909..c9ab4282a 100644
--- a/app/javascript/dashboard/i18n/locale/cs/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/cs/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Načítání agentů...",
"ASSIGN_TEAM": "Přiřadit tým",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Konverzace id {conversationId} přiřazena \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/cs/helpCenter.json b/app/javascript/dashboard/i18n/locale/cs/helpCenter.json
index b776b0e26..b6db6950a 100644
--- a/app/javascript/dashboard/i18n/locale/cs/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/cs/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Upravit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Poslat"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/cs/inbox.json b/app/javascript/dashboard/i18n/locale/cs/inbox.json
index 043f076d9..1160a5c86 100644
--- a/app/javascript/dashboard/i18n/locale/cs/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/cs/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json
index 8b0498ce5..7f3585287 100644
--- a/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Aktualizovat",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/cs/integrations.json b/app/javascript/dashboard/i18n/locale/cs/integrations.json
index ca73fe90b..9b55bf386 100644
--- a/app/javascript/dashboard/i18n/locale/cs/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/cs/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Vymazat"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Zrušit"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Zrušit",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/da/conversation.json b/app/javascript/dashboard/i18n/locale/da/conversation.json
index ef8188307..54de51b46 100644
--- a/app/javascript/dashboard/i18n/locale/da/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/da/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Indlæser agenter...",
"ASSIGN_TEAM": "Tildel team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Samtale id {conversationId} tildelt \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/da/helpCenter.json b/app/javascript/dashboard/i18n/locale/da/helpCenter.json
index ee3c6faf6..bd1f354a5 100644
--- a/app/javascript/dashboard/i18n/locale/da/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/da/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal slettet",
"DELETE_ERROR": "Fejl under sletning af portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Tilpasset domæne",
"LABEL": "Tilpasset domæne:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal brugerdefineret domæne",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Rediger",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Levende",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Tilpasset domæne",
"PLACEHOLDER": "Portal brugerdefineret domæne",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/da/inbox.json b/app/javascript/dashboard/i18n/locale/da/inbox.json
index 901b703f1..bf34cc73a 100644
--- a/app/javascript/dashboard/i18n/locale/da/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/da/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json
index 579ee2f75..08105a3bd 100644
--- a/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Opdater",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Tilslut",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 verifikations token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/da/integrations.json b/app/javascript/dashboard/i18n/locale/da/integrations.json
index 0a0e17d2b..8710dc6d8 100644
--- a/app/javascript/dashboard/i18n/locale/da/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/da/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Slet"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Titel",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Beskrivelse",
+ "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": "Opret",
+ "CANCEL": "Annuller"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Annuller",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/de/conversation.json b/app/javascript/dashboard/i18n/locale/de/conversation.json
index 3331fdff8..ca1e2033d 100644
--- a/app/javascript/dashboard/i18n/locale/de/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/de/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Agenten werden geladen...",
"ASSIGN_TEAM": "Team zuweisen",
"DELETE": "Unterhaltung löschen",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Konversations-ID {conversationId} zugewiesen zu \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/de/helpCenter.json b/app/javascript/dashboard/i18n/locale/de/helpCenter.json
index 1d6a40f70..55962a4ec 100644
--- a/app/javascript/dashboard/i18n/locale/de/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/de/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal erfolgreich gelöscht",
"DELETE_ERROR": "Fehler beim Löschen des Portals"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Benutzerdefinierte Domain",
"LABEL": "Benutzerdefinierte Domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Benutzerdefinierte Domain des Portals",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Bearbeiten",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Benutzerdefinierte Domain",
"PLACEHOLDER": "Benutzerdefinierte Domain des Portals",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Senden"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/de/inbox.json b/app/javascript/dashboard/i18n/locale/de/inbox.json
index f695ae27c..cf85c97f1 100644
--- a/app/javascript/dashboard/i18n/locale/de/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/de/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Alle Benachrichtigungen als gelesen markiert",
"DELETE_ALL": "Alle Benachrichtigungen gelöscht",
"DELETE_ALL_READ": "Alle gelesenen Benachrichtigungen gelöscht"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json
index 2c2eda452..26a8fa753 100644
--- a/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json
@@ -47,8 +47,8 @@
"CREATE_INBOX": "Posteingang erstellen"
},
"INSTAGRAM": {
- "CONTINUE_WITH_INSTAGRAM": "Continue with Instagram",
- "CONNECT_YOUR_INSTAGRAM_PROFILE": "Connect your Instagram Profile",
+ "CONTINUE_WITH_INSTAGRAM": "Mit Instagram fortfahren",
+ "CONNECT_YOUR_INSTAGRAM_PROFILE": "Verbinde dein Instagram-Profil",
"HELP": "To add your Instagram profile as a channel, you need to authenticate your Instagram Profile by clicking on 'Continue with Instagram' ",
"ERROR_MESSAGE": "There was an error connecting to Instagram, please try again",
"ERROR_AUTH": "There was an error connecting to Instagram, please try again",
@@ -230,7 +230,7 @@
"360_DIALOG": "360Dialog"
},
"SELECT_PROVIDER": {
- "TITLE": "Select your API provider",
+ "TITLE": "Wähle deinen API-Provider",
"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": {
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "API-Schlüssel aktualisieren",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Neuen API-Schlüssel hier eingeben",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Aktualisieren",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Verbinden",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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-Verifizierungstoken",
"WHATSAPP_WEBHOOK_SUBHEADER": "Mit diesem Token wird die Authentizität des Webhook Endpunktes überprüft.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/de/integrations.json b/app/javascript/dashboard/i18n/locale/de/integrations.json
index 0c8ba30e0..fb78159f9 100644
--- a/app/javascript/dashboard/i18n/locale/de/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/de/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Löschen"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Titel",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Beschreibung",
+ "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": "Erstellen",
+ "CANCEL": "Stornieren"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Stornieren",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/el/conversation.json b/app/javascript/dashboard/i18n/locale/el/conversation.json
index 849aa52f1..c68a26a96 100644
--- a/app/javascript/dashboard/i18n/locale/el/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/el/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Φόρτωση πρακτόρων...",
"ASSIGN_TEAM": "Ανάθεση ομάδας",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Η συνομιλία με αριθμό {conversationId} ανατέθηκε στον \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/el/helpCenter.json b/app/javascript/dashboard/i18n/locale/el/helpCenter.json
index 3c9d4f7bc..bd37b6662 100644
--- a/app/javascript/dashboard/i18n/locale/el/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/el/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Η πύλη διαγράφηκε επιτυχώς",
"DELETE_ERROR": "Σφάλμα κατά τη διαγραφή της πύλης"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Προσαρμοσμένο Domain",
"LABEL": "Προσαρμοσμένο Domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Προσαρμοσμένος τομέας πύλης",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Επεξεργασία",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Ζωντανά",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Προσαρμοσμένο Domain",
"PLACEHOLDER": "Προσαρμοσμένος τομέας πύλης",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Αποστολή"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/el/inbox.json b/app/javascript/dashboard/i18n/locale/el/inbox.json
index fe8a8e319..e64a1429d 100644
--- a/app/javascript/dashboard/i18n/locale/el/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/el/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json
index 686b788f8..f53c3c19f 100644
--- a/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Ενημέρωση",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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": "Token Επαλήθευσης Webhook",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/el/integrations.json b/app/javascript/dashboard/i18n/locale/el/integrations.json
index 5df1f34d2..599d1c7e2 100644
--- a/app/javascript/dashboard/i18n/locale/el/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/el/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Διαγραφή"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/es/conversation.json b/app/javascript/dashboard/i18n/locale/es/conversation.json
index 51cd0a1e0..851f237bb 100644
--- a/app/javascript/dashboard/i18n/locale/es/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/es/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Cargando agentes...",
"ASSIGN_TEAM": "Asignar equipo",
"DELETE": "Eliminar conversación",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "ID de conversación {conversationId} asignado a \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/es/helpCenter.json b/app/javascript/dashboard/i18n/locale/es/helpCenter.json
index 398b4c944..21aa6df53 100644
--- a/app/javascript/dashboard/i18n/locale/es/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/es/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal eliminado correctamente",
"DELETE_ERROR": "Error al eliminar el portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Dominio personalizado",
"LABEL": "Dominio personalizado:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Dominio personalizado del portal",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Editar",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "En vivo",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Dominio personalizado",
"PLACEHOLDER": "Dominio personalizado del portal",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Enviar"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/es/inbox.json b/app/javascript/dashboard/i18n/locale/es/inbox.json
index d76636c92..8f0937a9c 100644
--- a/app/javascript/dashboard/i18n/locale/es/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/es/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Todas las notificaciones marcadas como leídas",
"DELETE_ALL": "Todas las notificaciones eliminadas",
"DELETE_ALL_READ": "Todas las notificaciones leídas eliminadas"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json
index 848b7f3d3..750fa3a9b 100644
--- a/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Actualizar Clave API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Introduzca aquí la nueva Clave API",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Actualizar",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Conectar",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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": "Token de verificación del Webhook",
"WHATSAPP_WEBHOOK_SUBHEADER": "Este token se utiliza para verificar la autenticidad del extremo del webhook.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/es/integrations.json b/app/javascript/dashboard/i18n/locale/es/integrations.json
index 15cb41f33..fbf4754b8 100644
--- a/app/javascript/dashboard/i18n/locale/es/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/es/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Buscar..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Buscar..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Eliminar"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Título",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Descripción",
+ "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": "Crear",
+ "CANCEL": "Cancelar"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancelar",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Buscar..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/fa/conversation.json b/app/javascript/dashboard/i18n/locale/fa/conversation.json
index 07f540d3d..bc1afdefb 100644
--- a/app/javascript/dashboard/i18n/locale/fa/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/fa/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "بارگذاری اپراتور ها...",
"ASSIGN_TEAM": "تیم را تعیین کنید",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "شناسه مکالمه {conversationId} به \"{agentName}\" اختصاص داده شد",
diff --git a/app/javascript/dashboard/i18n/locale/fa/helpCenter.json b/app/javascript/dashboard/i18n/locale/fa/helpCenter.json
index d6159e581..a2a341d25 100644
--- a/app/javascript/dashboard/i18n/locale/fa/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/fa/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "پورتال با موفقیت حذف شد",
"DELETE_ERROR": "خطا هنگام حذف پورتال"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "دامنه سفارشی",
"LABEL": "دامنه سفارشی:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "دامنه سفارشی پورتال",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "ویرایش",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "زنده",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "دامنه سفارشی",
"PLACEHOLDER": "دامنه سفارشی پورتال",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "ارسال"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/fa/inbox.json b/app/javascript/dashboard/i18n/locale/fa/inbox.json
index b8dea80bf..298efae8c 100644
--- a/app/javascript/dashboard/i18n/locale/fa/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/fa/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "ثبت همه اعلان ها به عنوان خوانده شده",
"DELETE_ALL": "حذف همه اعلان ها",
"DELETE_ALL_READ": "حذف همه اعلان های خوانده شده"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json
index 356766d0a..c8070216e 100644
--- a/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "کلید API را به روز کنید",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "کلید API جدید را در اینجا وارد کنید",
"WHATSAPP_SECTION_UPDATE_BUTTON": "اعمال شود",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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",
diff --git a/app/javascript/dashboard/i18n/locale/fa/integrations.json b/app/javascript/dashboard/i18n/locale/fa/integrations.json
index 2f2372518..15e4417d5 100644
--- a/app/javascript/dashboard/i18n/locale/fa/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/fa/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "حذف"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/fi/conversation.json b/app/javascript/dashboard/i18n/locale/fi/conversation.json
index cf82a8ed5..0d18260ef 100644
--- a/app/javascript/dashboard/i18n/locale/fi/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/fi/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/fi/helpCenter.json b/app/javascript/dashboard/i18n/locale/fi/helpCenter.json
index 2d4b4a482..14625b7d5 100644
--- a/app/javascript/dashboard/i18n/locale/fi/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/fi/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Muokkaa",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Lähetä"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/fi/inbox.json b/app/javascript/dashboard/i18n/locale/fi/inbox.json
index 223dd0bb5..468b2382b 100644
--- a/app/javascript/dashboard/i18n/locale/fi/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/fi/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json
index e12f895f4..d14c63f1b 100644
--- a/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Päivitä",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Yhdistä",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/fi/integrations.json b/app/javascript/dashboard/i18n/locale/fi/integrations.json
index 2ee266cdf..1374fba42 100644
--- a/app/javascript/dashboard/i18n/locale/fi/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/fi/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Poista"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Kuvaus",
+ "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": "Luo",
+ "CANCEL": "Peruuta"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Peruuta",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/fr/conversation.json b/app/javascript/dashboard/i18n/locale/fr/conversation.json
index 73f0ba7e6..e9057cb6e 100644
--- a/app/javascript/dashboard/i18n/locale/fr/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/fr/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Chargement des agents...",
"ASSIGN_TEAM": "Assigner une équipe",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assignée à \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/fr/helpCenter.json b/app/javascript/dashboard/i18n/locale/fr/helpCenter.json
index af3ba4da2..3a5279043 100644
--- a/app/javascript/dashboard/i18n/locale/fr/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/fr/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Le portail a été supprimé",
"DELETE_ERROR": "Erreur durant la suppression du portail"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Domaine personnalisé",
"LABEL": "Domaine personnalisé:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portail de domaine personnalisé",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Modifier",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "En direct",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Domaine personnalisé",
"PLACEHOLDER": "Portail de domaine personnalisé",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Envoyer"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/fr/inbox.json b/app/javascript/dashboard/i18n/locale/fr/inbox.json
index 050ce5c98..9fead5e43 100644
--- a/app/javascript/dashboard/i18n/locale/fr/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/fr/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Toutes les notifications sont marquées comme lues",
"DELETE_ALL": "Toutes les notifications sont supprimées",
"DELETE_ALL_READ": "Toutes les notifications lues ont été supprimées"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json
index f5c21e5c5..85bec42c6 100644
--- a/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Mettre à jour la clé API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Entrez la nouvelle clé API ici",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Mettre à jour",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connecter",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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": "Jeton de vérification du Webhook",
"WHATSAPP_WEBHOOK_SUBHEADER": "Ce jeton est utilisé pour vérifier l'authenticité du point de terminaison du webhook.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/fr/integrations.json b/app/javascript/dashboard/i18n/locale/fr/integrations.json
index 4dcb8c975..0ace6565e 100644
--- a/app/javascript/dashboard/i18n/locale/fr/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/fr/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Supprimer"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Titre",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Créer",
+ "CANCEL": "Annuler"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Annuler",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/he/conversation.json b/app/javascript/dashboard/i18n/locale/he/conversation.json
index 4f68f873b..866086a59 100644
--- a/app/javascript/dashboard/i18n/locale/he/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/he/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "טוען סוכנים...",
"ASSIGN_TEAM": "שייך צוות",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "מזהה שיחה {conversationId} קושר ל {agentName}",
diff --git a/app/javascript/dashboard/i18n/locale/he/helpCenter.json b/app/javascript/dashboard/i18n/locale/he/helpCenter.json
index c9edd76d5..d1dd4c38a 100644
--- a/app/javascript/dashboard/i18n/locale/he/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/he/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "הפורטל נמחק בהצלחה",
"DELETE_ERROR": "שגיאה בעת מחיקת הפורטל"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "תחום מותאם אישית",
"LABEL": "תחום מותאם אישית:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "דומיין מותאם אישית של פורטל",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "ערוך",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "לחיות",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "תחום מותאם אישית",
"PLACEHOLDER": "דומיין מותאם אישית של פורטל",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "שלח"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/he/inbox.json b/app/javascript/dashboard/i18n/locale/he/inbox.json
index ab0037e3e..706b00925 100644
--- a/app/javascript/dashboard/i18n/locale/he/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/he/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json
index 12724f7cc..7f4785f75 100644
--- a/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "עדכון מפתח API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "הזן את מפתח ה-API החדש כאן",
"WHATSAPP_SECTION_UPDATE_BUTTON": "עדכן",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/he/integrations.json b/app/javascript/dashboard/i18n/locale/he/integrations.json
index 4a5c13a48..16058633b 100644
--- a/app/javascript/dashboard/i18n/locale/he/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/he/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "מחק"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/hi/campaign.json b/app/javascript/dashboard/i18n/locale/hi/campaign.json
index f029557e1..2582d37b2 100644
--- a/app/javascript/dashboard/i18n/locale/hi/campaign.json
+++ b/app/javascript/dashboard/i18n/locale/hi/campaign.json
@@ -138,11 +138,11 @@
}
},
"WHATSAPP": {
- "HEADER_TITLE": "WhatsApp campaigns",
+ "HEADER_TITLE": "WhatsApp अभियान",
"NEW_CAMPAIGN": "Create campaign",
"EMPTY_STATE": {
- "TITLE": "No WhatsApp campaigns are available",
- "SUBTITLE": "Launch a WhatsApp campaign to reach your customers directly. Send offers or make announcements with ease. Click 'Create campaign' to get started."
+ "TITLE": "कोई WhatsApp अभियान उपलब्ध नहीं है",
+ "SUBTITLE": "अपने ग्राहकों तक सीधे पहुँचने के लिए एक WhatsApp अभियान शुरू करें। आसानी से ऑफ़र भेजें या घोषणाएँ करें। शुरू करने के लिए 'अभियान बनाएँ' पर क्लिक करें।"
},
"CARD": {
"STATUS": {
@@ -155,7 +155,7 @@
}
},
"CREATE": {
- "TITLE": "Create WhatsApp campaign",
+ "TITLE": "WhatsApp अभियान बनाएं",
"CANCEL_BUTTON_TEXT": "Cancel",
"CREATE_BUTTON_TEXT": "Create",
"FORM": {
@@ -171,14 +171,14 @@
},
"TEMPLATE": {
"LABEL": "WhatsApp Template",
- "PLACEHOLDER": "Select a template",
- "INFO": "Select a template to use for this campaign.",
- "ERROR": "Template is required",
+ "PLACEHOLDER": "एक टेम्पलेट चुनें",
+ "INFO": "इस अभियान मे उपयोग करने के लिए टेम्पलेट चुनिए।",
+ "ERROR": "टेम्पलेट की अव्यश्कता है",
"PREVIEW_TITLE": "Process {templateName}",
"LANGUAGE": "Language",
"CATEGORY": "Category",
"VARIABLES_LABEL": "Variables",
- "VARIABLE_PLACEHOLDER": "Enter value for {variable}"
+ "VARIABLE_PLACEHOLDER": "{variable} के लिए मूल्य दर्ज करें"
},
"AUDIENCE": {
"LABEL": "Audience",
@@ -195,7 +195,7 @@
"CANCEL": "Cancel"
},
"API": {
- "SUCCESS_MESSAGE": "WhatsApp campaign created successfully",
+ "SUCCESS_MESSAGE": "WhatsApp अभियान सफलतापूर्वक बनाया गया",
"ERROR_MESSAGE": "There was an error. Please try again."
}
}
diff --git a/app/javascript/dashboard/i18n/locale/hi/conversation.json b/app/javascript/dashboard/i18n/locale/hi/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/hi/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/hi/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/hi/generalSettings.json b/app/javascript/dashboard/i18n/locale/hi/generalSettings.json
index d924bffbd..5f278fef9 100644
--- a/app/javascript/dashboard/i18n/locale/hi/generalSettings.json
+++ b/app/javascript/dashboard/i18n/locale/hi/generalSettings.json
@@ -3,8 +3,8 @@
"LIMIT_MESSAGES": {
"CONVERSATION": "You have exceeded the conversation limit. Hacker plan allows only 500 conversations.",
"INBOXES": "You have exceeded the inbox limit. Hacker plan only supports website live-chat. Additional inboxes like email, WhatsApp etc. require a paid plan.",
- "AGENTS": "You have exceeded the agent limit. Your plan only allows {allowedAgents} agents.",
- "NON_ADMIN": "Please contact your administrator to upgrade the plan and continue using all features."
+ "AGENTS": "आप एजेंट लिमिट पार कर चुके है।आपका प्लान {allowedAgents} एजेंट्स की अनुमति देता है।",
+ "NON_ADMIN": "कृपया प्लान को अपग्रेड करने और सभी सुविधाओं का उपयोग जारी रखने के लिए अपने व्यवस्थापक से संपर्क करें।"
},
"TITLE": "Account settings",
"SUBMIT": "Update settings",
@@ -15,12 +15,12 @@
"SUCCESS": "Successfully updated account settings"
},
"ACCOUNT_DELETE_SECTION": {
- "TITLE": "Delete your Account",
- "NOTE": "Once you delete your account, all your data will be deleted.",
- "BUTTON_TEXT": "Delete Your Account",
+ "TITLE": "अपना खाता हटाएं",
+ "NOTE": "एक बार जब आप अपना खाता हटा देंगे, तो आपका सारा डेटा हटा दिया जाएगा।",
+ "BUTTON_TEXT": "अपना खाता हटाएं",
"CONFIRM": {
- "TITLE": "Delete Account",
- "MESSAGE": "Deleting your Account is irreversible. Enter your account name below to confirm you want to permanently delete it.",
+ "TITLE": "खाता हटाएं",
+ "MESSAGE": "आपका खाता हटाना अपरिवर्तनीय है। नीचे अपने खाते का नाम दर्ज करे ये पुष्टि करने के लिए की आप इसे निरंतर रूप से ख़त्म करना चाहते है।",
"BUTTON_TEXT": "Delete",
"DISMISS": "Cancel",
"PLACE_HOLDER": "Please type {accountName} to confirm"
diff --git a/app/javascript/dashboard/i18n/locale/hi/helpCenter.json b/app/javascript/dashboard/i18n/locale/hi/helpCenter.json
index 9c6ad374c..4cb6569fe 100644
--- a/app/javascript/dashboard/i18n/locale/hi/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/hi/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/hi/inbox.json b/app/javascript/dashboard/i18n/locale/hi/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/hi/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/hi/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json
index 57d6e2638..a19105738 100644
--- a/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/hi/integrations.json b/app/javascript/dashboard/i18n/locale/hi/integrations.json
index 549060ea1..bbb1c6662 100644
--- a/app/javascript/dashboard/i18n/locale/hi/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/hi/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/hr/conversation.json b/app/javascript/dashboard/i18n/locale/hr/conversation.json
index 755b22c5a..95bbd6f14 100644
--- a/app/javascript/dashboard/i18n/locale/hr/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/hr/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/hr/helpCenter.json b/app/javascript/dashboard/i18n/locale/hr/helpCenter.json
index 24a78281c..57d6fd250 100644
--- a/app/javascript/dashboard/i18n/locale/hr/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/hr/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Uredi",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/hr/inbox.json b/app/javascript/dashboard/i18n/locale/hr/inbox.json
index 345a4cf85..32943b55e 100644
--- a/app/javascript/dashboard/i18n/locale/hr/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/hr/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json
index 09e1f475e..192ee849a 100644
--- a/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "Ovaj token se koristi za verifikaciju autentičnosti webhook endpoint-a.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/hr/integrations.json b/app/javascript/dashboard/i18n/locale/hr/integrations.json
index 62fc3ae98..63f5370c1 100644
--- a/app/javascript/dashboard/i18n/locale/hr/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/hr/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Izbriši"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Odustani"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Odustani",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/hu/conversation.json b/app/javascript/dashboard/i18n/locale/hu/conversation.json
index 31137350e..21336a73e 100644
--- a/app/javascript/dashboard/i18n/locale/hu/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/hu/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Ügynökök betöltése...",
"ASSIGN_TEAM": "Csapat hozzárendelése",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/hu/helpCenter.json b/app/javascript/dashboard/i18n/locale/hu/helpCenter.json
index 65b5155e4..d1a3d130f 100644
--- a/app/javascript/dashboard/i18n/locale/hu/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/hu/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portál sikeresen törölve",
"DELETE_ERROR": "Hiba a portál törlése közben"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Egyedi felhasználó",
"LABEL": "Egyedi felhasználó:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portál egyedi domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Szerkesztés",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Élő",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Egyedi felhasználó",
"PLACEHOLDER": "Portál egyedi domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Elküldés"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/hu/inbox.json b/app/javascript/dashboard/i18n/locale/hu/inbox.json
index 59d2a9801..af065fda8 100644
--- a/app/javascript/dashboard/i18n/locale/hu/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/hu/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json
index 76d49274d..b348a6903 100644
--- a/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "API-kulcs frissítése",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Add meg az új API kulcsot",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Frissítés",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Kapcsolódás",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "Ez a token a webhook-végpont hitelességének ellenőrzésére szolgál.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/hu/integrations.json b/app/javascript/dashboard/i18n/locale/hu/integrations.json
index 8d9c9885b..00196e987 100644
--- a/app/javascript/dashboard/i18n/locale/hu/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/hu/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Törlés"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Cím",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Leírás",
+ "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": "Létrehozás",
+ "CANCEL": "Mégse"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Mégse",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/hy/conversation.json b/app/javascript/dashboard/i18n/locale/hy/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/hy/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/hy/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/hy/helpCenter.json b/app/javascript/dashboard/i18n/locale/hy/helpCenter.json
index f437b83d9..bd7fb986a 100644
--- a/app/javascript/dashboard/i18n/locale/hy/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/hy/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/hy/inbox.json b/app/javascript/dashboard/i18n/locale/hy/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/hy/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/hy/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json
index 09d6ca675..585e5c510 100644
--- a/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/hy/integrations.json b/app/javascript/dashboard/i18n/locale/hy/integrations.json
index 722f0012f..68ce25b15 100644
--- a/app/javascript/dashboard/i18n/locale/hy/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/hy/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/id/conversation.json b/app/javascript/dashboard/i18n/locale/id/conversation.json
index b8be52a53..3b5b1eaa4 100644
--- a/app/javascript/dashboard/i18n/locale/id/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/id/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Sedang memuat agen...",
"ASSIGN_TEAM": "Tugaskan tim",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Id percakapan {conversationId} ditugaskan ke \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/id/helpCenter.json b/app/javascript/dashboard/i18n/locale/id/helpCenter.json
index e5e37fc61..d9357c6d9 100644
--- a/app/javascript/dashboard/i18n/locale/id/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/id/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal berhasil dihapus",
"DELETE_ERROR": "Terjadi kesalahan saat menghapus portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Domain kustom",
"LABEL": "Domain kustom:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Domain kustom portal",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Langsung",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Domain kustom",
"PLACEHOLDER": "Domain kustom portal",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Kirim"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/id/inbox.json b/app/javascript/dashboard/i18n/locale/id/inbox.json
index ffca005c0..3ff74b9da 100644
--- a/app/javascript/dashboard/i18n/locale/id/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/id/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json
index d0c631673..2c0f9ba33 100644
--- a/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Perbarui Kunci API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Masukkan Kunci API baru di sini",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Perbarui",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Sambungkan",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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": "Token Verifikasi Webhook",
"WHATSAPP_WEBHOOK_SUBHEADER": "Token ini digunakan untuk memverifikasi keaslian titik akhir webhook.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/id/integrations.json b/app/javascript/dashboard/i18n/locale/id/integrations.json
index 04ac6efae..116557224 100644
--- a/app/javascript/dashboard/i18n/locale/id/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/id/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Hapus"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Judul",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Deskripsi",
+ "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": "Buat",
+ "CANCEL": "Batalkan"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Batalkan",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/is/conversation.json b/app/javascript/dashboard/i18n/locale/is/conversation.json
index b6e07c663..ba6ff5c9d 100644
--- a/app/javascript/dashboard/i18n/locale/is/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/is/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Samtalsauðkenni {conversationId} úthlutað á „{agentName}“",
diff --git a/app/javascript/dashboard/i18n/locale/is/helpCenter.json b/app/javascript/dashboard/i18n/locale/is/helpCenter.json
index 906df6021..1a04a6c9c 100644
--- a/app/javascript/dashboard/i18n/locale/is/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/is/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Breyta",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/is/inbox.json b/app/javascript/dashboard/i18n/locale/is/inbox.json
index 0ebfa8f99..116bb3c31 100644
--- a/app/javascript/dashboard/i18n/locale/is/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/is/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json
index 4e001a8b1..6521bbc3e 100644
--- a/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Uppfæra",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/is/integrations.json b/app/javascript/dashboard/i18n/locale/is/integrations.json
index 364d1db32..d0df69b2d 100644
--- a/app/javascript/dashboard/i18n/locale/is/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/is/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Eyða"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Hætta við"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Hætta við",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/it/contact.json b/app/javascript/dashboard/i18n/locale/it/contact.json
index 4336852b7..7acdb3426 100644
--- a/app/javascript/dashboard/i18n/locale/it/contact.json
+++ b/app/javascript/dashboard/i18n/locale/it/contact.json
@@ -285,7 +285,7 @@
"HEADER": {
"TITLE": "Contatti",
"SEARCH_TITLE": "Search contacts",
- "ACTIVE_TITLE": "Active contacts",
+ "ACTIVE_TITLE": "Contatti attivi",
"SEARCH_PLACEHOLDER": "Search...",
"MESSAGE_BUTTON": "Messaggio",
"SEND_MESSAGE": "Invia messaggio",
@@ -460,8 +460,8 @@
}
},
"DELETE_CONTACT": {
- "MESSAGE": "This action is permanent and irreversible.",
- "BUTTON": "Delete now"
+ "MESSAGE": "Questa azione è permanente e irreversibile.",
+ "BUTTON": "Elimina ora"
}
},
"DETAILS": {
@@ -471,7 +471,7 @@
"DELETE_CONTACT": "Elimina contatto",
"DELETE_DIALOG": {
"TITLE": "Conferma eliminazione",
- "DESCRIPTION": "Are you sure you want to delete this contact?",
+ "DESCRIPTION": "Sei sicuro di voler eliminare questo contatto?",
"CONFIRM": "Sì, elimina",
"API": {
"SUCCESS_MESSAGE": "Contatto eliminato con successo",
@@ -550,8 +550,8 @@
"YOU": "You",
"SAVE": "Save note",
"EXPAND": "Expand",
- "COLLAPSE": "Collapse",
- "NO_NOTES": "No notes, you can add notes from the contact details page.",
+ "COLLAPSE": "Comprimi",
+ "NO_NOTES": "Nessuna nota, puoi aggiungere note dalla pagina dei dettagli del contatto.",
"EMPTY_STATE": "There are no notes associated to this contact. You can add a note by typing in the box above."
}
},
@@ -561,7 +561,7 @@
"BUTTON_LABEL": "Add contact",
"SEARCH_EMPTY_STATE_TITLE": "Nessun contatto corrisponde alla tua ricerca 🔍",
"LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋",
- "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙"
+ "ACTIVE_EMPTY_STATE_TITLE": "Nessun contatto attivo al momento 🌙"
}
},
"COMPOSE_NEW_CONVERSATION": {
diff --git a/app/javascript/dashboard/i18n/locale/it/conversation.json b/app/javascript/dashboard/i18n/locale/it/conversation.json
index f5dc23388..5cf0c76e1 100644
--- a/app/javascript/dashboard/i18n/locale/it/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/it/conversation.json
@@ -32,12 +32,12 @@
"LOADING_CONVERSATIONS": "Caricamento conversazioni",
"CANNOT_REPLY": "Non puoi rispondere a causa di",
"24_HOURS_WINDOW": "Restrizione della finestra del messaggio a 24 ore",
- "API_HOURS_WINDOW": "You can only reply to this conversation within {hours} hours",
+ "API_HOURS_WINDOW": "Puoi rispondere a questa conversazione solo entro {hours} ore",
"NOT_ASSIGNED_TO_YOU": "Questa conversazione non è assegnata. Vuoi assegnare questa conversazione a te stesso?",
"ASSIGN_TO_ME": "Assegna a me",
"TWILIO_WHATSAPP_CAN_REPLY": "È possibile rispondere a questa conversazione solo utilizzando un messaggio modello a causa di",
"TWILIO_WHATSAPP_24_HOURS_WINDOW": "Restrizione della finestra del messaggio a 24 ore",
- "OLD_INSTAGRAM_INBOX_REPLY_BANNER": "This Instagram account was migrated to the new Instagram channel inbox. All new messages will show up there. You won’t be able to send messages from this conversation anymore.",
+ "OLD_INSTAGRAM_INBOX_REPLY_BANNER": "Questo account Instagram è stato migrato alla nuova casella di posta del canale Instagram. Tutti i nuovi messaggi verranno visualizzati lì. Non sarà più possibile inviare messaggi da questa conversazione.",
"REPLYING_TO": "Stai rispondendo a:",
"REMOVE_SELECTION": "Rimuovi selezione",
"DOWNLOAD": "Scarica",
@@ -70,7 +70,7 @@
"RESOLVE_ACTION": "Risolvi",
"REOPEN_ACTION": "Riapri",
"OPEN_ACTION": "Apri",
- "MORE_ACTIONS": "More actions",
+ "MORE_ACTIONS": "Altre azioni",
"OPEN": "Altro",
"CLOSE": "Chiudi",
"DETAILS": "Dettagli",
@@ -123,8 +123,8 @@
}
},
"DELETE_CONVERSATION": {
- "TITLE": "Delete conversation #{conversationId}",
- "DESCRIPTION": "Are you sure you want to delete this conversation?",
+ "TITLE": "Elimina conversazione #{conversationId}",
+ "DESCRIPTION": "Sei sicuro di voler eliminare questa conversazione?",
"CONFIRM": "Elimina"
},
"CARD_CONTEXT_MENU": {
@@ -143,7 +143,10 @@
"ASSIGN_LABEL": "Assegna etichetta",
"AGENTS_LOADING": "Caricamento agenti...",
"ASSIGN_TEAM": "Assegna team",
- "DELETE": "Delete conversation",
+ "DELETE": "Elimina conversazione",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "ID conversazione {conversationId} assegnato a \"{agentName}\"",
@@ -218,8 +221,8 @@
"ASSIGN_LABEL_SUCCESFUL": "Etichetta assegnata correttamente",
"ASSIGN_LABEL_FAILED": "Assegnazione etichetta non riuscita",
"CHANGE_TEAM": "Team conversazione cambiato",
- "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully",
- "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again",
+ "SUCCESS_DELETE_CONVERSATION": "Conversazione eliminata con successo",
+ "FAIL_DELETE_CONVERSATION": "Impossibile eliminare la conversazione! Riprova",
"FILE_SIZE_LIMIT": "Il file supera il limite di {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB per l'allegato",
"MESSAGE_ERROR": "Impossibile inviare questo messaggio, riprova più tardi",
"SENT_BY": "Inviato da:",
@@ -308,11 +311,11 @@
"CONVERSATION_ACTIONS": "Azioni conversazione",
"CONVERSATION_LABELS": "Etichette conversazione",
"CONVERSATION_INFO": "Informazioni conversazione",
- "CONTACT_NOTES": "Contact Notes",
+ "CONTACT_NOTES": "Note del Contatto",
"CONTACT_ATTRIBUTES": "Attributi contatti",
"PREVIOUS_CONVERSATION": "Conversazioni precedenti",
"MACROS": "Macros",
- "LINEAR_ISSUES": "Linked Linear Issues",
+ "LINEAR_ISSUES": "Collega con issue Linear",
"SHOPIFY_ORDERS": "Shopify Orders"
},
"SHOPIFY": {
diff --git a/app/javascript/dashboard/i18n/locale/it/generalSettings.json b/app/javascript/dashboard/i18n/locale/it/generalSettings.json
index 0ab832438..5ef08b256 100644
--- a/app/javascript/dashboard/i18n/locale/it/generalSettings.json
+++ b/app/javascript/dashboard/i18n/locale/it/generalSettings.json
@@ -1,10 +1,10 @@
{
"GENERAL_SETTINGS": {
"LIMIT_MESSAGES": {
- "CONVERSATION": "You have exceeded the conversation limit. Hacker plan allows only 500 conversations.",
- "INBOXES": "You have exceeded the inbox limit. Hacker plan only supports website live-chat. Additional inboxes like email, WhatsApp etc. require a paid plan.",
- "AGENTS": "You have exceeded the agent limit. Your plan only allows {allowedAgents} agents.",
- "NON_ADMIN": "Please contact your administrator to upgrade the plan and continue using all features."
+ "CONVERSATION": "Hai superato il limite di conversazione. Il piano Hacker consente solo 500 conversazioni.",
+ "INBOXES": "Hai superato il limite della posta in arrivo. Il piano Hacker supporta solo la chat dal vivo del sito web. Ulteriori caselle di posta come e-mail, WhatsApp ecc. richiedono un piano a pagamento.",
+ "AGENTS": "Hai superato il limite dell'agente. Il tuo piano consente solo {allowedAgents} agenti.",
+ "NON_ADMIN": "Contatta l'amministratore per aggiornare il piano e continuare a utilizzare tutte le funzionalità."
},
"TITLE": "Impostazioni account",
"SUBMIT": "Aggiorna le impostazioni",
@@ -15,23 +15,23 @@
"SUCCESS": "Impostazioni account aggiornate con successo"
},
"ACCOUNT_DELETE_SECTION": {
- "TITLE": "Delete your Account",
- "NOTE": "Once you delete your account, all your data will be deleted.",
- "BUTTON_TEXT": "Delete Your Account",
+ "TITLE": "Elimina il tuo account",
+ "NOTE": "Una volta eliminato il tuo account, tutti i tuoi dati verranno eliminati.",
+ "BUTTON_TEXT": "Elimina il tuo account",
"CONFIRM": {
- "TITLE": "Delete Account",
- "MESSAGE": "Deleting your Account is irreversible. Enter your account name below to confirm you want to permanently delete it.",
+ "TITLE": "Elimina account",
+ "MESSAGE": "L'eliminazione del tuo account è irreversibile. Inserisci il nome del tuo account qui sotto per confermare che vuoi eliminarlo in modo permanente.",
"BUTTON_TEXT": "Elimina",
- "DISMISS": "annulla",
+ "DISMISS": "Annulla",
"PLACE_HOLDER": "Digita {accountName} per confermare"
},
- "SUCCESS": "Account marked for deletion",
- "FAILURE": "Could not delete account, try again!",
+ "SUCCESS": "Account contrassegnato per l'eliminazione",
+ "FAILURE": "Impossibile eliminare l'account, riprova!",
"SCHEDULED_DELETION": {
- "TITLE": "Account Scheduled for Deletion",
- "MESSAGE_MANUAL": "This account is scheduled for deletion on {deletionDate}. This was requested by an administrator. You can cancel the deletion before this date.",
- "MESSAGE_INACTIVITY": "This account is scheduled for deletion on {deletionDate} due to account inactivity. You can cancel the deletion before this date.",
- "CLEAR_BUTTON": "Cancel Scheduled Deletion"
+ "TITLE": "Account pianificato per l'eliminazione",
+ "MESSAGE_MANUAL": "Questo account è pianificato per la cancellazione il {deletionDate}. Questo è stato richiesto da un amministratore. Puoi annullare la cancellazione prima di questa data.",
+ "MESSAGE_INACTIVITY": "Questo account è programmato per la cancellazione il {deletionDate} a causa dell'inattività dell'account. Puoi annullare la cancellazione prima di questa data.",
+ "CLEAR_BUTTON": "Annulla eliminazione pianificata"
}
},
"FORM": {
@@ -45,32 +45,32 @@
"NOTE": "Questo ID è richiesto se si sta costruendo un'integrazione basata su API"
},
"AUTO_RESOLVE": {
- "TITLE": "Auto-resolve conversations",
- "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.",
+ "TITLE": "Risoluzione automatica delle conversazioni",
+ "NOTE": "Questa configurazione consente di risolvere automaticamente la conversazione dopo un certo periodo d'inattività.",
"DURATION": {
- "LABEL": "Inactivity duration",
- "HELP": "Time period of inactivity after which conversation is auto-resolved",
+ "LABEL": "Durata inattività",
+ "HELP": "Periodo d'inattività dopo il quale la conversazione è risolta automaticamente",
"PLACEHOLDER": "30",
- "ERROR": "Auto resolve duration should be between 10 minutes and 999 days",
+ "ERROR": "La durata della risoluzione automatica deve essere compresa tra 10 minuti e 999 giorni",
"API": {
- "SUCCESS": "Auto resolve settings updated successfully",
- "ERROR": "Failed to update auto resolve settings"
+ "SUCCESS": "Impostazioni di risoluzione automatica aggiornate con successo",
+ "ERROR": "Impossibile aggiornare le impostazioni di risoluzione automatica"
}
},
"MESSAGE": {
- "LABEL": "Custom auto-resolution message",
- "PLACEHOLDER": "Conversation was marked resolved by system due to 15 days of inactivity",
- "HELP": "Message sent to the customer after conversation is auto-resolved"
+ "LABEL": "Messaggio di risoluzione automatica personalizzato",
+ "PLACEHOLDER": "La conversazione è stata contrassegnata come risolta dal sistema a causa di 15 giorni d'inattività",
+ "HELP": "Messaggio inviato al cliente dopo che la conversazione è stata risolta automaticamente"
},
"PREFERENCES": "Preferenze",
"LABEL": {
- "LABEL": "Add label after auto-resolution",
- "PLACEHOLDER": "Select a label"
+ "LABEL": "Aggiungi etichetta dopo la risoluzione automatica",
+ "PLACEHOLDER": "Seleziona un'etichetta"
},
"IGNORE_WAITING": {
- "LABEL": "Skip conversations waiting for agent’s reply"
+ "LABEL": "Salta le conversazioni in attesa di risposta dell'agente"
},
- "UPDATE_BUTTON": "Save Changes"
+ "UPDATE_BUTTON": "Salva modifiche"
},
"NAME": {
"LABEL": "Nome account",
@@ -93,30 +93,30 @@
"ERROR": ""
},
"AUTO_RESOLVE_IGNORE_WAITING": {
- "LABEL": "Exclude unattended conversations",
- "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply."
+ "LABEL": "Escludi conversazioni non partecipate",
+ "HELP": "Se abilitato, il sistema salterà la risoluzione delle conversazioni che sono ancora in attesa della risposta di un agente."
},
"AUDIO_TRANSCRIPTION": {
- "TITLE": "Transcribe Audio Messages",
- "NOTE": "Automatically transcribe audio messages in conversations. Generate a text transcript whenever an audio message is sent or received, and display it alongside the message.",
+ "TITLE": "Trascrizione Messaggi Audio",
+ "NOTE": "Trascrivere automaticamente i messaggi audio nelle conversazioni. Generare una trascrizione di testo ogni volta che un messaggio audio viene inviato o ricevuto, e visualizzarlo accanto al messaggio.",
"API": {
- "SUCCESS": "Audio transcription setting updated successfully",
- "ERROR": "Failed to update audio transcription setting"
+ "SUCCESS": "Impostazioni di trascrizione audio aggiornate con successo",
+ "ERROR": "Aggiornamento delle impostazioni di trascrizione audio non riuscito"
}
},
"AUTO_RESOLVE_DURATION": {
- "LABEL": "Inactivity duration for resolution",
- "HELP": "Duration after a conversation should auto resolve if there is no activity",
+ "LABEL": "Durata dell'inattività per la risoluzione",
+ "HELP": "Durata dopo la quale una conversazione si dovrebbe risolvere automaticamente se non c'è attività",
"PLACEHOLDER": "30",
- "ERROR": "Auto resolve duration should be between 10 minutes and 999 days",
+ "ERROR": "La durata della risoluzione automatica deve essere compresa tra 10 minuti e 999 giorni",
"API": {
- "SUCCESS": "Auto resolve settings updated successfully",
- "ERROR": "Failed to update auto resolve settings"
+ "SUCCESS": "Impostazioni di risoluzione automatica aggiornate con successo",
+ "ERROR": "Impossibile aggiornare le impostazioni di risoluzione automatica"
},
"UPDATE_BUTTON": "Aggiorna",
- "MESSAGE_LABEL": "Custom resolution message",
- "MESSAGE_PLACEHOLDER": "Conversation was marked resolved by system due to 15 days of inactivity",
- "MESSAGE_HELP": "This message is sent to the customer when a conversation is automatically resolved by the system due to inactivity."
+ "MESSAGE_LABEL": "Messaggio di risoluzione personalizzato",
+ "MESSAGE_PLACEHOLDER": "La conversazione è stata contrassegnata come risolta dal sistema a causa di 15 giorni d'inattività",
+ "MESSAGE_HELP": "Questo messaggio viene inviato al cliente quando una conversazione viene risolta automaticamente dal sistema a causa di inattività."
},
"FEATURES": {
"INBOUND_EMAIL_ENABLED": "La continuità della conversazione con le email è abilitata per il tuo account.",
@@ -126,7 +126,7 @@
"UPDATE_CHATWOOT": "È disponibile un aggiornamento {latestChatwootVersion} per Chatwoot. Aggiorna la tua istanza.",
"LEARN_MORE": "Scopri di più",
"PAYMENT_PENDING": "Your payment is pending. Please update your payment information to continue using Chatwoot",
- "UPGRADE": "Upgrade to continue using Chatwoot",
+ "UPGRADE": "Aggiorna per continuare a usare Chatwoot",
"LIMITS_UPGRADE": "Your account has exceeded the usage limits, please upgrade your plan to continue using Chatwoot",
"OPEN_BILLING": "Open billing"
},
@@ -134,7 +134,7 @@
"MULTISELECT": {
"ENTER_TO_SELECT": "Premi Invio per selezionare",
"ENTER_TO_REMOVE": "Premi Invio per rimuovere",
- "NO_OPTIONS": "List is empty",
+ "NO_OPTIONS": "L'elenco è vuoto",
"SELECT_ONE": "Selezionane uno",
"SELECT": "Select"
}
diff --git a/app/javascript/dashboard/i18n/locale/it/helpCenter.json b/app/javascript/dashboard/i18n/locale/it/helpCenter.json
index b6b3ff5f8..f62a1cad5 100644
--- a/app/javascript/dashboard/i18n/locale/it/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/it/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portale eliminato con successo",
"DELETE_ERROR": "Errore durante l'eliminazione del portale"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Dominio personalizzato",
"LABEL": "Dominio personalizzato:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Dominio personalizzato del portale",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Modifica",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Dominio personalizzato",
"PLACEHOLDER": "Dominio personalizzato del portale",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Invia"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/it/inbox.json b/app/javascript/dashboard/i18n/locale/it/inbox.json
index 2ed1b704a..5e570ff15 100644
--- a/app/javascript/dashboard/i18n/locale/it/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/it/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Caricamento del Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json
index 6d075169e..3cf0220c2 100644
--- a/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json
@@ -47,13 +47,13 @@
"CREATE_INBOX": "Crea casella"
},
"INSTAGRAM": {
- "CONTINUE_WITH_INSTAGRAM": "Continue with Instagram",
- "CONNECT_YOUR_INSTAGRAM_PROFILE": "Connect your Instagram Profile",
- "HELP": "To add your Instagram profile as a channel, you need to authenticate your Instagram Profile by clicking on 'Continue with Instagram' ",
- "ERROR_MESSAGE": "There was an error connecting to Instagram, please try again",
- "ERROR_AUTH": "There was an error connecting to Instagram, please try again",
- "NEW_INBOX_SUGGESTION": "This Instagram account was previously linked to a different inbox and has now been migrated here. All new messages will appear here. The old inbox will no longer be able to send or receive messages for this account.",
- "DUPLICATE_INBOX_BANNER": "This Instagram account was migrated to the new Instagram channel inbox. You won’t be able to send/receive Instagram messages from this inbox anymore."
+ "CONTINUE_WITH_INSTAGRAM": "Continua con Instagram",
+ "CONNECT_YOUR_INSTAGRAM_PROFILE": "Collega il tuo profilo Instagram",
+ "HELP": "Per aggiungere il tuo profilo Instagram come canale, devi autenticare il tuo profilo Instagram cliccando su 'Continua con Instagram' ",
+ "ERROR_MESSAGE": "Si è verificato un errore nella connessione a Instagram, riprova",
+ "ERROR_AUTH": "Si è verificato un errore nella connessione a Instagram, riprova",
+ "NEW_INBOX_SUGGESTION": "Questo account Instagram era precedentemente collegato a una casella di posta diversa ed è stato ora migrato qui. Tutti i nuovi messaggi appariranno qui. La vecchia casella di posta non sarà più in grado d'inviare o ricevere messaggi per questo account.",
+ "DUPLICATE_INBOX_BANNER": "Questo account Instagram è stato migrato alla nuova posta in arrivo del canale Instagram. Non sarai più in grado di inviare/ricevere messaggi Instagram da questa posta in arrivo."
},
"TWITTER": {
"HELP": "Per aggiungere il tuo profilo Twitter come canale, devi autenticare il tuo profilo Twitter cliccando su 'Accedi con Twitter' ",
@@ -225,13 +225,13 @@
"WHATSAPP_EMBEDDED": "WhatsApp Business",
"TWILIO": "Twilio",
"WHATSAPP_CLOUD": "WhatsApp Cloud",
- "WHATSAPP_CLOUD_DESC": "Quick setup through Meta",
- "TWILIO_DESC": "Connect via Twilio credentials",
+ "WHATSAPP_CLOUD_DESC": "Configurazione rapida tramite Meta",
+ "TWILIO_DESC": "Connetti tramite credenziali Twilio",
"360_DIALOG": "360Dialog"
},
"SELECT_PROVIDER": {
- "TITLE": "Select your API provider",
- "DESCRIPTION": "Choose your WhatsApp provider. You can connect directly through Meta which requires no setup, or connect through Twilio using your account credentials."
+ "TITLE": "Seleziona il tuo API provider",
+ "DESCRIPTION": "Scegli il tuo provider WhatsApp. Puoi connetterti direttamente tramite Meta che non richiede alcuna configurazione o connetterti tramite Twilio utilizzando le credenziali del tuo account."
},
"INBOX_NAME": {
"LABEL": "Nome casella",
@@ -272,59 +272,64 @@
},
"SUBMIT_BUTTON": "Crea un canale WhatsApp",
"EMBEDDED_SIGNUP": {
- "TITLE": "Quick Setup with Meta",
- "DESC": "You will be redirected to Meta to log into your WhatsApp Business account. Having admin access will help make the setup smooth and easy.",
+ "TITLE": "Configurazione rapida con Meta",
+ "DESC": "Sarai reindirizzato a Meta per accedere al tuo account WhatsApp Business. Avere accesso amministratore aiuterà a rendere la configurazione semplice e facile.",
"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"
+ "TITLE": "Vantaggi della registrazione integrata:",
+ "EASY_SETUP": "Nessuna configurazione manuale richiesta",
+ "SECURE_AUTH": "Autenticazione sicura basata su OAuth",
+ "AUTO_CONFIG": "Configurazione automatica del webhook e del numero di telefono"
},
- "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": "Loading Facebook SDK...",
- "CANCELLED": "WhatsApp Signup was cancelled",
- "SUCCESS_TITLE": "WhatsApp Business Account Connected!",
- "WAITING_FOR_AUTH": "Waiting for authentication...",
- "INVALID_BUSINESS_DATA": "Invalid business data received from Facebook. Please try again.",
- "SIGNUP_ERROR": "Signup error occurred",
- "AUTH_NOT_COMPLETED": "Authentication not completed. Please restart the process.",
- "SUCCESS_FALLBACK": "WhatsApp Business Account has been successfully configured"
+ "LEARN_MORE": {
+ "TEXT": "To learn more about integrated signup, pricing, and limitations, visit",
+ "LINK_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
+ "SUBMIT_BUTTON": "Connetti con WhatsApp Business",
+ "AUTH_PROCESSING": "Autenticazione con Meta",
+ "WAITING_FOR_BUSINESS_INFO": "Completa la configurazione aziendale nella finestra Meta...",
+ "PROCESSING": "Configurazione del tuo account WhatsApp Business",
+ "LOADING_SDK": "Caricamento del Facebook SDK...",
+ "CANCELLED": "Registrazione WhatsApp annullata",
+ "SUCCESS_TITLE": "Account WhatsApp Business connesso!",
+ "WAITING_FOR_AUTH": "In attesa dell'autenticazione...",
+ "INVALID_BUSINESS_DATA": "Dati aziendali non validi ricevuti da Facebook. Riprova.",
+ "SIGNUP_ERROR": "Errore di registrazione",
+ "AUTH_NOT_COMPLETED": "Autenticazione non completata. Riavvia il processo.",
+ "SUCCESS_FALLBACK": "Account WhatsApp Business è stato configurato con successo"
},
"API": {
"ERROR_MESSAGE": "Non siamo stati in grado di salvare il canale WhatsApp"
}
},
"VOICE": {
- "TITLE": "Voice Channel",
- "DESC": "Integrate Twilio Voice and start supporting your customers via phone calls.",
+ "TITLE": "Canale Vocale",
+ "DESC": "Integra Twilio Voice e inizia a supportare i tuoi clienti tramite telefonate.",
"PHONE_NUMBER": {
"LABEL": "Numero di telefono",
- "PLACEHOLDER": "Enter your phone number (e.g. +1234567890)",
- "ERROR": "Please provide a valid phone number in E.164 format (e.g. +1234567890)"
+ "PLACEHOLDER": "Inserisci il tuo numero di telefono (es. +1234567890)",
+ "ERROR": "Fornisci un numero di telefono valido in formato E.164 (ad es. +1234567890)"
},
"TWILIO": {
"ACCOUNT_SID": {
"LABEL": "SID dell'account",
- "PLACEHOLDER": "Enter your Twilio Account SID",
- "REQUIRED": "Account SID is required"
+ "PLACEHOLDER": "Inserisci il tuo Account SID Twilio",
+ "REQUIRED": "Account SID richiesto"
},
"AUTH_TOKEN": {
"LABEL": "Token di autenticazione",
- "PLACEHOLDER": "Enter your Twilio Auth Token",
- "REQUIRED": "Auth Token is required"
+ "PLACEHOLDER": "Inserisci il tuo Auth Token Twilio",
+ "REQUIRED": "Auth Token richiesto"
},
"API_KEY_SID": {
"LABEL": "API Key SID",
- "PLACEHOLDER": "Enter your Twilio API Key SID",
- "REQUIRED": "API Key SID is required"
+ "PLACEHOLDER": "Inserisci il tuo SID API Twilio",
+ "REQUIRED": "API Key SID richiesto"
},
"API_KEY_SECRET": {
"LABEL": "API Key Secret",
- "PLACEHOLDER": "Enter your Twilio API Key Secret",
- "REQUIRED": "API Key Secret is required"
+ "PLACEHOLDER": "Inserisci il tuo API Key Secret Twilio",
+ "REQUIRED": "API Key Secret richiesto"
},
"TWIML_APP_SID": {
"LABEL": "TwiML App SID",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Aggiorna",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connetti",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/it/integrations.json b/app/javascript/dashboard/i18n/locale/it/integrations.json
index 7fc511642..0697ac873 100644
--- a/app/javascript/dashboard/i18n/locale/it/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/it/integrations.json
@@ -318,7 +318,7 @@
"SUCCESS": "Issue unlinked successfully",
"ERROR": "There was an error unlinking the issue, please try again"
},
- "NO_LINKED_ISSUES": "No linked issues found",
+ "NO_LINKED_ISSUES": "Nessuna issue collegato trovato",
"DELETE": {
"TITLE": "Are you sure you want to delete the integration?",
"MESSAGE": "Are you sure you want to delete the integration?",
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Elimina"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Titolo",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Descrizione",
+ "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": "Crea",
+ "CANCEL": "annulla"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "annulla",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ja/conversation.json b/app/javascript/dashboard/i18n/locale/ja/conversation.json
index 76aff17c6..7e234c123 100644
--- a/app/javascript/dashboard/i18n/locale/ja/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ja/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "エージェントを読み込む...",
"ASSIGN_TEAM": "チームを割り当てる",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "会話 ID {conversationId} が \"{agentName}\" に割り当てられました",
diff --git a/app/javascript/dashboard/i18n/locale/ja/helpCenter.json b/app/javascript/dashboard/i18n/locale/ja/helpCenter.json
index 1edb03b09..bab2717d7 100644
--- a/app/javascript/dashboard/i18n/locale/ja/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ja/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "ポータルが正常に削除されました",
"DELETE_ERROR": "ポータルの削除中にエラーが発生しました"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "カスタムドメイン",
"LABEL": "カスタムドメイン:",
"DESCRIPTION": "ポータルをカスタムドメインでホストできます。例えば、あなたのウェブサイトがyourdomain.comで、ポータルをdocs.yourdomain.comで利用したい場合、このフィールドに入力してください。",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "ポータルカスタムドメイン",
- "EDIT_BUTTON": "カスタムドメインを編集",
+ "EDIT_BUTTON": "編集",
"ADD_BUTTON": "カスタムドメインを追加",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "カスタムドメインを追加",
"EDIT_HEADER": "カスタムドメインを編集",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "ドメインを更新",
"LABEL": "カスタムドメイン",
"PLACEHOLDER": "ポータルカスタムドメイン",
- "ERROR": "カスタムドメインは必須です"
+ "ERROR": "カスタムドメインは必須です",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS設定",
"DESCRIPTION": "DNSプロバイダーのアカウントにログインし、サブドメインのCNAMEレコードをchatwoot.helpにポイントするように追加してください。",
- "HELP_TEXT": "これが完了したら、自動生成されたSSL証明書のリクエストのためにサポートに連絡できます。",
- "CONFIRM_BUTTON_LABEL": "了解しました!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "送信"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ja/inbox.json b/app/javascript/dashboard/i18n/locale/ja/inbox.json
index 3260841d4..ceec4e009 100644
--- a/app/javascript/dashboard/i18n/locale/ja/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ja/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "すべての通知を既読にしました",
"DELETE_ALL": "すべての通知を削除しました",
"DELETE_ALL_READ": "すべての既読通知を削除しました"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json
index af6125b41..837c73c13 100644
--- a/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "APIキーを更新する",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "ここに新しいAPIキーを入力してください",
"WHATSAPP_SECTION_UPDATE_BUTTON": "更新",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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",
diff --git a/app/javascript/dashboard/i18n/locale/ja/integrations.json b/app/javascript/dashboard/i18n/locale/ja/integrations.json
index 4f0a65c9b..d9b7442c5 100644
--- a/app/javascript/dashboard/i18n/locale/ja/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ja/integrations.json
@@ -557,6 +557,7 @@
"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",
@@ -604,6 +605,7 @@
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "削除"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ka/conversation.json b/app/javascript/dashboard/i18n/locale/ka/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/ka/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ka/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ka/helpCenter.json b/app/javascript/dashboard/i18n/locale/ka/helpCenter.json
index f437b83d9..bd7fb986a 100644
--- a/app/javascript/dashboard/i18n/locale/ka/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ka/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ka/inbox.json b/app/javascript/dashboard/i18n/locale/ka/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/ka/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ka/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json
index 57d6e2638..a19105738 100644
--- a/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ka/integrations.json b/app/javascript/dashboard/i18n/locale/ka/integrations.json
index 722f0012f..68ce25b15 100644
--- a/app/javascript/dashboard/i18n/locale/ka/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ka/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ko/conversation.json b/app/javascript/dashboard/i18n/locale/ko/conversation.json
index 610f3eaf4..aef2e04e1 100644
--- a/app/javascript/dashboard/i18n/locale/ko/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ko/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ko/helpCenter.json b/app/javascript/dashboard/i18n/locale/ko/helpCenter.json
index 510dbe738..82f2980e6 100644
--- a/app/javascript/dashboard/i18n/locale/ko/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ko/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "수정",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "보내기"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ko/inbox.json b/app/javascript/dashboard/i18n/locale/ko/inbox.json
index 62018f02c..dc5c04757 100644
--- a/app/javascript/dashboard/i18n/locale/ko/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ko/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json
index 44438a260..277e39c0e 100644
--- a/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "업데이트",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ko/integrations.json b/app/javascript/dashboard/i18n/locale/ko/integrations.json
index 3abca198c..37335c120 100644
--- a/app/javascript/dashboard/i18n/locale/ko/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ko/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "삭제"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/lt/conversation.json b/app/javascript/dashboard/i18n/locale/lt/conversation.json
index 1e1e8c5da..79e26b3ad 100644
--- a/app/javascript/dashboard/i18n/locale/lt/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/lt/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Agentai užkraunami...",
"ASSIGN_TEAM": "Priskirti komandą",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Pokalbis id {conversationId} priskirtas \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/lt/helpCenter.json b/app/javascript/dashboard/i18n/locale/lt/helpCenter.json
index 7df46ff2c..db51e0948 100644
--- a/app/javascript/dashboard/i18n/locale/lt/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/lt/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portalas ištrintas sėkmingai",
"DELETE_ERROR": "Trinant portalą įvyko klaida"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Personalizuotas domenas",
"LABEL": "Personalizuotas domenas:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portalo personalizuotas domenas",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Redaguoti",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Tiesiogiai",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Personalizuotas domenas",
"PLACEHOLDER": "Portalo personalizuotas domenas",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Siųsti"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/lt/inbox.json b/app/javascript/dashboard/i18n/locale/lt/inbox.json
index fcb501ca5..56ad7724b 100644
--- a/app/javascript/dashboard/i18n/locale/lt/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/lt/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json
index e229569ff..5aed6b37d 100644
--- a/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Atnaujinti API raktą",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Įveskite naują API Raktą čia",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Atnaujinti",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Sujungti",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Patikros Prieigos Raktas",
"WHATSAPP_WEBHOOK_SUBHEADER": "Šis prieigos raktas naudojamas „webhook“ galutinio taško autentiškumui patikrinti.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/lt/integrations.json b/app/javascript/dashboard/i18n/locale/lt/integrations.json
index ac53c7981..90bf8d22d 100644
--- a/app/javascript/dashboard/i18n/locale/lt/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/lt/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Ištrinti"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Pavadinimas",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Aprašymas",
+ "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": "Sukurti",
+ "CANCEL": "Atšaukti"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Atšaukti",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/lv/conversation.json b/app/javascript/dashboard/i18n/locale/lv/conversation.json
index 7181a6977..634821b17 100644
--- a/app/javascript/dashboard/i18n/locale/lv/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/lv/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Notiek aģentu ielāde...",
"ASSIGN_TEAM": "Piešķirt komandu",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Sarunas id {conversationId} piešķirts \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/lv/helpCenter.json b/app/javascript/dashboard/i18n/locale/lv/helpCenter.json
index 4e7f73e8b..807c8a8db 100644
--- a/app/javascript/dashboard/i18n/locale/lv/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/lv/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portāls veiksmīgi izdzēsts",
"DELETE_ERROR": "Dzēšot portālu, radās kļūda"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Pielāgots domēns",
"LABEL": "Pielāgots domēns:",
"DESCRIPTION": "Jūs varat izvietot savu portālu pielāgotā domēnā. Piemēram, ja jūsu vietne ir yourdomain.com un vēlaties, lai jūsu portāls būtu pieejams vietnē docs.yourdomain.com, vienkārši ievadiet to šajā laukā.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portāla pielāgots domēns",
- "EDIT_BUTTON": "Rediģēt pielāgoto domēnu",
+ "EDIT_BUTTON": "Rediģēt",
"ADD_BUTTON": "Pievienot pielāgoto domēnu",
+ "STATUS": {
+ "LIVE": "Tiešraide",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Pievienot pielāgoto domēnu",
"EDIT_HEADER": "Rediģēt pielāgoto domēnu",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Atjaunināt domēnu",
"LABEL": "Pielāgots domēns",
"PLACEHOLDER": "Portāla pielāgots domēns",
- "ERROR": "Nepieciešams pielāgots domēns"
+ "ERROR": "Nepieciešams pielāgots domēns",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS konfigurācija",
"DESCRIPTION": "Piesakieties sava DNS nodrošinātāja kontā un pievienojiet CNAME ierakstu apakšdomēnam, kas norāda uz chatwoot.help",
- "HELP_TEXT": "Kad tas ir izdarīts, varat sazināties ar mūsu atbalsta dienestu, lai pieprasītu automātiski ģenerētu SSL sertifikātu.",
- "CONFIRM_BUTTON_LABEL": "Sapratu!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Nosūtīt"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/lv/inbox.json b/app/javascript/dashboard/i18n/locale/lv/inbox.json
index 10059ff43..6c59d958e 100644
--- a/app/javascript/dashboard/i18n/locale/lv/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/lv/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Visi paziņojumi ir atzīmēti kā lasīti",
"DELETE_ALL": "Visi paziņojumi izdzēsti",
"DELETE_ALL_READ": "Visi lasīšanas paziņojumi ir izdzēsti"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json
index d1df5a94b..d7de66c22 100644
--- a/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Atjaunināt API atslēgu",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Ievadiet šeit jauno API atslēgu",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Atjaunināt",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Savienot",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verifikācijas Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "Šis marķieris tiek izmantots, lai pārbaudītu webhook endpoint autentiskumu.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/lv/integrations.json b/app/javascript/dashboard/i18n/locale/lv/integrations.json
index 087d56248..e5a013bd7 100644
--- a/app/javascript/dashboard/i18n/locale/lv/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/lv/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Meklēt..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Meklēt..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Dzēst"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Nosaukums",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Apraksts",
+ "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": "Izveidot",
+ "CANCEL": "Atcelt"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Atcelt",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Meklēt..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ml/conversation.json b/app/javascript/dashboard/i18n/locale/ml/conversation.json
index 2d9f73dd7..269389e81 100644
--- a/app/javascript/dashboard/i18n/locale/ml/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ml/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ml/helpCenter.json b/app/javascript/dashboard/i18n/locale/ml/helpCenter.json
index 69bfd1652..ca7a34ab6 100644
--- a/app/javascript/dashboard/i18n/locale/ml/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ml/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "എഡിറ്റുചെയ്യുക",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "അയയ്ക്കുക"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ml/inbox.json b/app/javascript/dashboard/i18n/locale/ml/inbox.json
index ec371bbd9..3b376d0a8 100644
--- a/app/javascript/dashboard/i18n/locale/ml/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ml/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json
index ac8284ac0..d14da0e83 100644
--- a/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "അപ്ഡേറ്റ്",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ml/integrations.json b/app/javascript/dashboard/i18n/locale/ml/integrations.json
index 7dc60fa47..f64124402 100644
--- a/app/javascript/dashboard/i18n/locale/ml/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ml/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "ഇല്ലാതാക്കുക"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ms/conversation.json b/app/javascript/dashboard/i18n/locale/ms/conversation.json
index 3d1360862..b1d271e8a 100644
--- a/app/javascript/dashboard/i18n/locale/ms/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ms/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ms/helpCenter.json b/app/javascript/dashboard/i18n/locale/ms/helpCenter.json
index 9f2371162..bec411fa9 100644
--- a/app/javascript/dashboard/i18n/locale/ms/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ms/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ms/inbox.json b/app/javascript/dashboard/i18n/locale/ms/inbox.json
index 2c5b48194..7bf546094 100644
--- a/app/javascript/dashboard/i18n/locale/ms/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ms/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json
index 9e91cd8dc..46f46ece6 100644
--- a/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ms/integrations.json b/app/javascript/dashboard/i18n/locale/ms/integrations.json
index 5ebb59186..3f5083d30 100644
--- a/app/javascript/dashboard/i18n/locale/ms/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ms/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Padamkan"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Batalkan"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Batalkan",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ne/conversation.json b/app/javascript/dashboard/i18n/locale/ne/conversation.json
index 907a3414b..fb4db1116 100644
--- a/app/javascript/dashboard/i18n/locale/ne/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ne/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ne/helpCenter.json b/app/javascript/dashboard/i18n/locale/ne/helpCenter.json
index 5a8d53825..3150f34d3 100644
--- a/app/javascript/dashboard/i18n/locale/ne/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ne/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ne/inbox.json b/app/javascript/dashboard/i18n/locale/ne/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/ne/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ne/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json
index 3459f22ac..f53e031d8 100644
--- a/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ne/integrations.json b/app/javascript/dashboard/i18n/locale/ne/integrations.json
index 9ca9ba413..bc72dd2e3 100644
--- a/app/javascript/dashboard/i18n/locale/ne/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ne/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/nl/conversation.json b/app/javascript/dashboard/i18n/locale/nl/conversation.json
index 1bb5ea7a2..42d40749a 100644
--- a/app/javascript/dashboard/i18n/locale/nl/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/nl/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Agents worden geladen...",
"ASSIGN_TEAM": "Team toewijzen",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Gesprek id {conversationId} toegewezen aan \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/nl/helpCenter.json b/app/javascript/dashboard/i18n/locale/nl/helpCenter.json
index 720121818..26763d19c 100644
--- a/app/javascript/dashboard/i18n/locale/nl/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/nl/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Bewerken",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Verzenden"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/nl/inbox.json b/app/javascript/dashboard/i18n/locale/nl/inbox.json
index 357a73ba7..2b1d3d8ba 100644
--- a/app/javascript/dashboard/i18n/locale/nl/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/nl/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json
index 9f1286294..fbc9511db 100644
--- a/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Vernieuwen",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Verbinden",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/nl/integrations.json b/app/javascript/dashboard/i18n/locale/nl/integrations.json
index c02928d02..7b971629c 100644
--- a/app/javascript/dashboard/i18n/locale/nl/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/nl/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Verwijderen"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Titel",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Beschrijving",
+ "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": "Aanmaken",
+ "CANCEL": "Annuleren"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Annuleren",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/no/conversation.json b/app/javascript/dashboard/i18n/locale/no/conversation.json
index 3d70da918..f5b59e7ed 100644
--- a/app/javascript/dashboard/i18n/locale/no/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/no/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/no/helpCenter.json b/app/javascript/dashboard/i18n/locale/no/helpCenter.json
index bcb18e065..5e21047d0 100644
--- a/app/javascript/dashboard/i18n/locale/no/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/no/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Rediger",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/no/inbox.json b/app/javascript/dashboard/i18n/locale/no/inbox.json
index 5b0f59d26..762e722c3 100644
--- a/app/javascript/dashboard/i18n/locale/no/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/no/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json
index 88ade0a31..1f5826078 100644
--- a/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Oppdater",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Koble til",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/no/integrations.json b/app/javascript/dashboard/i18n/locale/no/integrations.json
index 410176001..10b668191 100644
--- a/app/javascript/dashboard/i18n/locale/no/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/no/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Slett"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Beskrivelse",
+ "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": "Opprett",
+ "CANCEL": "Avbryt"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Avbryt",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/pl/conversation.json b/app/javascript/dashboard/i18n/locale/pl/conversation.json
index 91f68d0a8..546af5f1d 100644
--- a/app/javascript/dashboard/i18n/locale/pl/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/pl/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Ładowanie agentów...",
"ASSIGN_TEAM": "Przypisz zespół",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Konwersacja o identyfikatorze {conversationId} przypisana do \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/pl/helpCenter.json b/app/javascript/dashboard/i18n/locale/pl/helpCenter.json
index 5bba3a2fc..01f89e0b1 100644
--- a/app/javascript/dashboard/i18n/locale/pl/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/pl/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal został pomyślnie usunięty",
"DELETE_ERROR": "Błąd podczas usuwania portalu"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Niestandardowa domena",
"LABEL": "Niestandardowa domena:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Niestandardowa domena portalu",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edytuj",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Na żywo",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Niestandardowa domena",
"PLACEHOLDER": "Niestandardowa domena portalu",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Wyślij"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/pl/inbox.json b/app/javascript/dashboard/i18n/locale/pl/inbox.json
index 01d6a676e..d7f3183b3 100644
--- a/app/javascript/dashboard/i18n/locale/pl/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/pl/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json
index 95028bbd5..7f5a62f96 100644
--- a/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Aktualizacja klucza API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Wprowadź nowy klucz API tutaj",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Aktualizuj",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Połącz",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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": "Token weryfikacyjny webhooka",
"WHATSAPP_WEBHOOK_SUBHEADER": "Ten token służy do weryfikacji autentyczności punktu końcowego webhooka.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/pl/integrations.json b/app/javascript/dashboard/i18n/locale/pl/integrations.json
index 59c1d7959..ec149a9e4 100644
--- a/app/javascript/dashboard/i18n/locale/pl/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/pl/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Usuń"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Tytuł",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Opis",
+ "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": "Stwórz",
+ "CANCEL": "Anuluj"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Anuluj",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/pt/conversation.json b/app/javascript/dashboard/i18n/locale/pt/conversation.json
index 9ece5b576..fba7e5b09 100644
--- a/app/javascript/dashboard/i18n/locale/pt/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/pt/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "A carregar agentes...",
"ASSIGN_TEAM": "Atribuir equipa",
"DELETE": "Apagar conversa",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversa com ID {conversationId} atribuída a \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/pt/helpCenter.json b/app/javascript/dashboard/i18n/locale/pt/helpCenter.json
index 774a064d8..437cf0548 100644
--- a/app/javascript/dashboard/i18n/locale/pt/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/pt/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal apagado com sucesso",
"DELETE_ERROR": "Erro ao apagar portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Domínio personalizado",
"LABEL": "Domínio personalizado:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Domínio personalizado do portal",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Editar",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Disponível",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Domínio personalizado",
"PLACEHOLDER": "Domínio personalizado do portal",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Enviar"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/pt/inbox.json b/app/javascript/dashboard/i18n/locale/pt/inbox.json
index ff4c6cddd..1c9a5909c 100644
--- a/app/javascript/dashboard/i18n/locale/pt/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/pt/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Todas as notificações marcadas como lidas",
"DELETE_ALL": "Todas as notificações foram excluídas",
"DELETE_ALL_READ": "Todas as notificações lidas foram excluídas"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json
index 6fa646120..d698c6313 100644
--- a/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Atualizar chave da API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Insira a nova chave da API aqui",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Atualização",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Conectar",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 de verificação do token",
"WHATSAPP_WEBHOOK_SUBHEADER": "Este token é usado para verificar a autenticidade do endpoint do webhook.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/pt/integrations.json b/app/javascript/dashboard/i18n/locale/pt/integrations.json
index 7b71f9936..69c3ddb4f 100644
--- a/app/javascript/dashboard/i18n/locale/pt/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/pt/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Selecionar todas ({count})",
+ "UNSELECT_ALL": "Desmarcar todas ({count})",
+ "BULK_DELETE_BUTTON": "Excluir"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Título",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Descrição",
+ "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": "Criar",
+ "CANCEL": "Cancelar"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancelar",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json b/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json
index 0258e0031..538d02ad7 100644
--- a/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Carregando agentes...",
"ASSIGN_TEAM": "Atribuir time",
"DELETE": "Excluir conversa",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "ID da conversa {conversationId} atribuído para \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json b/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json
index 9c7ec6a14..4abb60138 100644
--- a/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal excluído com sucesso",
"DELETE_ERROR": "Erro enquanto excluía o portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Domínio personalizado",
"LABEL": "Domínio personalizado:",
"DESCRIPTION": "Você pode hospedar seu portal em um domínio personalizado. Por exemplo, se seu site for meudominio.com e você quer o seu portal disponível em docs.meudominio.com, basta digitar isso neste campo.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Domínio personalizado do portal",
- "EDIT_BUTTON": "Editar domínio personalizado",
+ "EDIT_BUTTON": "Alterar",
"ADD_BUTTON": "Adicionar domínio personalizado",
+ "STATUS": {
+ "LIVE": "Em tempo real",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Adicionar domínio personalizado",
"EDIT_HEADER": "Editar domínio personalizado",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Atualizar domínio",
"LABEL": "Domínio personalizado",
"PLACEHOLDER": "Domínio personalizado do portal",
- "ERROR": "Domínio personalizado é obrigatório"
+ "ERROR": "Domínio personalizado é obrigatório",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "Configuração de DNS",
"DESCRIPTION": "Faça o login na conta que você tem com seu provedor DNS e adicione um registro CNAME para subdomínio apontando para chatwoot.help",
- "HELP_TEXT": "Assim que isso for feito, você poderá entrar em contato com o nosso suporte para solicitar o certificado SSL gerado automaticamente.",
- "CONFIRM_BUTTON_LABEL": "Entendi!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Enviar"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/inbox.json b/app/javascript/dashboard/i18n/locale/pt_BR/inbox.json
index 008d2c0c7..d3750f133 100644
--- a/app/javascript/dashboard/i18n/locale/pt_BR/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/pt_BR/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Todas as notificações marcadas como lidas",
"DELETE_ALL": "Todas as notificações excluídas",
"DELETE_ALL_READ": "Todas as notificações lidas foram excluídas"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json
index aac205dec..3385491a1 100644
--- a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Atualizar Chave de API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Digite a nova chave de API aqui",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Atualizar",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Conectar",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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": "Token de verificação Webhook",
"WHATSAPP_WEBHOOK_SUBHEADER": "Este token é usado para verificar a autenticidade do webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json b/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json
index 0164c0852..1b690cb82 100644
--- a/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Pesquisar..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Pesquisar..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Selecionar todos ({count})",
+ "UNSELECT_ALL": "Desmarcar todos ({count})",
+ "BULK_DELETE_BUTTON": "Excluir"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Título",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Descrição",
+ "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": "Criar",
+ "CANCEL": "Cancelar"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancelar",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Pesquisar..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ro/conversation.json b/app/javascript/dashboard/i18n/locale/ro/conversation.json
index 8925d513d..3e9ddb6b9 100644
--- a/app/javascript/dashboard/i18n/locale/ro/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ro/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Se încarcă agenții...",
"ASSIGN_TEAM": "Atribuiți echipă",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Id conversație {conversationId} atribuit la \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ro/helpCenter.json b/app/javascript/dashboard/i18n/locale/ro/helpCenter.json
index b6f45a8eb..d122f13a7 100644
--- a/app/javascript/dashboard/i18n/locale/ro/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ro/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portalul a fost sters",
"DELETE_ERROR": "Eroare la ștergerea portalului"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Domeniu personalizat",
"LABEL": "Domeniu personalizat:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Domeniu personalizat portal",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Editare",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Domeniu personalizat",
"PLACEHOLDER": "Domeniu personalizat portal",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Trimite"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ro/inbox.json b/app/javascript/dashboard/i18n/locale/ro/inbox.json
index 73e3ef69f..8515682ff 100644
--- a/app/javascript/dashboard/i18n/locale/ro/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ro/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json
index d1079d98a..9af77f363 100644
--- a/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Actualizați cheia API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Introduceți noua cheie API aici",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Actualizare",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Conectează-te",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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": "Token de verificare Webhook",
"WHATSAPP_WEBHOOK_SUBHEADER": "Acest simbol este utilizat pentru a verifica autenticitatea punctului final webhook.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ro/integrations.json b/app/javascript/dashboard/i18n/locale/ro/integrations.json
index af3c37476..513b93b64 100644
--- a/app/javascript/dashboard/i18n/locale/ro/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ro/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Şterge"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Titlu",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Descriere",
+ "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": "Creeaza",
+ "CANCEL": "Renunță"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Renunță",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ru/conversation.json b/app/javascript/dashboard/i18n/locale/ru/conversation.json
index 1ccf73838..a39ab3040 100644
--- a/app/javascript/dashboard/i18n/locale/ru/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ru/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Загрузка агентов...",
"ASSIGN_TEAM": "Назначить команду",
"DELETE": "Удалить диалог",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "ID разговора {conversationId} присвоен \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ru/helpCenter.json b/app/javascript/dashboard/i18n/locale/ru/helpCenter.json
index 4f9002b9a..dbde16384 100644
--- a/app/javascript/dashboard/i18n/locale/ru/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ru/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Портал успешно удален",
"DELETE_ERROR": "Ошибка при удалении портала"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Свой домен",
"LABEL": "Свой домен:",
"DESCRIPTION": "Вы можете разместить ваш портал на собственном домене. Например, если ваш сайт — yourdomain.com, и вы хотите, чтобы ваш портал был доступен по адресу docs.yourdomain.com, просто введите это в это поле.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Пользовательский домен портала",
- "EDIT_BUTTON": "Редактировать пользовательский домен",
+ "EDIT_BUTTON": "Редактировать",
"ADD_BUTTON": "Добавить пользовательский домен",
+ "STATUS": {
+ "LIVE": "Онлайн",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Добавить пользовательский домен",
"EDIT_HEADER": "Редактировать пользовательский домен",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Обновить домен",
"LABEL": "Свой домен",
"PLACEHOLDER": "Пользовательский домен портала",
- "ERROR": "Требуется пользовательский домен"
+ "ERROR": "Требуется пользовательский домен",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "Настройка DNS",
"DESCRIPTION": "Войдите в учетную запись с вашим DNS провайдером и добавьте запись CNAME для поддомена, указывающего на chatwoot.help",
- "HELP_TEXT": "Как только это будет сделано, вы можете связаться с нашей службой поддержки для запроса SSL-сертификата.",
- "CONFIRM_BUTTON_LABEL": "Понял!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Отправить"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ru/inbox.json b/app/javascript/dashboard/i18n/locale/ru/inbox.json
index 1b4c77a93..b651ffe31 100644
--- a/app/javascript/dashboard/i18n/locale/ru/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ru/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Все уведомления отмечены как прочитанные",
"DELETE_ALL": "Все уведомления удалены",
"DELETE_ALL_READ": "Все прочитанные уведомления удалены"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json
index 01a066111..83b983539 100644
--- a/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Обновить ключ API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Введите сюда новый ключ API",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Обновить",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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": "Этот токен используется для проверки подлинности конечной точки веб-хука.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ru/integrations.json b/app/javascript/dashboard/i18n/locale/ru/integrations.json
index 81f00c34c..833e9faf5 100644
--- a/app/javascript/dashboard/i18n/locale/ru/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ru/integrations.json
@@ -557,6 +557,7 @@
"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",
@@ -604,6 +605,7 @@
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Удалить"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/sh/conversation.json b/app/javascript/dashboard/i18n/locale/sh/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/sh/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/sh/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/sh/helpCenter.json b/app/javascript/dashboard/i18n/locale/sh/helpCenter.json
index f437b83d9..bd7fb986a 100644
--- a/app/javascript/dashboard/i18n/locale/sh/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/sh/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/sh/inbox.json b/app/javascript/dashboard/i18n/locale/sh/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/sh/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/sh/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json
index 3b17580a1..db4959846 100644
--- a/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/sh/integrations.json b/app/javascript/dashboard/i18n/locale/sh/integrations.json
index 722f0012f..68ce25b15 100644
--- a/app/javascript/dashboard/i18n/locale/sh/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/sh/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/sk/conversation.json b/app/javascript/dashboard/i18n/locale/sk/conversation.json
index 1a51e5e40..586751810 100644
--- a/app/javascript/dashboard/i18n/locale/sk/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/sk/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/sk/helpCenter.json b/app/javascript/dashboard/i18n/locale/sk/helpCenter.json
index d6661553e..0310227f1 100644
--- a/app/javascript/dashboard/i18n/locale/sk/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/sk/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Upraviť",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Poslať"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/sk/inbox.json b/app/javascript/dashboard/i18n/locale/sk/inbox.json
index 99367513d..a1b811b00 100644
--- a/app/javascript/dashboard/i18n/locale/sk/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/sk/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json
index 90d9c77a9..535d60aec 100644
--- a/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/sk/integrations.json b/app/javascript/dashboard/i18n/locale/sk/integrations.json
index c647dafa6..e0d32c972 100644
--- a/app/javascript/dashboard/i18n/locale/sk/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/sk/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Vymazať"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Zrušiť"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Zrušiť",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/sl/conversation.json b/app/javascript/dashboard/i18n/locale/sl/conversation.json
index d87e19400..b62a8eb60 100644
--- a/app/javascript/dashboard/i18n/locale/sl/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/sl/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/sl/helpCenter.json b/app/javascript/dashboard/i18n/locale/sl/helpCenter.json
index 9bdf6e192..084a17ee1 100644
--- a/app/javascript/dashboard/i18n/locale/sl/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/sl/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/sl/inbox.json b/app/javascript/dashboard/i18n/locale/sl/inbox.json
index b1c439e0a..3166c6187 100644
--- a/app/javascript/dashboard/i18n/locale/sl/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/sl/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json
index 8e21df55f..30fd68bde 100644
--- a/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/sl/integrations.json b/app/javascript/dashboard/i18n/locale/sl/integrations.json
index c0336b266..5880a6b3c 100644
--- a/app/javascript/dashboard/i18n/locale/sl/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/sl/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Iskanje ..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Iskanje ..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Iskanje ..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/sq/conversation.json b/app/javascript/dashboard/i18n/locale/sq/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/sq/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/sq/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/sq/helpCenter.json b/app/javascript/dashboard/i18n/locale/sq/helpCenter.json
index 360d77f10..a020de2be 100644
--- a/app/javascript/dashboard/i18n/locale/sq/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/sq/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/sq/inbox.json b/app/javascript/dashboard/i18n/locale/sq/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/sq/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/sq/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json
index f8a52e0dd..3c0769793 100644
--- a/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/sq/integrations.json b/app/javascript/dashboard/i18n/locale/sq/integrations.json
index 019fa37cb..24315dec2 100644
--- a/app/javascript/dashboard/i18n/locale/sq/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/sq/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/sr/conversation.json b/app/javascript/dashboard/i18n/locale/sr/conversation.json
index ea8cc2294..cbf7cfe36 100644
--- a/app/javascript/dashboard/i18n/locale/sr/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/sr/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Učitavanje agenata...",
"ASSIGN_TEAM": "Dodeli tim",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Razgovor sa ID {conversationId} je dodeljen \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/sr/helpCenter.json b/app/javascript/dashboard/i18n/locale/sr/helpCenter.json
index 68595fce6..83d0c2efa 100644
--- a/app/javascript/dashboard/i18n/locale/sr/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/sr/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Prilagođeni domen",
"LABEL": "Prilagođeni domen:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Prilagođeni domen portala",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Uredi",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Uživo",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Prilagođeni domen",
"PLACEHOLDER": "Prilagođeni domen portala",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Pošalji"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/sr/inbox.json b/app/javascript/dashboard/i18n/locale/sr/inbox.json
index 5a7c09da1..60398f22a 100644
--- a/app/javascript/dashboard/i18n/locale/sr/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/sr/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json
index 4e3769406..97015ee59 100644
--- a/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Primeni",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Poveži se",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/sr/integrations.json b/app/javascript/dashboard/i18n/locale/sr/integrations.json
index 84d32eea2..8dada5dc6 100644
--- a/app/javascript/dashboard/i18n/locale/sr/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/sr/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Izbriši"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Naslov",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Opis",
+ "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": "Napravi",
+ "CANCEL": "Otkaži"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Otkaži",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/sv/conversation.json b/app/javascript/dashboard/i18n/locale/sv/conversation.json
index 3b41ef698..e10a0422f 100644
--- a/app/javascript/dashboard/i18n/locale/sv/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/sv/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Laddar agenter...",
"ASSIGN_TEAM": "Tilldela team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/sv/helpCenter.json b/app/javascript/dashboard/i18n/locale/sv/helpCenter.json
index 20a824f85..b722ce7a6 100644
--- a/app/javascript/dashboard/i18n/locale/sv/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/sv/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Redigera",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Skicka"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/sv/inbox.json b/app/javascript/dashboard/i18n/locale/sv/inbox.json
index 470bf1679..db18a6c78 100644
--- a/app/javascript/dashboard/i18n/locale/sv/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/sv/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json
index 3b11970b5..a600dcf2e 100644
--- a/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Uppdatera",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Anslut",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/sv/integrations.json b/app/javascript/dashboard/i18n/locale/sv/integrations.json
index 4fd367202..805d3481f 100644
--- a/app/javascript/dashboard/i18n/locale/sv/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/sv/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Radera"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Beskrivning",
+ "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": "Skapa",
+ "CANCEL": "Avbryt"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Avbryt",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ta/conversation.json b/app/javascript/dashboard/i18n/locale/ta/conversation.json
index f9083b51e..35fdfe6f3 100644
--- a/app/javascript/dashboard/i18n/locale/ta/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ta/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ta/helpCenter.json b/app/javascript/dashboard/i18n/locale/ta/helpCenter.json
index 32401dc2e..1ea6d92a5 100644
--- a/app/javascript/dashboard/i18n/locale/ta/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ta/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "திருத்து",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "அனுப்பு"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ta/inbox.json b/app/javascript/dashboard/i18n/locale/ta/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/ta/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ta/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json
index f06cd63aa..f554e432c 100644
--- a/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "புதுப்பிப்பு",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ta/integrations.json b/app/javascript/dashboard/i18n/locale/ta/integrations.json
index d64fd3a3b..160cb189f 100644
--- a/app/javascript/dashboard/i18n/locale/ta/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ta/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "ரத்துசெய்"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "ரத்துசெய்",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/th/conversation.json b/app/javascript/dashboard/i18n/locale/th/conversation.json
index 4f7fa94e9..fd7422578 100644
--- a/app/javascript/dashboard/i18n/locale/th/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/th/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "รหัสการสนทนา {conversationId} ถูกมอบหมายให้กับ {agentName}",
diff --git a/app/javascript/dashboard/i18n/locale/th/helpCenter.json b/app/javascript/dashboard/i18n/locale/th/helpCenter.json
index 1032d2927..113697493 100644
--- a/app/javascript/dashboard/i18n/locale/th/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/th/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "เเก้ไข",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "ขณะนี้",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "ส่ง"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/th/inbox.json b/app/javascript/dashboard/i18n/locale/th/inbox.json
index 46af91fe6..68de5c5e4 100644
--- a/app/javascript/dashboard/i18n/locale/th/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/th/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json
index e5ac0a41e..e41aab615 100644
--- a/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "อัพเดท",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/th/integrations.json b/app/javascript/dashboard/i18n/locale/th/integrations.json
index f6512f828..692daf68e 100644
--- a/app/javascript/dashboard/i18n/locale/th/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/th/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "ลบ"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/tl/conversation.json b/app/javascript/dashboard/i18n/locale/tl/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/tl/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/tl/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/tl/helpCenter.json b/app/javascript/dashboard/i18n/locale/tl/helpCenter.json
index f437b83d9..bd7fb986a 100644
--- a/app/javascript/dashboard/i18n/locale/tl/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/tl/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/tl/inbox.json b/app/javascript/dashboard/i18n/locale/tl/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/tl/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/tl/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json
index 12580bcac..4006212a3 100644
--- a/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/tl/integrations.json b/app/javascript/dashboard/i18n/locale/tl/integrations.json
index d9bf469c7..1614931a0 100644
--- a/app/javascript/dashboard/i18n/locale/tl/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/tl/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/tr/conversation.json b/app/javascript/dashboard/i18n/locale/tr/conversation.json
index 0239355d6..4fd308d44 100644
--- a/app/javascript/dashboard/i18n/locale/tr/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/tr/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Temsilciler Yükleniyor...",
"ASSIGN_TEAM": "Takım ata",
"DELETE": "Sohbeti sil",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Sohbet kimliği {conversationId} \"{agentName}\" tarafından atanmış",
diff --git a/app/javascript/dashboard/i18n/locale/tr/generalSettings.json b/app/javascript/dashboard/i18n/locale/tr/generalSettings.json
index 1e22b121f..e5950bad5 100644
--- a/app/javascript/dashboard/i18n/locale/tr/generalSettings.json
+++ b/app/javascript/dashboard/i18n/locale/tr/generalSettings.json
@@ -134,7 +134,7 @@
"MULTISELECT": {
"ENTER_TO_SELECT": "Seçmek için enter tuşuna basın",
"ENTER_TO_REMOVE": "Kaldırmak için enter tuşuna basın",
- "NO_OPTIONS": "List is empty",
+ "NO_OPTIONS": "Liste boş",
"SELECT_ONE": "Birini seç",
"SELECT": "Seç"
}
diff --git a/app/javascript/dashboard/i18n/locale/tr/helpCenter.json b/app/javascript/dashboard/i18n/locale/tr/helpCenter.json
index 2ab2b274d..4bd733d29 100644
--- a/app/javascript/dashboard/i18n/locale/tr/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/tr/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal başarıyla silindi",
"DELETE_ERROR": "Portal silinirken hata oluştu"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Özel domain",
"LABEL": "Özel domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal özel domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Düzenle",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Canlı",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Özel domain",
"PLACEHOLDER": "Portal özel domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "Bu adımı geliştirme ekibinizden birinin yapmasını tercih ediyorsanız, aşağıya mail adresini girin; gerekli talimatları onlara gönderelim.",
+ "PLACEHOLDER": "E-posta adreslerini girin",
+ "ERROR": "Geçerli bir mail adresi girin",
+ "SEND_BUTTON": "Gönder"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/tr/inbox.json b/app/javascript/dashboard/i18n/locale/tr/inbox.json
index c2913ed40..db8ad18d8 100644
--- a/app/javascript/dashboard/i18n/locale/tr/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/tr/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Tüm Bildirimler Okundu Olarak İşaretlendi",
"DELETE_ALL": "Tüm Bildirimler Silindi",
"DELETE_ALL_READ": "Tüm Okunmuş Bildirimler Silindi"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json
index 2250d18bf..53c38eae1 100644
--- a/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "API Anahtarını Güncelle",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Yeni API Anahtarını buraya girin",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Güncelleme",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Bağlan",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Onay Anahtarı",
"WHATSAPP_WEBHOOK_SUBHEADER": "Bu belirteç, webhook uç noktasının gerçekliğini doğrulamak için kullanılır.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/tr/integrations.json b/app/javascript/dashboard/i18n/locale/tr/integrations.json
index 8c68be69e..5e774e07a 100644
--- a/app/javascript/dashboard/i18n/locale/tr/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/tr/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Sil"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Başlık",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Açıklama",
+ "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": "Yarat",
+ "CANCEL": "İptal Et"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "İptal Et",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/uk/conversation.json b/app/javascript/dashboard/i18n/locale/uk/conversation.json
index 62065b5d1..dad14a889 100644
--- a/app/javascript/dashboard/i18n/locale/uk/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/uk/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Завантаження агентів...",
"ASSIGN_TEAM": "Призначити команду",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Ідентифікатор розмови {conversationId} призначено для \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/uk/helpCenter.json b/app/javascript/dashboard/i18n/locale/uk/helpCenter.json
index 781614022..b2d2e0acb 100644
--- a/app/javascript/dashboard/i18n/locale/uk/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/uk/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Портал успішно видалено",
"DELETE_ERROR": "Помилка під час видалення"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Користувацький домен",
"LABEL": "Користувацький домен:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Власний домен порталу",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Редагувати",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Онлайн",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Користувацький домен",
"PLACEHOLDER": "Власний домен порталу",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Надіслати"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/uk/inbox.json b/app/javascript/dashboard/i18n/locale/uk/inbox.json
index dcac08651..9384f272e 100644
--- a/app/javascript/dashboard/i18n/locale/uk/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/uk/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "Повідомлення помічено як прочитане",
"DELETE_ALL": "Сповіщення видалено",
"DELETE_ALL_READ": "Всі прочитані повідомлення видалено"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json
index 0fa97089d..d57c34cf2 100644
--- a/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Оновити ключ API",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Введіть тут новий ключ API",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Оновити",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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": "Токен вебхука",
"WHATSAPP_WEBHOOK_SUBHEADER": "Цей токен використовується для перевірки аутентифікації кінцевої точки вебхука.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/uk/integrations.json b/app/javascript/dashboard/i18n/locale/uk/integrations.json
index 8f9016a66..bc7afcfc6 100644
--- a/app/javascript/dashboard/i18n/locale/uk/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/uk/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Видалити"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ur/conversation.json b/app/javascript/dashboard/i18n/locale/ur/conversation.json
index 2c09626ad..67c016b4f 100644
--- a/app/javascript/dashboard/i18n/locale/ur/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ur/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ur/helpCenter.json b/app/javascript/dashboard/i18n/locale/ur/helpCenter.json
index ffb1ad3de..4e103131c 100644
--- a/app/javascript/dashboard/i18n/locale/ur/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ur/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "ترمیم",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ur/inbox.json b/app/javascript/dashboard/i18n/locale/ur/inbox.json
index f4ee17ed2..ecf48c0f5 100644
--- a/app/javascript/dashboard/i18n/locale/ur/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ur/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json
index b3f5d540e..b8f615d8a 100644
--- a/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ur/integrations.json b/app/javascript/dashboard/i18n/locale/ur/integrations.json
index 8471b0b86..bcf0c1a33 100644
--- a/app/javascript/dashboard/i18n/locale/ur/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ur/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "حذف کریں۔"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "منسوخ کریں۔"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "منسوخ کریں۔",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json b/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json
index 5b3b7f3f8..308f24f51 100644
--- a/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/helpCenter.json b/app/javascript/dashboard/i18n/locale/ur_IN/helpCenter.json
index f437b83d9..bd7fb986a 100644
--- a/app/javascript/dashboard/i18n/locale/ur_IN/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/ur_IN/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Edit",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Send"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/inbox.json b/app/javascript/dashboard/i18n/locale/ur_IN/inbox.json
index a07bae4af..385e9e4ce 100644
--- a/app/javascript/dashboard/i18n/locale/ur_IN/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/ur_IN/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json
index 03b5606f6..a81205fe7 100644
--- a/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Update",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Connect",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json b/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json
index 722f0012f..68ce25b15 100644
--- a/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Delete"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Title",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Description",
+ "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": "Create",
+ "CANCEL": "Cancel"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Cancel",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/vi/conversation.json b/app/javascript/dashboard/i18n/locale/vi/conversation.json
index 94d80c8b8..2803b1748 100644
--- a/app/javascript/dashboard/i18n/locale/vi/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/vi/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Đang tải điện thoại viên...",
"ASSIGN_TEAM": "Gán nhóm",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Id hội thoại {conversationId} được gán cho \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/vi/helpCenter.json b/app/javascript/dashboard/i18n/locale/vi/helpCenter.json
index f76ac6755..d8e7127ae 100644
--- a/app/javascript/dashboard/i18n/locale/vi/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/vi/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Đã xóa cổng thông tin thành công",
"DELETE_ERROR": "Lỗi khi xóa cổng thông tin"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Tên miền tuỳ chỉnh",
"LABEL": "Tên miền tuỳ chỉnh:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Tên miền tuỳ biến cổng",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "Chỉnh sửa",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Trực tuyến",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Tên miền tuỳ chỉnh",
"PLACEHOLDER": "Tên miền tuỳ biến cổng",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "Gửi"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/vi/inbox.json b/app/javascript/dashboard/i18n/locale/vi/inbox.json
index 598f74b02..a842b9f29 100644
--- a/app/javascript/dashboard/i18n/locale/vi/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/vi/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json
index 1ad17adce..be06fe575 100644
--- a/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "Update API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "Enter the new API Key here",
"WHATSAPP_SECTION_UPDATE_BUTTON": "Cập nhật",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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": "Kết nối",
+ "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 App ID is not configured. Please contact your administrator.",
+ "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": "Mã xác minh Webhook",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/vi/integrations.json b/app/javascript/dashboard/i18n/locale/vi/integrations.json
index 8d554adc6..fdb96d792 100644
--- a/app/javascript/dashboard/i18n/locale/vi/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/vi/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "Xoá"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "ADD_SINGLE": "Add this",
+ "TOOLS_USED": "Tools used :"
+ },
+ "NEW": {
+ "CREATE": "Add a scenario",
+ "TITLE": "Create a scenario",
+ "FORM": {
+ "TITLE": {
+ "LABEL": "Tiêu đề",
+ "PLACEHOLDER": "Enter a name for the scenario",
+ "ERROR": "Scenario name is required"
+ },
+ "DESCRIPTION": {
+ "LABEL": "Mô tả",
+ "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": "Tạo",
+ "CANCEL": "Huỷ"
+ }
+ }
+ },
+ "UPDATE": {
+ "CANCEL": "Huỷ",
+ "UPDATE": "Update changes"
+ },
+ "LIST": {
+ "SEARCH_PLACEHOLDER": "Search..."
+ },
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json b/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json
index 0cbf0ad36..c2bdd2aaa 100644
--- a/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "正在加载客服代表...",
"ASSIGN_TEAM": "分配一个团队",
"DELETE": "删除对话",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "对话 ID {conversationId} 已分配给 \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json b/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json
index 312080073..a88a4c223 100644
--- a/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "门户删除成功",
"DELETE_ERROR": "删除门户时出错"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "自定义域名",
"LABEL": "自定义域名:",
"DESCRIPTION": "您可以在自定义域名上托管您的门户。例如,如果您的网站是 yourdomain.com,并且您希望您的门户在 docs.yourdomain.com 上可用,只需在此字段中输入即可。",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "门户自定义域名",
- "EDIT_BUTTON": "编辑自定义域名",
+ "EDIT_BUTTON": "编辑",
"ADD_BUTTON": "添加自定义域名",
+ "STATUS": {
+ "LIVE": "实时",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "添加自定义域名",
"EDIT_HEADER": "编辑自定义域名",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "更新域名",
"LABEL": "自定义域名",
"PLACEHOLDER": "门户自定义域名",
- "ERROR": "自定义域名是必填项"
+ "ERROR": "自定义域名是必填项",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS配置",
"DESCRIPTION": "登录您的 DNS 提供商账户,并添加一个指向 chatwoot.help 的子域名的 CNAME 记录",
- "HELP_TEXT": "完成后,您可以联系我们的支持团队以请求自动生成的SSL证书。",
- "CONFIRM_BUTTON_LABEL": "明白了!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "发送"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/inbox.json b/app/javascript/dashboard/i18n/locale/zh_CN/inbox.json
index 49aa3c8fd..4b6be6b7f 100644
--- a/app/javascript/dashboard/i18n/locale/zh_CN/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/zh_CN/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "所有通知标记为已读",
"DELETE_ALL": "所有通知已删除",
"DELETE_ALL_READ": "所有已读通知已删除"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json
index fa567b20e..9469db1f9 100644
--- a/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "更新API密钥",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "在此处输入新的API密钥",
"WHATSAPP_SECTION_UPDATE_BUTTON": "更新",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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",
diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json b/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json
index b3bc8ff2c..0132e71c6 100644
--- a/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json
@@ -557,6 +557,7 @@
"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",
@@ -604,6 +605,7 @@
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "删除"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": {
diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json b/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json
index c233a2bf1..7b15031ca 100644
--- a/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json
+++ b/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json
@@ -144,6 +144,9 @@
"AGENTS_LOADING": "Loading agents...",
"ASSIGN_TEAM": "Assign team",
"DELETE": "Delete conversation",
+ "OPEN_IN_NEW_TAB": "Open in new tab",
+ "COPY_LINK": "Copy conversation link",
+ "COPY_LINK_SUCCESS": "Conversation link copied to clipboard",
"API": {
"AGENT_ASSIGNMENT": {
"SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"",
diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json b/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json
index 0dc927ec4..8ba311172 100644
--- a/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json
+++ b/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json
@@ -157,6 +157,12 @@
"DELETE_SUCCESS": "Portal deleted successfully",
"DELETE_ERROR": "Error while deleting portal"
}
+ },
+ "SEND_CNAME_INSTRUCTIONS": {
+ "API": {
+ "SUCCESS_MESSAGE": "CNAME instructions sent successfully",
+ "ERROR_MESSAGE": "Error while sending CNAME instructions"
+ }
}
},
"EDIT": {
@@ -747,9 +753,15 @@
"HEADER": "Custom domain",
"LABEL": "Custom domain:",
"DESCRIPTION": "You can host your portal on a custom domain. For instance, if your website is yourdomain.com and you want your portal available at docs.yourdomain.com, simply enter that in this field.",
+ "STATUS_DESCRIPTION": "Your custom portal will start working as soon as it is verified.",
"PLACEHOLDER": "Portal custom domain",
- "EDIT_BUTTON": "Edit custom domain",
+ "EDIT_BUTTON": "編輯",
"ADD_BUTTON": "Add custom domain",
+ "STATUS": {
+ "LIVE": "Live",
+ "PENDING": "Awaiting verification",
+ "ERROR": "Verification failed"
+ },
"DIALOG": {
"ADD_HEADER": "Add custom domain",
"EDIT_HEADER": "Edit custom domain",
@@ -757,13 +769,20 @@
"EDIT_CONFIRM_BUTTON_LABEL": "Update domain",
"LABEL": "Custom domain",
"PLACEHOLDER": "Portal custom domain",
- "ERROR": "Custom domain is required"
+ "ERROR": "Custom domain is required",
+ "FORMAT_ERROR": "Please enter a valid domain URL e.g. docs.yourdomain.com"
},
"DNS_CONFIGURATION_DIALOG": {
"HEADER": "DNS configuration",
"DESCRIPTION": "Log in to the account you have with your DNS provider, and add a CNAME record for subdomain pointing to chatwoot.help",
- "HELP_TEXT": "Once this is done, you can reach out to our support to request for the auto-generated SSL certificate.",
- "CONFIRM_BUTTON_LABEL": "Got it!"
+ "COPY": "Successfully copied CNAME",
+ "SEND_INSTRUCTIONS": {
+ "HEADER": "Send instructions",
+ "DESCRIPTION": "If you would prefer to have someone from your development team to handle this step, you can enter email address below, and we will send them the required instructions.",
+ "PLACEHOLDER": "Enter their email",
+ "ERROR": "Enter a valid email address",
+ "SEND_BUTTON": "發送"
+ }
}
},
"DELETE_PORTAL": {
diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/inbox.json b/app/javascript/dashboard/i18n/locale/zh_TW/inbox.json
index a7c2bb36a..02383f7be 100644
--- a/app/javascript/dashboard/i18n/locale/zh_TW/inbox.json
+++ b/app/javascript/dashboard/i18n/locale/zh_TW/inbox.json
@@ -72,6 +72,24 @@
"MARK_ALL_READ": "All notifications marked as read",
"DELETE_ALL": "All notifications deleted",
"DELETE_ALL_READ": "All read notifications deleted"
+ },
+ "REAUTHORIZE": {
+ "TITLE": "Reauthorization Required",
+ "DESCRIPTION": "Your WhatsApp connection has expired. Please reconnect to continue receiving and sending messages.",
+ "BUTTON_TEXT": "Reconnect WhatsApp",
+ "LOADING_FACEBOOK": "Loading Facebook SDK...",
+ "SUCCESS": "WhatsApp reconnected successfully",
+ "ERROR": "Failed to reconnect WhatsApp. Please try again.",
+ "WHATSAPP_APP_ID_MISSING": "WhatsApp App ID is not configured. Please contact your administrator.",
+ "WHATSAPP_CONFIG_ID_MISSING": "WhatsApp Configuration ID is not configured. Please contact your administrator.",
+ "CONFIGURATION_ERROR": "Configuration error occurred during reauthorization.",
+ "FACEBOOK_LOAD_ERROR": "Failed to load Facebook SDK. Please try again.",
+ "TROUBLESHOOTING": {
+ "TITLE": "Troubleshooting",
+ "POPUP_BLOCKED": "Ensure pop-ups are allowed for this site",
+ "COOKIES": "Third-party cookies must be enabled",
+ "ADMIN_ACCESS": "You need admin access to the WhatsApp Business Account"
+ }
}
}
}
diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json
index ffd0f7765..65f73f500 100644
--- a/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json
@@ -280,6 +280,11 @@
"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_TEXT": "this link.",
+ "LINK_URL": "https://developers.facebook.com/docs/whatsapp/embedded-signup/custom-flows/onboarding-business-app-users#limitations"
+ },
"SUBMIT_BUTTON": "Connect with WhatsApp Business",
"AUTH_PROCESSING": "Authenticating with Meta",
"WAITING_FOR_BUSINESS_INFO": "Please complete business setup in the Meta window...",
@@ -598,6 +603,21 @@
"WHATSAPP_SECTION_UPDATE_TITLE": "更新 API Key",
"WHATSAPP_SECTION_UPDATE_PLACEHOLDER": "在此輸入新的 API Key",
"WHATSAPP_SECTION_UPDATE_BUTTON": "更新",
+ "WHATSAPP_EMBEDDED_SIGNUP_TITLE": "WhatsApp Embedded Signup",
+ "WHATSAPP_EMBEDDED_SIGNUP_SUBHEADER": "This inbox is connected through WhatsApp embedded signup.",
+ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "You can reconfigure this inbox to update your WhatsApp Business settings.",
+ "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigure",
+ "WHATSAPP_CONNECT_TITLE": "Connect to 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 App ID is not configured. Please contact your administrator.",
+ "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 Verification Token",
"WHATSAPP_WEBHOOK_SUBHEADER": "This token is used to verify the authenticity of the webhook endpoint.",
"WHATSAPP_TEMPLATES_SYNC_TITLE": "Sync Templates",
diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json b/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json
index 57b6a26f2..df361a65c 100644
--- a/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json
+++ b/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json
@@ -557,6 +557,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -604,6 +605,7 @@
"SEARCH_PLACEHOLDER": "Search..."
},
"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",
@@ -618,6 +620,73 @@
"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.”",
+ "BREADCRUMB": {
+ "TITLE": "Scenarios"
+ },
+ "BULK_ACTION": {
+ "SELECTED": "{count} item selected | {count} items selected",
+ "SELECT_ALL": "Select all ({count})",
+ "UNSELECT_ALL": "Unselect all ({count})",
+ "BULK_DELETE_BUTTON": "刪除"
+ },
+ "ADD": {
+ "SUGGESTED": {
+ "TITLE": "Example scenarios",
+ "ADD": "Add all",
+ "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": "Search..."
+ },
+ "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": {
diff --git a/config/locales/am.yml b/config/locales/am.yml
index 21d60833a..d0d6ce053 100644
--- a/config/locales/am.yml
+++ b/config/locales/am.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
am:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ am:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ am:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/ar.yml b/config/locales/ar.yml
index 437f35eeb..181c42fba 100644
--- a/config/locales/ar.yml
+++ b/config/locales/ar.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ar:
hello: 'مرحباً بالعالم'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: تم إرسال طلب إعادة تعيين كلمة المرور. يرجى مراجعة بريدك الإلكتروني للحصول على التعليمات.
reset_password_failure: المعذرة! لم نتمكن من العثور على أي مستخدم بعنوان البريد الإلكتروني المحدد.
@@ -53,6 +58,13 @@ ar:
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.'
+ 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 ثم حاول مرة أخرى.
@@ -360,3 +372,12 @@ ar:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'البريد الإلكتروني مطلوب'
+ 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/az.yml b/config/locales/az.yml
index 44994090c..dacb9109a 100644
--- a/config/locales/az.yml
+++ b/config/locales/az.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
az:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ az:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ az:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/bg.yml b/config/locales/bg.yml
index 16e4fd4e8..6c100c816 100644
--- a/config/locales/bg.yml
+++ b/config/locales/bg.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
bg:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ bg:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ bg:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/ca.yml b/config/locales/ca.yml
index 8b29afaa9..1355ac009 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ca:
hello: 'Hola món'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! S'ha restablert la contrasenya amb èxit. Revisa el correu per més instruccions.
reset_password_failure: Uh ho! No s'ha trobat cap compte amb aquest correu electrònic.
@@ -53,6 +58,13 @@ ca:
invalid_message_type: 'Tipus de missatge no vàlid. Acció no permesa'
slack:
invalid_channel_id: 'Canal slack no vàlid. Torna-ho a provar'
+ 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.'
+ 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: Comprova la connexió de xarxa, l'adreça IMAP i torna-ho a provar.
@@ -344,3 +356,12 @@ ca:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'El correu electrònic és obligatori'
+ 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/cs.yml b/config/locales/cs.yml
index c2880dd93..c1ed7175c 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
cs:
hello: 'Ahoj svět'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Žádost o obnovení hesla byla úspěšná. Zkontrolujte svůj e-mail pro pokyny.
reset_password_failure: Jejda! Nenašli jsme žádného uživatele se zadaným e-mailem.
@@ -53,6 +58,13 @@ cs:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -352,3 +364,12 @@ cs:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/da.yml b/config/locales/da.yml
index 1ff160433..f1e49f351 100644
--- a/config/locales/da.yml
+++ b/config/locales/da.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
da:
hello: 'Hej verden'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Anmodning om nulstilling af adgangskode er vellykket. Tjek din mail for instruktioner.
reset_password_failure: Åh nej! Vi kunne ikke finde nogen bruger med den angivne e-mail.
@@ -53,6 +58,13 @@ da:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Tjek venligst netværksforbindelsen, IMAP-adressen og prøv igen.
@@ -344,3 +356,12 @@ da:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/de.yml b/config/locales/de.yml
index 34e04692c..2cd9a7165 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
de:
hello: 'Hallo Welt'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Die Anforderung zum Zurücksetzen des Passworts ist erfolgreich. Überprüfen Sie Ihre E-Mails auf Anweisungen.
reset_password_failure: Uh ho! Wir konnten keinen Benutzer mit der angegebenen E-Mail-Adresse finden.
@@ -53,6 +58,13 @@ de:
invalid_message_type: 'Ungültiger Nachrichtentyp. Aktion nicht erlaubt'
slack:
invalid_channel_id: 'Ungültiger Slack Channel. Bitte erneut versuchen'
+ 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.'
+ 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: Bitte überprüfen Sie die Netzwerkverbindung, die IMAP-Adresse und versuchen Sie es erneut.
@@ -344,3 +356,12 @@ de:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'E-Mail ist erforderlich'
+ 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/el.yml b/config/locales/el.yml
index c30f3b1d1..d2e2b5a67 100644
--- a/config/locales/el.yml
+++ b/config/locales/el.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
el:
hello: 'Χαίρε Κόσμε'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Το αίτημά σας για επαναφορά κωδικού ενεργοποιήθηκε. Ελέξτε το email σας για οδηγίες.
reset_password_failure: Ωχ όχι! Δεν υπάρχει κάποιος χρήστης με το συγκεκριμένο email.
@@ -53,6 +58,13 @@ el:
invalid_message_type: 'Μη έγκυρος τύπος μηνύματος. Δεν επιτρέπεται η ενέργεια'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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 και προσπαθήστε ξανά.
@@ -344,3 +356,12 @@ el:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/es.yml b/config/locales/es.yml
index 2007d7819..b7840de03 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
es:
hello: 'Hola mundo'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: '¡Genial! La solicitud de restablecimiento de contraseña ha sido exitosa. Revisa tu correo para ver las instrucciones.'
reset_password_failure: '¡Uh ho! No hemos podido encontrar ningún usuario con el correo electrónico especificado.'
@@ -53,6 +58,13 @@ es:
invalid_message_type: 'Tipo de mensaje inválido. Acción no permitida'
slack:
invalid_channel_id: 'Canal de slack inválido. Por favor, inténtalo de nuevo'
+ 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.'
+ 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: Verifique la conexión de red, la dirección IMAP y vuelva a intentarlo.
@@ -344,3 +356,12 @@ es:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'El email es requerido'
+ 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/fa.yml b/config/locales/fa.yml
index b52cc98ad..f36ca57eb 100644
--- a/config/locales/fa.yml
+++ b/config/locales/fa.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
fa:
hello: 'سلام دنیا'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: سوت! درخواست ریست شدن رمز عبور با موفقیت ارسال شد. ایمیل خود را چک کنید
reset_password_failure: اوه نه! کاربری با چنین ایمیلی وجود ندارد
@@ -53,6 +58,13 @@ fa:
invalid_message_type: 'نوع پیام نامعتبر است. اقدام مجاز نیست'
slack:
invalid_channel_id: 'کانال اسلک نامعتبر است. لطفا دوباره تلاش کنید'
+ 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.'
+ 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 را بررسی کنید و دوباره امتحان کنید.
@@ -344,3 +356,12 @@ fa:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'ایمیل الزامی است'
+ 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/fi.yml b/config/locales/fi.yml
index 20e2df251..4c30174f3 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
fi:
hello: 'Hei maailma'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Salasanan nollauspyyntö onnistui. Tarkista sähköpostisi saadaksesi ohjeita.
reset_password_failure: Hö! Emme löytäneet yhtään käyttäjää määritellyllä sähköpostilla.
@@ -53,6 +58,13 @@ fi:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ fi:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Sähköpostiosoite vaaditaan'
+ 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/fr.yml b/config/locales/fr.yml
index 3b113ccac..0d0a3a038 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
fr:
hello: 'Bonjour le monde'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Super ! La demande de réinitialisation du mot de passe a réussi. Consultez vos e-mails pour obtenir des instructions.
reset_password_failure: Oh oh ! Nous n'avons trouvé aucun utilisateur avec le courriel spécifié.
@@ -53,6 +58,13 @@ fr:
invalid_message_type: 'Type de message invalide. Action non autorisée'
slack:
invalid_channel_id: 'Canal Slack invalide. Veuillez réessayer'
+ 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.'
+ 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: Veuillez vérifier la connexion, l'adresse IMAP et réessayez.
@@ -344,3 +356,12 @@ fr:
Transcription :
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'L''e-mail est requis'
+ 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/he.yml b/config/locales/he.yml
index 25aa326e6..603293335 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
he:
hello: 'שלום עולם'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: יאס! בקשה לאיפוס ססמה נשלחה בהצלחה. בדוק תיבת מייל להוראות.
reset_password_failure: אופס! לא מצאנו משתמש עם המייל שצוין.
@@ -53,6 +58,13 @@ he:
invalid_message_type: 'סוג הודעה לא חוקי. פעולה אסורה'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -352,3 +364,12 @@ he:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/hi.yml b/config/locales/hi.yml
index be39b5ca7..91b8a488d 100644
--- a/config/locales/hi.yml
+++ b/config/locales/hi.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
hi:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ hi:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ hi:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/hr.yml b/config/locales/hr.yml
index e50712930..60006e9b8 100644
--- a/config/locales/hr.yml
+++ b/config/locales/hr.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
hr:
hello: 'Pozdrav svijet!'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ hr:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -348,3 +360,12 @@ hr:
Transkript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/hu.yml b/config/locales/hu.yml
index 1431aa6d1..dcac609e4 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
hu:
hello: 'Szia világ'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Mi?! A jelszóvisszaállítási kérésed sikeres volt. Nézd meg az e-mailed a részletekért.
reset_password_failure: Jajj ne! Nem találtunk felhasználót ezzel az e-mailcímmel.
@@ -53,6 +58,13 @@ hu:
invalid_message_type: 'Hibás üzenet típus. Kérés elutasítva'
slack:
invalid_channel_id: 'Érvénytelen Slack csatorna. Kérjük, próbálja újra'
+ 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.'
+ 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: Kérlek ellenőrizd a hálózati kapcsolatot, az IMAP címet, majd próbáld újra.
@@ -344,3 +356,12 @@ hu:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/hy.yml b/config/locales/hy.yml
index ef432a472..f2d031ce3 100644
--- a/config/locales/hy.yml
+++ b/config/locales/hy.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
hy:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ hy:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ hy:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/id.yml b/config/locales/id.yml
index 6360143f4..d7d4344ac 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
id:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Permintaan pengaturan ulang kata sandi berhasil. Periksa email Anda untuk mendapatkan petunjuk.
reset_password_failure: Aduh! Kami tidak dapat menemukan pengguna dengan email yang dimasukkan.
@@ -53,6 +58,13 @@ id:
invalid_message_type: 'Jenis pesan tidak valid. Tindakan tidak diizinkan'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Periksa sambungan jaringan, alamat IMAP, dan coba lagi.
@@ -340,3 +352,12 @@ id:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/is.yml b/config/locales/is.yml
index 2803bc09c..dadeae6bc 100644
--- a/config/locales/is.yml
+++ b/config/locales/is.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
is:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Beiðni um endurstillingu lykilorðs tókst. Skoðaðu póstinn þinn til að fá leiðbeiningar.
reset_password_failure: Uh ó! Við fundum engan notanda með tilgreint netfang.
@@ -53,6 +58,13 @@ is:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Athugaðu nettenginguna, IMAP vistfangið og reyndu aftur.
@@ -344,3 +356,12 @@ is:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/it.yml b/config/locales/it.yml
index 116d9b9db..b392f311f 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
it:
hello: 'Ciao mondo'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Richiesta di reimpostazione della password riuscita. Controlla la tua mail per le istruzioni.
reset_password_failure: Uh ho! Non siamo riusciti a trovare alcun utente con l'email specificata.
@@ -53,6 +58,13 @@ it:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Controlla la connessione di rete, l'indirizzo IMAP e riprova.
@@ -91,7 +103,7 @@ it:
conversations_count: Numero di conversazioni
avg_first_response_time: Avg first response time
avg_resolution_time: Avg resolution time
- avg_reply_time: Avg reply time
+ avg_reply_time: Tempo medio di risposta
resolution_count: Conteggio risoluzioni
team_csv:
team_name: Nome del team
@@ -135,18 +147,18 @@ it:
no_content: 'No content'
conversations:
captain:
- handoff: 'Transferring to another agent for further assistance.'
+ handoff: 'Trasferimento ad un altro agente per ulteriore assistenza.'
messages:
instagram_story_content: '%{story_sender} ti ha menzionato nella storia: '
instagram_deleted_story_content: Questa storia non è più disponibile.
deleted: Questo messaggio è stato eliminato
whatsapp:
- list_button_label: 'Choose an item'
+ list_button_label: 'Scegli un elemento'
delivery_status:
error_code: 'Error code: %{error_code}'
activity:
captain:
- resolved: 'Conversation was marked resolved by %{user_name} due to inactivity'
+ resolved: 'La conversazione è stata segnata risolta da %{user_name} a causa di inattività'
open: 'Conversation was marked open by %{user_name}'
status:
resolved: 'La conversazione è stata contrassegnata come risolta da %{user_name}'
@@ -177,9 +189,9 @@ it:
added: '%{user_name} added SLA policy %{sla_name}'
removed: '%{user_name} removed SLA policy %{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}'
+ issue_created: 'Issue Linear %{issue_id} è stata creata da %{user_name}'
+ issue_linked: 'Issue Linear %{issue_id} è stata collegata da %{user_name}'
+ issue_unlinked: 'Issue Linear %{issue_id} è stata scollegata da %{user_name}'
csat:
not_sent_due_to_messaging_window: 'CSAT survey not sent due to outgoing message restrictions'
auto_resolve:
@@ -241,12 +253,12 @@ it:
description: 'Leverage the power of large language models from OpenAI with the features such as reply suggestions, summarization, message rephrasing, spell-checking, and label classification.'
linear:
name: 'Linear'
- short_description: 'Create and link Linear issues directly from conversations.'
+ short_description: 'Crea e collega issue Linear direttamente dalle conversazioni.'
description: 'Create issues in Linear directly from your conversation window. Alternatively, link existing Linear issues for a more streamlined and efficient issue tracking process.'
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.'
+ short_description: 'Integra database, documenti e pagine direttamente con Captain.'
+ description: 'Collega il tuo spazio di lavoro Notion per consentire al Captain di accedere e generare risposte intelligenti utilizzando i contenuti dai tuoi database, documenti, e pagine per fornire più assistenza clienti contestuale.'
shopify:
name: 'Shopify'
short_description: 'Access order details and customer data from your Shopify store.'
@@ -262,8 +274,8 @@ it:
copilot:
using_tool: 'Using tool %{function_name}'
completed_tool_call: 'Completed %{function_name} tool call'
- invalid_tool_call: 'Invalid tool call'
- tool_not_available: 'Tool not available'
+ invalid_tool_call: 'Chiamata strumento non valida'
+ tool_not_available: 'Strumento non disponibile'
public_portal:
search:
search_placeholder: Search for article by title or body...
@@ -289,7 +301,7 @@ it:
made_with: Made with
header:
go_to_homepage: Website
- visit_website: Visit website
+ visit_website: Visita sito
appearance:
system: System
light: Light
@@ -323,7 +335,7 @@ it:
one: '%{count} second'
other: '%{count} seconds'
automation:
- system_name: 'Automation System'
+ system_name: 'Sistema di Automazione'
crm:
no_message: 'No messages in conversation'
attachment: '[Attachment: %{type}]'
@@ -344,3 +356,12 @@ it:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'L''email è obbligatoria'
+ 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/ja.yml b/config/locales/ja.yml
index 930aeddfa..5e5d16c81 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ja:
hello: 'こんにちは世界'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: やりましたね! パスワードのリセットリクエストが成功しました。手順についてはメールを確認してください。
reset_password_failure: メールアドレスが見つかりませんでした。
@@ -53,6 +58,13 @@ ja:
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.'
+ 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アドレスを確認の上、再度お試しください。
@@ -340,3 +352,12 @@ ja:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/ka.yml b/config/locales/ka.yml
index 7a2d22c92..5a0d06abd 100644
--- a/config/locales/ka.yml
+++ b/config/locales/ka.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ka:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ ka:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ ka:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/ko.yml b/config/locales/ko.yml
index 3f178e684..78b4bbc6f 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ko:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ ko:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -340,3 +352,12 @@ ko:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: '이메일이 필요합니다'
+ 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/lt.yml b/config/locales/lt.yml
index 57b7e06f5..b17069dc4 100644
--- a/config/locales/lt.yml
+++ b/config/locales/lt.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
lt:
hello: 'Labas pasauli'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Kietai! Slaptažodžio nustatymo iš naujo užklausa įvykdyta. Instrukcijų ieškokite savo pašte.
reset_password_failure: Oho! Nepavyko rasti vartotojo su nurodytu el. pašto adresu.
@@ -53,6 +58,13 @@ lt:
invalid_message_type: 'Neteisingas pranešimo tipas. Veiksmas neleidžiamas'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Patikrinkite tinklo sujungimus, IMAP adresą ir bandykite dar kartą.
@@ -352,3 +364,12 @@ lt:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/lv.yml b/config/locales/lv.yml
index 423a83b16..73e369bb1 100644
--- a/config/locales/lv.yml
+++ b/config/locales/lv.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
lv:
hello: 'Sveika pasaule'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Urā! Paroles atiestatīšanas pieprasījums ir veiksmīgs. Pārbaudiet savu e-pastu, lai iegūtu norādījumus.
reset_password_failure: Ak, vai! Mēs nevarējām atrast nevienu lietotāju ar norādīto e -pastu.
@@ -53,6 +58,13 @@ lv:
invalid_message_type: 'Nederīgs ziņojuma veids. Darbība nav atļauta'
slack:
invalid_channel_id: 'Nepareizs Slack kanāls. Lūdzu, mēģiniet vēlreiz'
+ 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.'
+ 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: Lūdzu, pārbaudiet tīkla savienojumu, IMAP adresi un mēģiniet vēlreiz.
@@ -348,3 +360,12 @@ lv:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/ml.yml b/config/locales/ml.yml
index 56c2b4a8e..b300aa883 100644
--- a/config/locales/ml.yml
+++ b/config/locales/ml.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ml:
hello: 'ലോകത്തിനു നമസ്ക്കാരം 🙏'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! പാസ്വേഡ് പുനസജ്ജീകരണത്തിനുള്ള അഭ്യർത്ഥന വിജയകരമാണ്. നിർദ്ദേശങ്ങൾക്കായി നിങ്ങളുടെ മെയിൽ പരിശോധിക്കുക.
reset_password_failure: ക്ഷമിക്കണം! നിർദ്ദിഷ്ട ഇമെയിൽ ഉള്ള ഒരു ഉപയോക്താവിനെയും ഞങ്ങൾക്ക് കണ്ടെത്താൻ കഴിഞ്ഞില്ല.
@@ -53,6 +58,13 @@ ml:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ ml:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'ഇമെയിൽ ആവശ്യമാണ്'
+ 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/ms.yml b/config/locales/ms.yml
index a65de867f..5d17ff0bc 100644
--- a/config/locales/ms.yml
+++ b/config/locales/ms.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ms:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ ms:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -340,3 +352,12 @@ ms:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/ne.yml b/config/locales/ne.yml
index 66172e513..ac517598d 100644
--- a/config/locales/ne.yml
+++ b/config/locales/ne.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ne:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ ne:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ ne:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/nl.yml b/config/locales/nl.yml
index 98963cc9c..8ca9b96f4 100644
--- a/config/locales/nl.yml
+++ b/config/locales/nl.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
nl:
hello: 'Hallo wereld'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Verzoek om wachtwoord te resetten is gelukt. Controleer je e-mail voor instructies.
reset_password_failure: Oh ho! We konden geen gebruiker vinden met het opgegeven e-mailadres.
@@ -53,6 +58,13 @@ nl:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Controleer de netwerkverbinding, IMAP-adres en probeer het opnieuw.
@@ -344,3 +356,12 @@ nl:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'E-mail is vereist'
+ 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/no.yml b/config/locales/no.yml
index 802b4f446..ad1102e41 100644
--- a/config/locales/no.yml
+++ b/config/locales/no.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
"no":
hello: 'Hallo, verden'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Forespørsel om tilbakestilling av passord er vellykket. Sjekk innboksen for instruksjoner.
reset_password_failure: Uff da! Vi fant ingen bruker med den angitte eposten.
@@ -53,6 +58,13 @@
invalid_message_type: 'Ugyldig meldingstype. Handlingen er ikke tillatt'
slack:
invalid_channel_id: 'Ugyldig slack kanal. Vennligst prøv på nytt'
+ 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.'
+ 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: Kontroller nettverkstilkoblingen, IMAP-adressen og prøv på nytt.
@@ -344,3 +356,12 @@
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/pl.yml b/config/locales/pl.yml
index 8fb84eb32..116d8d542 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
pl:
hello: 'Witaj świecie'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Prośba o zresetowanie hasła zakończona pomyślnie. Sprawdź swoją pocztę, aby uzyskać instrukcje.
reset_password_failure: Ups! Nie mogliśmy znaleźć żadnego użytkownika z podanym adresem e-mail.
@@ -53,6 +58,13 @@ pl:
invalid_message_type: 'Nieprawidłowy typ wiadomości. Niedozwolone działanie.'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Sprawdź połączenie sieciowe, adres IMAP i spróbuj ponownie.
@@ -352,3 +364,12 @@ pl:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'E-mail jest wymagany'
+ 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/pt.yml b/config/locales/pt.yml
index 610207306..b4df9763c 100644
--- a/config/locales/pt.yml
+++ b/config/locales/pt.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
pt:
hello: 'Olá, mundo'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Legal! Pedido de redefinição de senha bem sucedido. Verifique o seu e-mail para obter instruções.
reset_password_failure: Uh ho! Não conseguimos encontrar nenhum uutilizador com o e-mail especificado.
@@ -53,6 +58,13 @@ pt:
invalid_message_type: 'Tipo de mensagem inválido. Ação não permitida'
slack:
invalid_channel_id: 'Canal de slack inválido. Por favor, tente novamente'
+ 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.'
+ 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: Por favor, verifique a ligação à rede, endereço IMAP e tente novamente.
@@ -332,3 +344,12 @@ pt:
Nova conversa iniciada em %{brand_name}\n\nCanal: %{channel_info}\nCriado: %{formatted_creation_time}\nID da conversa: %{display_id}\nVer em %{brand_name}: %{url}
transcript_activity: |
Transcrição da conversa de %{brand_name}\n\nCanal: %{channel_info}\nID da conversa: %{display_id}\nVer em %{brand_name}: %{url}\n\nTranscrição:\n%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'E-mail é necessário'
+ 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/pt_BR.yml b/config/locales/pt_BR.yml
index b13f0204f..7ddc6d31f 100644
--- a/config/locales/pt_BR.yml
+++ b/config/locales/pt_BR.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
pt_BR:
hello: 'Olá, mundo'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Legal! A solicitação de alteração de senha foi bem sucedida. Verifique seu e-mail para obter instruções.
reset_password_failure: Uh ho! Não conseguimos encontrar nenhum usuário com o e-mail especificado.
@@ -53,6 +58,13 @@ pt_BR:
invalid_message_type: 'Tipo de mensagem inválido. Ação não permitida'
slack:
invalid_channel_id: 'Canal de slack inválido. Por favor, tente novamente'
+ 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.'
+ 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: Por favor, verifique a conexão de rede, endereço IMAP e tente novamente.
@@ -344,3 +356,12 @@ pt_BR:
Transcrição:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'E-mail é obrigatório'
+ 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/ro.yml b/config/locales/ro.yml
index e0c56de83..c6941ab52 100644
--- a/config/locales/ro.yml
+++ b/config/locales/ro.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ro:
hello: 'Salutare lume'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Cererea de resetare a parolei a reusit. Verifica emailul pentru instructiuni.
reset_password_failure: Nu am putut găsi niciun utilizator cu e-mailul specificat.
@@ -53,6 +58,13 @@ ro:
invalid_message_type: 'Tip de mesaj nevalid. Acțiune nepermisă'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Verificați conexiunea la rețea, adresa IMAP și încercați din nou.
@@ -348,3 +360,12 @@ ro:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'E-mailul este necesar'
+ 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/ru.yml b/config/locales/ru.yml
index bdde6d62a..8bea444c2 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ru:
hello: 'Привет мир'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Круто! Запрос на сброс пароля удался. Проверьте почту для получения инструкций.
reset_password_failure: Ой! Мы не смогли найти пользователя с указанным email.
@@ -53,6 +58,13 @@ ru:
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.'
+ 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 и повторите попытку.
@@ -352,3 +364,12 @@ ru:
Transcript:
%{format_messages}
+ 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/sh.yml b/config/locales/sh.yml
index 0ec3547f8..983466533 100644
--- a/config/locales/sh.yml
+++ b/config/locales/sh.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
sh:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ sh:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -352,3 +364,12 @@ sh:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/sk.yml b/config/locales/sk.yml
index 07cb5ebde..7f4b3df66 100644
--- a/config/locales/sk.yml
+++ b/config/locales/sk.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
sk:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ sk:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -352,3 +364,12 @@ sk:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/sl.yml b/config/locales/sl.yml
index db82f23eb..7690b3731 100644
--- a/config/locales/sl.yml
+++ b/config/locales/sl.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
sl:
hello: 'Pozdravljen svet'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Juhu! Zahteva za ponastavitev gesla je bila uspešna. Preverite svojo e-pošto za navodila.
reset_password_failure: O ne! Nismo mogli najti nobenega uporabnika z navedenim e-poštnim naslovom.
@@ -53,6 +58,13 @@ sl:
invalid_message_type: 'Neveljavna vrsta sporočila. Dejanje ni dovoljeno'
slack:
invalid_channel_id: 'Neveljaven slack kanal. Prosimo poskusite ponovno'
+ 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.'
+ 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: Preverite omrežno povezavo, naslov IMAP in poskusite znova.
@@ -352,3 +364,12 @@ sl:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/sq.yml b/config/locales/sq.yml
index 84e74137f..07d605048 100644
--- a/config/locales/sq.yml
+++ b/config/locales/sq.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
sq:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ sq:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ sq:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/sr.yml b/config/locales/sr.yml
index d7e9b8b0b..0317020bc 100644
--- a/config/locales/sr.yml
+++ b/config/locales/sr.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
sr-Latn:
hello: 'Zdravo svete'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Opa! Zahtev za resetovanjem lozinke je uspešan. Proverite vašu e-poštu za uputstvo.
reset_password_failure: O ne! Nismo mogli da pronađemo nijednog korisnika sa navedenom e-poštom.
@@ -53,6 +58,13 @@ sr-Latn:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Molim vas proverite vezu sa mrežom, IMAP adresu i pokušajte ponovo.
@@ -348,3 +360,12 @@ sr-Latn:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/sv.yml b/config/locales/sv.yml
index 0c6db6561..bdb3efb92 100644
--- a/config/locales/sv.yml
+++ b/config/locales/sv.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
sv:
hello: 'Hej världen'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Begäran om återställning av lösenord lyckades. Kontrollera din e-post för instruktioner.
reset_password_failure: Oj då! Vi kunde inte hitta någon användare med den angivna e-postadressen.
@@ -53,6 +58,13 @@ sv:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ sv:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/ta.yml b/config/locales/ta.yml
index 4002781b8..c09c35f62 100644
--- a/config/locales/ta.yml
+++ b/config/locales/ta.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ta:
hello: 'உலக மக்களுக்கு வணக்கம்'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: வூட்! பாஸ்வேர்டை மீட்டமைப்பிற்கான கோரிக்கை வெற்றிகரமாக அனுப்பப்பட்டுள்ளது. வழிமுறைகளுக்கு உங்கள் ஈ-மெயிலைப் பார்க்கவும்.
reset_password_failure: மன்னிக்கவும்! குறிப்பிட்ட ஈ-மெயிலுடன் எந்த பயனரையும் எங்களால் கண்டுபிடிக்க முடியவில்லை.
@@ -53,6 +58,13 @@ ta:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ ta:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/th.yml b/config/locales/th.yml
index 035ec8206..f356cc34c 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
th:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ th:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -340,3 +352,12 @@ th:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/tl.yml b/config/locales/tl.yml
index 9952a7c93..e127396ef 100644
--- a/config/locales/tl.yml
+++ b/config/locales/tl.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
tl:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ tl:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ tl:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/tr.yml b/config/locales/tr.yml
index 83fe47a92..b917848e8 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
tr:
hello: 'Merhaba Dünya'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Parola sıfırlama isteği başarılı. Talimatlar için postanızı kontrol edin.
reset_password_failure: Belirtilen e-postaya sahip herhangi bir kullanıcı bulamadık.
@@ -53,6 +58,13 @@ tr:
invalid_message_type: 'Geçersiz mesaj türü. İşlem izin verilmiyor'
slack:
invalid_channel_id: 'Geçersiz Slack kanalı. Lütfen tekrar deneyin'
+ 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.'
+ 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: Lütfen ağ bağlantınızı, IMAP adresini kontrol edin ve tekrar deneyin.
@@ -344,3 +356,12 @@ tr:
Döküm:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'E-posta gereklidir'
+ 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: 'Özel alan adı yapılandırılmamış'
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index d7afbbdd3..90b82d772 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
uk:
hello: 'Привіт, світе'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Круто! Запит на скидання пароля виконано успішно. Перевірте вашу пошту за подальшими інструкціями.
reset_password_failure: Ой-ой! Ми не змогли знайти жодного користувача з цією адресою електронної пошти.
@@ -53,6 +58,13 @@ uk:
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.'
+ 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 і повторіть спробу.
@@ -352,3 +364,12 @@ uk:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Необхідно вказати електронну адресу'
+ 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/ur.yml b/config/locales/ur.yml
index e3c7382e8..76c0a93d0 100644
--- a/config/locales/ur.yml
+++ b/config/locales/ur.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ur:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ ur:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ ur:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/ur_IN.yml b/config/locales/ur_IN.yml
index 8207db68c..869c4fac9 100644
--- a/config/locales/ur_IN.yml
+++ b/config/locales/ur_IN.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
ur:
hello: 'Hello world'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
@@ -53,6 +58,13 @@ ur:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -344,3 +356,12 @@ ur:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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/vi.yml b/config/locales/vi.yml
index 91119144d..593f5d2dd 100644
--- a/config/locales/vi.yml
+++ b/config/locales/vi.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
vi:
hello: 'Chào thế giới'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: Chà! Yêu cầu đặt lại mật khẩu thành công. Kiểm tra thư của bạn để biết hướng dẫn.
reset_password_failure: Uh ho! Chúng tôi không thể tìm thấy bất kỳ người dùng nào có email được chỉ định.
@@ -53,6 +58,13 @@ vi:
invalid_message_type: 'Loại tin nhắn không hợp lệ. Hành động không được phép'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Vui lòng kiểm tra kết nối mạng, địa chỉ IMAP và thử lại.
@@ -340,3 +352,12 @@ vi:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email bắt buộc có'
+ 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 5e57bcd06..a4db743d9 100644
--- a/config/locales/zh_CN.yml
+++ b/config/locales/zh_CN.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
zh_CN:
hello: '您好世界'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: 哇!密码重置请求成功。请检查您的邮件获取说明。
reset_password_failure: 哎呀!我们找不到指定电子邮件的任何用户。
@@ -53,6 +58,13 @@ zh_CN:
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.'
+ 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地址,然后再试一次。
@@ -340,3 +352,12 @@ zh_CN:
副本:
%{format_messages}
+ 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_TW.yml b/config/locales/zh_TW.yml
index 4ff8ba720..35182bf8f 100644
--- a/config/locales/zh_TW.yml
+++ b/config/locales/zh_TW.yml
@@ -18,6 +18,11 @@
#available at https://guides.rubyonrails.org/i18n.html.
zh_TW:
hello: '你好。'
+ inbox:
+ reauthorization:
+ success: 'Channel reauthorized successfully'
+ not_required: 'Reauthorization is not required for this inbox'
+ invalid_channel: 'Invalid channel type for reauthorization'
messages:
reset_password_success: 密碼重設成功,請確認您的信箱有收到重設信件。
reset_password_failure: 我們找不到用戶指定的電子郵件。
@@ -53,6 +58,13 @@ zh_TW:
invalid_message_type: 'Invalid message type. Action not permitted'
slack:
invalid_channel_id: 'Invalid slack channel. Please try again'
+ 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.'
+ 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: Please check the network connection, IMAP address and try again.
@@ -340,3 +352,12 @@ zh_TW:
Transcript:
%{format_messages}
+ portals:
+ send_instructions:
+ email_required: 'Email is required'
+ 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'
From 6cab74139231495eac76d53ab386d132efb1e92f Mon Sep 17 00:00:00 2001
From: Vishnu Narayanan
Date: Mon, 11 Aug 2025 12:41:37 +0530
Subject: [PATCH 26/93] fix: handle active storage preview error for password
protected pdfs (#11888)
Co-authored-by: Muhsin Keloth
---
app/controllers/slack_uploads_controller.rb | 7 ++++++-
app/models/attachment.rb | 8 +++-----
config/application.rb | 3 +++
spec/models/attachment_spec.rb | 16 ++++++++++++++++
4 files changed, 28 insertions(+), 6 deletions(-)
diff --git a/app/controllers/slack_uploads_controller.rb b/app/controllers/slack_uploads_controller.rb
index 127e77649..6f157c7d5 100644
--- a/app/controllers/slack_uploads_controller.rb
+++ b/app/controllers/slack_uploads_controller.rb
@@ -17,7 +17,12 @@ class SlackUploadsController < ApplicationController
end
def blob_url
- url_for(@blob.representation(resize_to_fill: [250, nil]))
+ # Only generate representations for images
+ if @blob.content_type.start_with?('image/')
+ url_for(@blob.representation(resize_to_fill: [250, nil]))
+ else
+ url_for(@blob)
+ end
end
def avatar_url
diff --git a/app/models/attachment.rb b/app/models/attachment.rb
index fd114c38c..8c5750148 100644
--- a/app/models/attachment.rb
+++ b/app/models/attachment.rb
@@ -60,11 +60,9 @@ class Attachment < ApplicationRecord
end
def thumb_url
- if file.attached? && file.representable?
- url_for(file.representation(resize_to_fill: [250, nil]))
- else
- ''
- end
+ return '' unless file.attached? && image?
+
+ url_for(file.representation(resize_to_fill: [250, nil]))
end
def with_attached_file?
diff --git a/config/application.rb b/config/application.rb
index 5316e65bf..92dd9a011 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -61,6 +61,9 @@ module Chatwoot
# https://discuss.rubyonrails.org/t/cve-2022-32224-possible-rce-escalation-bug-with-serialized-columns-in-active-record/81017
# FIX ME : fixes breakage of installation config. we need to migrate.
config.active_record.yaml_column_permitted_classes = [ActiveSupport::HashWithIndifferentAccess]
+
+ # Disable PDF/video preview generation as we don't use them
+ config.active_storage.previewers = []
end
def self.config
diff --git a/spec/models/attachment_spec.rb b/spec/models/attachment_spec.rb
index 241125538..0b03a56ad 100644
--- a/spec/models/attachment_spec.rb
+++ b/spec/models/attachment_spec.rb
@@ -68,6 +68,22 @@ RSpec.describe Attachment do
end
end
+ describe 'thumb_url' do
+ it 'returns empty string for non-image attachments' do
+ attachment = message.attachments.new(account_id: message.account_id, file_type: :file)
+ attachment.file.attach(io: StringIO.new('fake pdf'), filename: 'test.pdf', content_type: 'application/pdf')
+
+ expect(attachment.thumb_url).to eq('')
+ end
+
+ it 'generates thumb_url for image attachments' do
+ attachment = message.attachments.create!(account_id: message.account_id, file_type: :image)
+ attachment.file.attach(io: StringIO.new('fake image'), filename: 'test.jpg', content_type: 'image/jpeg')
+
+ expect(attachment.thumb_url).to be_present
+ end
+ end
+
describe 'meta data handling' do
let(:message) { create(:message) }
From fcc6e2b8b205afec25ac965d932009a054b1e275 Mon Sep 17 00:00:00 2001
From: Shivam Mishra
Date: Mon, 11 Aug 2025 13:06:20 +0530
Subject: [PATCH 27/93] feat: Add `feature_citation` toggle for Captain
assistants (#12052)
Co-authored-by: Muhsin Keloth
---
.../assistant/AssistantForm.vue | 10 +++++
.../settings/AssistantBasicSettingsForm.vue | 11 +++++
.../i18n/locale/en/integrations.json | 3 +-
...dd_feature_citation_to_assistant_config.rb | 17 ++++++++
db/schema.rb | 2 +-
.../accounts/captain/assistants_controller.rb | 2 +-
.../services/captain/copilot/chat_service.rb | 3 +-
.../captain/llm/system_prompts_service.rb | 42 ++++++++++++++-----
.../captain/assistants_controller_spec.rb | 42 ++++++++++++++++++-
9 files changed, 115 insertions(+), 17 deletions(-)
create mode 100644 db/migrate/20250808123008_add_feature_citation_to_assistant_config.rb
diff --git a/app/javascript/dashboard/components-next/captain/pageComponents/assistant/AssistantForm.vue b/app/javascript/dashboard/components-next/captain/pageComponents/assistant/AssistantForm.vue
index 8c26de2f5..ecf13c286 100644
--- a/app/javascript/dashboard/components-next/captain/pageComponents/assistant/AssistantForm.vue
+++ b/app/javascript/dashboard/components-next/captain/pageComponents/assistant/AssistantForm.vue
@@ -35,6 +35,7 @@ const initialState = {
productName: '',
featureFaq: false,
featureMemory: false,
+ featureCitation: false,
};
const state = reactive({ ...initialState });
@@ -70,6 +71,7 @@ const prepareAssistantDetails = () => ({
product_name: state.productName,
feature_faq: state.featureFaq,
feature_memory: state.featureMemory,
+ feature_citation: state.featureCitation,
},
});
@@ -93,6 +95,7 @@ const updateStateFromAssistant = assistant => {
productName: config.product_name,
featureFaq: config.feature_faq || false,
featureMemory: config.feature_memory || false,
+ featureCitation: config.feature_citation || false,
});
};
@@ -151,6 +154,13 @@ watch(
{{ t('CAPTAIN.ASSISTANTS.FORM.FEATURES.ALLOW_MEMORIES') }}
+
+
+
+
+ {{ t('CAPTAIN.ASSISTANTS.FORM.FEATURES.ALLOW_CITATIONS') }}
+
+
diff --git a/app/javascript/dashboard/components-next/captain/pageComponents/assistant/settings/AssistantBasicSettingsForm.vue b/app/javascript/dashboard/components-next/captain/pageComponents/assistant/settings/AssistantBasicSettingsForm.vue
index 236791793..faaf0a825 100644
--- a/app/javascript/dashboard/components-next/captain/pageComponents/assistant/settings/AssistantBasicSettingsForm.vue
+++ b/app/javascript/dashboard/components-next/captain/pageComponents/assistant/settings/AssistantBasicSettingsForm.vue
@@ -26,6 +26,7 @@ const initialState = {
features: {
conversationFaqs: false,
memories: false,
+ citations: false,
},
};
@@ -57,6 +58,7 @@ const updateStateFromAssistant = assistant => {
state.features = {
conversationFaqs: config.feature_faq || false,
memories: config.feature_memory || false,
+ citations: config.feature_citation || false,
};
};
@@ -76,6 +78,7 @@ const handleBasicInfoUpdate = async () => {
product_name: state.productName,
feature_faq: state.features.conversationFaqs,
feature_memory: state.features.memories,
+ feature_citation: state.features.citations,
},
};
@@ -138,6 +141,14 @@ watch(
/>
{{ t('CAPTAIN.ASSISTANTS.FORM.FEATURES.ALLOW_MEMORIES') }}
+
+
+ {{ t('CAPTAIN.ASSISTANTS.FORM.FEATURES.ALLOW_CITATIONS') }}
+