diff --git a/app/builders/v2/reports/label_summary_builder.rb b/app/builders/v2/reports/label_summary_builder.rb new file mode 100644 index 000000000..abc68b26b --- /dev/null +++ b/app/builders/v2/reports/label_summary_builder.rb @@ -0,0 +1,101 @@ +class V2::Reports::LabelSummaryBuilder < V2::Reports::BaseSummaryBuilder + attr_reader :account, :params + + # rubocop:disable Lint/MissingSuper + # the parent class has no initialize + def initialize(account:, params:) + @account = account + @params = params + + timezone_offset = (params[:timezone_offset] || 0).to_f + @timezone = ActiveSupport::TimeZone[timezone_offset]&.name + end + # rubocop:enable Lint/MissingSuper + + def build + labels = account.labels.to_a + return [] if labels.empty? + + report_data = collect_report_data + labels.map { |label| build_label_report(label, report_data) } + end + + private + + def collect_report_data + conversation_filter = build_conversation_filter + use_business_hours = use_business_hours? + + { + conversation_counts: fetch_conversation_counts(conversation_filter), + resolved_counts: fetch_resolved_counts(conversation_filter), + resolution_metrics: fetch_metrics(conversation_filter, 'conversation_resolved', use_business_hours), + first_response_metrics: fetch_metrics(conversation_filter, 'first_response', use_business_hours), + reply_metrics: fetch_metrics(conversation_filter, 'reply', use_business_hours) + } + end + + def build_label_report(label, report_data) + { + id: label.id, + name: label.title, + conversations_count: report_data[:conversation_counts][label.title] || 0, + avg_resolution_time: report_data[:resolution_metrics][label.title] || 0, + avg_first_response_time: report_data[:first_response_metrics][label.title] || 0, + avg_reply_time: report_data[:reply_metrics][label.title] || 0, + resolved_conversations_count: report_data[:resolved_counts][label.title] || 0 + } + end + + def use_business_hours? + ActiveModel::Type::Boolean.new.cast(params[:business_hours]) + end + + def build_conversation_filter + conversation_filter = { account_id: account.id } + conversation_filter[:created_at] = range if range.present? + + conversation_filter + end + + def fetch_conversation_counts(conversation_filter) + fetch_counts(conversation_filter) + end + + def fetch_resolved_counts(conversation_filter) + fetch_counts(conversation_filter.merge(status: :resolved)) + end + + def fetch_counts(conversation_filter) + ActsAsTaggableOn::Tagging + .joins('INNER JOIN conversations ON taggings.taggable_id = conversations.id') + .joins('INNER JOIN tags ON taggings.tag_id = tags.id') + .where( + taggable_type: 'Conversation', + context: 'labels', + conversations: conversation_filter + ) + .select('tags.name, COUNT(taggings.*) AS count') + .group('tags.name') + .each_with_object({}) { |record, hash| hash[record.name] = record.count } + end + + def fetch_metrics(conversation_filter, event_name, use_business_hours) + ReportingEvent + .joins('INNER JOIN conversations ON reporting_events.conversation_id = conversations.id') + .joins('INNER JOIN taggings ON taggings.taggable_id = conversations.id') + .joins('INNER JOIN tags ON taggings.tag_id = tags.id') + .where( + conversations: conversation_filter, + name: event_name, + taggings: { taggable_type: 'Conversation', context: 'labels' } + ) + .group('tags.name') + .order('tags.name') + .select( + 'tags.name', + use_business_hours ? 'AVG(reporting_events.value_in_business_hours) as avg_value' : 'AVG(reporting_events.value) as avg_value' + ) + .each_with_object({}) { |record, hash| hash[record.name] = record.avg_value.to_f } + end +end diff --git a/app/controllers/api/v1/accounts/conversations_controller.rb b/app/controllers/api/v1/accounts/conversations_controller.rb index 8753918fc..e27869d82 100644 --- a/app/controllers/api/v1/accounts/conversations_controller.rb +++ b/app/controllers/api/v1/accounts/conversations_controller.rb @@ -124,6 +124,12 @@ class Api::V1::Accounts::ConversationsController < Api::V1::Accounts::BaseContro @conversation.save! end + def destroy + authorize @conversation, :destroy? + ::DeleteObjectJob.perform_later(@conversation, Current.user, request.ip) + head :ok + end + private def permitted_update_params diff --git a/app/controllers/api/v1/accounts_controller.rb b/app/controllers/api/v1/accounts_controller.rb index 4d675593f..773126755 100644 --- a/app/controllers/api/v1/accounts_controller.rb +++ b/app/controllers/api/v1/accounts_controller.rb @@ -92,7 +92,7 @@ class Api::V1::AccountsController < Api::BaseController end def settings_params - params.permit(:auto_resolve_after, :auto_resolve_message, :auto_resolve_ignore_waiting, :auto_resolve_label) + params.permit(:auto_resolve_after, :auto_resolve_message, :auto_resolve_ignore_waiting, :audio_transcriptions, :auto_resolve_label) end def check_signup_enabled diff --git a/app/controllers/api/v2/accounts/summary_reports_controller.rb b/app/controllers/api/v2/accounts/summary_reports_controller.rb index 989952cfd..f31a53c7e 100644 --- a/app/controllers/api/v2/accounts/summary_reports_controller.rb +++ b/app/controllers/api/v2/accounts/summary_reports_controller.rb @@ -1,6 +1,6 @@ class Api::V2::Accounts::SummaryReportsController < Api::V1::Accounts::BaseController before_action :check_authorization - before_action :prepare_builder_params, only: [:agent, :team, :inbox] + before_action :prepare_builder_params, only: [:agent, :team, :inbox, :label] def agent render_report_with(V2::Reports::AgentSummaryBuilder) @@ -14,6 +14,10 @@ class Api::V2::Accounts::SummaryReportsController < Api::V1::Accounts::BaseContr render_report_with(V2::Reports::InboxSummaryBuilder) end + def label + render_report_with(V2::Reports::LabelSummaryBuilder) + end + private def check_authorization diff --git a/app/controllers/dashboard_controller.rb b/app/controllers/dashboard_controller.rb index a2cb466f1..6a4ce2461 100644 --- a/app/controllers/dashboard_controller.rb +++ b/app/controllers/dashboard_controller.rb @@ -15,7 +15,7 @@ class DashboardController < ActionController::Base private def ensure_html_format - head :not_acceptable unless request.format.html? + render json: { error: 'Please use API routes instead of dashboard routes for JSON requests' }, status: :not_acceptable if request.format.json? end def set_global_config diff --git a/app/controllers/oauth_callback_controller.rb b/app/controllers/oauth_callback_controller.rb index 4cb02d266..9aa73956a 100644 --- a/app/controllers/oauth_callback_controller.rb +++ b/app/controllers/oauth_callback_controller.rb @@ -71,6 +71,7 @@ class OauthCallbackController < ApplicationController def create_channel_with_inbox ActiveRecord::Base.transaction do channel_email = Channel::Email.create!(email: users_data['email'], account: account) + account.inboxes.create!( account: account, channel: channel_email, diff --git a/app/controllers/super_admin/account_users_controller.rb b/app/controllers/super_admin/account_users_controller.rb index b210dea19..d665b5684 100644 --- a/app/controllers/super_admin/account_users_controller.rb +++ b/app/controllers/super_admin/account_users_controller.rb @@ -2,6 +2,13 @@ class SuperAdmin::AccountUsersController < SuperAdmin::ApplicationController # Overwrite any of the RESTful controller actions to implement custom behavior # For example, you may want to send an email after a foo is updated. # + + # Since account/user page - account user role attribute links to the show page + # Handle with a redirect to the user show page + def show + redirect_to super_admin_user_path(requested_resource.user) + end + def create resource = resource_class.new(resource_params) authorize_resource(resource) diff --git a/app/helpers/api/v2/accounts/reports_helper.rb b/app/helpers/api/v2/accounts/reports_helper.rb index 22c51b6ef..23694d08d 100644 --- a/app/helpers/api/v2/accounts/reports_helper.rb +++ b/app/helpers/api/v2/accounts/reports_helper.rb @@ -36,9 +36,13 @@ module Api::V2::Accounts::ReportsHelper end def generate_labels_report - Current.account.labels.map do |label| - label_report = report_builder({ type: :label, id: label.id }).short_summary - [label.title] + generate_readable_report_metrics(label_report) + reports = V2::Reports::LabelSummaryBuilder.new( + account: Current.account, + params: build_params({}) + ).build + + reports.map do |report| + [report[:name]] + generate_readable_report_metrics(report) end end diff --git a/app/javascript/dashboard/api/auth.js b/app/javascript/dashboard/api/auth.js index 75e7e2953..a1b15ee79 100644 --- a/app/javascript/dashboard/api/auth.js +++ b/app/javascript/dashboard/api/auth.js @@ -38,13 +38,7 @@ export default { } return false; }, - profileUpdate({ - password, - password_confirmation, - displayName, - avatar, - ...profileAttributes - }) { + profileUpdate({ displayName, avatar, ...profileAttributes }) { const formData = new FormData(); Object.keys(profileAttributes).forEach(key => { const hasValue = profileAttributes[key] === undefined; @@ -53,16 +47,22 @@ export default { } }); formData.append('profile[display_name]', displayName || ''); - if (password && password_confirmation) { - formData.append('profile[password]', password); - formData.append('profile[password_confirmation]', password_confirmation); - } if (avatar) { formData.append('profile[avatar]', avatar); } return axios.put(endPoints('profileUpdate').url, formData); }, + profilePasswordUpdate({ currentPassword, password, passwordConfirmation }) { + return axios.put(endPoints('profileUpdate').url, { + profile: { + current_password: currentPassword, + password, + password_confirmation: passwordConfirmation, + }, + }); + }, + updateUISettings({ uiSettings }) { return axios.put(endPoints('profileUpdate').url, { profile: { ui_settings: uiSettings }, diff --git a/app/javascript/dashboard/api/endPoints.js b/app/javascript/dashboard/api/endPoints.js index 5409aac60..ecd3f0170 100644 --- a/app/javascript/dashboard/api/endPoints.js +++ b/app/javascript/dashboard/api/endPoints.js @@ -51,6 +51,7 @@ const endPoints = { resendConfirmation: { url: '/api/v1/profile/resend_confirmation', }, + resetAccessToken: { url: '/api/v1/profile/reset_access_token', }, diff --git a/app/javascript/dashboard/api/inbox/conversation.js b/app/javascript/dashboard/api/inbox/conversation.js index 1a87e6d96..0f539bfa9 100644 --- a/app/javascript/dashboard/api/inbox/conversation.js +++ b/app/javascript/dashboard/api/inbox/conversation.js @@ -137,6 +137,10 @@ class ConversationApi extends ApiClient { getInboxAssistant(conversationId) { return axios.get(`${this.url}/${conversationId}/inbox_assistant`); } + + delete(conversationId) { + return axios.delete(`${this.url}/${conversationId}`); + } } export default new ConversationApi(); diff --git a/app/javascript/dashboard/api/summaryReports.js b/app/javascript/dashboard/api/summaryReports.js index f772ef86f..fad26bf6f 100644 --- a/app/javascript/dashboard/api/summaryReports.js +++ b/app/javascript/dashboard/api/summaryReports.js @@ -35,6 +35,16 @@ class SummaryReportsAPI extends ApiClient { }, }); } + + getLabelReports({ since, until, businessHours } = {}) { + return axios.get(`${this.url}/label`, { + params: { + since, + until, + business_hours: businessHours, + }, + }); + } } export default new SummaryReportsAPI(); diff --git a/app/javascript/dashboard/components-next/Editor/Editor.vue b/app/javascript/dashboard/components-next/Editor/Editor.vue index 6b5fefab9..510ae67e2 100644 --- a/app/javascript/dashboard/components-next/Editor/Editor.vue +++ b/app/javascript/dashboard/components-next/Editor/Editor.vue @@ -4,38 +4,14 @@ import { computed, ref, watch, useSlots } from 'vue'; import WootEditor from 'dashboard/components/widgets/WootWriter/Editor.vue'; const props = defineProps({ - modelValue: { - type: String, - default: '', - }, - label: { - type: String, - default: '', - }, - placeholder: { - type: String, - default: '', - }, - focusOnMount: { - type: Boolean, - default: false, - }, - maxLength: { - type: Number, - default: 200, - }, - showCharacterCount: { - type: Boolean, - default: true, - }, - disabled: { - type: Boolean, - default: false, - }, - message: { - type: String, - default: '', - }, + modelValue: { type: String, default: '' }, + label: { type: String, default: '' }, + placeholder: { type: String, default: '' }, + focusOnMount: { type: Boolean, default: false }, + maxLength: { type: Number, default: 200 }, + showCharacterCount: { type: Boolean, default: true }, + disabled: { type: Boolean, default: false }, + message: { type: String, default: '' }, messageType: { type: String, default: 'info', @@ -43,6 +19,7 @@ const props = defineProps({ }, enableVariables: { type: Boolean, default: false }, enableCannedResponses: { type: Boolean, default: true }, + enabledMenuOptions: { type: Array, default: () => [] }, }); const emit = defineEmits(['update:modelValue']); @@ -120,6 +97,7 @@ watch( :disabled="disabled" :enable-variables="enableVariables" :enable-canned-responses="enableCannedResponses" + :enabled-menu-options="enabledMenuOptions" @input="handleInput" @focus="handleFocus" @blur="handleBlur" diff --git a/app/javascript/dashboard/components-next/copilot/CopilotEmptyState.vue b/app/javascript/dashboard/components-next/copilot/CopilotEmptyState.vue index c237778b4..39a7eb35a 100644 --- a/app/javascript/dashboard/components-next/copilot/CopilotEmptyState.vue +++ b/app/javascript/dashboard/components-next/copilot/CopilotEmptyState.vue @@ -46,8 +46,6 @@ const getCurrentRoute = () => { const path = route.path; if (path.includes('/conversations')) return 'conversations'; if (path.includes('/dashboard')) return 'dashboard'; - if (path.includes('/contacts')) return 'contacts'; - if (path.includes('/articles')) return 'articles'; return 'dashboard'; }; diff --git a/app/javascript/dashboard/components-next/message/bubbles/Form.vue b/app/javascript/dashboard/components-next/message/bubbles/Form.vue index ca9af4994..12cfafa8f 100644 --- a/app/javascript/dashboard/components-next/message/bubbles/Form.vue +++ b/app/javascript/dashboard/components-next/message/bubbles/Form.vue @@ -4,9 +4,11 @@ import BaseBubble from './Base.vue'; import { useI18n } from 'vue-i18n'; import { CONTENT_TYPES } from '../constants.js'; import { useMessageContext } from '../provider.js'; +import { useInbox } from 'dashboard/composables/useInbox'; const { content, contentAttributes, contentType } = useMessageContext(); const { t } = useI18n(); +const { isAWebWidgetInbox } = useInbox(); const formValues = computed(() => { if (contentType.value === CONTENT_TYPES.FORM) { @@ -56,7 +58,7 @@ const formValues = computed(() => {
{{ item.title }}
-
+
{{ t('CONVERSATION.NO_RESPONSE') }}
diff --git a/app/javascript/dashboard/components-next/message/chips/Audio.vue b/app/javascript/dashboard/components-next/message/chips/Audio.vue index 680584048..431058463 100644 --- a/app/javascript/dashboard/components-next/message/chips/Audio.vue +++ b/app/javascript/dashboard/components-next/message/chips/Audio.vue @@ -109,49 +109,58 @@ const downloadAudio = async () => {
- -
- {{ formatTime(currentTime) }} / {{ formatTime(duration) }} +
+ +
+ {{ formatTime(currentTime) }} / {{ formatTime(duration) }} +
+
+ +
+ + +
-
- + +
+ {{ attachment.transcribedText }}
- - -
diff --git a/app/javascript/dashboard/components-next/sidebar/Sidebar.vue b/app/javascript/dashboard/components-next/sidebar/Sidebar.vue index 5d7aac3c3..171f4a4d8 100644 --- a/app/javascript/dashboard/components-next/sidebar/Sidebar.vue +++ b/app/javascript/dashboard/components-next/sidebar/Sidebar.vue @@ -87,7 +87,7 @@ const newReportRoutes = () => [ { name: 'Reports Label', label: t('SIDEBAR.REPORTS_LABEL'), - to: accountScopedRoute('label_reports'), + to: accountScopedRoute('label_reports_index'), }, { name: 'Reports Inbox', diff --git a/app/javascript/dashboard/components/ChatList.vue b/app/javascript/dashboard/components/ChatList.vue index 089d9e74f..b14a62f08 100644 --- a/app/javascript/dashboard/components/ChatList.vue +++ b/app/javascript/dashboard/components/ChatList.vue @@ -22,6 +22,7 @@ import { // https://tanstack.com/virtual/latest/docs/framework/vue/examples/variable import { DynamicScroller, DynamicScrollerItem } from 'vue-virtual-scroller'; import ChatListHeader from './ChatListHeader.vue'; +import Dialog from 'dashboard/components-next/dialog/Dialog.vue'; import ConversationFilter from 'next/filter/ConversationFilter.vue'; import SaveCustomView from 'next/filter/SaveCustomView.vue'; import ChatTypeTabs from './widgets/ChatTypeTabs.vue'; @@ -82,6 +83,7 @@ const emit = defineEmits(['conversationLoad']); const { uiSettings } = useUISettings(); const { t } = useI18n(); const router = useRouter(); +const route = useRoute(); const store = useStore(); const conversationListRef = ref(null); @@ -107,6 +109,7 @@ const advancedFilterTypes = ref( attributeName: t(`FILTER.ATTRIBUTES.${filter.attributeI18nKey}`), })) ); +const isInitialLoad = ref(false); const currentUser = useMapGetter('getCurrentUser'); const chatLists = useMapGetter('getFilteredConversations'); @@ -374,6 +377,7 @@ function setFiltersFromUISettings() { function emitConversationLoaded() { emit('conversationLoad'); + isInitialLoad.value = false; // [VITE] removing this since the library has changed // nextTick(() => { // // Addressing a known issue in the virtual list library where dynamically added items @@ -418,6 +422,7 @@ function onApplyFilter(payload) { foldersQuery.value = filterQueryGenerator(payload); store.dispatch('conversationPage/reset'); store.dispatch('emptyAllConversations'); + isInitialLoad.value = true; fetchFilteredConversations(payload); } @@ -572,6 +577,7 @@ function resetAndFetchData() { store.dispatch('conversationPage/reset'); store.dispatch('emptyAllConversations'); store.dispatch('clearConversationFilters'); + isInitialLoad.value = true; if (hasActiveFolders.value) { const payload = activeFolder.value.query; fetchSavedFilteredConversations(payload); @@ -646,6 +652,30 @@ function openLastItemAfterDeleteInFolder() { } } +function redirectToConversationList() { + const { + params: { accountId, inbox_id: inboxId, label, teamId }, + name, + } = route; + + let conversationType = ''; + if (isOnMentionsView({ route: { name } })) { + conversationType = 'mention'; + } else if (isOnUnattendedView({ route: { name } })) { + conversationType = 'unattended'; + } + router.push( + conversationListPageURL({ + accountId, + conversationType: conversationType, + customViewId: props.foldersId, + inboxId, + label, + teamId, + }) + ); +} + async function assignPriority(priority, conversationId = null) { store.dispatch('setCurrentChatPriority', { priority, @@ -670,26 +700,7 @@ async function markAsUnread(conversationId) { await store.dispatch('markMessagesUnread', { id: conversationId, }); - const { - params: { accountId, inbox_id: inboxId, label, teamId }, - name, - } = useRoute(); - let conversationType = ''; - if (isOnMentionsView({ route: { name } })) { - conversationType = 'mention'; - } else if (isOnUnattendedView({ route: { name } })) { - conversationType = 'unattended'; - } - router.push( - conversationListPageURL({ - accountId, - conversationType: conversationType, - customViewId: props.foldersId, - inboxId, - label, - teamId, - }) - ); + redirectToConversationList(); } catch (error) { // Ignore error } @@ -703,6 +714,7 @@ async function markAsRead(conversationId) { // Ignore error } } + async function onAssignTeam(team, conversationId = null) { try { await store.dispatch('assignTeam', { @@ -764,6 +776,26 @@ onMounted(() => { } }); +const deleteConversationDialogRef = ref(null); +const selectedConversationId = ref(null); + +async function deleteConversation() { + try { + await store.dispatch('deleteConversation', selectedConversationId.value); + redirectToConversationList(); + selectedConversationId.value = null; + deleteConversationDialogRef.value.close(); + useAlert(t('CONVERSATION.SUCCESS_DELETE_CONVERSATION')); + } catch (error) { + useAlert(t('CONVERSATION.FAIL_DELETE_CONVERSATION')); + } +} + +const handleDelete = conversationId => { + selectedConversationId.value = conversationId; + deleteConversationDialogRef.value.open(); +}; + provide('selectConversation', selectConversation); provide('deSelectConversation', deSelectConversation); provide('assignAgent', onAssignAgent); @@ -775,6 +807,7 @@ provide('markAsUnread', markAsUnread); provide('markAsRead', markAsRead); provide('assignPriority', assignPriority); provide('isConversationSelected', isConversationSelected); +provide('deleteConversation', handleDelete); watch(activeTeam, () => resetAndFetchData()); @@ -824,6 +857,8 @@ watch(conversationFilters, (newVal, oldVal) => { :has-active-folders="hasActiveFolders" :active-status="activeStatus" :is-on-expanded-layout="isOnExpandedLayout" + :conversation-stats="conversationStats" + :is-list-loading="isInitialLoad" @add-folders="onClickOpenAddFoldersModal" @delete-folders="onClickOpenDeleteFoldersModal" @filters-modal="onToggleAdvanceFiltersModal" @@ -938,6 +973,19 @@ watch(conversationFilters, (newVal, oldVal) => {
+ { ); }); +const allCount = computed(() => props.conversationStats?.allCount || 0); +const formattedAllCount = computed(() => formatNumber(allCount.value)); + const toggleConversationLayout = () => { const { LAYOUT_TYPES } = wootConstants; const { @@ -92,6 +83,15 @@ const toggleConversationLayout = () => { > {{ pageTitle }} + + {{ formattedAllCount }} + diff --git a/app/javascript/dashboard/components/widgets/conversation/ConversationCard.vue b/app/javascript/dashboard/components/widgets/conversation/ConversationCard.vue index 698690dad..4840b459f 100644 --- a/app/javascript/dashboard/components/widgets/conversation/ConversationCard.vue +++ b/app/javascript/dashboard/components/widgets/conversation/ConversationCard.vue @@ -78,6 +78,7 @@ export default { 'markAsRead', 'assignPriority', 'updateConversationStatus', + 'deleteConversation', ], data() { return { @@ -237,6 +238,10 @@ export default { this.$emit('assignPriority', priority, this.chat.id); this.closeContextMenu(); }, + async deleteConversation() { + this.$emit('deleteConversation', this.chat.id); + this.closeContextMenu(); + }, }, }; @@ -363,6 +368,7 @@ export default { @mark-as-unread="markAsUnread" @mark-as-read="markAsRead" @assign-priority="assignPriority" + @delete-conversation="deleteConversation" />
diff --git a/app/javascript/dashboard/components/widgets/conversation/ConversationHeader.vue b/app/javascript/dashboard/components/widgets/conversation/ConversationHeader.vue index ec05b0eb4..7a3489265 100644 --- a/app/javascript/dashboard/components/widgets/conversation/ConversationHeader.vue +++ b/app/javascript/dashboard/components/widgets/conversation/ConversationHeader.vue @@ -11,8 +11,6 @@ import SLACardLabel from './components/SLACardLabel.vue'; import wootConstants from 'dashboard/constants/globals'; import { conversationListPageURL } from 'dashboard/helper/URLHelper'; import { snoozedReopenTime } from 'dashboard/helper/snoozeHelpers'; -import { FEATURE_FLAGS } from 'dashboard/featureFlags'; -import Linear from './linear/index.vue'; import { useInbox } from 'dashboard/composables/useInbox'; import { useI18n } from 'vue-i18n'; @@ -36,12 +34,6 @@ const { isAWebWidgetInbox } = useInbox(); const currentChat = computed(() => store.getters.getSelectedChat); const accountId = computed(() => store.getters.getCurrentAccountId); -const isFeatureEnabledonAccount = computed( - () => store.getters['accounts/isFeatureEnabledonAccount'] -); -const appIntegrations = computed( - () => store.getters['integrations/getAppIntegrations'] -); const chatMetadata = computed(() => props.chat.meta); @@ -92,16 +84,6 @@ const hasMultipleInboxes = computed( ); const hasSlaPolicyId = computed(() => props.chat?.sla_policy_id); - -const isLinearIntegrationEnabled = computed(() => - appIntegrations.value.find( - integration => integration.id === 'linear' && !!integration.hooks.length - ) -); - -const isLinearFeatureEnabled = computed(() => - isFeatureEnabledonAccount.value(accountId.value, FEATURE_FLAGS.LINEAR) -); diff --git a/app/javascript/dashboard/components/widgets/conversation/linear/Issue.vue b/app/javascript/dashboard/components/widgets/conversation/linear/Issue.vue deleted file mode 100644 index c1d472964..000000000 --- a/app/javascript/dashboard/components/widgets/conversation/linear/Issue.vue +++ /dev/null @@ -1,123 +0,0 @@ - - - diff --git a/app/javascript/dashboard/components/widgets/conversation/linear/IssueHeader.vue b/app/javascript/dashboard/components/widgets/conversation/linear/IssueHeader.vue index 655efa602..141f6d75a 100644 --- a/app/javascript/dashboard/components/widgets/conversation/linear/IssueHeader.vue +++ b/app/javascript/dashboard/components/widgets/conversation/linear/IssueHeader.vue @@ -1,5 +1,4 @@ diff --git a/app/javascript/dashboard/components/widgets/conversation/linear/IssuesList.vue b/app/javascript/dashboard/components/widgets/conversation/linear/IssuesList.vue new file mode 100644 index 000000000..160394142 --- /dev/null +++ b/app/javascript/dashboard/components/widgets/conversation/linear/IssuesList.vue @@ -0,0 +1,132 @@ + + + diff --git a/app/javascript/dashboard/components/widgets/conversation/linear/LinearIssueItem.vue b/app/javascript/dashboard/components/widgets/conversation/linear/LinearIssueItem.vue new file mode 100644 index 000000000..e9d1ca500 --- /dev/null +++ b/app/javascript/dashboard/components/widgets/conversation/linear/LinearIssueItem.vue @@ -0,0 +1,111 @@ + + + diff --git a/app/javascript/dashboard/components/widgets/conversation/linear/LinearSetupCTA.vue b/app/javascript/dashboard/components/widgets/conversation/linear/LinearSetupCTA.vue new file mode 100644 index 000000000..f7394a092 --- /dev/null +++ b/app/javascript/dashboard/components/widgets/conversation/linear/LinearSetupCTA.vue @@ -0,0 +1,54 @@ + + + diff --git a/app/javascript/dashboard/components/widgets/conversation/linear/index.vue b/app/javascript/dashboard/components/widgets/conversation/linear/index.vue deleted file mode 100644 index f7c12fcdf..000000000 --- a/app/javascript/dashboard/components/widgets/conversation/linear/index.vue +++ /dev/null @@ -1,161 +0,0 @@ - - - diff --git a/app/javascript/dashboard/composables/useUISettings.js b/app/javascript/dashboard/composables/useUISettings.js index 29fe878c7..964c615ad 100644 --- a/app/javascript/dashboard/composables/useUISettings.js +++ b/app/javascript/dashboard/composables/useUISettings.js @@ -9,6 +9,7 @@ export const DEFAULT_CONVERSATION_SIDEBAR_ITEMS_ORDER = Object.freeze([ { name: 'contact_notes' }, { name: 'previous_conversation' }, { name: 'conversation_participants' }, + { name: 'linear_issues' }, { name: 'shopify_orders' }, ]); diff --git a/app/javascript/dashboard/constants/editor.js b/app/javascript/dashboard/constants/editor.js index 157ec46ae..9a99516e8 100644 --- a/app/javascript/dashboard/constants/editor.js +++ b/app/javascript/dashboard/constants/editor.js @@ -33,6 +33,14 @@ export const ARTICLE_EDITOR_MENU_OPTIONS = [ 'code', ]; +export const WIDGET_BUILDER_EDITOR_MENU_OPTIONS = [ + 'strong', + 'em', + 'link', + 'undo', + 'redo', +]; + export const MESSAGE_EDITOR_IMAGE_RESIZES = [ { name: 'Small', diff --git a/app/javascript/dashboard/helper/auditlogHelper.js b/app/javascript/dashboard/helper/auditlogHelper.js index 6f5a4dede..706d09ba2 100644 --- a/app/javascript/dashboard/helper/auditlogHelper.js +++ b/app/javascript/dashboard/helper/auditlogHelper.js @@ -36,6 +36,7 @@ const translationKeys = { 'teammember:create': `AUDIT_LOGS.TEAM_MEMBER.ADD`, 'teammember:destroy': `AUDIT_LOGS.TEAM_MEMBER.REMOVE`, 'account:update': `AUDIT_LOGS.ACCOUNT.EDIT`, + 'conversation:destroy': `AUDIT_LOGS.CONVERSATION.DELETE`, }; function extractAttrChange(attrChange) { @@ -168,6 +169,11 @@ export function generateTranslationPayload(auditLogItem, agentList) { const auditableType = auditLogItem.auditable_type.toLowerCase(); const action = auditLogItem.action.toLowerCase(); + if (auditableType === 'conversation' && action === 'destroy') { + translationPayload.id = + auditLogItem.audited_changes?.display_id || auditLogItem.auditable_id; + } + if (auditableType === 'accountuser') { translationPayload = handleAccountUser( auditLogItem, diff --git a/app/javascript/dashboard/i18n/locale/am/agentBots.json b/app/javascript/dashboard/i18n/locale/am/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/am/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/am/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/am/auditLogs.json b/app/javascript/dashboard/i18n/locale/am/auditLogs.json index 8194c667c..f85ad2a3e 100644 --- a/app/javascript/dashboard/i18n/locale/am/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/am/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/am/contact.json b/app/javascript/dashboard/i18n/locale/am/contact.json index 9147c24b1..b4d640f7f 100644 --- a/app/javascript/dashboard/i18n/locale/am/contact.json +++ b/app/javascript/dashboard/i18n/locale/am/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/am/conversation.json b/app/javascript/dashboard/i18n/locale/am/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/am/conversation.json +++ b/app/javascript/dashboard/i18n/locale/am/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/am/general.json b/app/javascript/dashboard/i18n/locale/am/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/am/general.json +++ b/app/javascript/dashboard/i18n/locale/am/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/am/generalSettings.json b/app/javascript/dashboard/i18n/locale/am/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/am/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/am/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/am/integrations.json b/app/javascript/dashboard/i18n/locale/am/integrations.json index 0e3c46b97..43de9b65d 100644 --- a/app/javascript/dashboard/i18n/locale/am/integrations.json +++ b/app/javascript/dashboard/i18n/locale/am/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/am/report.json b/app/javascript/dashboard/i18n/locale/am/report.json index 294ca2e7b..7c42fdfba 100644 --- a/app/javascript/dashboard/i18n/locale/am/report.json +++ b/app/javascript/dashboard/i18n/locale/am/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/am/search.json b/app/javascript/dashboard/i18n/locale/am/search.json index 3cb566813..e8510ab97 100644 --- a/app/javascript/dashboard/i18n/locale/am/search.json +++ b/app/javascript/dashboard/i18n/locale/am/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/am/settings.json b/app/javascript/dashboard/i18n/locale/am/settings.json index 10a21245b..219041d75 100644 --- a/app/javascript/dashboard/i18n/locale/am/settings.json +++ b/app/javascript/dashboard/i18n/locale/am/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ar/agentBots.json b/app/javascript/dashboard/i18n/locale/ar/agentBots.json index e467b4448..4fec1e414 100644 --- a/app/javascript/dashboard/i18n/locale/ar/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ar/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "تعذر تحديث الروبوت. يرجى المحاولة مرة أخرى." } }, + "ACCESS_TOKEN": { + "TITLE": "رمز المصادقة", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ar/auditLogs.json b/app/javascript/dashboard/i18n/locale/ar/auditLogs.json index e4087d9c2..aacd85155 100644 --- a/app/javascript/dashboard/i18n/locale/ar/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ar/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} قام بتحديث إعدادات الحساب (##{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ar/contact.json b/app/javascript/dashboard/i18n/locale/ar/contact.json index e585dbd08..bfea55276 100644 --- a/app/javascript/dashboard/i18n/locale/ar/contact.json +++ b/app/javascript/dashboard/i18n/locale/ar/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "جهات الاتصال", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "رسالة", "SEND_MESSAGE": "إرسال الرسالة", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "حذف جهة الاتصال", "DELETE_DIALOG": { "TITLE": "تأكيد الحذف", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "نعم، احذف", "API": { "SUCCESS_MESSAGE": "تم حذف جهة الاتصال بنجاح", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "لا توجد جهات اتصال تطابق بحثك 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ar/conversation.json b/app/javascript/dashboard/i18n/locale/ar/conversation.json index 6dca3e263..fe176f4d9 100644 --- a/app/javascript/dashboard/i18n/locale/ar/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ar/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "حل المحادثة", "REOPEN_ACTION": "إعادة فتح", "OPEN_ACTION": "فتح", + "MORE_ACTIONS": "More actions", "OPEN": "المزيد", "CLOSE": "أغلق", "DETAILS": "التفاصيل", @@ -117,6 +118,11 @@ "FAILED": "تعذر تغيير الأولوية، الرجاء المحاولة مرة أخرى." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "حذف" + }, "CARD_CONTEXT_MENU": { "PENDING": "تحديد كمعلق", "RESOLVED": "تحديد كمحلولة", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "إضافة وسم", "AGENTS_LOADING": "جاري جلب الوكلاء...", "ASSIGN_TEAM": "تعيين فريق", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "معرف المحادثة {conversationId} تم تعيينه لـ \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "تم تعيين الوسم بنجاح", "ASSIGN_LABEL_FAILED": "فشل تعيين الوسم", "CHANGE_TEAM": "تم تغيير فريق المحادثة", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "حجم الملف يتجاوز حد الاقصى وهو {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE}", "MESSAGE_ERROR": "غير قادر على إرسال هذه الرسالة، الرجاء المحاولة مرة أخرى لاحقاً", "SENT_BY": "أرسلت بواسطة:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "سمات جهة الاتصال", "PREVIOUS_CONVERSATION": "المحادثات السابقة", "MACROS": "ماكروس", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ar/general.json b/app/javascript/dashboard/i18n/locale/ar/general.json index 7adff9c7b..696b28c7c 100644 --- a/app/javascript/dashboard/i18n/locale/ar/general.json +++ b/app/javascript/dashboard/i18n/locale/ar/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "بحث", "EMPTY_STATE": "لم يتم العثور على النتائج" - } + }, + "CLOSE": "أغلق" } } diff --git a/app/javascript/dashboard/i18n/locale/ar/generalSettings.json b/app/javascript/dashboard/i18n/locale/ar/generalSettings.json index 903aee499..b0cb392c5 100644 --- a/app/javascript/dashboard/i18n/locale/ar/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ar/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "التفضيلات", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "اسم الحساب", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ar/integrations.json b/app/javascript/dashboard/i18n/locale/ar/integrations.json index 0066dfec8..ccb74cd98 100644 --- a/app/javascript/dashboard/i18n/locale/ar/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ar/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "تم إلغاء ربط المشكلة بنجاح", "ERROR": "حدث خطأ أثناء إلغاء ربط المشكلة، الرجاء المحاولة مرة أخرى" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "نعم، احذف", "CANCEL": "إلغاء" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "قائد", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "إرسال الرسالة...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "أنت", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "الوصف", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ar/report.json b/app/javascript/dashboard/i18n/locale/ar/report.json index 67d5f3366..f773dff80 100644 --- a/app/javascript/dashboard/i18n/locale/ar/report.json +++ b/app/javascript/dashboard/i18n/locale/ar/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "نظرة عامة على التسميات", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "تحميل بيانات الرسم البياني...", "NO_ENOUGH_DATA": "لم يتم جمع بيانات بقدر كافي لإنشاء التقرير، الرجاء المحاولة مرة أخرى لاحقاً.", "DOWNLOAD_LABEL_REPORTS": "تحميل تقارير التسمية", @@ -559,6 +560,7 @@ "INBOX": "صندوق الوارد", "AGENT": "وكيل الدعم", "TEAM": "الفريق", + "LABEL": "الوسم", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ar/search.json b/app/javascript/dashboard/i18n/locale/ar/search.json index fd4355f4b..c0137a9e2 100644 --- a/app/javascript/dashboard/i18n/locale/ar/search.json +++ b/app/javascript/dashboard/i18n/locale/ar/search.json @@ -4,12 +4,14 @@ "ALL": "الكل", "CONTACTS": "جهات الاتصال", "CONVERSATIONS": "المحادثات", - "MESSAGES": "الرسائل" + "MESSAGES": "الرسائل", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "جهات الاتصال", "CONVERSATIONS": "المحادثات", - "MESSAGES": "الرسائل" + "MESSAGES": "الرسائل", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ar/settings.json b/app/javascript/dashboard/i18n/locale/ar/settings.json index bcb62029d..12c0a003d 100644 --- a/app/javascript/dashboard/i18n/locale/ar/settings.json +++ b/app/javascript/dashboard/i18n/locale/ar/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "رمز المصادقة", "NOTE": "يمكن استخدام هذا رمز المصادقة إذا كنت تبني تطبيقات API للتكامل مع Chatwoot", - "COPY": "نسخ" + "COPY": "نسخ", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "غير متصل" }, "SET_AVAILABILITY_SUCCESS": "تم تعيين التوافر بنجاح", - "SET_AVAILABILITY_ERROR": "تعذر تعيين التوافر، الرجاء المحاولة مرة أخرى" + "SET_AVAILABILITY_ERROR": "تعذر تعيين التوافر، الرجاء المحاولة مرة أخرى", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "عنوان البريد الإلكتروني الخاص بك", @@ -280,6 +286,7 @@ "REPORTS": "التقارير", "SETTINGS": "الإعدادات", "CONTACTS": "جهات الاتصال", + "ACTIVE": "مفعل", "CAPTAIN": "قائد", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/az/agentBots.json b/app/javascript/dashboard/i18n/locale/az/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/az/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/az/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/az/auditLogs.json b/app/javascript/dashboard/i18n/locale/az/auditLogs.json index 8194c667c..f85ad2a3e 100644 --- a/app/javascript/dashboard/i18n/locale/az/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/az/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/az/contact.json b/app/javascript/dashboard/i18n/locale/az/contact.json index 9147c24b1..b4d640f7f 100644 --- a/app/javascript/dashboard/i18n/locale/az/contact.json +++ b/app/javascript/dashboard/i18n/locale/az/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/az/conversation.json b/app/javascript/dashboard/i18n/locale/az/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/az/conversation.json +++ b/app/javascript/dashboard/i18n/locale/az/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/az/general.json b/app/javascript/dashboard/i18n/locale/az/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/az/general.json +++ b/app/javascript/dashboard/i18n/locale/az/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/az/generalSettings.json b/app/javascript/dashboard/i18n/locale/az/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/az/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/az/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/az/integrations.json b/app/javascript/dashboard/i18n/locale/az/integrations.json index 0e3c46b97..43de9b65d 100644 --- a/app/javascript/dashboard/i18n/locale/az/integrations.json +++ b/app/javascript/dashboard/i18n/locale/az/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/az/report.json b/app/javascript/dashboard/i18n/locale/az/report.json index 294ca2e7b..7c42fdfba 100644 --- a/app/javascript/dashboard/i18n/locale/az/report.json +++ b/app/javascript/dashboard/i18n/locale/az/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/az/search.json b/app/javascript/dashboard/i18n/locale/az/search.json index 3cb566813..e8510ab97 100644 --- a/app/javascript/dashboard/i18n/locale/az/search.json +++ b/app/javascript/dashboard/i18n/locale/az/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/az/settings.json b/app/javascript/dashboard/i18n/locale/az/settings.json index 10a21245b..219041d75 100644 --- a/app/javascript/dashboard/i18n/locale/az/settings.json +++ b/app/javascript/dashboard/i18n/locale/az/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/bg/agentBots.json b/app/javascript/dashboard/i18n/locale/bg/agentBots.json index b90f164d1..aeb619327 100644 --- a/app/javascript/dashboard/i18n/locale/bg/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/bg/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/bg/auditLogs.json b/app/javascript/dashboard/i18n/locale/bg/auditLogs.json index b1b35c73b..eb0288402 100644 --- a/app/javascript/dashboard/i18n/locale/bg/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/bg/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/bg/contact.json b/app/javascript/dashboard/i18n/locale/bg/contact.json index a60b65797..cf08ef7e7 100644 --- a/app/javascript/dashboard/i18n/locale/bg/contact.json +++ b/app/javascript/dashboard/i18n/locale/bg/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Контакти", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Съобщение", "SEND_MESSAGE": "Изпрати съобщение", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Изтриване на контакта", "DELETE_DIALOG": { "TITLE": "Потвърди изтриването", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Да, изтрий", "API": { "SUCCESS_MESSAGE": "Контакта е изтрит успешно", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Няма контакти отговарящи на търсенети ви 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/bg/conversation.json b/app/javascript/dashboard/i18n/locale/bg/conversation.json index b11ecc167..e19af9bd2 100644 --- a/app/javascript/dashboard/i18n/locale/bg/conversation.json +++ b/app/javascript/dashboard/i18n/locale/bg/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Отворен", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Изтрий" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Предишни разговори", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/bg/general.json b/app/javascript/dashboard/i18n/locale/bg/general.json index 4c2c5bfa2..49598a20a 100644 --- a/app/javascript/dashboard/i18n/locale/bg/general.json +++ b/app/javascript/dashboard/i18n/locale/bg/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Търсене", "EMPTY_STATE": "Няма намерени резултати" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/bg/generalSettings.json b/app/javascript/dashboard/i18n/locale/bg/generalSettings.json index 73060096b..62e7c15d1 100644 --- a/app/javascript/dashboard/i18n/locale/bg/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/bg/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/bg/integrations.json b/app/javascript/dashboard/i18n/locale/bg/integrations.json index 67ba67f7b..f5392e1fb 100644 --- a/app/javascript/dashboard/i18n/locale/bg/integrations.json +++ b/app/javascript/dashboard/i18n/locale/bg/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Отмени" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Изпрати съобщение...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Описание", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/bg/report.json b/app/javascript/dashboard/i18n/locale/bg/report.json index 027a44e78..1b877b0a1 100644 --- a/app/javascript/dashboard/i18n/locale/bg/report.json +++ b/app/javascript/dashboard/i18n/locale/bg/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Входяща кутия", "AGENT": "Агент", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/bg/search.json b/app/javascript/dashboard/i18n/locale/bg/search.json index b74e66b13..a8fbc9775 100644 --- a/app/javascript/dashboard/i18n/locale/bg/search.json +++ b/app/javascript/dashboard/i18n/locale/bg/search.json @@ -4,12 +4,14 @@ "ALL": "Всички", "CONTACTS": "Контакти", "CONVERSATIONS": "Разговори", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Контакти", "CONVERSATIONS": "Разговори", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/bg/settings.json b/app/javascript/dashboard/i18n/locale/bg/settings.json index 24674fdb6..e0efe78d1 100644 --- a/app/javascript/dashboard/i18n/locale/bg/settings.json +++ b/app/javascript/dashboard/i18n/locale/bg/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Контакти", + "ACTIVE": "Активен", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ca/agentBots.json b/app/javascript/dashboard/i18n/locale/ca/agentBots.json index b2f3cc7cd..a7d3e02df 100644 --- a/app/javascript/dashboard/i18n/locale/ca/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ca/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "No s'ha pogut actualitzar el bot. Torneu-ho a provar." } }, + "ACCESS_TOKEN": { + "TITLE": "Token d'accés", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ca/auditLogs.json b/app/javascript/dashboard/i18n/locale/ca/auditLogs.json index 393f7409f..17d4d02ac 100644 --- a/app/javascript/dashboard/i18n/locale/ca/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ca/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ca/contact.json b/app/javascript/dashboard/i18n/locale/ca/contact.json index 7a303fe6f..ee6bef2ca 100644 --- a/app/javascript/dashboard/i18n/locale/ca/contact.json +++ b/app/javascript/dashboard/i18n/locale/ca/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contactes", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Missatge", "SEND_MESSAGE": "Envia missatge", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Contacte esborrat", "DELETE_DIALOG": { "TITLE": "Confirma l'esborrat", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Si, esborra", "API": { "SUCCESS_MESSAGE": "Contacte esborrat correctament", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No hi ha cap contacte que coincideixi amb la vostra cerca 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ca/conversation.json b/app/javascript/dashboard/i18n/locale/ca/conversation.json index 227be100f..088dc2331 100644 --- a/app/javascript/dashboard/i18n/locale/ca/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ca/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resoldre", "REOPEN_ACTION": "Tornar a obrir", "OPEN_ACTION": "Obrir", + "MORE_ACTIONS": "More actions", "OPEN": "Més", "CLOSE": "Tanca", "DETAILS": "detalls", @@ -117,6 +118,11 @@ "FAILED": "No s'ha pogut canviar la prioritat. Si us plau, torna-ho a provar." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Esborrar" + }, "CARD_CONTEXT_MENU": { "PENDING": "Marca com a pendent", "RESOLVED": "Marca com a resolt", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assigna etiqueta", "AGENTS_LOADING": "S'estan carregant els agents...", "ASSIGN_TEAM": "Assigna un equip", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Id de conversa {conversationId} assignat a \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "L'etiqueta s'ha assignat correctament", "ASSIGN_LABEL_FAILED": "L'assignació d'etiquetes ha fallat", "CHANGE_TEAM": "L'equip de conversa ha canviat", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "El fitxer supera el límit de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB fitxers adjunts", "MESSAGE_ERROR": "No es pot enviar aquest missatge, torna-ho a provar més tard", "SENT_BY": "Enviat per:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atributs de contacte", "PREVIOUS_CONVERSATION": "Converses prèvies", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ca/general.json b/app/javascript/dashboard/i18n/locale/ca/general.json index d0c48ce7e..02e697397 100644 --- a/app/javascript/dashboard/i18n/locale/ca/general.json +++ b/app/javascript/dashboard/i18n/locale/ca/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Cercar", "EMPTY_STATE": "No s'ha trobat agents" - } + }, + "CLOSE": "Tanca" } } diff --git a/app/javascript/dashboard/i18n/locale/ca/generalSettings.json b/app/javascript/dashboard/i18n/locale/ca/generalSettings.json index 9abfc8245..ac8714d6e 100644 --- a/app/javascript/dashboard/i18n/locale/ca/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ca/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Nom del compte", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ca/integrations.json b/app/javascript/dashboard/i18n/locale/ca/integrations.json index 5190d1e70..66be524d4 100644 --- a/app/javascript/dashboard/i18n/locale/ca/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ca/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "S'ha desenllaçat la issue correctament", "ERROR": "S'ha produït un error en desenllaçar la issue, torna-ho a provar" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Sí, esborra", "CANCEL": "Cancel·la" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Envia missatge...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Tu", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "Pots canviar o cancel·lar el teu pla en qualsevol moment" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Posa't en contacte amb el vostre administrador per obtenir l'actualització." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Descripció", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ca/report.json b/app/javascript/dashboard/i18n/locale/ca/report.json index eca72aa59..de1ce143b 100644 --- a/app/javascript/dashboard/i18n/locale/ca/report.json +++ b/app/javascript/dashboard/i18n/locale/ca/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Visió general de les etiquetes", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "S'estan carregant dades del gràfic...", "NO_ENOUGH_DATA": "No hem rebut suficients punts de dades per generar l'informe. Torneu-ho a provar més endavant.", "DOWNLOAD_LABEL_REPORTS": "Descarregar Informes d'etiquetes", @@ -559,6 +560,7 @@ "INBOX": "Safata d'entrada", "AGENT": "Agent", "TEAM": "Equip", + "LABEL": "Etiqueta", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ca/search.json b/app/javascript/dashboard/i18n/locale/ca/search.json index 6cdace7cc..599d13a78 100644 --- a/app/javascript/dashboard/i18n/locale/ca/search.json +++ b/app/javascript/dashboard/i18n/locale/ca/search.json @@ -4,12 +4,14 @@ "ALL": "Totes", "CONTACTS": "Contactes", "CONVERSATIONS": "Converses", - "MESSAGES": "Missatges" + "MESSAGES": "Missatges", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contactes", "CONVERSATIONS": "Converses", - "MESSAGES": "Missatges" + "MESSAGES": "Missatges", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ca/settings.json b/app/javascript/dashboard/i18n/locale/ca/settings.json index 3b14a74f6..1bca3d869 100644 --- a/app/javascript/dashboard/i18n/locale/ca/settings.json +++ b/app/javascript/dashboard/i18n/locale/ca/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token d'accés", "NOTE": "Aquest token es pot utilitzar si creeu una integració basada en l'API", - "COPY": "Copia" + "COPY": "Copia", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Fora de línia" }, "SET_AVAILABILITY_SUCCESS": "La disponibilitat s'ha establert correctament", - "SET_AVAILABILITY_ERROR": "No s'ha pogut establir la disponibilitat, torna-ho a provar" + "SET_AVAILABILITY_ERROR": "No s'ha pogut establir la disponibilitat, torna-ho a provar", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "La teva adreça de correu electrònic", @@ -280,6 +286,7 @@ "REPORTS": "Informes", "SETTINGS": "Configuracions", "CONTACTS": "Contactes", + "ACTIVE": "Actiu", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/cs/agentBots.json b/app/javascript/dashboard/i18n/locale/cs/agentBots.json index 9eca32a37..18ec3788b 100644 --- a/app/javascript/dashboard/i18n/locale/cs/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/cs/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Přístupový token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/cs/auditLogs.json b/app/javascript/dashboard/i18n/locale/cs/auditLogs.json index d2d38b094..1620dab00 100644 --- a/app/javascript/dashboard/i18n/locale/cs/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/cs/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/cs/contact.json b/app/javascript/dashboard/i18n/locale/cs/contact.json index 2318bb243..c18736ba5 100644 --- a/app/javascript/dashboard/i18n/locale/cs/contact.json +++ b/app/javascript/dashboard/i18n/locale/cs/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakty", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Zpráva", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Potvrdit odstranění", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Ano, odstranit", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Vašemu hledání neodpovídají žádné kontakty 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/cs/conversation.json b/app/javascript/dashboard/i18n/locale/cs/conversation.json index d5c999c58..a158b273f 100644 --- a/app/javascript/dashboard/i18n/locale/cs/conversation.json +++ b/app/javascript/dashboard/i18n/locale/cs/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Vyřešit", "REOPEN_ACTION": "Znovu otevřít", "OPEN_ACTION": "Otevřít", + "MORE_ACTIONS": "More actions", "OPEN": "Více", "CLOSE": "Zavřít", "DETAILS": "Podrobnosti", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Vymazat" + }, "CARD_CONTEXT_MENU": { "PENDING": "Označit jako nevyřízené", "RESOLVED": "Označit jako vyřešené", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Přiřadit štítek", "AGENTS_LOADING": "Načítání agentů...", "ASSIGN_TEAM": "Přiřadit tým", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Konverzace id {conversationId} přiřazena \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Štítek byl úspěšně přiřazen", "ASSIGN_LABEL_FAILED": "Přiřazení štítku se nezdařilo", "CHANGE_TEAM": "Tým konverzace se změnil", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Nepodařilo se odeslat tuto zprávu, zkuste to prosím později", "SENT_BY": "Odeslal:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atributy kontaktu", "PREVIOUS_CONVERSATION": "Předchozí konverzace", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/cs/general.json b/app/javascript/dashboard/i18n/locale/cs/general.json index a7a2af822..641bacba7 100644 --- a/app/javascript/dashboard/i18n/locale/cs/general.json +++ b/app/javascript/dashboard/i18n/locale/cs/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Hledat", "EMPTY_STATE": "Žádné výsledky" - } + }, + "CLOSE": "Zavřít" } } diff --git a/app/javascript/dashboard/i18n/locale/cs/generalSettings.json b/app/javascript/dashboard/i18n/locale/cs/generalSettings.json index 796ff57ae..bd6c45169 100644 --- a/app/javascript/dashboard/i18n/locale/cs/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/cs/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Název účtu", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/cs/integrations.json b/app/javascript/dashboard/i18n/locale/cs/integrations.json index 6b0c8772a..a7ff9afd9 100644 --- a/app/javascript/dashboard/i18n/locale/cs/integrations.json +++ b/app/javascript/dashboard/i18n/locale/cs/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Zrušit" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Vy", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/cs/report.json b/app/javascript/dashboard/i18n/locale/cs/report.json index f90136fe4..24a2bcbc7 100644 --- a/app/javascript/dashboard/i18n/locale/cs/report.json +++ b/app/javascript/dashboard/i18n/locale/cs/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Načítání dat mapy...", "NO_ENOUGH_DATA": "Pro vytvoření hlášení jsme neobdrželi dostatek dat, zkuste to prosím později.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/cs/search.json b/app/javascript/dashboard/i18n/locale/cs/search.json index 1e9cebdb4..4da840c17 100644 --- a/app/javascript/dashboard/i18n/locale/cs/search.json +++ b/app/javascript/dashboard/i18n/locale/cs/search.json @@ -4,12 +4,14 @@ "ALL": "Vše", "CONTACTS": "Kontakty", "CONVERSATIONS": "Konverzace", - "MESSAGES": "Zprávy" + "MESSAGES": "Zprávy", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakty", "CONVERSATIONS": "Konverzace", - "MESSAGES": "Zprávy" + "MESSAGES": "Zprávy", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/cs/settings.json b/app/javascript/dashboard/i18n/locale/cs/settings.json index 37d8b3f0a..b78f94028 100644 --- a/app/javascript/dashboard/i18n/locale/cs/settings.json +++ b/app/javascript/dashboard/i18n/locale/cs/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Přístupový token", "NOTE": "Tento token může být použit při vytváření integrace založené na API", - "COPY": "Kopírovat" + "COPY": "Kopírovat", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Vaše e-mailová adresa", @@ -280,6 +286,7 @@ "REPORTS": "Zprávy", "SETTINGS": "Nastavení", "CONTACTS": "Kontakty", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/da/agentBots.json b/app/javascript/dashboard/i18n/locale/da/agentBots.json index 07e2b6925..7b44f5897 100644 --- a/app/javascript/dashboard/i18n/locale/da/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/da/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Adgangs Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/da/auditLogs.json b/app/javascript/dashboard/i18n/locale/da/auditLogs.json index 9c4726527..fdac019c5 100644 --- a/app/javascript/dashboard/i18n/locale/da/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/da/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/da/contact.json b/app/javascript/dashboard/i18n/locale/da/contact.json index 87c116297..974bd97c3 100644 --- a/app/javascript/dashboard/i18n/locale/da/contact.json +++ b/app/javascript/dashboard/i18n/locale/da/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakter", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Besked", "SEND_MESSAGE": "Send besked", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Slet kontakt", "DELETE_DIALOG": { "TITLE": "Bekræft Sletning", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Ja, Slet", "API": { "SUCCESS_MESSAGE": "Kontakten blev slettet", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Ingen kontakter matcher din søgning 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/da/conversation.json b/app/javascript/dashboard/i18n/locale/da/conversation.json index 90d49e509..34971059f 100644 --- a/app/javascript/dashboard/i18n/locale/da/conversation.json +++ b/app/javascript/dashboard/i18n/locale/da/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Løs", "REOPEN_ACTION": "Genåben", "OPEN_ACTION": "Åbn", + "MORE_ACTIONS": "More actions", "OPEN": "Mere", "CLOSE": "Luk", "DETAILS": "detaljer", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Slet" + }, "CARD_CONTEXT_MENU": { "PENDING": "Markér som afventende", "RESOLVED": "Marker som løst", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Tildel etiket", "AGENTS_LOADING": "Indlæser agenter...", "ASSIGN_TEAM": "Tildel team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Samtale id {conversationId} tildelt \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label tildelt", "ASSIGN_LABEL_FAILED": "Tildeling af etiket mislykkedes", "CHANGE_TEAM": "Samtaleholdet er ændret", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Filen overskrider grænsen på {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} for vedhæftede filer", "MESSAGE_ERROR": "Kunne ikke sende denne besked, prøv igen senere", "SENT_BY": "Sendt af:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Kontakt Attributter", "PREVIOUS_CONVERSATION": "Tidligere Samtaler", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/da/general.json b/app/javascript/dashboard/i18n/locale/da/general.json index 8e95993f4..bed7d78a1 100644 --- a/app/javascript/dashboard/i18n/locale/da/general.json +++ b/app/javascript/dashboard/i18n/locale/da/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Søg", "EMPTY_STATE": "Ingen resultater fundet" - } + }, + "CLOSE": "Luk" } } diff --git a/app/javascript/dashboard/i18n/locale/da/generalSettings.json b/app/javascript/dashboard/i18n/locale/da/generalSettings.json index 24261f9b9..cd9fd33ad 100644 --- a/app/javascript/dashboard/i18n/locale/da/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/da/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Kontonavn", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/da/integrations.json b/app/javascript/dashboard/i18n/locale/da/integrations.json index da3a5345a..5fd5643e5 100644 --- a/app/javascript/dashboard/i18n/locale/da/integrations.json +++ b/app/javascript/dashboard/i18n/locale/da/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Annuller" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send besked...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Dig", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Beskrivelse", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/da/report.json b/app/javascript/dashboard/i18n/locale/da/report.json index 6036ee068..ca4874c85 100644 --- a/app/javascript/dashboard/i18n/locale/da/report.json +++ b/app/javascript/dashboard/i18n/locale/da/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Oversigt Over Etiketter", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Indlæser diagramdata...", "NO_ENOUGH_DATA": "Vi har ikke modtaget nok datapunkter til at generere rapport. Prøv igen senere.", "DOWNLOAD_LABEL_REPORTS": "Download etiketrapporter", @@ -559,6 +560,7 @@ "INBOX": "Indbakke", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Etiketter", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/da/search.json b/app/javascript/dashboard/i18n/locale/da/search.json index 91fe43db9..4605d432a 100644 --- a/app/javascript/dashboard/i18n/locale/da/search.json +++ b/app/javascript/dashboard/i18n/locale/da/search.json @@ -4,12 +4,14 @@ "ALL": "Alle", "CONTACTS": "Kontakter", "CONVERSATIONS": "Samtaler", - "MESSAGES": "Beskeder" + "MESSAGES": "Beskeder", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakter", "CONVERSATIONS": "Samtaler", - "MESSAGES": "Beskeder" + "MESSAGES": "Beskeder", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/da/settings.json b/app/javascript/dashboard/i18n/locale/da/settings.json index 4fbd3fc84..e1286c6a4 100644 --- a/app/javascript/dashboard/i18n/locale/da/settings.json +++ b/app/javascript/dashboard/i18n/locale/da/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Adgangs Token", "NOTE": "Denne token kan bruges, hvis du bygger en API-baseret integration", - "COPY": "Kopiér" + "COPY": "Kopiér", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Din e-mail adresse", @@ -280,6 +286,7 @@ "REPORTS": "Rapporter", "SETTINGS": "Indstillinger", "CONTACTS": "Kontakter", + "ACTIVE": "Aktiv", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/de/agentBots.json b/app/javascript/dashboard/i18n/locale/de/agentBots.json index 68333c220..a5119b531 100644 --- a/app/javascript/dashboard/i18n/locale/de/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/de/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Der Bot konnte nicht aktualisiert werden, bitte versuche es später erneut." } }, + "ACCESS_TOKEN": { + "TITLE": "Zugangstoken", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/de/auditLogs.json b/app/javascript/dashboard/i18n/locale/de/auditLogs.json index 19dc9e016..6b4c17a47 100644 --- a/app/javascript/dashboard/i18n/locale/de/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/de/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/de/contact.json b/app/javascript/dashboard/i18n/locale/de/contact.json index 5d322f739..ece7d0267 100644 --- a/app/javascript/dashboard/i18n/locale/de/contact.json +++ b/app/javascript/dashboard/i18n/locale/de/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakte", "SEARCH_TITLE": "Kontakte suchen", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Suchen...", "MESSAGE_BUTTON": "Nachricht", "SEND_MESSAGE": "Nachricht senden", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Twitter hinzufügen" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Kontakt löschen", "DELETE_DIALOG": { "TITLE": "Löschung bestätigen", - "DESCRIPTION": "Sind Sie sicher, dass Sie den Kontakt {contactName} löschen möchten?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Ja, löschen", "API": { "SUCCESS_MESSAGE": "Kontakt erfolgreich gelöscht", @@ -555,7 +560,8 @@ "SUBTITLE": "Füge neue Kontakte hinzu, indem du auf den Button unten klickst", "BUTTON_LABEL": "Kontakt hinzufügen", "SEARCH_EMPTY_STATE_TITLE": "Keine Kontakte entsprechen Ihrer Suche 🔍", - "LIST_EMPTY_STATE_TITLE": "Keine Kontakte verfügbar in dieser Ansicht 📋" + "LIST_EMPTY_STATE_TITLE": "Keine Kontakte verfügbar in dieser Ansicht 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/de/conversation.json b/app/javascript/dashboard/i18n/locale/de/conversation.json index e8f57be02..85db52360 100644 --- a/app/javascript/dashboard/i18n/locale/de/conversation.json +++ b/app/javascript/dashboard/i18n/locale/de/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Fall schließen", "REOPEN_ACTION": "Wieder öffnen", "OPEN_ACTION": "Öffnen", + "MORE_ACTIONS": "More actions", "OPEN": "Mehr", "CLOSE": "Schließen", "DETAILS": "Einzelheiten", @@ -117,6 +118,11 @@ "FAILED": "Priorität konnte nicht geändert werden. Bitte versuchen Sie es erneut." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Löschen" + }, "CARD_CONTEXT_MENU": { "PENDING": "Als ausstehend markieren", "RESOLVED": "Als gelöst markieren", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Label zuweisen", "AGENTS_LOADING": "Agenten werden geladen...", "ASSIGN_TEAM": "Team zuweisen", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Konversations-ID {conversationId} zugewiesen zu \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label erfolgreich zugewiesen", "ASSIGN_LABEL_FAILED": "Labelzuweisung fehlgeschlagen", "CHANGE_TEAM": "Das Konversationsteam hat sich geändert", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Die Datei überschreitet das Anhangslimit von {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "MESSAGE_ERROR": "Nachricht konnte nicht gesendet werden, bitte versuchen Sie es später erneut", "SENT_BY": "Gesendet von:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Kontakt-Attribute", "PREVIOUS_CONVERSATION": "Vorherige Konversationen", "MACROS": "Makros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/de/general.json b/app/javascript/dashboard/i18n/locale/de/general.json index 5915545e7..45baddf77 100644 --- a/app/javascript/dashboard/i18n/locale/de/general.json +++ b/app/javascript/dashboard/i18n/locale/de/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Suchen", "EMPTY_STATE": "Keine Ergebnisse gefunden" - } + }, + "CLOSE": "Schließen" } } diff --git a/app/javascript/dashboard/i18n/locale/de/generalSettings.json b/app/javascript/dashboard/i18n/locale/de/generalSettings.json index 8427db1bc..2eccd68db 100644 --- a/app/javascript/dashboard/i18n/locale/de/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/de/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Einstellungen", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Kontobezeichnung", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/de/integrations.json b/app/javascript/dashboard/i18n/locale/de/integrations.json index 77d6f154c..1b1f4df62 100644 --- a/app/javascript/dashboard/i18n/locale/de/integrations.json +++ b/app/javascript/dashboard/i18n/locale/de/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Problem erfolgreich getrennt", "ERROR": "Beim Aufheben der Verknüpfung des Problems ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Sind Sie sicher, dass Sie die Integration löschen möchten?", "MESSAGE": "Sind Sie sicher, dass Sie die Integration löschen möchten?", "CONFIRM": "Ja, löschen", "CANCEL": "Stornieren" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Kapitän", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Probiere diese Prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Nachricht senden...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain denkt nach", "YOU": "Sie", "USE": "Verwenden", "RESET": "Zurücksetzen", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Assistent auswählen", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "Sie können Ihr Paket jederzeit ändern oder kündigen" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI Funktion ist nur mit einem kostenpflichtigen Tarif verfügbar.", "UPGRADE_PROMPT": "Tarif upgraden, um Zugang zu unseren Assistenten, Copilot und mehr zu erhalten.", "ASK_ADMIN": "Bitte kontaktieren Sie Ihren Administrator für das Upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Beschreibung", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/de/report.json b/app/javascript/dashboard/i18n/locale/de/report.json index 8292b26c1..4b760328b 100644 --- a/app/javascript/dashboard/i18n/locale/de/report.json +++ b/app/javascript/dashboard/i18n/locale/de/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Label-Übersicht", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Diagrammdaten laden...", "NO_ENOUGH_DATA": "Wir haben nicht genügend Datenpunkte erhalten, um einen Bericht zu erstellen. Bitte versuchen Sie es später erneut.", "DOWNLOAD_LABEL_REPORTS": "Label-Berichte herunterladen", @@ -559,6 +560,7 @@ "INBOX": "Posteingang", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/de/search.json b/app/javascript/dashboard/i18n/locale/de/search.json index 50b00796b..562c63abe 100644 --- a/app/javascript/dashboard/i18n/locale/de/search.json +++ b/app/javascript/dashboard/i18n/locale/de/search.json @@ -4,12 +4,14 @@ "ALL": "Alle", "CONTACTS": "Kontakte", "CONVERSATIONS": "Gespräche", - "MESSAGES": "Nachrichten" + "MESSAGES": "Nachrichten", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakte", "CONVERSATIONS": "Gespräche", - "MESSAGES": "Nachrichten" + "MESSAGES": "Nachrichten", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/de/settings.json b/app/javascript/dashboard/i18n/locale/de/settings.json index 3a96663fe..cedbf0189 100644 --- a/app/javascript/dashboard/i18n/locale/de/settings.json +++ b/app/javascript/dashboard/i18n/locale/de/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Zugangstoken", "NOTE": "Dieses Token kann verwendet werden, wenn Sie eine API-basierte Integration erstellen", - "COPY": "Kopieren" + "COPY": "Kopieren", + "RESET": "Zurücksetzen", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Verfügbarkeit wurde erfolgreich gesetzt", - "SET_AVAILABILITY_ERROR": "Verfügbarkeit konnte nicht gesetzt werden, bitte versuchen Sie es erneut" + "SET_AVAILABILITY_ERROR": "Verfügbarkeit konnte nicht gesetzt werden, bitte versuchen Sie es erneut", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Deine Emailadresse", @@ -280,6 +286,7 @@ "REPORTS": "Berichte", "SETTINGS": "Einstellungen", "CONTACTS": "Kontakte", + "ACTIVE": "Aktiv", "CAPTAIN": "Kapitän", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/el/agentBots.json b/app/javascript/dashboard/i18n/locale/el/agentBots.json index 2a18c9434..b2b475816 100644 --- a/app/javascript/dashboard/i18n/locale/el/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/el/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Κώδικας Πρόσβασης (Access Token)", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/el/auditLogs.json b/app/javascript/dashboard/i18n/locale/el/auditLogs.json index 2b6308f8a..0cfee94b1 100644 --- a/app/javascript/dashboard/i18n/locale/el/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/el/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/el/contact.json b/app/javascript/dashboard/i18n/locale/el/contact.json index 7a2bd6228..7cb18c39f 100644 --- a/app/javascript/dashboard/i18n/locale/el/contact.json +++ b/app/javascript/dashboard/i18n/locale/el/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Επαφές", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Μήνυμα", "SEND_MESSAGE": "Αποστολή μηνύματος", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Διαγραφή Επαφής", "DELETE_DIALOG": { "TITLE": "Επιβεβαίωση Διαγραφής", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Ναι, Διέγραψε το", "API": { "SUCCESS_MESSAGE": "Η επαφή διαγράφηκε επιτυχώς", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Δεν υπάρχουν επαφές που να αντιστοιχούν με την αναζήτησή σας 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/el/conversation.json b/app/javascript/dashboard/i18n/locale/el/conversation.json index ca914e4b5..ecfea2a9b 100644 --- a/app/javascript/dashboard/i18n/locale/el/conversation.json +++ b/app/javascript/dashboard/i18n/locale/el/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Επίλυση", "REOPEN_ACTION": "Επαναφορά", "OPEN_ACTION": "Ανοιχτές", + "MORE_ACTIONS": "More actions", "OPEN": "Περισσότερα", "CLOSE": "Κλείσιμο", "DETAILS": "Λεπτομέρειες", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Διαγραφή" + }, "CARD_CONTEXT_MENU": { "PENDING": "Σήμανση ως εκκρεμής", "RESOLVED": "Σήμανση ως επιλυμένου", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Εκχώρηση ετικέτας", "AGENTS_LOADING": "Φόρτωση πρακτόρων...", "ASSIGN_TEAM": "Ανάθεση ομάδας", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Η συνομιλία με αριθμό {conversationId} ανατέθηκε στον \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Επιτυχής εκχώρηση ετικέτας", "ASSIGN_LABEL_FAILED": "Η εκχώρηση ετικέτας απέτυχε", "CHANGE_TEAM": "Η ομάδα συνομιλίας άλλαξε", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Το αρχείο υπερβαίνει το όριο συνημμένου {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE}", "MESSAGE_ERROR": "Δεν είναι δυνατή η αποστολή του μηνύματος, παρακαλώ προσπαθήστε ξανά αργότερα", "SENT_BY": "Αποστολή από:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Ιδιότητες Επαφής", "PREVIOUS_CONVERSATION": "Προηγούμενες συνομιλίες", "MACROS": "Μακροεντολές", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/el/general.json b/app/javascript/dashboard/i18n/locale/el/general.json index a1f613aa7..215e07e89 100644 --- a/app/javascript/dashboard/i18n/locale/el/general.json +++ b/app/javascript/dashboard/i18n/locale/el/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Αναζήτηση", "EMPTY_STATE": "Δεν βρέθηκαν αποτελέσματα" - } + }, + "CLOSE": "Κλείσιμο" } } diff --git a/app/javascript/dashboard/i18n/locale/el/generalSettings.json b/app/javascript/dashboard/i18n/locale/el/generalSettings.json index a2887abf8..028897002 100644 --- a/app/javascript/dashboard/i18n/locale/el/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/el/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Ονομασία Λογαριασμού", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/el/integrations.json b/app/javascript/dashboard/i18n/locale/el/integrations.json index c8392f58d..0e48b011a 100644 --- a/app/javascript/dashboard/i18n/locale/el/integrations.json +++ b/app/javascript/dashboard/i18n/locale/el/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Άκυρο" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Αποστολή μηνύματος...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Περιγραφή", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/el/report.json b/app/javascript/dashboard/i18n/locale/el/report.json index 01a21e2ba..e301c95dc 100644 --- a/app/javascript/dashboard/i18n/locale/el/report.json +++ b/app/javascript/dashboard/i18n/locale/el/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Επισκόπηση Ετικετών", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Φόρτωση δεδομένων γραφήματος...", "NO_ENOUGH_DATA": "Δεν έχουν ληφθεί αρκετά σημεία δεδομένων για την δημιουργία της αναφοράς, Παρακαλώ προσπαθήστε αργότερα.", "DOWNLOAD_LABEL_REPORTS": "Λήψη αναφορών ετικέτας", @@ -559,6 +560,7 @@ "INBOX": "Εισερχόμενα", "AGENT": "Πράκτορας", "TEAM": "Ομάδα", + "LABEL": "Ετικέτα", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/el/search.json b/app/javascript/dashboard/i18n/locale/el/search.json index 4ac18bdaf..ab73f8a4f 100644 --- a/app/javascript/dashboard/i18n/locale/el/search.json +++ b/app/javascript/dashboard/i18n/locale/el/search.json @@ -4,12 +4,14 @@ "ALL": "Όλες", "CONTACTS": "Επαφές", "CONVERSATIONS": "Συζητήσεις", - "MESSAGES": "Μηνύματα" + "MESSAGES": "Μηνύματα", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Επαφές", "CONVERSATIONS": "Συζητήσεις", - "MESSAGES": "Μηνύματα" + "MESSAGES": "Μηνύματα", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/el/settings.json b/app/javascript/dashboard/i18n/locale/el/settings.json index 3ba8e18c4..fa6a645a7 100644 --- a/app/javascript/dashboard/i18n/locale/el/settings.json +++ b/app/javascript/dashboard/i18n/locale/el/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Κώδικας Πρόσβασης (Access Token)", "NOTE": "Χρησιμοποιείται σε περίπτωση εξωτερικής ενοποίησης της εφαρμογής με κώδικα (API)", - "COPY": "Αντιγραφή" + "COPY": "Αντιγραφή", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Εκτός" }, "SET_AVAILABILITY_SUCCESS": "Η διαθεσιμότητα ορίστηκε με επιτυχία", - "SET_AVAILABILITY_ERROR": "Αδυναμία ορισμού διαθεσιμότητας, παρακαλώ προσπαθήστε ξανά" + "SET_AVAILABILITY_ERROR": "Αδυναμία ορισμού διαθεσιμότητας, παρακαλώ προσπαθήστε ξανά", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Η διεύθυνση email", @@ -280,6 +286,7 @@ "REPORTS": "Αναφορές", "SETTINGS": "Ρυθμίσεις", "CONTACTS": "Επαφές", + "ACTIVE": "Ενεργή", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/en/auditLogs.json b/app/javascript/dashboard/i18n/locale/en/auditLogs.json index 8194c667c..f85ad2a3e 100644 --- a/app/javascript/dashboard/i18n/locale/en/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/en/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/en/conversation.json b/app/javascript/dashboard/i18n/locale/en/conversation.json index 9337acb8e..89660ccaf 100644 --- a/app/javascript/dashboard/i18n/locale/en/conversation.json +++ b/app/javascript/dashboard/i18n/locale/en/conversation.json @@ -119,6 +119,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -135,6 +140,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -209,6 +215,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -316,6 +324,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/en/generalSettings.json b/app/javascript/dashboard/i18n/locale/en/generalSettings.json index d243c0583..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/en/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/en/generalSettings.json @@ -92,6 +92,32 @@ "PLACEHOLDER": "Your company's support email", "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." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } + }, + "AUTO_RESOLVE_DURATION": { + "LABEL": "Inactivity duration for resolution", + "HELP": "Duration after a conversation should auto resolve if there is no activity", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + }, + "UPDATE_BUTTON": "Update", + "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." + }, "FEATURES": { "INBOUND_EMAIL_ENABLED": "Conversation continuity with emails is enabled for your account.", "CUSTOM_EMAIL_DOMAIN_ENABLED": "You can receive emails in your custom domain now." diff --git a/app/javascript/dashboard/i18n/locale/en/integrations.json b/app/javascript/dashboard/i18n/locale/en/integrations.json index cfa46867c..071c95604 100644 --- a/app/javascript/dashboard/i18n/locale/en/integrations.json +++ b/app/javascript/dashboard/i18n/locale/en/integrations.json @@ -315,11 +315,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, diff --git a/app/javascript/dashboard/i18n/locale/en/report.json b/app/javascript/dashboard/i18n/locale/en/report.json index 294ca2e7b..7c42fdfba 100644 --- a/app/javascript/dashboard/i18n/locale/en/report.json +++ b/app/javascript/dashboard/i18n/locale/en/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/es/agentBots.json b/app/javascript/dashboard/i18n/locale/es/agentBots.json index 8c1949fa0..512bbf7dd 100644 --- a/app/javascript/dashboard/i18n/locale/es/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/es/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "No se pudo actualizar el bot, por favor inténtalo de nuevo más tarde." } }, + "ACCESS_TOKEN": { + "TITLE": "Token de acceso", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/es/auditLogs.json b/app/javascript/dashboard/i18n/locale/es/auditLogs.json index 322cbdfe3..f74178fce 100644 --- a/app/javascript/dashboard/i18n/locale/es/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/es/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} actualizó la configuración de la cuenta (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/es/contact.json b/app/javascript/dashboard/i18n/locale/es/contact.json index bfb4b880b..41ee73d66 100644 --- a/app/javascript/dashboard/i18n/locale/es/contact.json +++ b/app/javascript/dashboard/i18n/locale/es/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contactos", "SEARCH_TITLE": "Buscar contactos", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Buscar...", "MESSAGE_BUTTON": "Mensaje", "SEND_MESSAGE": "Enviar mensaje", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Agregar Twitter/X" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Eliminar contacto", "DELETE_DIALOG": { "TITLE": "Confirmar eliminación", - "DESCRIPTION": "¿Estás seguro de que quieres eliminar este contacto {contactName}?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Sí, eliminar", "API": { "SUCCESS_MESSAGE": "Contacto eliminado correctamente", @@ -555,7 +560,8 @@ "SUBTITLE": "Empieza a añadir nuevos contactos haciendo clic en el botón de abajo", "BUTTON_LABEL": "Añadir contacto", "SEARCH_EMPTY_STATE_TITLE": "No hay contactos que coincidan con tu búsqueda 🔍", - "LIST_EMPTY_STATE_TITLE": "No hay contactos disponibles en esta vista 📋" + "LIST_EMPTY_STATE_TITLE": "No hay contactos disponibles en esta vista 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/es/conversation.json b/app/javascript/dashboard/i18n/locale/es/conversation.json index d871a7de5..3733925eb 100644 --- a/app/javascript/dashboard/i18n/locale/es/conversation.json +++ b/app/javascript/dashboard/i18n/locale/es/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolver", "REOPEN_ACTION": "Reabrir", "OPEN_ACTION": "Abrir", + "MORE_ACTIONS": "More actions", "OPEN": "Más", "CLOSE": "Cerrar", "DETAILS": "detalles", @@ -117,6 +118,11 @@ "FAILED": "No se pudo cambiar la prioridad. Por favor, inténtelo de nuevo." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Eliminar" + }, "CARD_CONTEXT_MENU": { "PENDING": "Marcar como pendiente", "RESOLVED": "Marcar como resuelto", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Asignar etiqueta", "AGENTS_LOADING": "Cargando agentes...", "ASSIGN_TEAM": "Asignar equipo", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "ID de conversación {conversationId} asignado a \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Etiqueta asignada correctamente", "ASSIGN_LABEL_FAILED": "No se ha podido asignar la etiqueta", "CHANGE_TEAM": "Equipo de conversación cambiado", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "El archivo supera el límite de archivos adjuntos de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "MESSAGE_ERROR": "No se puede enviar este mensaje, por favor inténtalo de nuevo más tarde", "SENT_BY": "Enviado por:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atributos de contacto", "PREVIOUS_CONVERSATION": "Conversaciones anteriores", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/es/general.json b/app/javascript/dashboard/i18n/locale/es/general.json index 20d218464..84e57dae6 100644 --- a/app/javascript/dashboard/i18n/locale/es/general.json +++ b/app/javascript/dashboard/i18n/locale/es/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Buscar", "EMPTY_STATE": "No se encontraron resultados" - } + }, + "CLOSE": "Cerrar" } } diff --git a/app/javascript/dashboard/i18n/locale/es/generalSettings.json b/app/javascript/dashboard/i18n/locale/es/generalSettings.json index 5812fe5dd..ce462c715 100644 --- a/app/javascript/dashboard/i18n/locale/es/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/es/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferencias", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Nombre de cuenta", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/es/integrations.json b/app/javascript/dashboard/i18n/locale/es/integrations.json index 905226810..d9abe6c63 100644 --- a/app/javascript/dashboard/i18n/locale/es/integrations.json +++ b/app/javascript/dashboard/i18n/locale/es/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Problema desvinculado con éxito", "ERROR": "Se ha producido un error al desvincular el problema, inténtelo de nuevo" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Sí, eliminar", "CANCEL": "Cancelar" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Capitán", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Prueba estas sugerencias", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Enviar mensaje...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Tú", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "Puede cambiar o cancelar su plan en cualquier momento" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Por favor, comuníquese con su administrador para la actualización." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Descripción", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/es/report.json b/app/javascript/dashboard/i18n/locale/es/report.json index 19a0edfd0..316500a3a 100644 --- a/app/javascript/dashboard/i18n/locale/es/report.json +++ b/app/javascript/dashboard/i18n/locale/es/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Resumen de etiquetas", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Cargando datos del gráfico...", "NO_ENOUGH_DATA": "No hemos recibido suficientes puntos de datos para generar el informe. Inténtalo de nuevo más tarde.", "DOWNLOAD_LABEL_REPORTS": "Descargar reportes de etiquetas", @@ -559,6 +560,7 @@ "INBOX": "Bandeja de entrada", "AGENT": "Agente", "TEAM": "Equipo", + "LABEL": "Etiqueta", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/es/search.json b/app/javascript/dashboard/i18n/locale/es/search.json index 835bccc2a..99e3bd070 100644 --- a/app/javascript/dashboard/i18n/locale/es/search.json +++ b/app/javascript/dashboard/i18n/locale/es/search.json @@ -4,12 +4,14 @@ "ALL": "Todos", "CONTACTS": "Contactos", "CONVERSATIONS": "Conversaciones", - "MESSAGES": "Mensajes" + "MESSAGES": "Mensajes", + "ARTICLES": "Artículos" }, "SECTION": { "CONTACTS": "Contactos", "CONVERSATIONS": "Conversaciones", - "MESSAGES": "Mensajes" + "MESSAGES": "Mensajes", + "ARTICLES": "Artículos" }, "VIEW_MORE": "Ver más", "LOAD_MORE": "Cargar más", diff --git a/app/javascript/dashboard/i18n/locale/es/settings.json b/app/javascript/dashboard/i18n/locale/es/settings.json index de17a00f9..f9958dfe9 100644 --- a/app/javascript/dashboard/i18n/locale/es/settings.json +++ b/app/javascript/dashboard/i18n/locale/es/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token de acceso", "NOTE": "Este token puede ser usado si estás construyendo una integración basada en API", - "COPY": "Copiar" + "COPY": "Copiar", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Alertas de audio", @@ -185,7 +190,8 @@ "OFFLINE": "Desconectado" }, "SET_AVAILABILITY_SUCCESS": "La disponibilidad se ha establecido con éxito", - "SET_AVAILABILITY_ERROR": "No se pudo establecer la disponibilidad, inténtelo de nuevo" + "SET_AVAILABILITY_ERROR": "No se pudo establecer la disponibilidad, inténtelo de nuevo", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Tu dirección de correo", @@ -280,6 +286,7 @@ "REPORTS": "Informes", "SETTINGS": "Ajustes", "CONTACTS": "Contactos", + "ACTIVE": "Activo", "CAPTAIN": "Capitán", "CAPTAIN_ASSISTANTS": "Asistentes", "CAPTAIN_DOCUMENTS": "Documentos", diff --git a/app/javascript/dashboard/i18n/locale/fa/agentBots.json b/app/javascript/dashboard/i18n/locale/fa/agentBots.json index b62a645ee..e5af6099c 100644 --- a/app/javascript/dashboard/i18n/locale/fa/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/fa/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "ربات بروز رسانی نشد، لطفا دوباره امتحان کنید." } }, + "ACCESS_TOKEN": { + "TITLE": "توکن دسترسی", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/fa/auditLogs.json b/app/javascript/dashboard/i18n/locale/fa/auditLogs.json index e53abfbfb..0b3f78a44 100644 --- a/app/javascript/dashboard/i18n/locale/fa/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/fa/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/fa/contact.json b/app/javascript/dashboard/i18n/locale/fa/contact.json index 832acbeab..3f8940c0e 100644 --- a/app/javascript/dashboard/i18n/locale/fa/contact.json +++ b/app/javascript/dashboard/i18n/locale/fa/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "مخاطبین", "SEARCH_TITLE": "جستجوی مخاطبین", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "جستجو...", "MESSAGE_BUTTON": "پیام", "SEND_MESSAGE": "ارسال پیام", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "حذف مخاطب", "DELETE_DIALOG": { "TITLE": "تاییدیه حذف", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "بله، حذف شود", "API": { "SUCCESS_MESSAGE": "مخاطب با موفقیت حذف شد", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "هیچ مخاطبی با جستجوی شما مطابقت ندارد 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/fa/conversation.json b/app/javascript/dashboard/i18n/locale/fa/conversation.json index 844a928d4..ef92db5b0 100644 --- a/app/javascript/dashboard/i18n/locale/fa/conversation.json +++ b/app/javascript/dashboard/i18n/locale/fa/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "حل شد", "REOPEN_ACTION": "دوباره باز کنید", "OPEN_ACTION": "باز", + "MORE_ACTIONS": "More actions", "OPEN": "بیشتر", "CLOSE": "بستن", "DETAILS": "جزئیات", @@ -117,6 +118,11 @@ "FAILED": "تغییر اولویت گفتگو با موفقیت انجام نشد. لطفا دوباره تلاش نمایید." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "حذف" + }, "CARD_CONTEXT_MENU": { "PENDING": "علامت گذاری به عنوان در انتظار", "RESOLVED": "علامت زدن به عنوان حل شده", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "برچسب اختصاص دهید", "AGENTS_LOADING": "بارگذاری اپراتور ها...", "ASSIGN_TEAM": "تیم را تعیین کنید", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "شناسه مکالمه {conversationId} به \"{agentName}\" اختصاص داده شد", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "برچسب با موفقیت تخصیص یافت", "ASSIGN_LABEL_FAILED": "تخصیص برچسب ناموفق بود", "CHANGE_TEAM": "تیم مکالمه تغییر کرد", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "پرونده از حد مجاز پیوست {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} مگابایت بیشتر است", "MESSAGE_ERROR": "ارسال این پیام امکان پذیر نیست ، لطفاً بعداً دوباره امتحان کنید", "SENT_BY": "ارسال شده توسط:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "ویژگی‌های تماس", "PREVIOUS_CONVERSATION": "گفتگوهای قبلی", "MACROS": "ماکروها", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/fa/general.json b/app/javascript/dashboard/i18n/locale/fa/general.json index a4b6d9d88..d04980558 100644 --- a/app/javascript/dashboard/i18n/locale/fa/general.json +++ b/app/javascript/dashboard/i18n/locale/fa/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "جستجو", "EMPTY_STATE": "نتیجه‌ای یافت نشد" - } + }, + "CLOSE": "بستن" } } diff --git a/app/javascript/dashboard/i18n/locale/fa/generalSettings.json b/app/javascript/dashboard/i18n/locale/fa/generalSettings.json index d902a227d..9d0e398f9 100644 --- a/app/javascript/dashboard/i18n/locale/fa/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/fa/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "۳۰", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "تنظیمات", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "نام حساب‌کاربری", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/fa/integrations.json b/app/javascript/dashboard/i18n/locale/fa/integrations.json index 9ee1fc854..2e1b4d38e 100644 --- a/app/javascript/dashboard/i18n/locale/fa/integrations.json +++ b/app/javascript/dashboard/i18n/locale/fa/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "بله، حذف شود", "CANCEL": "انصراف" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "ارسال پیام...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "شما", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "لطفاً برای ارتقا با ادمین خود تماس بگیرید." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "توضیحات", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/fa/report.json b/app/javascript/dashboard/i18n/locale/fa/report.json index 61630d9c8..b1a4aa3b7 100644 --- a/app/javascript/dashboard/i18n/locale/fa/report.json +++ b/app/javascript/dashboard/i18n/locale/fa/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "نمای کلی برچسب ها", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "در حال دریافت اطلاعات...", "NO_ENOUGH_DATA": "متاسفانه اطلاعات کافی دریافت نشد، لطفا بعدا دوباره امتحان کنید", "DOWNLOAD_LABEL_REPORTS": "دانلود گزارش برچسب ها", @@ -559,6 +560,7 @@ "INBOX": "صندوق ورودی", "AGENT": "ایجنت", "TEAM": "تیم‌", + "LABEL": "برچسب", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/fa/search.json b/app/javascript/dashboard/i18n/locale/fa/search.json index 105e2a493..d2b9fbc8f 100644 --- a/app/javascript/dashboard/i18n/locale/fa/search.json +++ b/app/javascript/dashboard/i18n/locale/fa/search.json @@ -4,12 +4,14 @@ "ALL": "همه", "CONTACTS": "مخاطبین", "CONVERSATIONS": "گفتگوها", - "MESSAGES": "پیام‌ها" + "MESSAGES": "پیام‌ها", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "مخاطبین", "CONVERSATIONS": "گفتگوها", - "MESSAGES": "پیام‌ها" + "MESSAGES": "پیام‌ها", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/fa/settings.json b/app/javascript/dashboard/i18n/locale/fa/settings.json index 2e0b262c0..4a037f3ad 100644 --- a/app/javascript/dashboard/i18n/locale/fa/settings.json +++ b/app/javascript/dashboard/i18n/locale/fa/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "توکن دسترسی", "NOTE": "از این توکن برای دسترسی از طریق API استفاده می‌شود", - "COPY": "کپی" + "COPY": "کپی", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "آفلاین" }, "SET_AVAILABILITY_SUCCESS": "در دسترس بودن با موفقیت تنظیم شد", - "SET_AVAILABILITY_ERROR": "در دسترس بودن تنظیم نشد، لطفا دوباره امتحان کنید" + "SET_AVAILABILITY_ERROR": "در دسترس بودن تنظیم نشد، لطفا دوباره امتحان کنید", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "ایمیل شما", @@ -280,6 +286,7 @@ "REPORTS": "گزارشات", "SETTINGS": "تنظیمات", "CONTACTS": "مخاطبین", + "ACTIVE": "فعال", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/fi/agentBots.json b/app/javascript/dashboard/i18n/locale/fi/agentBots.json index 25d68bd61..eae68ec01 100644 --- a/app/javascript/dashboard/i18n/locale/fi/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/fi/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/fi/auditLogs.json b/app/javascript/dashboard/i18n/locale/fi/auditLogs.json index 82a9bcf33..67a9ae2e8 100644 --- a/app/javascript/dashboard/i18n/locale/fi/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/fi/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/fi/contact.json b/app/javascript/dashboard/i18n/locale/fi/contact.json index bbc7b00e4..969c21162 100644 --- a/app/javascript/dashboard/i18n/locale/fi/contact.json +++ b/app/javascript/dashboard/i18n/locale/fi/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Yhteystiedot", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Viesti", "SEND_MESSAGE": "Lähetä viesti", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Poista yhteystieto", "DELETE_DIALOG": { "TITLE": "Vahvista poistaminen", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Kyllä, poista", "API": { "SUCCESS_MESSAGE": "Yhteystiedon poistaminen onnistui", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Ei hakua vastaavia yhteystietoja 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/fi/conversation.json b/app/javascript/dashboard/i18n/locale/fi/conversation.json index b9a0d066e..3c91f2c2c 100644 --- a/app/javascript/dashboard/i18n/locale/fi/conversation.json +++ b/app/javascript/dashboard/i18n/locale/fi/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Ratkaise", "REOPEN_ACTION": "Uudelleenavaa", "OPEN_ACTION": "Avaa", + "MORE_ACTIONS": "More actions", "OPEN": "Näytä", "CLOSE": "Sulje", "DETAILS": "tiedot", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Poista" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Lähettäjä:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Yhteystiedon määritteet", "PREVIOUS_CONVERSATION": "Edelliset keskustelut", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/fi/general.json b/app/javascript/dashboard/i18n/locale/fi/general.json index 3a3e20797..2a2a267c7 100644 --- a/app/javascript/dashboard/i18n/locale/fi/general.json +++ b/app/javascript/dashboard/i18n/locale/fi/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Etsi", "EMPTY_STATE": "Tuloksia ei löytynyt" - } + }, + "CLOSE": "Sulje" } } diff --git a/app/javascript/dashboard/i18n/locale/fi/generalSettings.json b/app/javascript/dashboard/i18n/locale/fi/generalSettings.json index 2e1235069..a25c64396 100644 --- a/app/javascript/dashboard/i18n/locale/fi/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/fi/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Asetukset", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Tilin nimi", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/fi/integrations.json b/app/javascript/dashboard/i18n/locale/fi/integrations.json index 1d7ec60c0..491f7c768 100644 --- a/app/javascript/dashboard/i18n/locale/fi/integrations.json +++ b/app/javascript/dashboard/i18n/locale/fi/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Peruuta" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Lähetä viesti...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Sinä", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Kuvaus", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/fi/report.json b/app/javascript/dashboard/i18n/locale/fi/report.json index 5e56fcbd9..6f5f5cf58 100644 --- a/app/javascript/dashboard/i18n/locale/fi/report.json +++ b/app/javascript/dashboard/i18n/locale/fi/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Ladataan kaaviotietoja...", "NO_ENOUGH_DATA": "Emme ole saaneet tarpeeksi dataa raportin luomiseen, yritä myöhemmin uudelleen.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Edustajat", "TEAM": "Tiimi", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/fi/search.json b/app/javascript/dashboard/i18n/locale/fi/search.json index 13071d401..89368d3b6 100644 --- a/app/javascript/dashboard/i18n/locale/fi/search.json +++ b/app/javascript/dashboard/i18n/locale/fi/search.json @@ -4,12 +4,14 @@ "ALL": "Kaikki", "CONTACTS": "Yhteystiedot", "CONVERSATIONS": "Keskustelut", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Yhteystiedot", "CONVERSATIONS": "Keskustelut", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/fi/settings.json b/app/javascript/dashboard/i18n/locale/fi/settings.json index 42a0e9ccc..2488a8768 100644 --- a/app/javascript/dashboard/i18n/locale/fi/settings.json +++ b/app/javascript/dashboard/i18n/locale/fi/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "Tätä tunnusta voidaan käyttää, jos olet rakentamassa API-pohjaista integraatiota", - "COPY": "Kopioi" + "COPY": "Kopioi", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Sinun sähköpostiosoitteesi", @@ -280,6 +286,7 @@ "REPORTS": "Raportit", "SETTINGS": "Asetukset", "CONTACTS": "Yhteystiedot", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/fr/agentBots.json b/app/javascript/dashboard/i18n/locale/fr/agentBots.json index aed48e91d..477eef743 100644 --- a/app/javascript/dashboard/i18n/locale/fr/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/fr/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Impossible de mettre à jour le bot, veuillez réessayer plus tard." } }, + "ACCESS_TOKEN": { + "TITLE": "Jeton d'accès", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Avatar du bot" diff --git a/app/javascript/dashboard/i18n/locale/fr/auditLogs.json b/app/javascript/dashboard/i18n/locale/fr/auditLogs.json index d70ebde17..fde634766 100644 --- a/app/javascript/dashboard/i18n/locale/fr/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/fr/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/fr/contact.json b/app/javascript/dashboard/i18n/locale/fr/contact.json index ab416438d..c41f004b0 100644 --- a/app/javascript/dashboard/i18n/locale/fr/contact.json +++ b/app/javascript/dashboard/i18n/locale/fr/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Envoyer un message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Supprimer le contact", "DELETE_DIALOG": { "TITLE": "Confirmer la suppression", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Oui, supprimer", "API": { "SUCCESS_MESSAGE": "Contact supprimé avec succès", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Aucun contact ne correspond à votre recherche 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/fr/conversation.json b/app/javascript/dashboard/i18n/locale/fr/conversation.json index 7471f9850..70d9014ac 100644 --- a/app/javascript/dashboard/i18n/locale/fr/conversation.json +++ b/app/javascript/dashboard/i18n/locale/fr/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Résoudre", "REOPEN_ACTION": "Ré-ouvrir", "OPEN_ACTION": "Ouvert", + "MORE_ACTIONS": "More actions", "OPEN": "Plus", "CLOSE": "Fermer", "DETAILS": "détails", @@ -117,6 +118,11 @@ "FAILED": "Impossible de modifier la priorité. Veuillez réessayer." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Supprimer" + }, "CARD_CONTEXT_MENU": { "PENDING": "Marquer comme en attente", "RESOLVED": "Marquer comme résolu", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assigner une étiquette", "AGENTS_LOADING": "Chargement des agents...", "ASSIGN_TEAM": "Assigner une équipe", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assignée à \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Étiquette attribuée avec succès", "ASSIGN_LABEL_FAILED": "Échec de l'attribution de l'étiquette", "CHANGE_TEAM": "L'équipe de conversation a été modifiée", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Le fichier dépasse la limite de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} pour les pièces jointes", "MESSAGE_ERROR": "Impossible d'envoyer ce message, veuillez réessayer plus tard", "SENT_BY": "Envoyé par:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Attributs du contact", "PREVIOUS_CONVERSATION": "Conversations précédentes", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/fr/general.json b/app/javascript/dashboard/i18n/locale/fr/general.json index b25c8d702..eb09173c5 100644 --- a/app/javascript/dashboard/i18n/locale/fr/general.json +++ b/app/javascript/dashboard/i18n/locale/fr/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Rechercher", "EMPTY_STATE": "Aucun résultat trouvé" - } + }, + "CLOSE": "Fermer" } } diff --git a/app/javascript/dashboard/i18n/locale/fr/generalSettings.json b/app/javascript/dashboard/i18n/locale/fr/generalSettings.json index 6a8bee06d..5ba2a8767 100644 --- a/app/javascript/dashboard/i18n/locale/fr/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/fr/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Résolution automatique des conversations", - "NOTE": "Cette configuration vous permet de résoudre automatiquement la conversation après un certain délai. Définissez la durée et personnalisez le message à l'utilisateur ci-dessous." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "La durée de résolution automatique doit être comprise entre 10 minutes et 999 jours", + "API": { + "SUCCESS": "Paramètres de résolution automatique mis à jour avec succès", + "ERROR": "Échec de la mise à jour des paramètres de résolution automatique" + } + }, + "MESSAGE": { + "LABEL": "Custom auto-resolution message", + "PLACEHOLDER": "La conversation a été marquée comme résolue par le système en raison de 15 jours d'inactivité", + "HELP": "Message sent to the customer after conversation is auto-resolved" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Nom du compte", @@ -70,7 +94,15 @@ }, "AUTO_RESOLVE_IGNORE_WAITING": { "LABEL": "Exclure les conversations non prises en charge", - "HELP": "Lorsque cette option est activée, le système ignorera la résolution des conversations qui attendent toujours une réponse d'un agent." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Durée d'inactivité avant résolution", diff --git a/app/javascript/dashboard/i18n/locale/fr/integrations.json b/app/javascript/dashboard/i18n/locale/fr/integrations.json index 14d052530..450d22b9b 100644 --- a/app/javascript/dashboard/i18n/locale/fr/integrations.json +++ b/app/javascript/dashboard/i18n/locale/fr/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Oui, supprimer", "CANCEL": "Annuler" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Envoyer un message...", "EMPTY_MESSAGE": "Une erreur s'est produite lors de la génération de la réponse. Veuillez réessayer.", "LOADER": "Captain is thinking", "YOU": "Vous", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Évaluer cette conversation", "CONTENT": "Revue de la conversation pour évaluer dans quelle mesure elle répond aux besoins du client. Partagez une note sur 5 en fonction du ton, de la clarté et de l'efficacité." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Entrez le nom de l'assistant", "ERROR": "Le nom est requis" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Entrez la description de l'assistant", diff --git a/app/javascript/dashboard/i18n/locale/fr/report.json b/app/javascript/dashboard/i18n/locale/fr/report.json index 4215d8417..0cf003018 100644 --- a/app/javascript/dashboard/i18n/locale/fr/report.json +++ b/app/javascript/dashboard/i18n/locale/fr/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Présentation des étiquettes", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Chargement des données du graphique ...", "NO_ENOUGH_DATA": "Nous n'avons pas reçu assez de points de données pour générer un rapport. Veuillez réessayer plus tard.", "DOWNLOAD_LABEL_REPORTS": "Télécharger les rapports d'étiquettes", @@ -559,6 +560,7 @@ "INBOX": "Boîte de réception", "AGENT": "Agent", "TEAM": "Équipes", + "LABEL": "Étiquettes", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/fr/search.json b/app/javascript/dashboard/i18n/locale/fr/search.json index f0c308f7f..55b0ab530 100644 --- a/app/javascript/dashboard/i18n/locale/fr/search.json +++ b/app/javascript/dashboard/i18n/locale/fr/search.json @@ -4,12 +4,14 @@ "ALL": "Tous", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/fr/settings.json b/app/javascript/dashboard/i18n/locale/fr/settings.json index 011bac2c1..1f6dd95fd 100644 --- a/app/javascript/dashboard/i18n/locale/fr/settings.json +++ b/app/javascript/dashboard/i18n/locale/fr/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Jeton d'accès", "NOTE": "Ce jeton peut être utilisé si vous construisez une intégration basée sur l'API", - "COPY": "Copier" + "COPY": "Copier", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Hors ligne" }, "SET_AVAILABILITY_SUCCESS": "La disponibilité a bien été définie", - "SET_AVAILABILITY_ERROR": "Impossible de définir la disponibilité, veuillez réessayer" + "SET_AVAILABILITY_ERROR": "Impossible de définir la disponibilité, veuillez réessayer", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Votre adresse de courriel", @@ -280,6 +286,7 @@ "REPORTS": "Rapports", "SETTINGS": "Paramètres", "CONTACTS": "Contacts", + "ACTIVE": "Actif", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/he/agentBots.json b/app/javascript/dashboard/i18n/locale/he/agentBots.json index 94ace18f2..925836f35 100644 --- a/app/javascript/dashboard/i18n/locale/he/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/he/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "אסימון", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/he/auditLogs.json b/app/javascript/dashboard/i18n/locale/he/auditLogs.json index 34450eb06..e52d31f86 100644 --- a/app/javascript/dashboard/i18n/locale/he/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/he/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/he/contact.json b/app/javascript/dashboard/i18n/locale/he/contact.json index 639d87b6e..b18a83ef9 100644 --- a/app/javascript/dashboard/i18n/locale/he/contact.json +++ b/app/javascript/dashboard/i18n/locale/he/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "איש קשר", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "הודעה", "SEND_MESSAGE": "שלח הודעה", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "מחק איש קשר", "DELETE_DIALOG": { "TITLE": "אשר מחיקה", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "כן, מחק", "API": { "SUCCESS_MESSAGE": "איש הקשר נמחק בהצלחה", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "אין אנשי קשר שתואמים לחיפוש שלך 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/he/conversation.json b/app/javascript/dashboard/i18n/locale/he/conversation.json index 05e433690..ce1224c3a 100644 --- a/app/javascript/dashboard/i18n/locale/he/conversation.json +++ b/app/javascript/dashboard/i18n/locale/he/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "פתרון", "REOPEN_ACTION": "פתח מחדש", "OPEN_ACTION": "פתח", + "MORE_ACTIONS": "More actions", "OPEN": "עוד", "CLOSE": "סגור", "DETAILS": "פרטים", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "מחק" + }, "CARD_CONTEXT_MENU": { "PENDING": "סמן כממתין", "RESOLVED": "סמן כפתור", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "ההקצה תווית", "AGENTS_LOADING": "טוען סוכנים...", "ASSIGN_TEAM": "שייך צוות", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "מזהה שיחה {conversationId} קושר ל {agentName}", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "סמן משימה כבוצעה בהצלחה", "ASSIGN_LABEL_FAILED": "סמן משימה כנכשלה", "CHANGE_TEAM": "שיחת קבוצה השתנתה", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "הקובץ גדול מ{MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE}MB מגבלת העלאה", "MESSAGE_ERROR": "לא ניתן לשלוח הודעה, אנא נסה שוב מאוחר יותר", "SENT_BY": "נשלח על ידי:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "תכונות יצירת קשר", "PREVIOUS_CONVERSATION": "שיחות קודמות", "MACROS": "מאקרו", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/he/general.json b/app/javascript/dashboard/i18n/locale/he/general.json index 7ac10d6a1..5ee9b1b6a 100644 --- a/app/javascript/dashboard/i18n/locale/he/general.json +++ b/app/javascript/dashboard/i18n/locale/he/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "חפש", "EMPTY_STATE": "לא נמצאו תוצאות" - } + }, + "CLOSE": "סגור" } } diff --git a/app/javascript/dashboard/i18n/locale/he/generalSettings.json b/app/javascript/dashboard/i18n/locale/he/generalSettings.json index 2332e7d60..0a677534a 100644 --- a/app/javascript/dashboard/i18n/locale/he/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/he/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "שם החשבון", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/he/integrations.json b/app/javascript/dashboard/i18n/locale/he/integrations.json index ec0c6960b..6ec0bef03 100644 --- a/app/javascript/dashboard/i18n/locale/he/integrations.json +++ b/app/javascript/dashboard/i18n/locale/he/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "ביטול" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "טייס משנה", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "שלח הודעה...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "תיאור", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/he/report.json b/app/javascript/dashboard/i18n/locale/he/report.json index b9654aceb..f28acf119 100644 --- a/app/javascript/dashboard/i18n/locale/he/report.json +++ b/app/javascript/dashboard/i18n/locale/he/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "סקירת תוויות", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "טוען נתוני תרשים...", "NO_ENOUGH_DATA": "לא קיבלנו מספיק נקודות נתונים כדי להפיק דוח, אנא נסה שוב מאוחר יותר.", "DOWNLOAD_LABEL_REPORTS": "הורד דוחות תווית", @@ -559,6 +560,7 @@ "INBOX": "תיבת הדואר הנכנס", "AGENT": "סוכן", "TEAM": "צוות", + "LABEL": "תווית", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/he/search.json b/app/javascript/dashboard/i18n/locale/he/search.json index 9622f08d7..38ff7d389 100644 --- a/app/javascript/dashboard/i18n/locale/he/search.json +++ b/app/javascript/dashboard/i18n/locale/he/search.json @@ -4,12 +4,14 @@ "ALL": "הכל", "CONTACTS": "איש קשר", "CONVERSATIONS": "שיחות", - "MESSAGES": "הודעות" + "MESSAGES": "הודעות", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "איש קשר", "CONVERSATIONS": "שיחות", - "MESSAGES": "הודעות" + "MESSAGES": "הודעות", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/he/settings.json b/app/javascript/dashboard/i18n/locale/he/settings.json index 2d0a2c22c..883441eac 100644 --- a/app/javascript/dashboard/i18n/locale/he/settings.json +++ b/app/javascript/dashboard/i18n/locale/he/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "אסימון", "NOTE": "משמש לחיבורי API", - "COPY": "עותק" + "COPY": "עותק", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "לא מחובר" }, "SET_AVAILABILITY_SUCCESS": "זמינות הוגדרה בהצלחה", - "SET_AVAILABILITY_ERROR": "לא ניתן להגדיר זמינות, אנא נסה שנית" + "SET_AVAILABILITY_ERROR": "לא ניתן להגדיר זמינות, אנא נסה שנית", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "כתובת הדוא\"ל שלך", @@ -280,6 +286,7 @@ "REPORTS": "דיווחים", "SETTINGS": "הגדרות", "CONTACTS": "איש קשר", + "ACTIVE": "פעיל", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/hi/agentBots.json b/app/javascript/dashboard/i18n/locale/hi/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/hi/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/hi/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/hi/auditLogs.json b/app/javascript/dashboard/i18n/locale/hi/auditLogs.json index 35c054fa2..df236f5b5 100644 --- a/app/javascript/dashboard/i18n/locale/hi/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/hi/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/hi/contact.json b/app/javascript/dashboard/i18n/locale/hi/contact.json index a77327c14..d50af43d7 100644 --- a/app/javascript/dashboard/i18n/locale/hi/contact.json +++ b/app/javascript/dashboard/i18n/locale/hi/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/hi/conversation.json b/app/javascript/dashboard/i18n/locale/hi/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/hi/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hi/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/hi/general.json b/app/javascript/dashboard/i18n/locale/hi/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/hi/general.json +++ b/app/javascript/dashboard/i18n/locale/hi/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/hi/generalSettings.json b/app/javascript/dashboard/i18n/locale/hi/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/hi/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/hi/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/hi/integrations.json b/app/javascript/dashboard/i18n/locale/hi/integrations.json index abe06bb05..bd79e81f3 100644 --- a/app/javascript/dashboard/i18n/locale/hi/integrations.json +++ b/app/javascript/dashboard/i18n/locale/hi/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "रद्द करें" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/hi/report.json b/app/javascript/dashboard/i18n/locale/hi/report.json index e176d9147..18f1ed14b 100644 --- a/app/javascript/dashboard/i18n/locale/hi/report.json +++ b/app/javascript/dashboard/i18n/locale/hi/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/hi/search.json b/app/javascript/dashboard/i18n/locale/hi/search.json index e6e6edbe7..09c22ae3d 100644 --- a/app/javascript/dashboard/i18n/locale/hi/search.json +++ b/app/javascript/dashboard/i18n/locale/hi/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/hi/settings.json b/app/javascript/dashboard/i18n/locale/hi/settings.json index 4be80dba1..6a9cbf229 100644 --- a/app/javascript/dashboard/i18n/locale/hi/settings.json +++ b/app/javascript/dashboard/i18n/locale/hi/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/hr/agentBots.json b/app/javascript/dashboard/i18n/locale/hr/agentBots.json index 1a44f6b1f..545a7a57e 100644 --- a/app/javascript/dashboard/i18n/locale/hr/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/hr/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Nije moguće ažurirati bota, molimo pokušajte ponovno." } }, + "ACCESS_TOKEN": { + "TITLE": "Pristupni token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/hr/auditLogs.json b/app/javascript/dashboard/i18n/locale/hr/auditLogs.json index 8f33b1e59..12601fadf 100644 --- a/app/javascript/dashboard/i18n/locale/hr/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/hr/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/hr/contact.json b/app/javascript/dashboard/i18n/locale/hr/contact.json index 1eb92394b..01094d599 100644 --- a/app/javascript/dashboard/i18n/locale/hr/contact.json +++ b/app/javascript/dashboard/i18n/locale/hr/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakti", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Poruka", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Potvrdi brisanje", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/hr/conversation.json b/app/javascript/dashboard/i18n/locale/hr/conversation.json index 7e8c58558..ada317045 100644 --- a/app/javascript/dashboard/i18n/locale/hr/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hr/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Nije moguće promijeniti prioritet. Molim, pokušajte kasnije." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Izbriši" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/hr/general.json b/app/javascript/dashboard/i18n/locale/hr/general.json index f6cab3dae..fae150ec8 100644 --- a/app/javascript/dashboard/i18n/locale/hr/general.json +++ b/app/javascript/dashboard/i18n/locale/hr/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "Nisu pronađeni rezultati" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/hr/generalSettings.json b/app/javascript/dashboard/i18n/locale/hr/generalSettings.json index 5f0d0961d..e88423779 100644 --- a/app/javascript/dashboard/i18n/locale/hr/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/hr/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/hr/integrations.json b/app/javascript/dashboard/i18n/locale/hr/integrations.json index 506cafc4d..89954c4e2 100644 --- a/app/javascript/dashboard/i18n/locale/hr/integrations.json +++ b/app/javascript/dashboard/i18n/locale/hr/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Da, izbriši", "CANCEL": "Odustani" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Vi", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/hr/macros.json b/app/javascript/dashboard/i18n/locale/hr/macros.json index 14e737ef4..57f06dfd4 100644 --- a/app/javascript/dashboard/i18n/locale/hr/macros.json +++ b/app/javascript/dashboard/i18n/locale/hr/macros.json @@ -85,7 +85,7 @@ "ATLEAST_ONE_ACTION_REQUIRED": "At least one action is required" }, "ACTIONS": { - "ASSIGN_TEAM": "Assign a Team", + "ASSIGN_TEAM": "Dodijeli tim", "ASSIGN_AGENT": "Assign an Agent", "ADD_LABEL": "Add a Label", "REMOVE_LABEL": "Remove a Label", diff --git a/app/javascript/dashboard/i18n/locale/hr/report.json b/app/javascript/dashboard/i18n/locale/hr/report.json index eb368ccea..2ca551438 100644 --- a/app/javascript/dashboard/i18n/locale/hr/report.json +++ b/app/javascript/dashboard/i18n/locale/hr/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Tim", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/hr/search.json b/app/javascript/dashboard/i18n/locale/hr/search.json index 323473dd0..9c54b01bc 100644 --- a/app/javascript/dashboard/i18n/locale/hr/search.json +++ b/app/javascript/dashboard/i18n/locale/hr/search.json @@ -4,12 +4,14 @@ "ALL": "Sve", "CONTACTS": "Kontakti", "CONVERSATIONS": "Razgovori", - "MESSAGES": "Poruke" + "MESSAGES": "Poruke", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakti", "CONVERSATIONS": "Razgovori", - "MESSAGES": "Poruke" + "MESSAGES": "Poruke", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/hr/settings.json b/app/javascript/dashboard/i18n/locale/hr/settings.json index e67d8aff4..61ccdccb0 100644 --- a/app/javascript/dashboard/i18n/locale/hr/settings.json +++ b/app/javascript/dashboard/i18n/locale/hr/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Pristupni token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Kopiraj" + "COPY": "Kopiraj", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/hu/agentBots.json b/app/javascript/dashboard/i18n/locale/hu/agentBots.json index 9c0d83849..9e01f7629 100644 --- a/app/javascript/dashboard/i18n/locale/hu/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/hu/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Nem tudta frissíteni a botot. Kérjük, próbálja újra." } }, + "ACCESS_TOKEN": { + "TITLE": "Hozzáférési kulcs", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/hu/auditLogs.json b/app/javascript/dashboard/i18n/locale/hu/auditLogs.json index 1299c343e..72a561b84 100644 --- a/app/javascript/dashboard/i18n/locale/hu/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/hu/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/hu/contact.json b/app/javascript/dashboard/i18n/locale/hu/contact.json index 4a08dae3c..5da9fe661 100644 --- a/app/javascript/dashboard/i18n/locale/hu/contact.json +++ b/app/javascript/dashboard/i18n/locale/hu/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontaktok", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Üzenet", "SEND_MESSAGE": "Üzenet elküldése", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Kontakt törlése", "DELETE_DIALOG": { "TITLE": "Törlés megerősítése", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Igen, Törlés", "API": { "SUCCESS_MESSAGE": "Kontakt sikeresen törölve", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Nincs a keresésnek megfelelő kontakt 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/hu/conversation.json b/app/javascript/dashboard/i18n/locale/hu/conversation.json index ee482c16e..6fe483cf3 100644 --- a/app/javascript/dashboard/i18n/locale/hu/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hu/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Megoldva", "REOPEN_ACTION": "Újranyitás", "OPEN_ACTION": "Megnyitás", + "MORE_ACTIONS": "More actions", "OPEN": "Tovább", "CLOSE": "Bezárás", "DETAILS": "részletek", @@ -117,6 +118,11 @@ "FAILED": "Nem sikerült megváltoztatni a prioritást. Kérlek, próbáld újra." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Törlés" + }, "CARD_CONTEXT_MENU": { "PENDING": "Függőben levőként megjelölés", "RESOLVED": "Megjelölés megoldottként", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Cimke hozzáadása", "AGENTS_LOADING": "Ügynökök betöltése...", "ASSIGN_TEAM": "Csapat hozzárendelése", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Címke sikeresen hozzárendelve", "ASSIGN_LABEL_FAILED": "Címke hozzárendelése sikertelen", "CHANGE_TEAM": "A beszélgetés csapata megváltozott", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "A file mérete meghaladja a {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} limitet", "MESSAGE_ERROR": "Nem tudsz üzenetet küldeni, kérlek, próbáld újra", "SENT_BY": "Küldő:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Kontakt Tulajdonságok", "PREVIOUS_CONVERSATION": "Korábbi beszélgetések", "MACROS": "Makrók", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/hu/general.json b/app/javascript/dashboard/i18n/locale/hu/general.json index b92df5935..c002d83da 100644 --- a/app/javascript/dashboard/i18n/locale/hu/general.json +++ b/app/javascript/dashboard/i18n/locale/hu/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Keresés", "EMPTY_STATE": "Nincs találat" - } + }, + "CLOSE": "Bezárás" } } diff --git a/app/javascript/dashboard/i18n/locale/hu/generalSettings.json b/app/javascript/dashboard/i18n/locale/hu/generalSettings.json index cefc92303..9e52f1585 100644 --- a/app/javascript/dashboard/i18n/locale/hu/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/hu/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Fióknév", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/hu/integrations.json b/app/javascript/dashboard/i18n/locale/hu/integrations.json index 25cb95f2e..098dd1f1a 100644 --- a/app/javascript/dashboard/i18n/locale/hu/integrations.json +++ b/app/javascript/dashboard/i18n/locale/hu/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Igen, törlés", "CANCEL": "Mégse" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Üzenet elküldése...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Ön", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Leírás", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/hu/report.json b/app/javascript/dashboard/i18n/locale/hu/report.json index f2729f217..c34bb6b3b 100644 --- a/app/javascript/dashboard/i18n/locale/hu/report.json +++ b/app/javascript/dashboard/i18n/locale/hu/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Címkék áttekintése", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Táblázat adatok betöltése...", "NO_ENOUGH_DATA": "Nem érkezett elég adat hogy jelentést generáljunk, kérjük próbáld később.", "DOWNLOAD_LABEL_REPORTS": "Címkejelentések letöltése", @@ -559,6 +560,7 @@ "INBOX": "Fiók", "AGENT": "Ügynök", "TEAM": "Csapat", + "LABEL": "Cimke", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/hu/search.json b/app/javascript/dashboard/i18n/locale/hu/search.json index f100fceb6..c2da826c8 100644 --- a/app/javascript/dashboard/i18n/locale/hu/search.json +++ b/app/javascript/dashboard/i18n/locale/hu/search.json @@ -4,12 +4,14 @@ "ALL": "Mind", "CONTACTS": "Kontaktok", "CONVERSATIONS": "Beszélgetések", - "MESSAGES": "Üzenetek" + "MESSAGES": "Üzenetek", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontaktok", "CONVERSATIONS": "Beszélgetések", - "MESSAGES": "Üzenetek" + "MESSAGES": "Üzenetek", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/hu/settings.json b/app/javascript/dashboard/i18n/locale/hu/settings.json index 1806c0b07..b9cee4b6e 100644 --- a/app/javascript/dashboard/i18n/locale/hu/settings.json +++ b/app/javascript/dashboard/i18n/locale/hu/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Hozzáférési kulcs", "NOTE": "Ez a kulcs akkor használható, ha API-alapú integrációt építesz", - "COPY": "Másolás" + "COPY": "Másolás", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Elérhetőség beállítása sikeres", - "SET_AVAILABILITY_ERROR": "Nem sikerült beállítani az elérhetőséget, kérlek, próbáld újra" + "SET_AVAILABILITY_ERROR": "Nem sikerült beállítani az elérhetőséget, kérlek, próbáld újra", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Az e-mailcímed", @@ -280,6 +286,7 @@ "REPORTS": "Jelentések", "SETTINGS": "Beállítások", "CONTACTS": "Kontaktok", + "ACTIVE": "Aktív", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/hy/agentBots.json b/app/javascript/dashboard/i18n/locale/hy/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/hy/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/hy/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/hy/auditLogs.json b/app/javascript/dashboard/i18n/locale/hy/auditLogs.json index 35c054fa2..df236f5b5 100644 --- a/app/javascript/dashboard/i18n/locale/hy/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/hy/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/hy/contact.json b/app/javascript/dashboard/i18n/locale/hy/contact.json index d0f38e59b..b4bb1c13a 100644 --- a/app/javascript/dashboard/i18n/locale/hy/contact.json +++ b/app/javascript/dashboard/i18n/locale/hy/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/hy/conversation.json b/app/javascript/dashboard/i18n/locale/hy/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/hy/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hy/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/hy/general.json b/app/javascript/dashboard/i18n/locale/hy/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/hy/general.json +++ b/app/javascript/dashboard/i18n/locale/hy/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/hy/generalSettings.json b/app/javascript/dashboard/i18n/locale/hy/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/hy/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/hy/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/hy/integrations.json b/app/javascript/dashboard/i18n/locale/hy/integrations.json index e57ecb7cd..4eb1343cb 100644 --- a/app/javascript/dashboard/i18n/locale/hy/integrations.json +++ b/app/javascript/dashboard/i18n/locale/hy/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/hy/report.json b/app/javascript/dashboard/i18n/locale/hy/report.json index e176d9147..18f1ed14b 100644 --- a/app/javascript/dashboard/i18n/locale/hy/report.json +++ b/app/javascript/dashboard/i18n/locale/hy/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/hy/search.json b/app/javascript/dashboard/i18n/locale/hy/search.json index e6e6edbe7..09c22ae3d 100644 --- a/app/javascript/dashboard/i18n/locale/hy/search.json +++ b/app/javascript/dashboard/i18n/locale/hy/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/hy/settings.json b/app/javascript/dashboard/i18n/locale/hy/settings.json index 10a21245b..219041d75 100644 --- a/app/javascript/dashboard/i18n/locale/hy/settings.json +++ b/app/javascript/dashboard/i18n/locale/hy/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/id/agentBots.json b/app/javascript/dashboard/i18n/locale/id/agentBots.json index eb99c2185..e29fa8263 100644 --- a/app/javascript/dashboard/i18n/locale/id/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/id/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Token Akses", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/id/auditLogs.json b/app/javascript/dashboard/i18n/locale/id/auditLogs.json index d180fab5d..f579ef475 100644 --- a/app/javascript/dashboard/i18n/locale/id/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/id/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/id/contact.json b/app/javascript/dashboard/i18n/locale/id/contact.json index efcb1e73c..212bde087 100644 --- a/app/javascript/dashboard/i18n/locale/id/contact.json +++ b/app/javascript/dashboard/i18n/locale/id/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontak", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Pesan", "SEND_MESSAGE": "Kirim Pesan", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Hapus kontak", "DELETE_DIALOG": { "TITLE": "Konfirmasi Penghapusan", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Ya, Hapus", "API": { "SUCCESS_MESSAGE": "Kontak berhasil dihapus", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Tambahkan kontak", "SEARCH_EMPTY_STATE_TITLE": "Tidak ada kontak yang cocok dengan pencarian Anda 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/id/conversation.json b/app/javascript/dashboard/i18n/locale/id/conversation.json index acd405e5c..d3750a26e 100644 --- a/app/javascript/dashboard/i18n/locale/id/conversation.json +++ b/app/javascript/dashboard/i18n/locale/id/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Menyelesaikan", "REOPEN_ACTION": "Buka Kembali", "OPEN_ACTION": "Terbuka", + "MORE_ACTIONS": "More actions", "OPEN": "Selebihnya", "CLOSE": "Tutup", "DETAILS": "detail", @@ -117,6 +118,11 @@ "FAILED": "Gagal mengubah prioritas. Silakan coba lagi." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Hapus" + }, "CARD_CONTEXT_MENU": { "PENDING": "Tandai sebagai tertunda", "RESOLVED": "Tandai sebagai terselesaikan", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Tugaskan label", "AGENTS_LOADING": "Sedang memuat agen...", "ASSIGN_TEAM": "Tugaskan tim", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Id percakapan {conversationId} ditugaskan ke \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label berhasil ditugaskan", "ASSIGN_LABEL_FAILED": "Gagal menugaskan label", "CHANGE_TEAM": "Percakapan diubah oleh tim", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Lampiran melebihi batas ukuran {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "MESSAGE_ERROR": "Tidak dapat mengirim pesan ini, mohon coba lagi nanti", "SENT_BY": "Dikirim oleh:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atribut Kontak", "PREVIOUS_CONVERSATION": "Percakapan Sebelumnya", "MACROS": "Makro", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/id/general.json b/app/javascript/dashboard/i18n/locale/id/general.json index 2b082c9c2..8eabae160 100644 --- a/app/javascript/dashboard/i18n/locale/id/general.json +++ b/app/javascript/dashboard/i18n/locale/id/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Cari", "EMPTY_STATE": "Tidak ada hasil ditemukan" - } + }, + "CLOSE": "Tutup" } } diff --git a/app/javascript/dashboard/i18n/locale/id/generalSettings.json b/app/javascript/dashboard/i18n/locale/id/generalSettings.json index 8217969cf..02afb7fcb 100644 --- a/app/javascript/dashboard/i18n/locale/id/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/id/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Nama Akun", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/id/integrations.json b/app/javascript/dashboard/i18n/locale/id/integrations.json index 01ff9e00a..6a10e7bd2 100644 --- a/app/javascript/dashboard/i18n/locale/id/integrations.json +++ b/app/javascript/dashboard/i18n/locale/id/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Ya, hapus", "CANCEL": "Batalkan" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Kirim Pesan...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Anda", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Deskripsi", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/id/report.json b/app/javascript/dashboard/i18n/locale/id/report.json index 423dc516e..ba8713436 100644 --- a/app/javascript/dashboard/i18n/locale/id/report.json +++ b/app/javascript/dashboard/i18n/locale/id/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Gambaran Label", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Memuat data grafik...", "NO_ENOUGH_DATA": "Kami belum menerima cukup data untuk membuat laporan, Silakan coba lagi nanti.", "DOWNLOAD_LABEL_REPORTS": "Unduh laporan label", @@ -559,6 +560,7 @@ "INBOX": "Kotak masuk", "AGENT": "Agen", "TEAM": "Tim", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/id/search.json b/app/javascript/dashboard/i18n/locale/id/search.json index 0793d21cf..f62b6a30d 100644 --- a/app/javascript/dashboard/i18n/locale/id/search.json +++ b/app/javascript/dashboard/i18n/locale/id/search.json @@ -4,12 +4,14 @@ "ALL": "Semua", "CONTACTS": "Kontak", "CONVERSATIONS": "Percakapan", - "MESSAGES": "Pesan" + "MESSAGES": "Pesan", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontak", "CONVERSATIONS": "Percakapan", - "MESSAGES": "Pesan" + "MESSAGES": "Pesan", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/id/settings.json b/app/javascript/dashboard/i18n/locale/id/settings.json index f697e6279..53d4ec05a 100644 --- a/app/javascript/dashboard/i18n/locale/id/settings.json +++ b/app/javascript/dashboard/i18n/locale/id/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token Akses", "NOTE": "Token ini dapat digunakan jika Anda sedang membangun integrasi berbasis API", - "COPY": "Salin" + "COPY": "Salin", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Ketersediaan berhasil diatur", - "SET_AVAILABILITY_ERROR": "Tidak dapat mengatur ketersediaan, silakan coba lagi" + "SET_AVAILABILITY_ERROR": "Tidak dapat mengatur ketersediaan, silakan coba lagi", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Alamat email Anda", @@ -280,6 +286,7 @@ "REPORTS": "Laporan", "SETTINGS": "Pengaturan", "CONTACTS": "Kontak", + "ACTIVE": "Aktif", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/is/agentBots.json b/app/javascript/dashboard/i18n/locale/is/agentBots.json index 89c9d66f7..3086c7959 100644 --- a/app/javascript/dashboard/i18n/locale/is/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/is/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Aðgangslykill", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/is/auditLogs.json b/app/javascript/dashboard/i18n/locale/is/auditLogs.json index 5204f0b4e..d2d53719c 100644 --- a/app/javascript/dashboard/i18n/locale/is/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/is/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/is/contact.json b/app/javascript/dashboard/i18n/locale/is/contact.json index ceedbd94d..de2b1fdb5 100644 --- a/app/javascript/dashboard/i18n/locale/is/contact.json +++ b/app/javascript/dashboard/i18n/locale/is/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Tengiliðir", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Skilaboð", "SEND_MESSAGE": "Senda skilaboð", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Eyða tengilið", "DELETE_DIALOG": { "TITLE": "Staðfesta eyðingu", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Já, eyða", "API": { "SUCCESS_MESSAGE": "Tengilið eytt", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Engir tengiliðir fundust", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/is/conversation.json b/app/javascript/dashboard/i18n/locale/is/conversation.json index 91a2cf346..b5968c810 100644 --- a/app/javascript/dashboard/i18n/locale/is/conversation.json +++ b/app/javascript/dashboard/i18n/locale/is/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Eyða" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Samtalsauðkenni {conversationId} úthlutað á „{agentName}“", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Merki úthlutað", "ASSIGN_LABEL_FAILED": "Tókst ekki að úthluta merki", "CHANGE_TEAM": "Teymi samtals breytt", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Skráin fer framyfir hámarksstærð viðhengja ({MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE})", "MESSAGE_ERROR": "Ekki er hægt að senda þessi skilaboð, vinsamlegast reyndu aftur síðar", "SENT_BY": "Sent af:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Fyrri samtöl", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/is/general.json b/app/javascript/dashboard/i18n/locale/is/general.json index da37c9397..a88171218 100644 --- a/app/javascript/dashboard/i18n/locale/is/general.json +++ b/app/javascript/dashboard/i18n/locale/is/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Leit", "EMPTY_STATE": "Engar niðurstöður fundust" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/is/generalSettings.json b/app/javascript/dashboard/i18n/locale/is/generalSettings.json index d16bf6199..0a4b3c052 100644 --- a/app/javascript/dashboard/i18n/locale/is/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/is/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Aðgangsnafn", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/is/integrations.json b/app/javascript/dashboard/i18n/locale/is/integrations.json index 5e0a47814..90ba47749 100644 --- a/app/javascript/dashboard/i18n/locale/is/integrations.json +++ b/app/javascript/dashboard/i18n/locale/is/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Hætta við" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Senda skilaboð...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/is/report.json b/app/javascript/dashboard/i18n/locale/is/report.json index 7bb9c3f0f..d415c05f1 100644 --- a/app/javascript/dashboard/i18n/locale/is/report.json +++ b/app/javascript/dashboard/i18n/locale/is/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "Við höfum ekki fengið nógu marga gagnapunkta til að búa til skýrslu, vinsamlegast reyndu aftur síðar.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Innhólf", "AGENT": "Þjónustufulltrúi", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/is/search.json b/app/javascript/dashboard/i18n/locale/is/search.json index 0fcad2100..794166710 100644 --- a/app/javascript/dashboard/i18n/locale/is/search.json +++ b/app/javascript/dashboard/i18n/locale/is/search.json @@ -4,12 +4,14 @@ "ALL": "Allt", "CONTACTS": "Tengiliðir", "CONVERSATIONS": "Samtöl", - "MESSAGES": "Skilaboð" + "MESSAGES": "Skilaboð", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Tengiliðir", "CONVERSATIONS": "Samtöl", - "MESSAGES": "Skilaboð" + "MESSAGES": "Skilaboð", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/is/settings.json b/app/javascript/dashboard/i18n/locale/is/settings.json index 0414e6a13..0526ecff0 100644 --- a/app/javascript/dashboard/i18n/locale/is/settings.json +++ b/app/javascript/dashboard/i18n/locale/is/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Aðgangslykill", "NOTE": "Þetta token er hægt að nota ef þú ert að byggja upp API byggða samþættingu", - "COPY": "Afrita" + "COPY": "Afrita", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Þitt tölvupóstfang", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Stillingar", "CONTACTS": "Tengiliðir", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/it/agentBots.json b/app/javascript/dashboard/i18n/locale/it/agentBots.json index 3d972234f..c620caa88 100644 --- a/app/javascript/dashboard/i18n/locale/it/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/it/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Token di accesso", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/it/auditLogs.json b/app/javascript/dashboard/i18n/locale/it/auditLogs.json index 58d2dbc05..5cd03a26e 100644 --- a/app/javascript/dashboard/i18n/locale/it/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/it/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/it/contact.json b/app/javascript/dashboard/i18n/locale/it/contact.json index dc85273b9..4336852b7 100644 --- a/app/javascript/dashboard/i18n/locale/it/contact.json +++ b/app/javascript/dashboard/i18n/locale/it/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contatti", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Messaggio", "SEND_MESSAGE": "Invia messaggio", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Elimina contatto", "DELETE_DIALOG": { "TITLE": "Conferma eliminazione", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Sì, elimina", "API": { "SUCCESS_MESSAGE": "Contatto eliminato con successo", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Nessun contatto corrisponde alla tua ricerca 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/it/conversation.json b/app/javascript/dashboard/i18n/locale/it/conversation.json index 966ca1dde..594e154d1 100644 --- a/app/javascript/dashboard/i18n/locale/it/conversation.json +++ b/app/javascript/dashboard/i18n/locale/it/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Risolvi", "REOPEN_ACTION": "Riapri", "OPEN_ACTION": "Apri", + "MORE_ACTIONS": "More actions", "OPEN": "Altro", "CLOSE": "Chiudi", "DETAILS": "Dettagli", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Elimina" + }, "CARD_CONTEXT_MENU": { "PENDING": "Segna come in sospeso", "RESOLVED": "Contrassegna come risolto", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assegna etichetta", "AGENTS_LOADING": "Caricamento agenti...", "ASSIGN_TEAM": "Assegna team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "ID conversazione {conversationId} assegnato a \"{agentName}\"", @@ -207,6 +214,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", "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:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Attributi contatti", "PREVIOUS_CONVERSATION": "Conversazioni precedenti", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/it/general.json b/app/javascript/dashboard/i18n/locale/it/general.json index 1fd89fe3a..71d0d7759 100644 --- a/app/javascript/dashboard/i18n/locale/it/general.json +++ b/app/javascript/dashboard/i18n/locale/it/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Cerca", "EMPTY_STATE": "Nessun risultato trovato" - } + }, + "CLOSE": "Chiudi" } } diff --git a/app/javascript/dashboard/i18n/locale/it/generalSettings.json b/app/javascript/dashboard/i18n/locale/it/generalSettings.json index 96d45fb75..7b7906541 100644 --- a/app/javascript/dashboard/i18n/locale/it/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/it/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferenze", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Nome account", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/it/integrations.json b/app/javascript/dashboard/i18n/locale/it/integrations.json index 7ce30781d..12b389fa3 100644 --- a/app/javascript/dashboard/i18n/locale/it/integrations.json +++ b/app/javascript/dashboard/i18n/locale/it/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "annulla" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Invia messaggio...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Descrizione", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/it/report.json b/app/javascript/dashboard/i18n/locale/it/report.json index c944e62e9..d6471a7ff 100644 --- a/app/javascript/dashboard/i18n/locale/it/report.json +++ b/app/javascript/dashboard/i18n/locale/it/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Panoramica etichette", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Caricamento dati del grafico...", "NO_ENOUGH_DATA": "Non abbiamo ricevuto abbastanza punti dati per generare il rapporto, riprova più tardi.", "DOWNLOAD_LABEL_REPORTS": "Scarica report etichette", @@ -559,6 +560,7 @@ "INBOX": "Casella", "AGENT": "Agente", "TEAM": "Team", + "LABEL": "Etichetta", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/it/search.json b/app/javascript/dashboard/i18n/locale/it/search.json index 24714c53a..d2813ab21 100644 --- a/app/javascript/dashboard/i18n/locale/it/search.json +++ b/app/javascript/dashboard/i18n/locale/it/search.json @@ -4,12 +4,14 @@ "ALL": "Tutti", "CONTACTS": "Contatti", "CONVERSATIONS": "Conversazioni", - "MESSAGES": "Messaggi" + "MESSAGES": "Messaggi", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contatti", "CONVERSATIONS": "Conversazioni", - "MESSAGES": "Messaggi" + "MESSAGES": "Messaggi", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/it/settings.json b/app/javascript/dashboard/i18n/locale/it/settings.json index b6679ef30..401423a5d 100644 --- a/app/javascript/dashboard/i18n/locale/it/settings.json +++ b/app/javascript/dashboard/i18n/locale/it/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token di accesso", "NOTE": "Questo token può essere usato se stai costruendo un'integrazione basata su API", - "COPY": "Copia" + "COPY": "Copia", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Il tuo indirizzo email", @@ -280,6 +286,7 @@ "REPORTS": "Segnalazioni", "SETTINGS": "Impostazioni", "CONTACTS": "Contatti", + "ACTIVE": "Attivo", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ja/agentBots.json b/app/javascript/dashboard/i18n/locale/ja/agentBots.json index 74397201f..0b50ce755 100644 --- a/app/javascript/dashboard/i18n/locale/ja/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ja/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "ボットを更新できませんでした。再試行してください。" } }, + "ACCESS_TOKEN": { + "TITLE": "アクセストークン", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ja/auditLogs.json b/app/javascript/dashboard/i18n/locale/ja/auditLogs.json index 300afa78d..60ee3577c 100644 --- a/app/javascript/dashboard/i18n/locale/ja/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ja/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} がアカウント設定 (#{id}) を更新しました" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ja/contact.json b/app/javascript/dashboard/i18n/locale/ja/contact.json index 03fe63f23..a37e63f54 100644 --- a/app/javascript/dashboard/i18n/locale/ja/contact.json +++ b/app/javascript/dashboard/i18n/locale/ja/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "連絡先", "SEARCH_TITLE": "連絡先を検索", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "検索...", "MESSAGE_BUTTON": "メッセージ", "SEND_MESSAGE": "メッセージを送信", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Twitterを追加" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "連絡先を削除", "DELETE_DIALOG": { "TITLE": "削除の確認", - "DESCRIPTION": "この {contactName} の連絡先を削除してもよろしいですか?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "削除する", "API": { "SUCCESS_MESSAGE": "連絡先が正常に削除されました。", @@ -555,7 +560,8 @@ "SUBTITLE": "以下のボタンをクリックして新しい連絡先を追加してください。", "BUTTON_LABEL": "連絡先を追加", "SEARCH_EMPTY_STATE_TITLE": "検索に一致する連絡先はありません 🔍", - "LIST_EMPTY_STATE_TITLE": "このビューには利用可能な連絡先がありません 📋" + "LIST_EMPTY_STATE_TITLE": "このビューには利用可能な連絡先がありません 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ja/conversation.json b/app/javascript/dashboard/i18n/locale/ja/conversation.json index bc997a6d0..23d768def 100644 --- a/app/javascript/dashboard/i18n/locale/ja/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ja/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "解決する", "REOPEN_ACTION": "再開する", "OPEN_ACTION": "再開する", + "MORE_ACTIONS": "More actions", "OPEN": "もっと見る", "CLOSE": "閉じる", "DETAILS": "詳細", @@ -117,6 +118,11 @@ "FAILED": "優先度を変更できませんでした。もう一度お試しください。" } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "削除" + }, "CARD_CONTEXT_MENU": { "PENDING": "保留としてマークする", "RESOLVED": "解決済みとしてマークする", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "ラベルを割り当てる", "AGENTS_LOADING": "エージェントを読み込む...", "ASSIGN_TEAM": "チームを割り当てる", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "会話 ID {conversationId} が \"{agentName}\" に割り当てられました", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "ラベルが正常に割り当てられました", "ASSIGN_LABEL_FAILED": "ラベル割り当てに失敗しました", "CHANGE_TEAM": "会話のチームが変更されました", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "ファイルが {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB の添付ファイル制限を超えています", "MESSAGE_ERROR": "このメッセージを送信できません。後でもう一度お試しください", "SENT_BY": "送信者:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "連絡先属性", "PREVIOUS_CONVERSATION": "以前の会話", "MACROS": "マクロ", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ja/general.json b/app/javascript/dashboard/i18n/locale/ja/general.json index 533e00a4f..4f68ce750 100644 --- a/app/javascript/dashboard/i18n/locale/ja/general.json +++ b/app/javascript/dashboard/i18n/locale/ja/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "検索", "EMPTY_STATE": "結果が見つかりませんでした。" - } + }, + "CLOSE": "閉じる" } } diff --git a/app/javascript/dashboard/i18n/locale/ja/generalSettings.json b/app/javascript/dashboard/i18n/locale/ja/generalSettings.json index 5f3ce3a8e..c52280e39 100644 --- a/app/javascript/dashboard/i18n/locale/ja/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ja/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "アカウント名", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ja/integrations.json b/app/javascript/dashboard/i18n/locale/ja/integrations.json index ca786140f..42694429a 100644 --- a/app/javascript/dashboard/i18n/locale/ja/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ja/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "課題のリンクが正常に解除されました", "ERROR": "課題のリンク解除中にエラーが発生しました。もう一度お試しください" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "はい、削除します", "CANCEL": "キャンセル" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "キャプテン", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "コパイロット", + "TRY_THESE_PROMPTS": "これらのプロンプトを試してください", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "メッセージを送信...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captainが考え中", "YOU": "あなた", "USE": "これを使用", "RESET": "リセット", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "プランはいつでも変更またはキャンセルできます" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AIは有料プランのみで利用可能です。", "UPGRADE_PROMPT": "アシスタント、Copilotなどにアクセスするには、プランをアップグレードしてください。", "ASK_ADMIN": "管理者にアップグレードを依頼してください。" }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "アシスタント", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "新しいアシスタントを作成", "DELETE": { "TITLE": "アシスタントを削除してもよろしいですか?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "説明", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ja/report.json b/app/javascript/dashboard/i18n/locale/ja/report.json index d0eb75917..94c82e300 100644 --- a/app/javascript/dashboard/i18n/locale/ja/report.json +++ b/app/javascript/dashboard/i18n/locale/ja/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "過去 1 年", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "グラフデータを読み込んでいます...", "NO_ENOUGH_DATA": "レポートを生成するための十分なデータポイントを受信していません。後でもう一度お試しください。", "DOWNLOAD_LABEL_REPORTS": "ラベルレポートをダウンロード", @@ -559,6 +560,7 @@ "INBOX": "受信トレイ", "AGENT": "担当者", "TEAM": "チーム", + "LABEL": "ラベル", "AVG_RESOLUTION_TIME": "解決までの平均時間", "AVG_FIRST_RESPONSE_TIME": "初回応答の平均時間", "AVG_REPLY_TIME": "お客様の平均待ち時間", diff --git a/app/javascript/dashboard/i18n/locale/ja/search.json b/app/javascript/dashboard/i18n/locale/ja/search.json index 15c0d757a..6d9e388d6 100644 --- a/app/javascript/dashboard/i18n/locale/ja/search.json +++ b/app/javascript/dashboard/i18n/locale/ja/search.json @@ -4,12 +4,14 @@ "ALL": "すべて", "CONTACTS": "連絡先", "CONVERSATIONS": "会話データ", - "MESSAGES": "メッセージ" + "MESSAGES": "メッセージ", + "ARTICLES": "記事" }, "SECTION": { "CONTACTS": "連絡先", "CONVERSATIONS": "会話データ", - "MESSAGES": "メッセージ" + "MESSAGES": "メッセージ", + "ARTICLES": "記事" }, "VIEW_MORE": "さらに表示", "LOAD_MORE": "さらに読み込む", diff --git a/app/javascript/dashboard/i18n/locale/ja/settings.json b/app/javascript/dashboard/i18n/locale/ja/settings.json index 9997883e5..37affa889 100644 --- a/app/javascript/dashboard/i18n/locale/ja/settings.json +++ b/app/javascript/dashboard/i18n/locale/ja/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "アクセストークン", "NOTE": "このトークンは、API連携を構築する場合に利用します。", - "COPY": "コピー" + "COPY": "コピー", + "RESET": "リセット", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "オーディオアラート", @@ -185,7 +190,8 @@ "OFFLINE": "オフライン" }, "SET_AVAILABILITY_SUCCESS": "利用可能ステータスが正常に設定されました", - "SET_AVAILABILITY_ERROR": "利用可能ステータスを設定できませんでした。もう一度お試しください" + "SET_AVAILABILITY_ERROR": "利用可能ステータスを設定できませんでした。もう一度お試しください", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "あなたのメールアドレス", @@ -280,6 +286,7 @@ "REPORTS": "レポート", "SETTINGS": "設定", "CONTACTS": "連絡先", + "ACTIVE": "有効", "CAPTAIN": "キャプテン", "CAPTAIN_ASSISTANTS": "アシスタント", "CAPTAIN_DOCUMENTS": "ドキュメント", diff --git a/app/javascript/dashboard/i18n/locale/ka/agentBots.json b/app/javascript/dashboard/i18n/locale/ka/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/ka/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ka/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ka/auditLogs.json b/app/javascript/dashboard/i18n/locale/ka/auditLogs.json index 35c054fa2..df236f5b5 100644 --- a/app/javascript/dashboard/i18n/locale/ka/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ka/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ka/contact.json b/app/javascript/dashboard/i18n/locale/ka/contact.json index d0f38e59b..b4bb1c13a 100644 --- a/app/javascript/dashboard/i18n/locale/ka/contact.json +++ b/app/javascript/dashboard/i18n/locale/ka/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ka/conversation.json b/app/javascript/dashboard/i18n/locale/ka/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/ka/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ka/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ka/general.json b/app/javascript/dashboard/i18n/locale/ka/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/ka/general.json +++ b/app/javascript/dashboard/i18n/locale/ka/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/ka/generalSettings.json b/app/javascript/dashboard/i18n/locale/ka/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/ka/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ka/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ka/integrations.json b/app/javascript/dashboard/i18n/locale/ka/integrations.json index e57ecb7cd..4eb1343cb 100644 --- a/app/javascript/dashboard/i18n/locale/ka/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ka/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ka/report.json b/app/javascript/dashboard/i18n/locale/ka/report.json index e176d9147..18f1ed14b 100644 --- a/app/javascript/dashboard/i18n/locale/ka/report.json +++ b/app/javascript/dashboard/i18n/locale/ka/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ka/search.json b/app/javascript/dashboard/i18n/locale/ka/search.json index 3cb566813..e8510ab97 100644 --- a/app/javascript/dashboard/i18n/locale/ka/search.json +++ b/app/javascript/dashboard/i18n/locale/ka/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ka/settings.json b/app/javascript/dashboard/i18n/locale/ka/settings.json index 4be80dba1..6a9cbf229 100644 --- a/app/javascript/dashboard/i18n/locale/ka/settings.json +++ b/app/javascript/dashboard/i18n/locale/ka/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ko/agentBots.json b/app/javascript/dashboard/i18n/locale/ko/agentBots.json index b26cca42f..86664d128 100644 --- a/app/javascript/dashboard/i18n/locale/ko/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ko/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "엑세스 토큰", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ko/auditLogs.json b/app/javascript/dashboard/i18n/locale/ko/auditLogs.json index fe96abe81..9bfdb6d6e 100644 --- a/app/javascript/dashboard/i18n/locale/ko/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ko/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ko/contact.json b/app/javascript/dashboard/i18n/locale/ko/contact.json index bae30c5e7..faaa14ccc 100644 --- a/app/javascript/dashboard/i18n/locale/ko/contact.json +++ b/app/javascript/dashboard/i18n/locale/ko/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "연락처", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "메시지", "SEND_MESSAGE": "메시지 보내기", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "연락처 지우기", "DELETE_DIALOG": { "TITLE": "삭제 확인", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "예, 삭제합니다", "API": { "SUCCESS_MESSAGE": "연락처가 성공적으로 삭제되었습니다", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "검색과 일치하는 연락처 없음 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ko/conversation.json b/app/javascript/dashboard/i18n/locale/ko/conversation.json index d71b6185e..e346d0ae8 100644 --- a/app/javascript/dashboard/i18n/locale/ko/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ko/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "해결함", "REOPEN_ACTION": "다시 열기", "OPEN_ACTION": "열기", + "MORE_ACTIONS": "More actions", "OPEN": "더보기", "CLOSE": "닫기", "DETAILS": "자세히", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "삭제" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "대화 담당자가 변경됨", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "보낸 사람:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "이전 대화", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ko/general.json b/app/javascript/dashboard/i18n/locale/ko/general.json index 58927922a..8913d9dbf 100644 --- a/app/javascript/dashboard/i18n/locale/ko/general.json +++ b/app/javascript/dashboard/i18n/locale/ko/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "검색", "EMPTY_STATE": "검색 결과가 없습니다" - } + }, + "CLOSE": "닫기" } } diff --git a/app/javascript/dashboard/i18n/locale/ko/generalSettings.json b/app/javascript/dashboard/i18n/locale/ko/generalSettings.json index f5a58fbe1..2bb6ea2fb 100644 --- a/app/javascript/dashboard/i18n/locale/ko/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ko/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "계정 이름", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ko/integrations.json b/app/javascript/dashboard/i18n/locale/ko/integrations.json index 9d08df7df..e0b1209ca 100644 --- a/app/javascript/dashboard/i18n/locale/ko/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ko/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "취소" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "메시지 보내기...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "나", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "내용", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ko/report.json b/app/javascript/dashboard/i18n/locale/ko/report.json index 35458615a..eef965113 100644 --- a/app/javascript/dashboard/i18n/locale/ko/report.json +++ b/app/javascript/dashboard/i18n/locale/ko/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "차트 데이터 불러오는 중...", "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "받은 메시지함", "AGENT": "에이전트", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ko/search.json b/app/javascript/dashboard/i18n/locale/ko/search.json index 5e1785215..c88467065 100644 --- a/app/javascript/dashboard/i18n/locale/ko/search.json +++ b/app/javascript/dashboard/i18n/locale/ko/search.json @@ -4,12 +4,14 @@ "ALL": "모두", "CONTACTS": "연락처", "CONVERSATIONS": "대화", - "MESSAGES": "메시지" + "MESSAGES": "메시지", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "연락처", "CONVERSATIONS": "대화", - "MESSAGES": "메시지" + "MESSAGES": "메시지", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ko/settings.json b/app/javascript/dashboard/i18n/locale/ko/settings.json index 0c7a5bb43..e8a09b24d 100644 --- a/app/javascript/dashboard/i18n/locale/ko/settings.json +++ b/app/javascript/dashboard/i18n/locale/ko/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "엑세스 토큰", "NOTE": "API 기반 통합을 구축하는 경우 이 토큰을 사용할 수 있음", - "COPY": "복사" + "COPY": "복사", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "오프라인" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "이메일 주소", @@ -280,6 +286,7 @@ "REPORTS": "보고서", "SETTINGS": "설정", "CONTACTS": "연락처", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/lt/agentBots.json b/app/javascript/dashboard/i18n/locale/lt/agentBots.json index 785e5c6c3..46731005a 100644 --- a/app/javascript/dashboard/i18n/locale/lt/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/lt/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Nepavyko atnaujinti boto. Bandykite dar kartą vėliau." } }, + "ACCESS_TOKEN": { + "TITLE": "Prieeigos raktas", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/lt/auditLogs.json b/app/javascript/dashboard/i18n/locale/lt/auditLogs.json index afa824504..c0c75f156 100644 --- a/app/javascript/dashboard/i18n/locale/lt/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/lt/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/lt/contact.json b/app/javascript/dashboard/i18n/locale/lt/contact.json index de2720a18..305f66b23 100644 --- a/app/javascript/dashboard/i18n/locale/lt/contact.json +++ b/app/javascript/dashboard/i18n/locale/lt/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontaktai", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Žinutė", "SEND_MESSAGE": "Išsiųsti pranešimą", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Trinti kontaktą", "DELETE_DIALOG": { "TITLE": "Patvirtinti Ištrynimą", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Taip, Ištrinti", "API": { "SUCCESS_MESSAGE": "Agentas ištrintas sėkmingai", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Nė vienas kontaktas neatitinka jūsų paieškos 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/lt/conversation.json b/app/javascript/dashboard/i18n/locale/lt/conversation.json index 73bc4f55a..49dcba6ca 100644 --- a/app/javascript/dashboard/i18n/locale/lt/conversation.json +++ b/app/javascript/dashboard/i18n/locale/lt/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Išspręsti", "REOPEN_ACTION": "Atidarykite iš naujo", "OPEN_ACTION": "Atidaryti", + "MORE_ACTIONS": "More actions", "OPEN": "Daugiau", "CLOSE": "Uždaryti", "DETAILS": "smulkesnė informacija", @@ -117,6 +118,11 @@ "FAILED": "Nepavyko pakeisti prioriteto. Prašau, pabandykite dar kartą." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Ištrinti" + }, "CARD_CONTEXT_MENU": { "PENDING": "Pažymėti kaip laukiantį", "RESOLVED": "Pažymėti kaip išspręstą", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Priskirti etiketę", "AGENTS_LOADING": "Agentai užkraunami...", "ASSIGN_TEAM": "Priskirti komandą", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Pokalbis id {conversationId} priskirtas \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Etiketė sėkmingai priskirta", "ASSIGN_LABEL_FAILED": "Etiketės priskirti nepavyko", "CHANGE_TEAM": "Pasikeitė pokalbių komanda", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Failas viršija {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB priedo apribojimą", "MESSAGE_ERROR": "Nepavyko išsiųsti šio pranešimo, bandykite dar kartą vėliau", "SENT_BY": "Siuntėjas:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Kontakto Požymiai", "PREVIOUS_CONVERSATION": "Ankstesni pokalbiai", "MACROS": "Makrokomandos", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/lt/general.json b/app/javascript/dashboard/i18n/locale/lt/general.json index ded0ebaef..ecbf9cda9 100644 --- a/app/javascript/dashboard/i18n/locale/lt/general.json +++ b/app/javascript/dashboard/i18n/locale/lt/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Ieškoti", "EMPTY_STATE": "Nieko nerasta" - } + }, + "CLOSE": "Uždaryti" } } diff --git a/app/javascript/dashboard/i18n/locale/lt/generalSettings.json b/app/javascript/dashboard/i18n/locale/lt/generalSettings.json index 21729fe24..bd62ea64e 100644 --- a/app/javascript/dashboard/i18n/locale/lt/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/lt/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Paskyros vardas", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/lt/integrations.json b/app/javascript/dashboard/i18n/locale/lt/integrations.json index 7584aad45..00e13c468 100644 --- a/app/javascript/dashboard/i18n/locale/lt/integrations.json +++ b/app/javascript/dashboard/i18n/locale/lt/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Taip, Trinti", "CANCEL": "Atšaukti" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Išsiųsti pranešimą...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Jūs", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Aprašymas", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/lt/report.json b/app/javascript/dashboard/i18n/locale/lt/report.json index f26419eed..37c0be59d 100644 --- a/app/javascript/dashboard/i18n/locale/lt/report.json +++ b/app/javascript/dashboard/i18n/locale/lt/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Etikečių Apžvalga", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Įkeliami diagramos duomenys...", "NO_ENOUGH_DATA": "Negavome pakankamai duomenų, kad galėtume sugeneruoti ataskaitą. Bandykite dar kartą vėliau.", "DOWNLOAD_LABEL_REPORTS": "Parsisiųsti etiketės ataskaitas", @@ -559,6 +560,7 @@ "INBOX": "Gautų laiškų aplankas", "AGENT": "Agentas", "TEAM": "Komanda", + "LABEL": "Etiketė", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/lt/search.json b/app/javascript/dashboard/i18n/locale/lt/search.json index 4e2c4f78a..79f249960 100644 --- a/app/javascript/dashboard/i18n/locale/lt/search.json +++ b/app/javascript/dashboard/i18n/locale/lt/search.json @@ -4,12 +4,14 @@ "ALL": "Visi", "CONTACTS": "Kontaktai", "CONVERSATIONS": "Pokalbiai", - "MESSAGES": "Pranešimai" + "MESSAGES": "Pranešimai", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontaktai", "CONVERSATIONS": "Pokalbiai", - "MESSAGES": "Pranešimai" + "MESSAGES": "Pranešimai", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/lt/settings.json b/app/javascript/dashboard/i18n/locale/lt/settings.json index c7a0bb4be..5b6e3ace2 100644 --- a/app/javascript/dashboard/i18n/locale/lt/settings.json +++ b/app/javascript/dashboard/i18n/locale/lt/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Prieeigos raktas", "NOTE": "Šis prieigos raktas gali būti naudojamas, jei kuriate API pagrįstą integraciją", - "COPY": "Kopijuoti" + "COPY": "Kopijuoti", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Atsijungęs" }, "SET_AVAILABILITY_SUCCESS": "Pasiekiamumas nustatytas sėkmingai", - "SET_AVAILABILITY_ERROR": "Nepavyko nustatyti pasiekiamumo, bandykite dar kartą" + "SET_AVAILABILITY_ERROR": "Nepavyko nustatyti pasiekiamumo, bandykite dar kartą", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Jūsų el. pašto adresas", @@ -280,6 +286,7 @@ "REPORTS": "Ataskaitos", "SETTINGS": "Nustatymai", "CONTACTS": "Kontaktai", + "ACTIVE": "Aktyvus", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/lv/agentBots.json b/app/javascript/dashboard/i18n/locale/lv/agentBots.json index 797f3a5bf..bc51df4f1 100644 --- a/app/javascript/dashboard/i18n/locale/lv/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/lv/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Nevarēja atjaunināt robotu. Lūdzu mēģiniet vēlreiz." } }, + "ACCESS_TOKEN": { + "TITLE": "Piekļuves Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/lv/auditLogs.json b/app/javascript/dashboard/i18n/locale/lv/auditLogs.json index 8f5fcef6c..180eb969f 100644 --- a/app/javascript/dashboard/i18n/locale/lv/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/lv/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} atjaunināja konta konfigurāciju (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/lv/contact.json b/app/javascript/dashboard/i18n/locale/lv/contact.json index 6862ac186..3697015a0 100644 --- a/app/javascript/dashboard/i18n/locale/lv/contact.json +++ b/app/javascript/dashboard/i18n/locale/lv/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontaktpersonas", "SEARCH_TITLE": "Meklēt kontaktpersonas", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Meklēt...", "MESSAGE_BUTTON": "Ziņojums", "SEND_MESSAGE": "Sūtīt ziņojumu", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Pievienot Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Dzēst kontaktpersonu", "DELETE_DIALOG": { "TITLE": "Apstiprināt Dzēšanu", - "DESCRIPTION": "Vai tiešām vēlaties dzēst šo {contactName} kontaktpersonu?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Jā, Dzēst", "API": { "SUCCESS_MESSAGE": "Kontaktpersona ir veiksmīgi izdzēsta", @@ -555,7 +560,8 @@ "SUBTITLE": "Sāciet pievienot jaunas kontaktpersonas, noklikšķinot uz tālāk esošās pogas", "BUTTON_LABEL": "Pievienot kontaktpersonu", "SEARCH_EMPTY_STATE_TITLE": "Neviena kontaktpersona neatbilst jūsu meklēšanas vaicājumam 🔍", - "LIST_EMPTY_STATE_TITLE": "Šajā skatā nav pieejama neviena kontaktpersona 📋" + "LIST_EMPTY_STATE_TITLE": "Šajā skatā nav pieejama neviena kontaktpersona 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/lv/conversation.json b/app/javascript/dashboard/i18n/locale/lv/conversation.json index ca6e757b9..b69618141 100644 --- a/app/javascript/dashboard/i18n/locale/lv/conversation.json +++ b/app/javascript/dashboard/i18n/locale/lv/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Atrisināt", "REOPEN_ACTION": "Atkārtoti atvērt", "OPEN_ACTION": "Atvērt", + "MORE_ACTIONS": "More actions", "OPEN": "Papildu", "CLOSE": "Aizvērt", "DETAILS": "detalizēta informācija", @@ -117,6 +118,11 @@ "FAILED": "Nevarēja nomainīt prioritāti. Lūdzu, mēģiniet vēlreiz." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Dzēst" + }, "CARD_CONTEXT_MENU": { "PENDING": "Atzīmēt kā neapstiprinātu", "RESOLVED": "Atzīmēt kā atrisinātu", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Piešķirt etiķeti", "AGENTS_LOADING": "Notiek aģentu ielāde...", "ASSIGN_TEAM": "Piešķirt komandu", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Sarunas id {conversationId} piešķirts \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Etiķete ir veiksmīgi piešķirta", "ASSIGN_LABEL_FAILED": "Etiķetes piešķiršana neizdevās", "CHANGE_TEAM": "Sarunu komanda mainīta", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Fails pārsniedz {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB pielikuma ierobežojumu", "MESSAGE_ERROR": "Nevar nosūtīt šo ziņojumu. Lūdzu, vēlāk mēģiniet vēlreiz", "SENT_BY": "Sūtīja:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Kontaktpersonas Īpašības", "PREVIOUS_CONVERSATION": "Iepriekšējās Sarunas", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/lv/general.json b/app/javascript/dashboard/i18n/locale/lv/general.json index ba2b8cf5a..bd432e7b6 100644 --- a/app/javascript/dashboard/i18n/locale/lv/general.json +++ b/app/javascript/dashboard/i18n/locale/lv/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Meklēt", "EMPTY_STATE": "Nav atrasts" - } + }, + "CLOSE": "Aizvērt" } } diff --git a/app/javascript/dashboard/i18n/locale/lv/generalSettings.json b/app/javascript/dashboard/i18n/locale/lv/generalSettings.json index c2f433163..fd7067904 100644 --- a/app/javascript/dashboard/i18n/locale/lv/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/lv/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Konta nosaukums", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/lv/integrations.json b/app/javascript/dashboard/i18n/locale/lv/integrations.json index 31e21313f..c230ded21 100644 --- a/app/javascript/dashboard/i18n/locale/lv/integrations.json +++ b/app/javascript/dashboard/i18n/locale/lv/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Problēma ir veiksmīgi atsaistīta", "ERROR": "Atsaistot jautājumu radās kļūda. Lūdzu, mēģiniet vēlreiz" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Vai tiešām vēlaties dzēst integrāciju?", "MESSAGE": "Vai tiešām vēlaties dzēst integrāciju?", "CONFIRM": "Jā, dzēst", "CANCEL": "Atcelt" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Kapteinis", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Kopilots", + "TRY_THESE_PROMPTS": "Pamēģiniet", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Sūtīt ziņojumu...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Kapteinis domā", "YOU": "Jūs", "USE": "Izmantot šo", "RESET": "Atiestatīt", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Izvēlēties Asistentu", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "Jūs varat jebkurā laikā mainīt vai atcelt savu versiju" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI funkcija ir pieejama tikai maksas abonementā.", "UPGRADE_PROMPT": "Modernizējiet savu abonementu, lai iegūtu piekļuvi viruālajiem asistentiem un copilot.", "ASK_ADMIN": "Lai pārietu uz maksas versiju, lūdzu sazinieties ar savu administratoru." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Asistenti", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Izveidot jaunu asistentu", "DELETE": { "TITLE": "Vai tiešām vēlaties izdzēst asistentu?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Apraksts", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/lv/report.json b/app/javascript/dashboard/i18n/locale/lv/report.json index d6fa9c9cb..4f98e7974 100644 --- a/app/javascript/dashboard/i18n/locale/lv/report.json +++ b/app/javascript/dashboard/i18n/locale/lv/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Etiķešu Pārskats", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Notiek diagrammas datu ielāde...", "NO_ENOUGH_DATA": "Mēs neesam saņēmuši pietiekami daudz datu punktu, lai izveidotu pārskatu. Lūdzu, vēlāk mēģiniet vēlreiz.", "DOWNLOAD_LABEL_REPORTS": "Lejupielādēt etiķešu pārskatus", @@ -559,6 +560,7 @@ "INBOX": "Iesūtne", "AGENT": "Aģents", "TEAM": "Komanda", + "LABEL": "Etiķete", "AVG_RESOLUTION_TIME": "Vid. Atrisināšanas Laiks", "AVG_FIRST_RESPONSE_TIME": "Vid. Pirmās Atbildes Laiks", "AVG_REPLY_TIME": "Vid. Klientu Gaidīšanas Laiks", diff --git a/app/javascript/dashboard/i18n/locale/lv/search.json b/app/javascript/dashboard/i18n/locale/lv/search.json index f53b611bb..0aecb6b4e 100644 --- a/app/javascript/dashboard/i18n/locale/lv/search.json +++ b/app/javascript/dashboard/i18n/locale/lv/search.json @@ -4,12 +4,14 @@ "ALL": "Visi", "CONTACTS": "Kontaktpersonas", "CONVERSATIONS": "Sarunas", - "MESSAGES": "Ziņojumi" + "MESSAGES": "Ziņojumi", + "ARTICLES": "Raksti" }, "SECTION": { "CONTACTS": "Kontaktpersonas", "CONVERSATIONS": "Sarunas", - "MESSAGES": "Ziņojumi" + "MESSAGES": "Ziņojumi", + "ARTICLES": "Raksti" }, "VIEW_MORE": "Skatīt vairāk", "LOAD_MORE": "Ielādēt vairāk", diff --git a/app/javascript/dashboard/i18n/locale/lv/settings.json b/app/javascript/dashboard/i18n/locale/lv/settings.json index 61ed0a48c..64fd68e70 100644 --- a/app/javascript/dashboard/i18n/locale/lv/settings.json +++ b/app/javascript/dashboard/i18n/locale/lv/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Piekļuves Token", "NOTE": "Šo token var izmantot, ja veidojat uz API balstītu integrāciju", - "COPY": "Kopēt" + "COPY": "Kopēt", + "RESET": "Atiestatīt", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Brīdinājumi", @@ -185,7 +190,8 @@ "OFFLINE": "Bezsaistē" }, "SET_AVAILABILITY_SUCCESS": "Pieejamība ir veiksmīgi iestatīta", - "SET_AVAILABILITY_ERROR": "Nevarēja iestatīt pieejamību. Lūdzu, mēģiniet vēlreiz" + "SET_AVAILABILITY_ERROR": "Nevarēja iestatīt pieejamību. Lūdzu, mēģiniet vēlreiz", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Jūsu e-pasta adrese", @@ -280,6 +286,7 @@ "REPORTS": "Pārskati", "SETTINGS": "Iestatījumi", "CONTACTS": "Kontaktpersonas", + "ACTIVE": "Aktīvs", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Asistenti", "CAPTAIN_DOCUMENTS": "Dokumenti", diff --git a/app/javascript/dashboard/i18n/locale/ml/agentBots.json b/app/javascript/dashboard/i18n/locale/ml/agentBots.json index ebed0c867..0bbe3b7f0 100644 --- a/app/javascript/dashboard/i18n/locale/ml/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ml/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "ആക്സസ് ടോക്കൺ", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ml/auditLogs.json b/app/javascript/dashboard/i18n/locale/ml/auditLogs.json index 0f86e31da..f9150aa51 100644 --- a/app/javascript/dashboard/i18n/locale/ml/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ml/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ml/contact.json b/app/javascript/dashboard/i18n/locale/ml/contact.json index b9d2a5a69..0fcc576f1 100644 --- a/app/javascript/dashboard/i18n/locale/ml/contact.json +++ b/app/javascript/dashboard/i18n/locale/ml/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "കോൺ‌ടാക്റ്റുകൾ", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "സന്ദേശം", "SEND_MESSAGE": "സന്ദേശം അയയ്ക്കുക", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "കോൺടാക്റ്റ് ഇല്ലാതാക്കുക", "DELETE_DIALOG": { "TITLE": "ഇല്ലാതാക്കൽ സ്ഥിരീകരിക്കുക", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "അതെ, ഇല്ലാതാക്കുക", "API": { "SUCCESS_MESSAGE": "കോൺടാക്റ്റ് വിജയകരമായി ഇല്ലാതാക്കിയിരിക്കുന്നു", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "കോൺ‌ടാക്റ്റുകളൊന്നും നിങ്ങളുടെ തിരയലുമായി പൊരുത്തപ്പെടുന്നില്ല", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ml/conversation.json b/app/javascript/dashboard/i18n/locale/ml/conversation.json index 5577e9b30..0ea878528 100644 --- a/app/javascript/dashboard/i18n/locale/ml/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ml/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "പരിഹരിക്കുക", "REOPEN_ACTION": "വീണ്ടും തുറക്കുക", "OPEN_ACTION": "സജീവം", + "MORE_ACTIONS": "More actions", "OPEN": "കൂടുതൽ", "CLOSE": "അടയ്ക്കുക", "DETAILS": "വിശദാംശങ്ങൾ", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "ഇല്ലാതാക്കുക" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "അയച്ചത്:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "മുമ്പത്തെ സംഭാഷണങ്ങൾ", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ml/general.json b/app/javascript/dashboard/i18n/locale/ml/general.json index 158181ca4..6b050ccb0 100644 --- a/app/javascript/dashboard/i18n/locale/ml/general.json +++ b/app/javascript/dashboard/i18n/locale/ml/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "തിരയുക", "EMPTY_STATE": "ഒരു ഫലവും കണ്ടെത്താനായില്ല" - } + }, + "CLOSE": "അടയ്ക്കുക" } } diff --git a/app/javascript/dashboard/i18n/locale/ml/generalSettings.json b/app/javascript/dashboard/i18n/locale/ml/generalSettings.json index e2769cbf0..52cf08c2c 100644 --- a/app/javascript/dashboard/i18n/locale/ml/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ml/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "അക്കൗണ്ടിന്റെ പേര്", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ml/integrations.json b/app/javascript/dashboard/i18n/locale/ml/integrations.json index 8be42ade5..f048ff9c6 100644 --- a/app/javascript/dashboard/i18n/locale/ml/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ml/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "റദ്ദാക്കുക" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "സന്ദേശം അയയ്ക്കുക...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "വിവരണം", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ml/report.json b/app/javascript/dashboard/i18n/locale/ml/report.json index 738dae73a..e6d2339ab 100644 --- a/app/javascript/dashboard/i18n/locale/ml/report.json +++ b/app/javascript/dashboard/i18n/locale/ml/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "ലേബലുകൾ അവലോകനം", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "ചാർട്ട് ഡാറ്റ ലോഡു ചെയ്യുകയാണ്...", "NO_ENOUGH_DATA": "റിപ്പോർട്ട് സൃഷ്ടിക്കുന്നതിന് ആവശ്യമായ ഡാറ്റ ഞങ്ങൾക്ക് ലഭിച്ചിട്ടില്ല, ദയവായി പിന്നീട് വീണ്ടും ശ്രമിക്കുക.", "DOWNLOAD_LABEL_REPORTS": "ലേബൽ റിപ്പോർട്ടുകൾ ഡൗൺലോഡ് ചെയ്യുക", @@ -559,6 +560,7 @@ "INBOX": "ഇൻബോക്സ്", "AGENT": "ഏജന്റ്", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ml/search.json b/app/javascript/dashboard/i18n/locale/ml/search.json index 664cd46f3..5c6c2804f 100644 --- a/app/javascript/dashboard/i18n/locale/ml/search.json +++ b/app/javascript/dashboard/i18n/locale/ml/search.json @@ -4,12 +4,14 @@ "ALL": "എല്ലാം", "CONTACTS": "കോൺ‌ടാക്റ്റുകൾ", "CONVERSATIONS": "സംഭാഷണങ്ങൾ", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "കോൺ‌ടാക്റ്റുകൾ", "CONVERSATIONS": "സംഭാഷണങ്ങൾ", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ml/settings.json b/app/javascript/dashboard/i18n/locale/ml/settings.json index 59b472ba3..5313410ce 100644 --- a/app/javascript/dashboard/i18n/locale/ml/settings.json +++ b/app/javascript/dashboard/i18n/locale/ml/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "ആക്സസ് ടോക്കൺ", "NOTE": "നിങ്ങൾ ഒരു എപിഐ അടിസ്ഥാനമാക്കിയുള്ള സംയോജനം നിർമ്മിക്കുകയാണെങ്കിൽ ഈ ടോക്കൺ ഉപയോഗിക്കാൻ കഴിയും", - "COPY": "പകർത്തുക" + "COPY": "പകർത്തുക", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "ഓഫ്‌ലൈൻ" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "നിങ്ങളുടെ ഇമെയിൽ വിലാസം", @@ -280,6 +286,7 @@ "REPORTS": "റിപ്പോർട്ടുകൾ", "SETTINGS": "ക്രമീകരണങ്ങൾ", "CONTACTS": "കോൺ‌ടാക്റ്റുകൾ", + "ACTIVE": "സജീവമാണ്", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ms/agentBots.json b/app/javascript/dashboard/i18n/locale/ms/agentBots.json index a4e0b5cb5..5e0cd93d9 100644 --- a/app/javascript/dashboard/i18n/locale/ms/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ms/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ms/auditLogs.json b/app/javascript/dashboard/i18n/locale/ms/auditLogs.json index becbcc6dc..23d80ed57 100644 --- a/app/javascript/dashboard/i18n/locale/ms/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ms/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ms/contact.json b/app/javascript/dashboard/i18n/locale/ms/contact.json index d7c7af48c..6373a8987 100644 --- a/app/javascript/dashboard/i18n/locale/ms/contact.json +++ b/app/javascript/dashboard/i18n/locale/ms/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Pasti Padamkan", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Baik, Padamkan", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ms/conversation.json b/app/javascript/dashboard/i18n/locale/ms/conversation.json index 62eeb3a3f..f85962a18 100644 --- a/app/javascript/dashboard/i18n/locale/ms/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ms/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Padamkan" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ms/general.json b/app/javascript/dashboard/i18n/locale/ms/general.json index 99f9b07d9..1ebfcd2bc 100644 --- a/app/javascript/dashboard/i18n/locale/ms/general.json +++ b/app/javascript/dashboard/i18n/locale/ms/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "Tiada dijumpa" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/ms/generalSettings.json b/app/javascript/dashboard/i18n/locale/ms/generalSettings.json index 6a36c3ee5..c9f4fb9cd 100644 --- a/app/javascript/dashboard/i18n/locale/ms/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ms/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ms/integrations.json b/app/javascript/dashboard/i18n/locale/ms/integrations.json index 09770398e..316e84f1d 100644 --- a/app/javascript/dashboard/i18n/locale/ms/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ms/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Batalkan" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ms/report.json b/app/javascript/dashboard/i18n/locale/ms/report.json index 095587745..0b463ac6c 100644 --- a/app/javascript/dashboard/i18n/locale/ms/report.json +++ b/app/javascript/dashboard/i18n/locale/ms/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Ejen", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ms/search.json b/app/javascript/dashboard/i18n/locale/ms/search.json index 3cb566813..e8510ab97 100644 --- a/app/javascript/dashboard/i18n/locale/ms/search.json +++ b/app/javascript/dashboard/i18n/locale/ms/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ms/settings.json b/app/javascript/dashboard/i18n/locale/ms/settings.json index 6d5685a28..b987a389f 100644 --- a/app/javascript/dashboard/i18n/locale/ms/settings.json +++ b/app/javascript/dashboard/i18n/locale/ms/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ne/agentBots.json b/app/javascript/dashboard/i18n/locale/ne/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/ne/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ne/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ne/auditLogs.json b/app/javascript/dashboard/i18n/locale/ne/auditLogs.json index 35c054fa2..df236f5b5 100644 --- a/app/javascript/dashboard/i18n/locale/ne/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ne/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ne/contact.json b/app/javascript/dashboard/i18n/locale/ne/contact.json index a79c3c3c6..ecf2e17ac 100644 --- a/app/javascript/dashboard/i18n/locale/ne/contact.json +++ b/app/javascript/dashboard/i18n/locale/ne/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ne/conversation.json b/app/javascript/dashboard/i18n/locale/ne/conversation.json index 24924691b..94f9f6e6a 100644 --- a/app/javascript/dashboard/i18n/locale/ne/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ne/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "बन्दा गार्नुहोस्", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ne/general.json b/app/javascript/dashboard/i18n/locale/ne/general.json index 78e97db90..0c32a56e1 100644 --- a/app/javascript/dashboard/i18n/locale/ne/general.json +++ b/app/javascript/dashboard/i18n/locale/ne/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "बन्दा गार्नुहोस्" } } diff --git a/app/javascript/dashboard/i18n/locale/ne/generalSettings.json b/app/javascript/dashboard/i18n/locale/ne/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/ne/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ne/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ne/integrations.json b/app/javascript/dashboard/i18n/locale/ne/integrations.json index c18a22039..5779e973f 100644 --- a/app/javascript/dashboard/i18n/locale/ne/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ne/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ne/report.json b/app/javascript/dashboard/i18n/locale/ne/report.json index e176d9147..18f1ed14b 100644 --- a/app/javascript/dashboard/i18n/locale/ne/report.json +++ b/app/javascript/dashboard/i18n/locale/ne/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ne/search.json b/app/javascript/dashboard/i18n/locale/ne/search.json index 3cb566813..e8510ab97 100644 --- a/app/javascript/dashboard/i18n/locale/ne/search.json +++ b/app/javascript/dashboard/i18n/locale/ne/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ne/settings.json b/app/javascript/dashboard/i18n/locale/ne/settings.json index ded91739c..cba2ddb5a 100644 --- a/app/javascript/dashboard/i18n/locale/ne/settings.json +++ b/app/javascript/dashboard/i18n/locale/ne/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/nl/agentBots.json b/app/javascript/dashboard/i18n/locale/nl/agentBots.json index a8f7e6cef..e0eb22829 100644 --- a/app/javascript/dashboard/i18n/locale/nl/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/nl/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Toegangs-token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" @@ -83,8 +90,8 @@ "VALID_URL": "Please enter a valid URL starting with http:// or https://" }, "CANCEL": "Annuleren", - "CREATE": "Create Bot", - "UPDATE": "Update Bot" + "CREATE": "Bot Maken", + "UPDATE": "Bot updaten" }, "WEBHOOK": { "DESCRIPTION": "Configure a webhook bot to integrate with your custom services. The bot will receive and process events from conversations and can respond to them." diff --git a/app/javascript/dashboard/i18n/locale/nl/auditLogs.json b/app/javascript/dashboard/i18n/locale/nl/auditLogs.json index 34000522f..80cdacee5 100644 --- a/app/javascript/dashboard/i18n/locale/nl/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/nl/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/nl/contact.json b/app/javascript/dashboard/i18n/locale/nl/contact.json index 9cf12b9cb..1939b63b5 100644 --- a/app/javascript/dashboard/i18n/locale/nl/contact.json +++ b/app/javascript/dashboard/i18n/locale/nl/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacten", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Bericht", "SEND_MESSAGE": "Verstuur bericht", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Contactpersoon verwijderen", "DELETE_DIALOG": { "TITLE": "Verwijderen bevestigen", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Ja, verwijderen", "API": { "SUCCESS_MESSAGE": "Contactpersoon werd succesvol verwijderd", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Er zijn geen contacten die overeenkomen met je zoekopdracht 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/nl/conversation.json b/app/javascript/dashboard/i18n/locale/nl/conversation.json index 345262477..1c64164f1 100644 --- a/app/javascript/dashboard/i18n/locale/nl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/nl/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Oplossen", "REOPEN_ACTION": "Heropenen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "Meer", "CLOSE": "Sluiten", "DETAILS": "Details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Verwijderen" + }, "CARD_CONTEXT_MENU": { "PENDING": "Markeren als in afwachting van", "RESOLVED": "Markeer als opgelost", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Label toewijzen", "AGENTS_LOADING": "Agents worden geladen...", "ASSIGN_TEAM": "Team toewijzen", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Gesprek id {conversationId} toegewezen aan \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Verzonden door:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Vorige gesprekken", "MACROS": "Macro's", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/nl/general.json b/app/javascript/dashboard/i18n/locale/nl/general.json index 38184deee..fcd3683bf 100644 --- a/app/javascript/dashboard/i18n/locale/nl/general.json +++ b/app/javascript/dashboard/i18n/locale/nl/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Zoeken", "EMPTY_STATE": "Geen resultaten gevonden" - } + }, + "CLOSE": "Sluiten" } } diff --git a/app/javascript/dashboard/i18n/locale/nl/generalSettings.json b/app/javascript/dashboard/i18n/locale/nl/generalSettings.json index 6c1c86cc0..f371d56d6 100644 --- a/app/javascript/dashboard/i18n/locale/nl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/nl/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Voorkeuren", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "accountnaam", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/nl/integrations.json b/app/javascript/dashboard/i18n/locale/nl/integrations.json index 8b5acabef..94cc0034d 100644 --- a/app/javascript/dashboard/i18n/locale/nl/integrations.json +++ b/app/javascript/dashboard/i18n/locale/nl/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Ja, verwijderen", "CANCEL": "Annuleren" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Verstuur bericht...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Jij", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Beschrijving", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/nl/report.json b/app/javascript/dashboard/i18n/locale/nl/report.json index ddb7807a9..d2c3e8504 100644 --- a/app/javascript/dashboard/i18n/locale/nl/report.json +++ b/app/javascript/dashboard/i18n/locale/nl/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Kaartgegevens laden...", "NO_ENOUGH_DATA": "We hebben niet genoeg datapunten ontvangen om een rapport te genereren, probeer het later opnieuw.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Postvak In", "AGENT": "Medewerker", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/nl/search.json b/app/javascript/dashboard/i18n/locale/nl/search.json index 150daf18c..52cc72e53 100644 --- a/app/javascript/dashboard/i18n/locale/nl/search.json +++ b/app/javascript/dashboard/i18n/locale/nl/search.json @@ -4,12 +4,14 @@ "ALL": "Allemaal", "CONTACTS": "Contacten", "CONVERSATIONS": "Gesprekken", - "MESSAGES": "Berichten" + "MESSAGES": "Berichten", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacten", "CONVERSATIONS": "Gesprekken", - "MESSAGES": "Berichten" + "MESSAGES": "Berichten", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/nl/settings.json b/app/javascript/dashboard/i18n/locale/nl/settings.json index 2e9f2283c..419c7ef64 100644 --- a/app/javascript/dashboard/i18n/locale/nl/settings.json +++ b/app/javascript/dashboard/i18n/locale/nl/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Toegangs-token", "NOTE": "Dit token kan worden gebruikt als u een API gebaseerde integratie bouwt", - "COPY": "Kopiëren" + "COPY": "Kopiëren", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Uw e-mailadres", @@ -280,6 +286,7 @@ "REPORTS": "Rapporten", "SETTINGS": "Instellingen", "CONTACTS": "Contacten", + "ACTIVE": "Actief", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/no/agentBots.json b/app/javascript/dashboard/i18n/locale/no/agentBots.json index 6364d3852..188098606 100644 --- a/app/javascript/dashboard/i18n/locale/no/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/no/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Tilgangstoken", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/no/auditLogs.json b/app/javascript/dashboard/i18n/locale/no/auditLogs.json index 86835d088..f47736a57 100644 --- a/app/javascript/dashboard/i18n/locale/no/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/no/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/no/contact.json b/app/javascript/dashboard/i18n/locale/no/contact.json index b82c07db5..fccb77206 100644 --- a/app/javascript/dashboard/i18n/locale/no/contact.json +++ b/app/javascript/dashboard/i18n/locale/no/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakter", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Melding", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Bekreft sletting", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Ja, slett", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Ingen kontakter samsvarer med søket ditt 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/no/conversation.json b/app/javascript/dashboard/i18n/locale/no/conversation.json index b5c3f6976..c83a5833b 100644 --- a/app/javascript/dashboard/i18n/locale/no/conversation.json +++ b/app/javascript/dashboard/i18n/locale/no/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Løs", "REOPEN_ACTION": "Gjenåpne", "OPEN_ACTION": "Åpne", + "MORE_ACTIONS": "More actions", "OPEN": "Mer", "CLOSE": "Lukk", "DETAILS": "detaljer", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Slett" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sendt av:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Tidligere samtaler", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/no/general.json b/app/javascript/dashboard/i18n/locale/no/general.json index b7140855a..fb289a8d6 100644 --- a/app/javascript/dashboard/i18n/locale/no/general.json +++ b/app/javascript/dashboard/i18n/locale/no/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Søk", "EMPTY_STATE": "Ingen resultater funnet" - } + }, + "CLOSE": "Lukk" } } diff --git a/app/javascript/dashboard/i18n/locale/no/generalSettings.json b/app/javascript/dashboard/i18n/locale/no/generalSettings.json index 8cb2dc0b8..d68075947 100644 --- a/app/javascript/dashboard/i18n/locale/no/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/no/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Kontonavn", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/no/integrations.json b/app/javascript/dashboard/i18n/locale/no/integrations.json index 37730dee2..6d22be801 100644 --- a/app/javascript/dashboard/i18n/locale/no/integrations.json +++ b/app/javascript/dashboard/i18n/locale/no/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Ja, slett", "CANCEL": "Avbryt" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Du", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Beskrivelse", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/no/report.json b/app/javascript/dashboard/i18n/locale/no/report.json index 4ebf3c85e..106f434bc 100644 --- a/app/javascript/dashboard/i18n/locale/no/report.json +++ b/app/javascript/dashboard/i18n/locale/no/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Laster inn diagramdata...", "NO_ENOUGH_DATA": "Vi har ikke mottatt nok data for å generere rapporten, vennligst prøv igjen senere.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Innboks", "AGENT": "Agent", "TEAM": "Gruppe", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/no/search.json b/app/javascript/dashboard/i18n/locale/no/search.json index 0f632dda4..3078c3af6 100644 --- a/app/javascript/dashboard/i18n/locale/no/search.json +++ b/app/javascript/dashboard/i18n/locale/no/search.json @@ -4,12 +4,14 @@ "ALL": "Alle", "CONTACTS": "Kontakter", "CONVERSATIONS": "Samtaler", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakter", "CONVERSATIONS": "Samtaler", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/no/settings.json b/app/javascript/dashboard/i18n/locale/no/settings.json index df9d8c14f..0c823d7c1 100644 --- a/app/javascript/dashboard/i18n/locale/no/settings.json +++ b/app/javascript/dashboard/i18n/locale/no/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Tilgangstoken", "NOTE": "Dette tokenet kan brukes hvis du lager en API-basert integrasjon", - "COPY": "Kopier" + "COPY": "Kopier", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Frakoblet" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Din e-postadresse", @@ -280,6 +286,7 @@ "REPORTS": "Rapporter", "SETTINGS": "Innstillinger", "CONTACTS": "Kontakter", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/pl/agentBots.json b/app/javascript/dashboard/i18n/locale/pl/agentBots.json index 21b7ae605..d861bdead 100644 --- a/app/javascript/dashboard/i18n/locale/pl/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/pl/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Nie udało się zaktualizować bota. Proszę spróbować ponownie." } }, + "ACCESS_TOKEN": { + "TITLE": "Token dostępu", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/pl/auditLogs.json b/app/javascript/dashboard/i18n/locale/pl/auditLogs.json index 7cfa77af4..48462730b 100644 --- a/app/javascript/dashboard/i18n/locale/pl/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/pl/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/pl/contact.json b/app/javascript/dashboard/i18n/locale/pl/contact.json index 3fc424828..87f901eda 100644 --- a/app/javascript/dashboard/i18n/locale/pl/contact.json +++ b/app/javascript/dashboard/i18n/locale/pl/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakty", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Wiadomość", "SEND_MESSAGE": "Wyślij wiadomość", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Usuń kontakt", "DELETE_DIALOG": { "TITLE": "Potwierdź usunięcie", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Tak, usuń", "API": { "SUCCESS_MESSAGE": "Kontakt został pomyślnie usunięty", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Brak kontaktów pasujących do wyszukiwania 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/pl/conversation.json b/app/javascript/dashboard/i18n/locale/pl/conversation.json index d8b751cef..4c3086088 100644 --- a/app/javascript/dashboard/i18n/locale/pl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pl/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Rozwiąż", "REOPEN_ACTION": "Otwórz ponownie", "OPEN_ACTION": "Otwórz", + "MORE_ACTIONS": "More actions", "OPEN": "Więcej", "CLOSE": "Zamknij", "DETAILS": "szczegóły", @@ -117,6 +118,11 @@ "FAILED": "Nie można zmienić priorytetu. Spróbuj ponownie." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Usuń" + }, "CARD_CONTEXT_MENU": { "PENDING": "Oznacz jako oczekujące", "RESOLVED": "Oznacz jako rozwiązane", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Przypisz etykietę", "AGENTS_LOADING": "Ładowanie agentów...", "ASSIGN_TEAM": "Przypisz zespół", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Konwersacja o identyfikatorze {conversationId} przypisana do \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Etykieta przypisana pomyślnie", "ASSIGN_LABEL_FAILED": "Nie udało się przypisać etykiety", "CHANGE_TEAM": "Zmieniono przypisany zespół konwersacji", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Plik przekracza limit rozmiaru załącznika %{MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "MESSAGE_ERROR": "Nie można wysłać tej wiadomości, spróbuj ponownie później", "SENT_BY": "Wysłane przez:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atrybuty kontaktu", "PREVIOUS_CONVERSATION": "Poprzednie konwersacje", "MACROS": "Makra", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/pl/general.json b/app/javascript/dashboard/i18n/locale/pl/general.json index 3d1b76f47..736589732 100644 --- a/app/javascript/dashboard/i18n/locale/pl/general.json +++ b/app/javascript/dashboard/i18n/locale/pl/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Szukaj", "EMPTY_STATE": "Nie znaleziono rekordów" - } + }, + "CLOSE": "Zamknij" } } diff --git a/app/javascript/dashboard/i18n/locale/pl/generalSettings.json b/app/javascript/dashboard/i18n/locale/pl/generalSettings.json index 32f7df3ce..50ae20b2e 100644 --- a/app/javascript/dashboard/i18n/locale/pl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pl/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferencje", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Nazwa konta", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/pl/integrations.json b/app/javascript/dashboard/i18n/locale/pl/integrations.json index 17a431edb..65752a63f 100644 --- a/app/javascript/dashboard/i18n/locale/pl/integrations.json +++ b/app/javascript/dashboard/i18n/locale/pl/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Tak, usuń", "CANCEL": "Anuluj" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Wyślij wiadomość...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Opis", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/pl/report.json b/app/javascript/dashboard/i18n/locale/pl/report.json index f319cf5b6..d365d1221 100644 --- a/app/javascript/dashboard/i18n/locale/pl/report.json +++ b/app/javascript/dashboard/i18n/locale/pl/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Przegląd etykiet", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Ładowanie danych wykresów...", "NO_ENOUGH_DATA": "Nie ma wystarczającej ilości danych do wygenerowania raportu. Spróbuj ponownie później.", "DOWNLOAD_LABEL_REPORTS": "Pobierz raporty etykiety", @@ -559,6 +560,7 @@ "INBOX": "Skrzynka odbiorcza", "AGENT": "Agent", "TEAM": "Zespół", + "LABEL": "Etykieta", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/pl/search.json b/app/javascript/dashboard/i18n/locale/pl/search.json index 6d30a4c36..cae507868 100644 --- a/app/javascript/dashboard/i18n/locale/pl/search.json +++ b/app/javascript/dashboard/i18n/locale/pl/search.json @@ -4,12 +4,14 @@ "ALL": "Wszystkie", "CONTACTS": "Kontakty", "CONVERSATIONS": "Rozmowy", - "MESSAGES": "Wiadomości" + "MESSAGES": "Wiadomości", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakty", "CONVERSATIONS": "Rozmowy", - "MESSAGES": "Wiadomości" + "MESSAGES": "Wiadomości", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/pl/settings.json b/app/javascript/dashboard/i18n/locale/pl/settings.json index 310b6467e..f98ab629b 100644 --- a/app/javascript/dashboard/i18n/locale/pl/settings.json +++ b/app/javascript/dashboard/i18n/locale/pl/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token dostępu", "NOTE": "Ten token może być użyty, jeśli budujesz integrację opartą na API", - "COPY": "Kopiuj" + "COPY": "Kopiuj", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Niedostępny" }, "SET_AVAILABILITY_SUCCESS": "Dostępność została pomyślnie ustawiona", - "SET_AVAILABILITY_ERROR": "Nie można ustawić dostępności, spróbuj ponownie" + "SET_AVAILABILITY_ERROR": "Nie można ustawić dostępności, spróbuj ponownie", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Twój adres e-mail", @@ -280,6 +286,7 @@ "REPORTS": "Raporty", "SETTINGS": "Ustawienia", "CONTACTS": "Kontakty", + "ACTIVE": "Aktywne", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/pt/agentBots.json b/app/javascript/dashboard/i18n/locale/pt/agentBots.json index 02353e533..84b15f403 100644 --- a/app/javascript/dashboard/i18n/locale/pt/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/pt/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Não foi possível atualizar o bot. Por favor, tente novamente." } }, + "ACCESS_TOKEN": { + "TITLE": "Token de acesso", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/pt/auditLogs.json b/app/javascript/dashboard/i18n/locale/pt/auditLogs.json index e27895aaf..00914c17d 100644 --- a/app/javascript/dashboard/i18n/locale/pt/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/pt/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/pt/automation.json b/app/javascript/dashboard/i18n/locale/pt/automation.json index 02061ec8e..eebc50044 100644 --- a/app/javascript/dashboard/i18n/locale/pt/automation.json +++ b/app/javascript/dashboard/i18n/locale/pt/automation.json @@ -144,7 +144,7 @@ "SNOOZE_CONVERSATION": "Adiar conversa", "RESOLVE_CONVERSATION": "Resolver conversa", "SEND_WEBHOOK_EVENT": "Send Webhook Event", - "SEND_ATTACHMENT": "Send Attachment", + "SEND_ATTACHMENT": "Enviar anexo", "SEND_MESSAGE": "Send a Message", "CHANGE_PRIORITY": "Alterar prioridade", "ADD_SLA": "Adicionar SLA" diff --git a/app/javascript/dashboard/i18n/locale/pt/contact.json b/app/javascript/dashboard/i18n/locale/pt/contact.json index c75407d28..365108766 100644 --- a/app/javascript/dashboard/i18n/locale/pt/contact.json +++ b/app/javascript/dashboard/i18n/locale/pt/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contactos", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Messagem", "SEND_MESSAGE": "Enviar mensagem", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Excluir contacto", "DELETE_DIALOG": { "TITLE": "Confirmar exclusão", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Sim, excluir", "API": { "SUCCESS_MESSAGE": "Contacto excluído com sucesso", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Nenhum contacto corresponde à sua pesquisa 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/pt/conversation.json b/app/javascript/dashboard/i18n/locale/pt/conversation.json index 997529fe4..d2eab7850 100644 --- a/app/javascript/dashboard/i18n/locale/pt/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pt/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolver", "REOPEN_ACTION": "Reabrir", "OPEN_ACTION": "Abertas", + "MORE_ACTIONS": "More actions", "OPEN": "Mais", "CLOSE": "Fechar", "DETAILS": "Detalhes", @@ -117,6 +118,11 @@ "FAILED": "Não foi possível alterar a prioridade, por favor, tente novamente." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Excluir" + }, "CARD_CONTEXT_MENU": { "PENDING": "Marcar como pendente", "RESOLVED": "Marcar como resolvida", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Atribuir etiqueta", "AGENTS_LOADING": "A carregar agentes...", "ASSIGN_TEAM": "Atribuir equipa", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversa com ID {conversationId} atribuída a \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Etiqueta atribuída com sucesso", "ASSIGN_LABEL_FAILED": "Falha na atribuição de etiqueta", "CHANGE_TEAM": "Equipa da conversa alterada", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "O ficheiro excede o tamanho limite para anexos de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "MESSAGE_ERROR": "Não foi possível enviar esta mensagem, por favor, tente novamente mais tarde", "SENT_BY": "Enviado por:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atributos do contacto", "PREVIOUS_CONVERSATION": "Conversas anteriores", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/pt/general.json b/app/javascript/dashboard/i18n/locale/pt/general.json index 4c5b9608b..79bbb56d8 100644 --- a/app/javascript/dashboard/i18n/locale/pt/general.json +++ b/app/javascript/dashboard/i18n/locale/pt/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Procurar", "EMPTY_STATE": "Nenhum resultado encontrado" - } + }, + "CLOSE": "Fechar" } } diff --git a/app/javascript/dashboard/i18n/locale/pt/generalSettings.json b/app/javascript/dashboard/i18n/locale/pt/generalSettings.json index f7a221921..25eaf917f 100644 --- a/app/javascript/dashboard/i18n/locale/pt/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pt/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferências", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Nome da conta", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/pt/integrations.json b/app/javascript/dashboard/i18n/locale/pt/integrations.json index 7ac8b957d..60b69375f 100644 --- a/app/javascript/dashboard/i18n/locale/pt/integrations.json +++ b/app/javascript/dashboard/i18n/locale/pt/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Problema desvinculado com sucesso", "ERROR": "Houve um erro ao desvincular o problema, por favor, tente novamente" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Sim, excluir", "CANCEL": "Cancelar" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Enviar mensagem...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Você", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "Pode alterar ou cancelar o plano a qualquer momento" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Por favor, entre em contato com o administrador para atualização." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Descrição", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/pt/macros.json b/app/javascript/dashboard/i18n/locale/pt/macros.json index aed7a291f..ad427b303 100644 --- a/app/javascript/dashboard/i18n/locale/pt/macros.json +++ b/app/javascript/dashboard/i18n/locale/pt/macros.json @@ -94,7 +94,7 @@ "MUTE_CONVERSATION": "Silenciar Conversa", "SNOOZE_CONVERSATION": "Adiar conversa", "RESOLVE_CONVERSATION": "Resolver conversa", - "SEND_ATTACHMENT": "Send Attachment", + "SEND_ATTACHMENT": "Enviar anexo", "SEND_MESSAGE": "Send a Message", "CHANGE_PRIORITY": "Alterar prioridade", "ADD_PRIVATE_NOTE": "Add a Private Note", diff --git a/app/javascript/dashboard/i18n/locale/pt/report.json b/app/javascript/dashboard/i18n/locale/pt/report.json index adc370f9d..cdd25f66c 100644 --- a/app/javascript/dashboard/i18n/locale/pt/report.json +++ b/app/javascript/dashboard/i18n/locale/pt/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Visão geral de etiquetas", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "A carregar dados...", "NO_ENOUGH_DATA": "Não recebemos pontos de dados suficientes para gerar o relatório. Por favor, tente novamente mais tarde.", "DOWNLOAD_LABEL_REPORTS": "Descarregar relatórios de etiquetas", @@ -559,6 +560,7 @@ "INBOX": "Caixa de entrada", "AGENT": "Agente", "TEAM": "Equipa", + "LABEL": "Etiqueta", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/pt/search.json b/app/javascript/dashboard/i18n/locale/pt/search.json index 8550c2b5e..26646a36a 100644 --- a/app/javascript/dashboard/i18n/locale/pt/search.json +++ b/app/javascript/dashboard/i18n/locale/pt/search.json @@ -4,12 +4,14 @@ "ALL": "TODOS", "CONTACTS": "Contactos", "CONVERSATIONS": "Conversas", - "MESSAGES": "Mensagens" + "MESSAGES": "Mensagens", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contactos", "CONVERSATIONS": "Conversas", - "MESSAGES": "Mensagens" + "MESSAGES": "Mensagens", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/pt/settings.json b/app/javascript/dashboard/i18n/locale/pt/settings.json index a6db3321e..b428b5558 100644 --- a/app/javascript/dashboard/i18n/locale/pt/settings.json +++ b/app/javascript/dashboard/i18n/locale/pt/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token de acesso", "NOTE": "Este token pode ser usado se você estiver construindo uma integração baseada em API", - "COPY": "Copiar" + "COPY": "Copiar", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Ausente" }, "SET_AVAILABILITY_SUCCESS": "Disponibilidade foi definida com sucesso", - "SET_AVAILABILITY_ERROR": "Não foi possível definir a disponibilidade, por favor tente novamente" + "SET_AVAILABILITY_ERROR": "Não foi possível definir a disponibilidade, por favor tente novamente", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Seu endereço de e-mail", @@ -280,6 +286,7 @@ "REPORTS": "relatórios", "SETTINGS": "Configurações", "CONTACTS": "Contactos", + "ACTIVE": "Ativa", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/agentBots.json b/app/javascript/dashboard/i18n/locale/pt_BR/agentBots.json index 36da3d95d..6292cee86 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Não foi possível atualizar o robô. Por favor, tente novamente mais tarde." } }, + "ACCESS_TOKEN": { + "TITLE": "Token de acesso", + "DESCRIPTION": "Copie o token de acesso e salve-o de forma segura", + "COPY_SUCCESSFUL": "Token de acesso copiado para área de transferência", + "RESET_SUCCESS": "Token de acesso gerado novamente com sucesso", + "RESET_ERROR": "Não foi possível regerar o token de acesso. Por favor, tente novamente" + }, "FORM": { "AVATAR": { "LABEL": "Avatar do robô" diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/auditLogs.json b/app/javascript/dashboard/i18n/locale/pt_BR/auditLogs.json index fd21f7453..51996b6c7 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "O {agentName} atualizou a configuração da conta (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} excluiu a conversa #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/contact.json b/app/javascript/dashboard/i18n/locale/pt_BR/contact.json index 0a840b88a..0bbee4de3 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/contact.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contatos", "SEARCH_TITLE": "Pesquisar contatos", + "ACTIVE_TITLE": "Contatos ativos", "SEARCH_PLACEHOLDER": "Pesquisar...", "MESSAGE_BUTTON": "Enviar Mensagem", "SEND_MESSAGE": "Enviar mensagem", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Adicionar Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "Esta ação é permanente e irreversível.", + "BUTTON": "Excluir agora" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Excluir contato", "DELETE_DIALOG": { "TITLE": "Confirmar exclusão", - "DESCRIPTION": "Tem certeza de que deseja excluir este contato {contactName}?", + "DESCRIPTION": "Tem certeza de que deseja excluir este contato?", "CONFIRM": "Sim, excluir", "API": { "SUCCESS_MESSAGE": "Contato excluído com sucesso", @@ -555,7 +560,8 @@ "SUBTITLE": "Comece a adicionar novos contatos clicando no botão abaixo", "BUTTON_LABEL": "Adicionar contato", "SEARCH_EMPTY_STATE_TITLE": "Nenhum contato corresponde à sua pesquisa 🔍", - "LIST_EMPTY_STATE_TITLE": "Não há contatos disponíveis nesta visualização 📋" + "LIST_EMPTY_STATE_TITLE": "Não há contatos disponíveis nesta visualização 📋", + "ACTIVE_EMPTY_STATE_TITLE": "Nenhum contato está ativo no momento 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json b/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json index 42e754522..c426a4cac 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolver", "REOPEN_ACTION": "Reabrir", "OPEN_ACTION": "Abrir", + "MORE_ACTIONS": "Mais ações", "OPEN": "Mais", "CLOSE": "Fechar", "DETAILS": "detalhes", @@ -117,6 +118,11 @@ "FAILED": "Não foi possível alterar a prioridade. Por favor, tente novamente." } }, + "DELETE_CONVERSATION": { + "TITLE": "Excluir conversa #{conversationId}", + "DESCRIPTION": "Tem certeza que deseja excluir esta conversa?", + "CONFIRM": "Excluir" + }, "CARD_CONTEXT_MENU": { "PENDING": "Deixar pendente", "RESOLVED": "Marcar como resolvida", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Atribuir etiqueta", "AGENTS_LOADING": "Carregando agentes...", "ASSIGN_TEAM": "Atribuir time", + "DELETE": "Excluir conversa", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "ID da conversa {conversationId} atribuído para \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Etiqueta atribuída com sucesso", "ASSIGN_LABEL_FAILED": "Falha ao atribuir etiqueta", "CHANGE_TEAM": "Status da conversa mudou", + "SUCCESS_DELETE_CONVERSATION": "Conversa excluída com sucesso", + "FAIL_DELETE_CONVERSATION": "Não foi possível excluir a conversa! Tente novamente", "FILE_SIZE_LIMIT": "O arquivo excede os {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB do limite para anexos", "MESSAGE_ERROR": "Não foi possível enviar esta mensagem, por favor, tente novamente mais tarde", "SENT_BY": "Enviado por:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atributos do contato", "PREVIOUS_CONVERSATION": "Conversas anteriores", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/general.json b/app/javascript/dashboard/i18n/locale/pt_BR/general.json index 69b1703e9..098727d54 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/general.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Pesquisar", "EMPTY_STATE": "Nenhum resultado encontrado" - } + }, + "CLOSE": "Fechar" } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json b/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json index fab5ac4ca..6ea40a2ec 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Resolver conversas automaticamente", - "NOTE": "Essa configuração permite resolver automaticamente a conversa após um determinado período. Defina o período e personalize a mensagem para o usuário abaixo." + "NOTE": "Essa configuração permitirá que você resolva automaticamente a conversa após um determinado período de inatividade.", + "DURATION": { + "LABEL": "Duração da inatividade", + "HELP": "Período de tempo de inatividade após o qual a conversa é resolvida automaticamente", + "PLACEHOLDER": "30", + "ERROR": "O tempo decorrido para resolução automática deve ser entre 10 minutos e 999 dias", + "API": { + "SUCCESS": "Configurações de resolução automática atualizadas com sucesso", + "ERROR": "Falha ao atualizar as configurações de resolução automática" + } + }, + "MESSAGE": { + "LABEL": "Mensagem personalizada de resolução automática", + "PLACEHOLDER": "A conversa foi marcada como resolvida pelo sistema por ter 15 dias de inatividade", + "HELP": "Mensagem enviada ao cliente após a resolução automática da conversa" + }, + "PREFERENCES": "Preferências", + "LABEL": { + "LABEL": "Adicionar etiqueta após resolução automática", + "PLACEHOLDER": "Selecione a etiqueta" + }, + "IGNORE_WAITING": { + "LABEL": "Pular conversas aguardando a resposta do agente" + }, + "UPDATE_BUTTON": "Salvar Alterações" }, "NAME": { "LABEL": "Nome da Conta", @@ -72,11 +96,19 @@ "LABEL": "Excluir conversas não atendidas", "HELP": "Se ativado, o sistema não resolverá conversas que estiverem aguardando a resposta de um atendente." }, + "AUDIO_TRANSCRIPTION": { + "TITLE": "Transcrever Mensagens de Áudio", + "NOTE": "Transcreve automaticamente mensagens de áudio nas conversas. Gera uma transcrição de texto sempre que uma mensagem de áudio é enviada ou recebida, e a exibe junto da mensagem.", + "API": { + "SUCCESS": "Configuração de transcrição de áudio atualizada com sucesso", + "ERROR": "Falha ao atualizar configuração de transcrição de áudio" + } + }, "AUTO_RESOLVE_DURATION": { "LABEL": "Tempo de inatividade para resolução", "HELP": "Tempo de inatividade após o qual a conversa deve ser encerrada automaticamente", "PLACEHOLDER": "30", - "ERROR": "O tempo decorrido para encerramento automático deve estar entre 10 minutos e 999 dias", + "ERROR": "O tempo decorrido para resolução automática deve ser entre 10 minutos e 999 dias", "API": { "SUCCESS": "Configurações de resolução automática atualizadas com sucesso", "ERROR": "Falha ao atualizar as configurações de resolução automática" diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json index bfeb05da7..cc728f880 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json @@ -475,7 +475,7 @@ }, "TABS": { "SETTINGS": "Configurações", - "COLLABORATORS": "Colaboradores", + "COLLABORATORS": "Agentes", "CONFIGURATION": "Configuração", "CAMPAIGN": "Campanhas", "PRE_CHAT_FORM": "Formulário Chat Pré", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json b/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json index 0cb18819c..c0fbf9888 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue desvinculada com sucesso", "ERROR": "Houve um erro ao desvincular o atributo, por favor, tente novamente" }, + "NO_LINKED_ISSUES": "Nenhuma tarefa vinculada foi encontrada", "DELETE": { "TITLE": "Tem certeza que deseja excluir esta integração?", "MESSAGE": "Tem certeza que deseja excluir esta integração?", "CONFIRM": "Sim, excluir", "CANCEL": "Cancelar" + }, + "CTA": { + "TITLE": "Conectar ao Linear", + "AGENT_DESCRIPTION": "O espaço de trabalho do Linear não está conectado. Solicite ao seu administrador para conectar um espaço de trabalho para usar essa integração.", + "DESCRIPTION": "O espaço de trabalho do Linear não está conectado. Clique no botão abaixo para conectar seu espaço de trabalho para usar essa integração.", + "BUTTON_TEXT": "Conectar espaço de trabalho do Linear" } } }, @@ -330,12 +337,17 @@ "NAME": "Capitão", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copiloto", + "TRY_THESE_PROMPTS": "Experimente estes comandos", + "PANEL_TITLE": "Comece a usar o Copiloto", + "KICK_OFF_MESSAGE": "Precisa de um resumo rápido, quer verificar conversas passadas ou redigir uma resposta melhor? O Copiloto está aqui para acelerar as coisas.", "SEND_MESSAGE": "Enviar mensagem...", "EMPTY_MESSAGE": "Houve um erro ao gerar a resposta. Por favor, tente novamente.", "LOADER": "Capitão está pensando", "YOU": "Você", "USE": "Use isto", "RESET": "Reiniciar", + "SHOW_STEPS": "Mostrar etapas", "SELECT_ASSISTANT": "Selecione o Assistente", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Avaliar esta conversa", "CONTENT": "Revise a conversa para ver o quanto ela atende às necessidades do cliente. Compartilhe uma classificação de 0 a 5 com base em tom, clareza e eficácia." + }, + "HIGH_PRIORITY": { + "LABEL": "Conversas de alta prioridade", + "CONTENT": "Dê um resumo de todas as conversas abertas com prioridade alta. Incluir o ID da conversa, nome do cliente (se disponível), o conteúdo da última mensagem e o agente atribuído. O grupo por status, se relevante." + }, + "LIST_CONTACTS": { + "LABEL": "Listar contatos", + "CONTENT": "Mostre-me a lista dos 10 contatos mais frequentes. Inclua nome, e-mail ou número de telefone (se disponível), visto por última vez, etiquetas (se houver)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "Você pode alterar ou cancelar seu plano a qualquer momento" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "A função de Capitão AI só está disponível num plano pago.", "UPGRADE_PROMPT": "Atualize seu plano para ter acesso aos nossos assistentes, copilotos e muito mais.", "ASK_ADMIN": "Entre em contato com seu administrador para fazer a atualização." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistentes", + "NO_ASSISTANTS_AVAILABLE": "Não há assistentes disponíveis em sua conta.", "ADD_NEW": "Criar um novo assistente", "DELETE": { "TITLE": "Tem certeza que deseja excluir o assistente?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Digite o nome do assistente", "ERROR": "O nome é obrigatório" }, + "TEMPERATURE": { + "LABEL": "Temperatura da resposta", + "DESCRIPTION": "Ajuste o quão criativo ou restritivo as respostas do assistente devem ser. Valores mais baixos produzem respostas mais focadas e deterministas, enquanto valores mais altos permitem resultados mais criativos e variados." + }, "DESCRIPTION": { "LABEL": "Descrição", "PLACEHOLDER": "Digite a descrição do assistente", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/report.json b/app/javascript/dashboard/i18n/locale/pt_BR/report.json index cdad1b31f..47f875068 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/report.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Visão Geral das Etiquetas", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Carregando dados do gráfico...", "NO_ENOUGH_DATA": "Não existem dados suficientes para gerar o relatório. Tente novamente mais tarde.", "DOWNLOAD_LABEL_REPORTS": "Baixar relatórios de etiquetas", @@ -559,6 +560,7 @@ "INBOX": "Caixa de Entrada", "AGENT": "Agente", "TEAM": "Time", + "LABEL": "Nome do campo", "AVG_RESOLUTION_TIME": "Tempo Médio de Resolução", "AVG_FIRST_RESPONSE_TIME": "Tempo Médio de Primeira Resposta", "AVG_REPLY_TIME": "Tempo Médio de Rspera do Cliente", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/search.json b/app/javascript/dashboard/i18n/locale/pt_BR/search.json index 27ca80135..ff2905a82 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/search.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/search.json @@ -4,12 +4,14 @@ "ALL": "Tudo", "CONTACTS": "Contatos", "CONVERSATIONS": "Conversas", - "MESSAGES": "Mensagens" + "MESSAGES": "Mensagens", + "ARTICLES": "Artigos" }, "SECTION": { "CONTACTS": "Contatos", "CONVERSATIONS": "Conversas", - "MESSAGES": "Messagem" + "MESSAGES": "Messagem", + "ARTICLES": "Artigos" }, "VIEW_MORE": "Ver mais", "LOAD_MORE": "Carregar mais", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/settings.json b/app/javascript/dashboard/i18n/locale/pt_BR/settings.json index fe275b6b9..b68c07359 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/settings.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token de acesso", "NOTE": "Esse token pode ser usado se você estiver criando uma integração baseada em API", - "COPY": "Copiar" + "COPY": "Copiar", + "RESET": "Reiniciar", + "CONFIRM_RESET": "Você tem certeza?", + "CONFIRM_HINT": "Clique novamente para confirmar", + "RESET_SUCCESS": "Token de acesso gerado novamente com sucesso", + "RESET_ERROR": "Não foi possível regerar o token de acesso. Por favor, tente novamente" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Alertas de áudio", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Disponibilidade foi definida com sucesso", - "SET_AVAILABILITY_ERROR": "Não foi possível definir a disponibilidade, por favor tente novamente" + "SET_AVAILABILITY_ERROR": "Não foi possível definir a disponibilidade, por favor tente novamente", + "IMPERSONATING_ERROR": "Não é possível alterar a disponibilidade enquanto personifica um usuário" }, "EMAIL": { "LABEL": "Seu e-mail", @@ -280,6 +286,7 @@ "REPORTS": "Relatórios", "SETTINGS": "Configurações", "CONTACTS": "Contatos", + "ACTIVE": "Ativo", "CAPTAIN": "Capitão", "CAPTAIN_ASSISTANTS": "Assistentes", "CAPTAIN_DOCUMENTS": "Documentos", diff --git a/app/javascript/dashboard/i18n/locale/ro/agentBots.json b/app/javascript/dashboard/i18n/locale/ro/agentBots.json index dc6b3b26c..02c271f25 100644 --- a/app/javascript/dashboard/i18n/locale/ro/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ro/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Token acces", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ro/auditLogs.json b/app/javascript/dashboard/i18n/locale/ro/auditLogs.json index ecd4a0eee..50f88d13b 100644 --- a/app/javascript/dashboard/i18n/locale/ro/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ro/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ro/contact.json b/app/javascript/dashboard/i18n/locale/ro/contact.json index 5ed91dea9..747ada0d3 100644 --- a/app/javascript/dashboard/i18n/locale/ro/contact.json +++ b/app/javascript/dashboard/i18n/locale/ro/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacte", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Mesaj", "SEND_MESSAGE": "Trimite mesaj", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Șterge contact", "DELETE_DIALOG": { "TITLE": "Confirmă ștergerea", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Da, șterge", "API": { "SUCCESS_MESSAGE": "Contact șters cu succes", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Niciun contact nu se potrivește cu căutarea ta 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ro/conversation.json b/app/javascript/dashboard/i18n/locale/ro/conversation.json index 3d26d3afa..4cc8d43c9 100644 --- a/app/javascript/dashboard/i18n/locale/ro/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ro/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Rezolvă", "REOPEN_ACTION": "Redeschide", "OPEN_ACTION": "Deschide", + "MORE_ACTIONS": "More actions", "OPEN": "Mai mult", "CLOSE": "Închide", "DETAILS": "detalii", @@ -117,6 +118,11 @@ "FAILED": "Nu s-a putut schimba prioritatea. Vă rugăm să încercați din nou." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Şterge" + }, "CARD_CONTEXT_MENU": { "PENDING": "Marchează ca în așteptare", "RESOLVED": "Marcați ca rezolvat", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Atribuiți eticheta", "AGENTS_LOADING": "Se încarcă agenții...", "ASSIGN_TEAM": "Atribuiți echipă", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Id conversație {conversationId} atribuit la \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Etichetă atribuită cu succes", "ASSIGN_LABEL_FAILED": "Atribuirea etichetei a eșuat", "CHANGE_TEAM": "Echipa de conversație schimbată", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Fișierul depășește limita de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "MESSAGE_ERROR": "Mesajul nu poate fi trimis, te rugăm să încerci din nou mai târziu", "SENT_BY": "Trimis de:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atribute Contacte", "PREVIOUS_CONVERSATION": "Conversații anterioare", "MACROS": "Macrocomenzi", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ro/general.json b/app/javascript/dashboard/i18n/locale/ro/general.json index 49c0fc566..00beef63f 100644 --- a/app/javascript/dashboard/i18n/locale/ro/general.json +++ b/app/javascript/dashboard/i18n/locale/ro/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Caută", "EMPTY_STATE": "Niciun rezultat găsit" - } + }, + "CLOSE": "Închide" } } diff --git a/app/javascript/dashboard/i18n/locale/ro/generalSettings.json b/app/javascript/dashboard/i18n/locale/ro/generalSettings.json index f8b245cd1..01d4d0292 100644 --- a/app/javascript/dashboard/i18n/locale/ro/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ro/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferințe", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Nume cont", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ro/integrations.json b/app/javascript/dashboard/i18n/locale/ro/integrations.json index c2575ec94..ac6dee5c7 100644 --- a/app/javascript/dashboard/i18n/locale/ro/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ro/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Renunță" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Trimite mesaj...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Descriere", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ro/report.json b/app/javascript/dashboard/i18n/locale/ro/report.json index fdb722efc..ab4c386af 100644 --- a/app/javascript/dashboard/i18n/locale/ro/report.json +++ b/app/javascript/dashboard/i18n/locale/ro/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Prezentare generală a etichetelor", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Încărcare date grafic...", "NO_ENOUGH_DATA": "Nu am primit suficiente date pentru a genera raportul. Vă rugăm să încercați din nou mai târziu.", "DOWNLOAD_LABEL_REPORTS": "Descărcarea rapoartelor de etichete", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Echipa", + "LABEL": "Etichetă", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ro/search.json b/app/javascript/dashboard/i18n/locale/ro/search.json index 867722640..e2e0c3f09 100644 --- a/app/javascript/dashboard/i18n/locale/ro/search.json +++ b/app/javascript/dashboard/i18n/locale/ro/search.json @@ -4,12 +4,14 @@ "ALL": "Toate", "CONTACTS": "Contacte", "CONVERSATIONS": "Conversații", - "MESSAGES": "Mesaje" + "MESSAGES": "Mesaje", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacte", "CONVERSATIONS": "Conversații", - "MESSAGES": "Mesaje" + "MESSAGES": "Mesaje", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ro/settings.json b/app/javascript/dashboard/i18n/locale/ro/settings.json index efeb40d31..e44f55c45 100644 --- a/app/javascript/dashboard/i18n/locale/ro/settings.json +++ b/app/javascript/dashboard/i18n/locale/ro/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token acces", "NOTE": "Acest token poate fi utilizat dacă construiți o integrare bazată pe API", - "COPY": "Copiază" + "COPY": "Copiază", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Deconectat" }, "SET_AVAILABILITY_SUCCESS": "Avatar a fost șters cu succes", - "SET_AVAILABILITY_ERROR": "Nu s-a putut seta disponibilitatea, vă rugăm să încercați din nou" + "SET_AVAILABILITY_ERROR": "Nu s-a putut seta disponibilitatea, vă rugăm să încercați din nou", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Adresa ta de email", @@ -280,6 +286,7 @@ "REPORTS": "Rapoarte", "SETTINGS": "Setări", "CONTACTS": "Contacte", + "ACTIVE": "Activ", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ru/agentBots.json b/app/javascript/dashboard/i18n/locale/ru/agentBots.json index 583d2f1a0..5bd76e24c 100644 --- a/app/javascript/dashboard/i18n/locale/ru/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ru/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Не удалось обновить бота. Пожалуйста, повторите попытку позже." } }, + "ACCESS_TOKEN": { + "TITLE": "Токен доступа", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ru/auditLogs.json b/app/javascript/dashboard/i18n/locale/ru/auditLogs.json index b6bf2a6be..921a7f10a 100644 --- a/app/javascript/dashboard/i18n/locale/ru/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ru/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} обновил настройки учетной записи (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ru/contact.json b/app/javascript/dashboard/i18n/locale/ru/contact.json index 782c6bed5..dcc5aeed1 100644 --- a/app/javascript/dashboard/i18n/locale/ru/contact.json +++ b/app/javascript/dashboard/i18n/locale/ru/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Контакты", "SEARCH_TITLE": "Поиск контактов", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Поиск...", "MESSAGE_BUTTON": "Сообщение", "SEND_MESSAGE": "Отправить сообщение", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Добавить Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Удалить контакт", "DELETE_DIALOG": { "TITLE": "Подтвердите удаление", - "DESCRIPTION": "Вы уверены, что хотите удалить этот контакт {contactName}?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Да, удалить", "API": { "SUCCESS_MESSAGE": "Кампания успешно удалена", @@ -555,7 +560,8 @@ "SUBTITLE": "Начните добавлять новые контакты, нажав на кнопку ниже", "BUTTON_LABEL": "Добавить контакт", "SEARCH_EMPTY_STATE_TITLE": "Нет контактов по вашему запросу 🔍", - "LIST_EMPTY_STATE_TITLE": "Нет контактов в этом виде 📋" + "LIST_EMPTY_STATE_TITLE": "Нет контактов в этом виде 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ru/conversation.json b/app/javascript/dashboard/i18n/locale/ru/conversation.json index 0baab27cb..ffc9b90c9 100644 --- a/app/javascript/dashboard/i18n/locale/ru/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ru/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Завершить", "REOPEN_ACTION": "Открыть заново", "OPEN_ACTION": "Открыть", + "MORE_ACTIONS": "More actions", "OPEN": "Открыть", "CLOSE": "Закрыть", "DETAILS": "подробности", @@ -117,6 +118,11 @@ "FAILED": "Не удалось изменить приоритет. Пожалуйста, попробуйте еще раз." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Удалить" + }, "CARD_CONTEXT_MENU": { "PENDING": "Отметить как ожидающие", "RESOLVED": "Пометить как разрешено", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Назначить метки", "AGENTS_LOADING": "Загрузка агентов...", "ASSIGN_TEAM": "Назначить команду", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "ID разговора {conversationId} присвоен \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Метка успешно назначена", "ASSIGN_LABEL_FAILED": "Назначение метки не удалось", "CHANGE_TEAM": "Команда назначенная в беседу изменена", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Превышен лимит вложений в {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "MESSAGE_ERROR": "Не удается отправить это сообщение, повторите попытку позже", "SENT_BY": "Отправитель:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Атрибуты контакта", "PREVIOUS_CONVERSATION": "Предыдущие диалоги", "MACROS": "Макросс", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ru/general.json b/app/javascript/dashboard/i18n/locale/ru/general.json index 6191f3cfb..8a893c354 100644 --- a/app/javascript/dashboard/i18n/locale/ru/general.json +++ b/app/javascript/dashboard/i18n/locale/ru/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Поиск", "EMPTY_STATE": "Результаты не найдены" - } + }, + "CLOSE": "Закрыть" } } diff --git a/app/javascript/dashboard/i18n/locale/ru/generalSettings.json b/app/javascript/dashboard/i18n/locale/ru/generalSettings.json index 38ec9c2ce..b46d06a9d 100644 --- a/app/javascript/dashboard/i18n/locale/ru/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ru/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Настройки", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Имя аккаунта", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ru/integrations.json b/app/javascript/dashboard/i18n/locale/ru/integrations.json index 13c54d302..cee7df308 100644 --- a/app/javascript/dashboard/i18n/locale/ru/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ru/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Задача успешно отвязана", "ERROR": "Произошла ошибка при отвязке задачи, пожалуйста, попробуйте ещё раз" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Вы уверены, что хотите удалить интеграцию?", "MESSAGE": "Вы уверены, что хотите удалить интеграцию?", "CONFIRM": "Да, удалить", "CANCEL": "Отменить" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Капитан", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Попробуйте эти запросы", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Отправить сообщение...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Капитан думает", "YOU": "Вы", "USE": "Использовать это", "RESET": "Сброс", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Выбрать ассистента", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "Вы можете изменить или отменить ваш тарифный план в любое время" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Функция Captain AI доступна только в платном плане.", "UPGRADE_PROMPT": "Обновите тарифный план, чтобы получить доступ к нашим ассистентам, copilot и другим функциям.", "ASK_ADMIN": "Пожалуйста, обратитесь к вашему администратору для обновления." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Ассистенты", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Создать нового ассистента", "DELETE": { "TITLE": "Вы уверены, что хотите удалить ассистента?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Описание", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ru/report.json b/app/javascript/dashboard/i18n/locale/ru/report.json index 42802e962..dfcef0a5a 100644 --- a/app/javascript/dashboard/i18n/locale/ru/report.json +++ b/app/javascript/dashboard/i18n/locale/ru/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Обзор меток", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Загрузка данных графика...", "NO_ENOUGH_DATA": "Недостаточно данных для создания отчета, пожалуйста, повторите попытку позже.", "DOWNLOAD_LABEL_REPORTS": "Скачать отчет по меткам", @@ -559,6 +560,7 @@ "INBOX": "Электронная почта", "AGENT": "Оператор", "TEAM": "Команда", + "LABEL": "Метка", "AVG_RESOLUTION_TIME": "Среднее время решения", "AVG_FIRST_RESPONSE_TIME": "Среднее время первого ответа", "AVG_REPLY_TIME": "Среднее время ожидания клиента", diff --git a/app/javascript/dashboard/i18n/locale/ru/search.json b/app/javascript/dashboard/i18n/locale/ru/search.json index c1a363f6c..757ee2634 100644 --- a/app/javascript/dashboard/i18n/locale/ru/search.json +++ b/app/javascript/dashboard/i18n/locale/ru/search.json @@ -4,12 +4,14 @@ "ALL": "Все", "CONTACTS": "Контакты", "CONVERSATIONS": "Диалоги", - "MESSAGES": "Сообщения" + "MESSAGES": "Сообщения", + "ARTICLES": "Статьи" }, "SECTION": { "CONTACTS": "Контакты", "CONVERSATIONS": "Диалоги", - "MESSAGES": "Сообщения" + "MESSAGES": "Сообщения", + "ARTICLES": "Статьи" }, "VIEW_MORE": "Посмотреть больше", "LOAD_MORE": "Загрузить ещё", diff --git a/app/javascript/dashboard/i18n/locale/ru/settings.json b/app/javascript/dashboard/i18n/locale/ru/settings.json index 4a5e47887..9828305d8 100644 --- a/app/javascript/dashboard/i18n/locale/ru/settings.json +++ b/app/javascript/dashboard/i18n/locale/ru/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Токен доступа", "NOTE": "Этот токен может быть использован, если вы настраиваете интеграцию на основе API", - "COPY": "Копировать" + "COPY": "Копировать", + "RESET": "Сброс", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Аудио уведомления", @@ -185,7 +190,8 @@ "OFFLINE": "Оффлайн" }, "SET_AVAILABILITY_SUCCESS": "Доступность успешно установлена", - "SET_AVAILABILITY_ERROR": "Не удалось установить доступность, попробуйте снова" + "SET_AVAILABILITY_ERROR": "Не удалось установить доступность, попробуйте снова", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Ваш адрес электронной почты", @@ -280,6 +286,7 @@ "REPORTS": "Отчёты", "SETTINGS": "Настройки", "CONTACTS": "Контакты", + "ACTIVE": "Активно", "CAPTAIN": "Капитан", "CAPTAIN_ASSISTANTS": "Ассистенты", "CAPTAIN_DOCUMENTS": "Документы", diff --git a/app/javascript/dashboard/i18n/locale/sh/agentBots.json b/app/javascript/dashboard/i18n/locale/sh/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/sh/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sh/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/sh/auditLogs.json b/app/javascript/dashboard/i18n/locale/sh/auditLogs.json index 35c054fa2..df236f5b5 100644 --- a/app/javascript/dashboard/i18n/locale/sh/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/sh/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/sh/contact.json b/app/javascript/dashboard/i18n/locale/sh/contact.json index 476a69196..38489d630 100644 --- a/app/javascript/dashboard/i18n/locale/sh/contact.json +++ b/app/javascript/dashboard/i18n/locale/sh/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/sh/conversation.json b/app/javascript/dashboard/i18n/locale/sh/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/sh/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sh/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/sh/general.json b/app/javascript/dashboard/i18n/locale/sh/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/sh/general.json +++ b/app/javascript/dashboard/i18n/locale/sh/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/sh/generalSettings.json b/app/javascript/dashboard/i18n/locale/sh/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/sh/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sh/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/sh/integrations.json b/app/javascript/dashboard/i18n/locale/sh/integrations.json index e57ecb7cd..4eb1343cb 100644 --- a/app/javascript/dashboard/i18n/locale/sh/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sh/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/sh/report.json b/app/javascript/dashboard/i18n/locale/sh/report.json index e176d9147..18f1ed14b 100644 --- a/app/javascript/dashboard/i18n/locale/sh/report.json +++ b/app/javascript/dashboard/i18n/locale/sh/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/sh/search.json b/app/javascript/dashboard/i18n/locale/sh/search.json index 3cb566813..e8510ab97 100644 --- a/app/javascript/dashboard/i18n/locale/sh/search.json +++ b/app/javascript/dashboard/i18n/locale/sh/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/sh/settings.json b/app/javascript/dashboard/i18n/locale/sh/settings.json index 10a21245b..219041d75 100644 --- a/app/javascript/dashboard/i18n/locale/sh/settings.json +++ b/app/javascript/dashboard/i18n/locale/sh/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/sk/agentBots.json b/app/javascript/dashboard/i18n/locale/sk/agentBots.json index bc66d2d08..ff05c0419 100644 --- a/app/javascript/dashboard/i18n/locale/sk/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sk/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Prístupový token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/sk/auditLogs.json b/app/javascript/dashboard/i18n/locale/sk/auditLogs.json index 38d6da68b..327c9274b 100644 --- a/app/javascript/dashboard/i18n/locale/sk/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/sk/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/sk/contact.json b/app/javascript/dashboard/i18n/locale/sk/contact.json index 43ab36325..245231cc4 100644 --- a/app/javascript/dashboard/i18n/locale/sk/contact.json +++ b/app/javascript/dashboard/i18n/locale/sk/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakty", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Správa", "SEND_MESSAGE": "Poslať správu", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Vymazať kontakt", "DELETE_DIALOG": { "TITLE": "Potvrdiť vymazanie", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Áno, vymazať", "API": { "SUCCESS_MESSAGE": "Kontakt úspešne odstránený", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Žiadny kontakt nezodpovedá vášmu vyhľadávaniu 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/sk/conversation.json b/app/javascript/dashboard/i18n/locale/sk/conversation.json index 9f5aecd5b..bbda30a36 100644 --- a/app/javascript/dashboard/i18n/locale/sk/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sk/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Vyriešiť", "REOPEN_ACTION": "Znovu otvoriť", "OPEN_ACTION": "Otvoriť", + "MORE_ACTIONS": "More actions", "OPEN": "Viac", "CLOSE": "Zatvoriť", "DETAILS": "detaily", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Vymazať" + }, "CARD_CONTEXT_MENU": { "PENDING": "Označiť ako čakajúce na vybavenie", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atribúty kontaktu", "PREVIOUS_CONVERSATION": "Prechádzajúce konverzácie", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/sk/general.json b/app/javascript/dashboard/i18n/locale/sk/general.json index 2e1198efe..9b8497e11 100644 --- a/app/javascript/dashboard/i18n/locale/sk/general.json +++ b/app/javascript/dashboard/i18n/locale/sk/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Hľadať", "EMPTY_STATE": "Žiadne výsledky neboli nájdené" - } + }, + "CLOSE": "Zatvoriť" } } diff --git a/app/javascript/dashboard/i18n/locale/sk/generalSettings.json b/app/javascript/dashboard/i18n/locale/sk/generalSettings.json index f0cc9e8ac..8e12e31f7 100644 --- a/app/javascript/dashboard/i18n/locale/sk/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sk/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Názov účtu", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/sk/integrations.json b/app/javascript/dashboard/i18n/locale/sk/integrations.json index d22a60294..5ff7aa6e3 100644 --- a/app/javascript/dashboard/i18n/locale/sk/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sk/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Zrušiť" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Poslať správu...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Vy", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/sk/report.json b/app/javascript/dashboard/i18n/locale/sk/report.json index 1cd900ebd..569e4eb9d 100644 --- a/app/javascript/dashboard/i18n/locale/sk/report.json +++ b/app/javascript/dashboard/i18n/locale/sk/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Načítanie grafu...", "NO_ENOUGH_DATA": "Na vygenerovanie reportu sme nedostali dostatok dát, skúste to prosím neskôr.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Schránka", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/sk/search.json b/app/javascript/dashboard/i18n/locale/sk/search.json index 64f900182..c2dad4d7c 100644 --- a/app/javascript/dashboard/i18n/locale/sk/search.json +++ b/app/javascript/dashboard/i18n/locale/sk/search.json @@ -4,12 +4,14 @@ "ALL": "Všetko", "CONTACTS": "Kontakty", "CONVERSATIONS": "Rozhovory", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakty", "CONVERSATIONS": "Rozhovory", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/sk/settings.json b/app/javascript/dashboard/i18n/locale/sk/settings.json index 53dcc60f8..ab5a33a5b 100644 --- a/app/javascript/dashboard/i18n/locale/sk/settings.json +++ b/app/javascript/dashboard/i18n/locale/sk/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Prístupový token", "NOTE": "Tento token môžete použiť, ak vytvárate integráciu založenú na rozhraní API", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Vaša e-mailová adresa", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Nastavenia", "CONTACTS": "Kontakty", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/sl/agentBots.json b/app/javascript/dashboard/i18n/locale/sl/agentBots.json index 9de7ccba8..f6beeebe8 100644 --- a/app/javascript/dashboard/i18n/locale/sl/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sl/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Bota ni bilo mogoče posodobiti. Prosimo poskusite ponovno." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/sl/auditLogs.json b/app/javascript/dashboard/i18n/locale/sl/auditLogs.json index 8194c667c..f85ad2a3e 100644 --- a/app/javascript/dashboard/i18n/locale/sl/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/sl/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/sl/contact.json b/app/javascript/dashboard/i18n/locale/sl/contact.json index a1037617f..f1ad75a48 100644 --- a/app/javascript/dashboard/i18n/locale/sl/contact.json +++ b/app/javascript/dashboard/i18n/locale/sl/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakti", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Iskanje ...", "MESSAGE_BUTTON": "Sporočilo", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/sl/conversation.json b/app/javascript/dashboard/i18n/locale/sl/conversation.json index ca492f97b..0b9bad8dd 100644 --- a/app/javascript/dashboard/i18n/locale/sl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sl/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/sl/general.json b/app/javascript/dashboard/i18n/locale/sl/general.json index 390247323..889d4d0c0 100644 --- a/app/javascript/dashboard/i18n/locale/sl/general.json +++ b/app/javascript/dashboard/i18n/locale/sl/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Iskanje", "EMPTY_STATE": "Ni rezultatov" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/sl/generalSettings.json b/app/javascript/dashboard/i18n/locale/sl/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/sl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sl/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/sl/integrations.json b/app/javascript/dashboard/i18n/locale/sl/integrations.json index dcfca6e9e..43627d32c 100644 --- a/app/javascript/dashboard/i18n/locale/sl/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sl/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Da, izbriši", "CANCEL": "Prekliči" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Vi", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/sl/report.json b/app/javascript/dashboard/i18n/locale/sl/report.json index 2455635e0..5c5fd0797 100644 --- a/app/javascript/dashboard/i18n/locale/sl/report.json +++ b/app/javascript/dashboard/i18n/locale/sl/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Nabiralnik", "AGENT": "Agent", "TEAM": "Ekipa", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/sl/search.json b/app/javascript/dashboard/i18n/locale/sl/search.json index a93879ee1..7ad94f0a2 100644 --- a/app/javascript/dashboard/i18n/locale/sl/search.json +++ b/app/javascript/dashboard/i18n/locale/sl/search.json @@ -4,12 +4,14 @@ "ALL": "Vse", "CONTACTS": "Kontakti", "CONVERSATIONS": "Pogovori", - "MESSAGES": "Sporočila" + "MESSAGES": "Sporočila", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakti", "CONVERSATIONS": "Pogovori", - "MESSAGES": "Sporočila" + "MESSAGES": "Sporočila", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/sl/settings.json b/app/javascript/dashboard/i18n/locale/sl/settings.json index 175521048..164305cea 100644 --- a/app/javascript/dashboard/i18n/locale/sl/settings.json +++ b/app/javascript/dashboard/i18n/locale/sl/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/sq/agentBots.json b/app/javascript/dashboard/i18n/locale/sq/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/sq/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sq/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/sq/auditLogs.json b/app/javascript/dashboard/i18n/locale/sq/auditLogs.json index 8194c667c..f85ad2a3e 100644 --- a/app/javascript/dashboard/i18n/locale/sq/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/sq/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/sq/contact.json b/app/javascript/dashboard/i18n/locale/sq/contact.json index da6b2aae1..f6a929e78 100644 --- a/app/javascript/dashboard/i18n/locale/sq/contact.json +++ b/app/javascript/dashboard/i18n/locale/sq/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/sq/conversation.json b/app/javascript/dashboard/i18n/locale/sq/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/sq/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sq/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/sq/general.json b/app/javascript/dashboard/i18n/locale/sq/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/sq/general.json +++ b/app/javascript/dashboard/i18n/locale/sq/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/sq/generalSettings.json b/app/javascript/dashboard/i18n/locale/sq/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/sq/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sq/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/sq/integrations.json b/app/javascript/dashboard/i18n/locale/sq/integrations.json index d3a7f8c8d..59e0f393d 100644 --- a/app/javascript/dashboard/i18n/locale/sq/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sq/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Ju", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/sq/report.json b/app/javascript/dashboard/i18n/locale/sq/report.json index 294ca2e7b..7c42fdfba 100644 --- a/app/javascript/dashboard/i18n/locale/sq/report.json +++ b/app/javascript/dashboard/i18n/locale/sq/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/sq/search.json b/app/javascript/dashboard/i18n/locale/sq/search.json index 735e6045a..7e129f7d6 100644 --- a/app/javascript/dashboard/i18n/locale/sq/search.json +++ b/app/javascript/dashboard/i18n/locale/sq/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/sq/settings.json b/app/javascript/dashboard/i18n/locale/sq/settings.json index 9801bbab5..ab40a9411 100644 --- a/app/javascript/dashboard/i18n/locale/sq/settings.json +++ b/app/javascript/dashboard/i18n/locale/sq/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/sr/agentBots.json b/app/javascript/dashboard/i18n/locale/sr/agentBots.json index c121d536a..dc5cf9514 100644 --- a/app/javascript/dashboard/i18n/locale/sr/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sr/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Token za pristup", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/sr/auditLogs.json b/app/javascript/dashboard/i18n/locale/sr/auditLogs.json index d140c3bd1..9fade3c5b 100644 --- a/app/javascript/dashboard/i18n/locale/sr/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/sr/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/sr/contact.json b/app/javascript/dashboard/i18n/locale/sr/contact.json index 636c91ab7..bbb3e19d0 100644 --- a/app/javascript/dashboard/i18n/locale/sr/contact.json +++ b/app/javascript/dashboard/i18n/locale/sr/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakti", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Poruka", "SEND_MESSAGE": "Pošalji poruku", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Obriši kontakt", "DELETE_DIALOG": { "TITLE": "Potvrdite brisanje", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Da, obriši", "API": { "SUCCESS_MESSAGE": "Kontakt je uspešno obrisan", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Nisu pronađeni kontakti 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/sr/conversation.json b/app/javascript/dashboard/i18n/locale/sr/conversation.json index 9cf518d94..2543dbcb9 100644 --- a/app/javascript/dashboard/i18n/locale/sr/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sr/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Reši", "REOPEN_ACTION": "Ponovo otvori", "OPEN_ACTION": "Otvoreni", + "MORE_ACTIONS": "More actions", "OPEN": "Više", "CLOSE": "Zatvori", "DETAILS": "detalji", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Izbriši" + }, "CARD_CONTEXT_MENU": { "PENDING": "Označeno na čekanju", "RESOLVED": "Označi kao rešeno", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Dodeli oznaku", "AGENTS_LOADING": "Učitavanje agenata...", "ASSIGN_TEAM": "Dodeli tim", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Razgovor sa ID {conversationId} je dodeljen \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Oznaka je uspešno dodeljena", "ASSIGN_LABEL_FAILED": "Nije uspela dodela oznake", "CHANGE_TEAM": "Tim razgovora je promenjen", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Nije moguće slanje poruke, molim vas pokušajte ponovo", "SENT_BY": "Poslao:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Atributi kontakta", "PREVIOUS_CONVERSATION": "Prethodni razgovor", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/sr/general.json b/app/javascript/dashboard/i18n/locale/sr/general.json index 46e1d3a00..84b2546c4 100644 --- a/app/javascript/dashboard/i18n/locale/sr/general.json +++ b/app/javascript/dashboard/i18n/locale/sr/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Traži", "EMPTY_STATE": "Ništa nije pronađeno" - } + }, + "CLOSE": "Zatvori" } } diff --git a/app/javascript/dashboard/i18n/locale/sr/generalSettings.json b/app/javascript/dashboard/i18n/locale/sr/generalSettings.json index f808851d8..870e0cace 100644 --- a/app/javascript/dashboard/i18n/locale/sr/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sr/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Naziv naloga", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/sr/integrations.json b/app/javascript/dashboard/i18n/locale/sr/integrations.json index 1db35cc89..cb72cc150 100644 --- a/app/javascript/dashboard/i18n/locale/sr/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sr/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Otkaži" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Pošalji poruku...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Opis", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/sr/report.json b/app/javascript/dashboard/i18n/locale/sr/report.json index bccd46e1c..acf3d941a 100644 --- a/app/javascript/dashboard/i18n/locale/sr/report.json +++ b/app/javascript/dashboard/i18n/locale/sr/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Pregled oznaka", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Učitavanje podataka grafikona...", "NO_ENOUGH_DATA": "Nismo primili dovoljno podataka da bi smo generisali izveštaj, Molim vas pokušajte ponovo.", "DOWNLOAD_LABEL_REPORTS": "Preuzmi izveštaj o oznakama", @@ -559,6 +560,7 @@ "INBOX": "Prijemno sanduče", "AGENT": "Agent", "TEAM": "Tim", + "LABEL": "Oznaka", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/sr/search.json b/app/javascript/dashboard/i18n/locale/sr/search.json index e94eda67f..c97c418ca 100644 --- a/app/javascript/dashboard/i18n/locale/sr/search.json +++ b/app/javascript/dashboard/i18n/locale/sr/search.json @@ -4,12 +4,14 @@ "ALL": "Sve", "CONTACTS": "Kontakti", "CONVERSATIONS": "Razgovori", - "MESSAGES": "Poruke" + "MESSAGES": "Poruke", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakti", "CONVERSATIONS": "Razgovori", - "MESSAGES": "Poruke" + "MESSAGES": "Poruke", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/sr/settings.json b/app/javascript/dashboard/i18n/locale/sr/settings.json index 52f37f9a5..b36d7d1ef 100644 --- a/app/javascript/dashboard/i18n/locale/sr/settings.json +++ b/app/javascript/dashboard/i18n/locale/sr/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token za pristup", "NOTE": "Ovaj token se može koristiti ako izgrađujete integraciju zasnovanu na API-ju", - "COPY": "Kopiraj" + "COPY": "Kopiraj", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Nedostupan" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Vaša adresa e-pošte", @@ -280,6 +286,7 @@ "REPORTS": "Izveštaji", "SETTINGS": "Podešavanja", "CONTACTS": "Kontakti", + "ACTIVE": "Aktivno", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/sv/agentBots.json b/app/javascript/dashboard/i18n/locale/sv/agentBots.json index 396f3d1a1..fea4cd09a 100644 --- a/app/javascript/dashboard/i18n/locale/sv/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sv/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Åtkomsttoken", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/sv/auditLogs.json b/app/javascript/dashboard/i18n/locale/sv/auditLogs.json index 4a2971116..6b57c0642 100644 --- a/app/javascript/dashboard/i18n/locale/sv/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/sv/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/sv/contact.json b/app/javascript/dashboard/i18n/locale/sv/contact.json index 20000c2ba..0937bf565 100644 --- a/app/javascript/dashboard/i18n/locale/sv/contact.json +++ b/app/javascript/dashboard/i18n/locale/sv/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kontakter", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Meddelande", "SEND_MESSAGE": "Skicka meddelande", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Ta bort kontakt", "DELETE_DIALOG": { "TITLE": "Bekräfta borttagning", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Ja, ta bort", "API": { "SUCCESS_MESSAGE": "Kontakten har tagits bort", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Inga kontakter matchar din sökning 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/sv/conversation.json b/app/javascript/dashboard/i18n/locale/sv/conversation.json index 1079c60af..234656f95 100644 --- a/app/javascript/dashboard/i18n/locale/sv/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sv/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Lös", "REOPEN_ACTION": "Återöppna", "OPEN_ACTION": "Öppna", + "MORE_ACTIONS": "More actions", "OPEN": "Mer", "CLOSE": "Stäng", "DETAILS": "detaljer", @@ -117,6 +118,11 @@ "FAILED": "Kunde inte ändra prioritet. Försök igen." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Radera" + }, "CARD_CONTEXT_MENU": { "PENDING": "Markera som väntande", "RESOLVED": "Markera som löst", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Tilldela etikett", "AGENTS_LOADING": "Laddar agenter...", "ASSIGN_TEAM": "Tilldela team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Konversationsteamet har ändrats", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Det gick inte att skicka detta meddelande, försök igen senare", "SENT_BY": "Skickat av:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Tidigare konversationer", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/sv/general.json b/app/javascript/dashboard/i18n/locale/sv/general.json index c5218d71d..4bfbcc28b 100644 --- a/app/javascript/dashboard/i18n/locale/sv/general.json +++ b/app/javascript/dashboard/i18n/locale/sv/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Sök", "EMPTY_STATE": "Inga resultat hittades" - } + }, + "CLOSE": "Stäng" } } diff --git a/app/javascript/dashboard/i18n/locale/sv/generalSettings.json b/app/javascript/dashboard/i18n/locale/sv/generalSettings.json index e4f72bf9a..3258dfd7d 100644 --- a/app/javascript/dashboard/i18n/locale/sv/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sv/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Kontonamn", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/sv/integrations.json b/app/javascript/dashboard/i18n/locale/sv/integrations.json index 5942f99a4..11d651b45 100644 --- a/app/javascript/dashboard/i18n/locale/sv/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sv/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Ja, ta bort", "CANCEL": "Avbryt" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Skicka meddelande...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Du", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Beskrivning", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/sv/report.json b/app/javascript/dashboard/i18n/locale/sv/report.json index da1446350..87f21fd4f 100644 --- a/app/javascript/dashboard/i18n/locale/sv/report.json +++ b/app/javascript/dashboard/i18n/locale/sv/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Laddar diagramdata...", "NO_ENOUGH_DATA": "Vi har inte fått tillräckligt många datapunkter för att generera en rapport, försök igen senare.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inkorg", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/sv/search.json b/app/javascript/dashboard/i18n/locale/sv/search.json index dfea54193..31b2ea97a 100644 --- a/app/javascript/dashboard/i18n/locale/sv/search.json +++ b/app/javascript/dashboard/i18n/locale/sv/search.json @@ -4,12 +4,14 @@ "ALL": "Alla", "CONTACTS": "Kontakter", "CONVERSATIONS": "Konversationer", - "MESSAGES": "Meddelanden" + "MESSAGES": "Meddelanden", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kontakter", "CONVERSATIONS": "Konversationer", - "MESSAGES": "Meddelanden" + "MESSAGES": "Meddelanden", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/sv/settings.json b/app/javascript/dashboard/i18n/locale/sv/settings.json index 7e73659c6..645f3e581 100644 --- a/app/javascript/dashboard/i18n/locale/sv/settings.json +++ b/app/javascript/dashboard/i18n/locale/sv/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Åtkomsttoken", "NOTE": "Denna token kan användas om du bygger en API-baserad integration", - "COPY": "Kopiera" + "COPY": "Kopiera", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Din e-postadress", @@ -280,6 +286,7 @@ "REPORTS": "Rapporter", "SETTINGS": "Inställningar", "CONTACTS": "Kontakter", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ta/agentBots.json b/app/javascript/dashboard/i18n/locale/ta/agentBots.json index f96ee4072..071a8c08e 100644 --- a/app/javascript/dashboard/i18n/locale/ta/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ta/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "அணுகுவதற்கான டோக்கன்", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ta/auditLogs.json b/app/javascript/dashboard/i18n/locale/ta/auditLogs.json index 3bc3cb98a..0a4749ebf 100644 --- a/app/javascript/dashboard/i18n/locale/ta/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ta/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ta/contact.json b/app/javascript/dashboard/i18n/locale/ta/contact.json index 75ffc4c8c..d1a3a5dd3 100644 --- a/app/javascript/dashboard/i18n/locale/ta/contact.json +++ b/app/javascript/dashboard/i18n/locale/ta/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "நீக்குதலை உறுதிப்படுத்தவும்", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ta/conversation.json b/app/javascript/dashboard/i18n/locale/ta/conversation.json index b6a566245..1e2028e82 100644 --- a/app/javascript/dashboard/i18n/locale/ta/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ta/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "தீர்", "REOPEN_ACTION": "மீண்டும் திற", "OPEN_ACTION": "திற", + "MORE_ACTIONS": "More actions", "OPEN": "மேலும்", "CLOSE": "மூடு", "DETAILS": "விவரங்கள்", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "முந்தைய உரையாடல்கள்", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ta/general.json b/app/javascript/dashboard/i18n/locale/ta/general.json index 78e97db90..8f4efd01d 100644 --- a/app/javascript/dashboard/i18n/locale/ta/general.json +++ b/app/javascript/dashboard/i18n/locale/ta/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "மூடு" } } diff --git a/app/javascript/dashboard/i18n/locale/ta/generalSettings.json b/app/javascript/dashboard/i18n/locale/ta/generalSettings.json index f1e16d2e2..fd0c21773 100644 --- a/app/javascript/dashboard/i18n/locale/ta/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ta/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "கணக்கின் பெயர்", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ta/integrations.json b/app/javascript/dashboard/i18n/locale/ta/integrations.json index 9626e0fb0..cfad7d30f 100644 --- a/app/javascript/dashboard/i18n/locale/ta/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ta/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "ரத்துசெய்" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ta/report.json b/app/javascript/dashboard/i18n/locale/ta/report.json index 332dfc733..813e31142 100644 --- a/app/javascript/dashboard/i18n/locale/ta/report.json +++ b/app/javascript/dashboard/i18n/locale/ta/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "சார்ட்டுக்கான டேட்டாவை பெறுகிறது...", "NO_ENOUGH_DATA": "அறிக்கையை உருவாக்க போதுமான தரவுகளை பெறவில்லை, தயவுசெய்து மீண்டும் முயற்சிக்கவும்.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "ஏஜென்ட்", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ta/search.json b/app/javascript/dashboard/i18n/locale/ta/search.json index a0684df7c..41120b398 100644 --- a/app/javascript/dashboard/i18n/locale/ta/search.json +++ b/app/javascript/dashboard/i18n/locale/ta/search.json @@ -4,12 +4,14 @@ "ALL": "எல்லாம்", "CONTACTS": "Contacts", "CONVERSATIONS": "உரையாடல்கள்", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "உரையாடல்கள்", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ta/settings.json b/app/javascript/dashboard/i18n/locale/ta/settings.json index f20152256..59e4ca8fc 100644 --- a/app/javascript/dashboard/i18n/locale/ta/settings.json +++ b/app/javascript/dashboard/i18n/locale/ta/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "அணுகுவதற்கான டோக்கன்", "NOTE": "நீங்கள் API அடிப்படையிலான ஒருங்கிணைப்பை உருவாக்கினால் இந்த டோக்கனைப் பயன்படுத்தலாம்", - "COPY": "நகல்" + "COPY": "நகல்", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "உங்கள் ஈ-மெயில் முகவரி", @@ -280,6 +286,7 @@ "REPORTS": "அறிக்கைகள்", "SETTINGS": "அமைப்புகள்", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/th/agentBots.json b/app/javascript/dashboard/i18n/locale/th/agentBots.json index b2753b363..c5b2690b3 100644 --- a/app/javascript/dashboard/i18n/locale/th/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/th/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/th/auditLogs.json b/app/javascript/dashboard/i18n/locale/th/auditLogs.json index 69885ca63..450be07fb 100644 --- a/app/javascript/dashboard/i18n/locale/th/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/th/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/th/contact.json b/app/javascript/dashboard/i18n/locale/th/contact.json index 8c28076b0..292e8ccf9 100644 --- a/app/javascript/dashboard/i18n/locale/th/contact.json +++ b/app/javascript/dashboard/i18n/locale/th/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "ผู้ติดต่อ", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "ข้อความ", "SEND_MESSAGE": "ส่วข้อความ", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "ลบผู้ติดต่อ", "DELETE_DIALOG": { "TITLE": "ยืนยันการลบ", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "เอาเลย", "API": { "SUCCESS_MESSAGE": "ลบผู้ติดต่อสำเร็จแล้ว", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "ไม่มีผู้ติดต่อที่ตรงกัน 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/th/conversation.json b/app/javascript/dashboard/i18n/locale/th/conversation.json index d044c0b21..8677f18d7 100644 --- a/app/javascript/dashboard/i18n/locale/th/conversation.json +++ b/app/javascript/dashboard/i18n/locale/th/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "เสร็จสิ้น", "REOPEN_ACTION": "เปิดใหม่อีกครั้ง", "OPEN_ACTION": "เปิด", + "MORE_ACTIONS": "More actions", "OPEN": "เพิ่มเติม", "CLOSE": "ปิด", "DETAILS": "รายละเอียด", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "ลบ" + }, "CARD_CONTEXT_MENU": { "PENDING": "ทำเครื่องหมายว่าอยู่ระหว่างดำเนินการ", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "รหัสการสนทนา {conversationId} ถูกมอบหมายให้กับ {agentName}", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "เปลี่ยนทีมการสนทนาเเล้ว", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "ไฟล์ของคุณมีขนาดเกิน {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", "MESSAGE_ERROR": "ไม่สามารถส่งข้อความนี้ได้ โปรดลองใหม่อีกครั้ง", "SENT_BY": "ส่งโดย:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "แอตทริบิวต์ผู้ติดต่อ", "PREVIOUS_CONVERSATION": "การสนทนาก่อนหน้า", "MACROS": "คีย์ลัด", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/th/general.json b/app/javascript/dashboard/i18n/locale/th/general.json index a081fc80a..8d52d9940 100644 --- a/app/javascript/dashboard/i18n/locale/th/general.json +++ b/app/javascript/dashboard/i18n/locale/th/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "ค้นหา", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "ปิด" } } diff --git a/app/javascript/dashboard/i18n/locale/th/generalSettings.json b/app/javascript/dashboard/i18n/locale/th/generalSettings.json index 7e09ea6a2..55b4f9b1d 100644 --- a/app/javascript/dashboard/i18n/locale/th/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/th/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "ชื่อบัญชี", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/th/integrations.json b/app/javascript/dashboard/i18n/locale/th/integrations.json index 7fb20eb52..64697d7ea 100644 --- a/app/javascript/dashboard/i18n/locale/th/integrations.json +++ b/app/javascript/dashboard/i18n/locale/th/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "ยกเลิก" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "ส่วข้อความ...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "คำอธิบาย", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/th/report.json b/app/javascript/dashboard/i18n/locale/th/report.json index a43255440..d2f0eacff 100644 --- a/app/javascript/dashboard/i18n/locale/th/report.json +++ b/app/javascript/dashboard/i18n/locale/th/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "ภาพรวมป้ายกำกับ", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "กำลังโหลดแผนภูมิข้อมูล", "NO_ENOUGH_DATA": "ข้อมูลที่เราได้รับไม่เพียงพอต่อการสร้างรายงาน โปรดลองใหม่อีกครั้งในภายหน้า", "DOWNLOAD_LABEL_REPORTS": "ดาวน์โหลดรายงานป้ายกำกับ", @@ -559,6 +560,7 @@ "INBOX": "กล่องข้อความ", "AGENT": "พนักงาน", "TEAM": "ทีม", + "LABEL": "ป้ายกำกับ", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/th/search.json b/app/javascript/dashboard/i18n/locale/th/search.json index adfa8d3df..7332709db 100644 --- a/app/javascript/dashboard/i18n/locale/th/search.json +++ b/app/javascript/dashboard/i18n/locale/th/search.json @@ -4,12 +4,14 @@ "ALL": "ทั้งหมด", "CONTACTS": "ผู้ติดต่อ", "CONVERSATIONS": "การสนทนา", - "MESSAGES": "ข้อความทั้งหมด" + "MESSAGES": "ข้อความทั้งหมด", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "ผู้ติดต่อ", "CONVERSATIONS": "การสนทนา", - "MESSAGES": "ข้อความทั้งหมด" + "MESSAGES": "ข้อความทั้งหมด", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/th/settings.json b/app/javascript/dashboard/i18n/locale/th/settings.json index 4445f58ee..50e3b4063 100644 --- a/app/javascript/dashboard/i18n/locale/th/settings.json +++ b/app/javascript/dashboard/i18n/locale/th/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "คุณสามารถใช้ token นี้เชื่อมต่อกับ API ได้", - "COPY": "คัดลอก" + "COPY": "คัดลอก", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "ออฟไลน์" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "อีเมลของคุณ", @@ -280,6 +286,7 @@ "REPORTS": "รายงาน", "SETTINGS": "ตั้งค่า", "CONTACTS": "ผู้ติดต่อ", + "ACTIVE": "ใช้งานอยู่", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/tl/agentBots.json b/app/javascript/dashboard/i18n/locale/tl/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/tl/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/tl/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/tl/auditLogs.json b/app/javascript/dashboard/i18n/locale/tl/auditLogs.json index 8194c667c..f85ad2a3e 100644 --- a/app/javascript/dashboard/i18n/locale/tl/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/tl/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/tl/contact.json b/app/javascript/dashboard/i18n/locale/tl/contact.json index 9147c24b1..b4d640f7f 100644 --- a/app/javascript/dashboard/i18n/locale/tl/contact.json +++ b/app/javascript/dashboard/i18n/locale/tl/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/tl/conversation.json b/app/javascript/dashboard/i18n/locale/tl/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/tl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/tl/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/tl/general.json b/app/javascript/dashboard/i18n/locale/tl/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/tl/general.json +++ b/app/javascript/dashboard/i18n/locale/tl/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/tl/generalSettings.json b/app/javascript/dashboard/i18n/locale/tl/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/tl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/tl/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/tl/integrations.json b/app/javascript/dashboard/i18n/locale/tl/integrations.json index 0e3c46b97..43de9b65d 100644 --- a/app/javascript/dashboard/i18n/locale/tl/integrations.json +++ b/app/javascript/dashboard/i18n/locale/tl/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/tl/report.json b/app/javascript/dashboard/i18n/locale/tl/report.json index 294ca2e7b..7c42fdfba 100644 --- a/app/javascript/dashboard/i18n/locale/tl/report.json +++ b/app/javascript/dashboard/i18n/locale/tl/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/tl/search.json b/app/javascript/dashboard/i18n/locale/tl/search.json index 3cb566813..e8510ab97 100644 --- a/app/javascript/dashboard/i18n/locale/tl/search.json +++ b/app/javascript/dashboard/i18n/locale/tl/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/tl/settings.json b/app/javascript/dashboard/i18n/locale/tl/settings.json index 10a21245b..219041d75 100644 --- a/app/javascript/dashboard/i18n/locale/tl/settings.json +++ b/app/javascript/dashboard/i18n/locale/tl/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/tr/agentBots.json b/app/javascript/dashboard/i18n/locale/tr/agentBots.json index bc40ebe74..9b4c0b500 100644 --- a/app/javascript/dashboard/i18n/locale/tr/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/tr/agentBots.json @@ -2,13 +2,13 @@ "AGENT_BOTS": { "HEADER": "Botlar", "LOADING_EDITOR": "Editör Yükleniyor...", - "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", + "DESCRIPTION": "Temsilci botları ekibinizin en harika üyeleri gibidir. Küçük işleri halledebilirler, böylece önemli işlere odaklanabilirsiniz. Onları deneyin. Botlarınızı bu sayfadan yönetebilir veya 'Bot Ekle' butonunu kullanarak yenilerini oluşturabilirsiniz.", "LEARN_MORE": "Learn about agent bots", - "GLOBAL_BOT": "System bot", + "GLOBAL_BOT": "Sistem botu", "GLOBAL_BOT_BADGE": "Sistem", "AVATAR": { - "SUCCESS_DELETE": "Bot avatar deleted successfully", - "ERROR_DELETE": "Error deleting bot avatar, please try again" + "SUCCESS_DELETE": "Bot avatarı başarıyla silindi", + "ERROR_DELETE": "Bot avatarı silinirken hata oluştu, lütfen tekrar deneyin" }, "BOT_CONFIGURATION": { "TITLE": "Bir temsilci botu seçin", @@ -22,7 +22,7 @@ "SELECT_PLACEHOLDER": "Bot seçin" }, "ADD": { - "TITLE": "Add Bot", + "TITLE": "Bot Ekle", "CANCEL_BUTTON_TEXT": "İptal Et", "API": { "SUCCESS_MESSAGE": "Bot başarıyla eklendi.", @@ -30,10 +30,10 @@ } }, "LIST": { - "404": "No bots found. You can create a bot by clicking the 'Add Bot' button.", + "404": "Bot bulunamadı. 'Bot Ekle' butonuna tıklayarak bir bot oluşturabilirsiniz.", "LOADING": "Botlar alınıyor...", "TABLE_HEADER": { - "DETAILS": "Bot Details", + "DETAILS": "Bot Detayları", "URL": "Webhook URL'si" } }, @@ -42,7 +42,7 @@ "TITLE": "Botu sil", "CONFIRM": { "TITLE": "Silmeyi onayla", - "MESSAGE": "Are you sure you want to delete {name}?", + "MESSAGE": "{name} silmek istediğinizden emin misiniz?", "YES": "Evet, Sil", "NO": "Hayır, Sakla" }, @@ -59,13 +59,20 @@ "ERROR_MESSAGE": "Bot güncellenemedi. Lütfen tekrar deneyin." } }, + "ACCESS_TOKEN": { + "TITLE": "Erişim Jetonu", + "DESCRIPTION": "Erişim anahtarını kopyalayın ve güvenli bir yerde saklayın", + "COPY_SUCCESSFUL": "Erişim anahtarı panoya kopyalandı", + "RESET_SUCCESS": "Erişim anahtarı başarıyla yeniden oluşturuldu", + "RESET_ERROR": "Erişim anahtarı yeniden oluşturulamadı. Lütfen tekrar deneyin" + }, "FORM": { "AVATAR": { - "LABEL": "Bot avatar" + "LABEL": "Bot avatarı" }, "NAME": { "LABEL": "Bot Adı", - "PLACEHOLDER": "Enter bot name", + "PLACEHOLDER": "Bot adını girin", "REQUIRED": "Bot adı zorunludur" }, "DESCRIPTION": { @@ -75,19 +82,19 @@ "WEBHOOK_URL": { "LABEL": "Webhook URL'si", "PLACEHOLDER": "https://example.com/webhook", - "REQUIRED": "Webhook URL is required" + "REQUIRED": "Webhook URL'si gereklidir" }, "ERRORS": { "NAME": "Bot adı zorunludur", - "URL": "Webhook URL is required", - "VALID_URL": "Please enter a valid URL starting with http:// or https://" + "URL": "Webhook URL'si gereklidir", + "VALID_URL": "Lütfen http:// veya https:// ile başlayan geçerli bir URL girin" }, "CANCEL": "İptal Et", - "CREATE": "Create Bot", - "UPDATE": "Update Bot" + "CREATE": "Bot Oluştur", + "UPDATE": "Botu Güncelle" }, "WEBHOOK": { - "DESCRIPTION": "Configure a webhook bot to integrate with your custom services. The bot will receive and process events from conversations and can respond to them." + "DESCRIPTION": "Webhook botunu özel hizmetlerinizle entegre etmek için yapılandırın. Bot, sohbetlerden gelen olayları alacak ve işleyebilecek." }, "TYPES": { "WEBHOOK": "Webhook botu" diff --git a/app/javascript/dashboard/i18n/locale/tr/auditLogs.json b/app/javascript/dashboard/i18n/locale/tr/auditLogs.json index 07c108a1d..98eb2372c 100644 --- a/app/javascript/dashboard/i18n/locale/tr/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/tr/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} #{id} numaralı sohbeti sildi" } } } diff --git a/app/javascript/dashboard/i18n/locale/tr/automation.json b/app/javascript/dashboard/i18n/locale/tr/automation.json index 8327ae851..eda09b867 100644 --- a/app/javascript/dashboard/i18n/locale/tr/automation.json +++ b/app/javascript/dashboard/i18n/locale/tr/automation.json @@ -130,37 +130,37 @@ "EVENTS": { "CONVERSATION_CREATED": "Görüşme Oluşturuldu", "CONVERSATION_UPDATED": "Görüşme Güncellendi", - "MESSAGE_CREATED": "Message Created", - "CONVERSATION_OPENED": "Conversation Opened" + "MESSAGE_CREATED": "Mesaj Oluşturuldu", + "CONVERSATION_OPENED": "Sohbet Açıldı" }, "ACTIONS": { - "ASSIGN_AGENT": "Assign to Agent", - "ASSIGN_TEAM": "Assign a Team", - "ADD_LABEL": "Add a Label", - "REMOVE_LABEL": "Remove a Label", - "SEND_EMAIL_TO_TEAM": "Send an Email to Team", - "SEND_EMAIL_TRANSCRIPT": "Send an Email Transcript", + "ASSIGN_AGENT": "Temsilciye Ata", + "ASSIGN_TEAM": "Bir Ekibe Ata", + "ADD_LABEL": "Etiket Ekle", + "REMOVE_LABEL": "Etiketi Kaldır", + "SEND_EMAIL_TO_TEAM": "Ekibe E-posta Gönder", + "SEND_EMAIL_TRANSCRIPT": "E-posta Dökümü Gönder", "MUTE_CONVERSATION": "Konuşmayı Sessize Al", "SNOOZE_CONVERSATION": "Konuşmayı Ertele", "RESOLVE_CONVERSATION": "Görüşmeyi çöz", - "SEND_WEBHOOK_EVENT": "Send Webhook Event", - "SEND_ATTACHMENT": "Send Attachment", - "SEND_MESSAGE": "Send a Message", + "SEND_WEBHOOK_EVENT": "Webhook Olayı Gönder", + "SEND_ATTACHMENT": "Ek Gönder", + "SEND_MESSAGE": "Mesaj Gönder", "CHANGE_PRIORITY": "Önceliği Değiştir", "ADD_SLA": "Add SLA" }, "ATTRIBUTES": { - "MESSAGE_TYPE": "Message Type", - "MESSAGE_CONTAINS": "Message Contains", + "MESSAGE_TYPE": "Mesaj Türü", + "MESSAGE_CONTAINS": "Mesaj İçerir", "EMAIL": "E-Posta", "INBOX": "Gelen Kutusu", - "CONVERSATION_LANGUAGE": "Conversation Language", + "CONVERSATION_LANGUAGE": "Sohbet Dili", "PHONE_NUMBER": "Telefon Numarası", "STATUS": "Durum", "BROWSER_LANGUAGE": "Tarayıcı Dili", - "MAIL_SUBJECT": "Email Subject", + "MAIL_SUBJECT": "E-posta Konusu", "COUNTRY_NAME": "Ülke", - "REFERER_LINK": "Referrer Link", + "REFERER_LINK": "Yönlendiren Bağlantı", "ASSIGNEE_NAME": "Assignee", "TEAM_NAME": "Ekip", "PRIORITY": "Öncelik" diff --git a/app/javascript/dashboard/i18n/locale/tr/components.json b/app/javascript/dashboard/i18n/locale/tr/components.json index c047c1c85..69b9ad42f 100644 --- a/app/javascript/dashboard/i18n/locale/tr/components.json +++ b/app/javascript/dashboard/i18n/locale/tr/components.json @@ -45,9 +45,9 @@ "WATCH_VIDEO": "Watch video" }, "DURATION_INPUT": { - "MINUTES": "Minutes", - "HOURS": "Hours", - "DAYS": "Days", - "PLACEHOLDER": "Enter duration" + "MINUTES": "Dakika", + "HOURS": "Saat", + "DAYS": "Gün", + "PLACEHOLDER": "Süre girin" } } diff --git a/app/javascript/dashboard/i18n/locale/tr/contact.json b/app/javascript/dashboard/i18n/locale/tr/contact.json index d7215d6ce..ec2724c03 100644 --- a/app/javascript/dashboard/i18n/locale/tr/contact.json +++ b/app/javascript/dashboard/i18n/locale/tr/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Kişiler", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Aktif kişiler", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Mesaj", "SEND_MESSAGE": "Mesajı Gönder", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "Bu işlem kalıcıdır ve geri alınamaz.", + "BUTTON": "Şimdi sil" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Kişiyi Sil", "DELETE_DIALOG": { "TITLE": "Silmeyi onayla", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Bu kişiyi silmek istediğinizden emin misiniz?", "CONFIRM": "Evet, Sil", "API": { "SUCCESS_MESSAGE": "Kişi başarıyla silindi", @@ -545,8 +550,8 @@ "YOU": "Sen", "SAVE": "Save note", "EXPAND": "Genişlet", - "COLLAPSE": "Collapse", - "NO_NOTES": "No notes, you can add notes from the contact details page.", + "COLLAPSE": "Daralt", + "NO_NOTES": "Not yok, kişi detayları sayfasından not ekleyebilirsiniz.", "EMPTY_STATE": "There are no notes associated to this contact. You can add a note by typing in the box above." } }, @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Aramanızla eşleşen kişi bulunamadı 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "Şu anda aktif kişi yok 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/tr/conversation.json b/app/javascript/dashboard/i18n/locale/tr/conversation.json index 9d2cccc35..e37ae0362 100644 --- a/app/javascript/dashboard/i18n/locale/tr/conversation.json +++ b/app/javascript/dashboard/i18n/locale/tr/conversation.json @@ -32,12 +32,12 @@ "LOADING_CONVERSATIONS": "Sohbetler Yükleniyor\n", "CANNOT_REPLY": "Nedeniyle cevap veremezsiniz", "24_HOURS_WINDOW": "24 saat mesaj penceresi kısıtlaması", - "API_HOURS_WINDOW": "You can only reply to this conversation within {hours} hours", + "API_HOURS_WINDOW": "Bu sohbete yalnızca {hours} saat içinde yanıt verebilirsiniz", "NOT_ASSIGNED_TO_YOU": "Bu görüşme size atanmamış. Bu konuşmayı kendinize atamak ister misiniz?", "ASSIGN_TO_ME": "Bana ata", "TWILIO_WHATSAPP_CAN_REPLY": "Bu konuşmaya yalnızca şablon mesaj kullanarak yanıt verebilirsiniz, çünkü", "TWILIO_WHATSAPP_24_HOURS_WINDOW": "24 saat mesaj penceresi kısıtlaması", - "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": "Bu Instagram hesabı yeni Instagram kanal gelen kutusuna taşındı. Tüm yeni mesajlar orada görünecek. Bu sohbetten artık mesaj gönderemezsiniz.", "REPLYING_TO": "Cevap veriyorsun:", "REMOVE_SELECTION": "Seçimi Kaldır", "DOWNLOAD": "İndir", @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Çözüldü", "REOPEN_ACTION": "Yeniden aç", "OPEN_ACTION": "Açık", + "MORE_ACTIONS": "Daha fazla işlem", "OPEN": "Devamı", "CLOSE": "Kapat", "DETAILS": "detaylar", @@ -117,6 +118,11 @@ "FAILED": "Öncelik değiştirilemedi. Lütfen tekrar deneyin." } }, + "DELETE_CONVERSATION": { + "TITLE": "#{conversationId} numaralı sohbeti sil", + "DESCRIPTION": "Bu sohbeti silmek istediğinizden emin misiniz?", + "CONFIRM": "Sil" + }, "CARD_CONTEXT_MENU": { "PENDING": "Beklemede olarak işaretle", "RESOLVED": "Çözüldü olarak işaretle", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Etiket ata", "AGENTS_LOADING": "Temsilciler Yükleniyor...", "ASSIGN_TEAM": "Takım ata", + "DELETE": "Sohbeti sil", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Sohbet kimliği {conversationId} \"{agentName}\" tarafından atanmış", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Etiket başarıyla atandı", "ASSIGN_LABEL_FAILED": "Etiket ataması yapılamadı", "CHANGE_TEAM": "Takım değişti", + "SUCCESS_DELETE_CONVERSATION": "Sohbet başarıyla silindi", + "FAIL_DELETE_CONVERSATION": "Sohbet silinemedi! Tekrar deneyin", "FILE_SIZE_LIMIT": "Dosya, {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB ek dosya sınırını aşıyor", "MESSAGE_ERROR": "Bu mesaj gönderilemiyor, lütfen daha sonra tekrar deneyin", "SENT_BY": "Tarafından gönderildi:", @@ -295,10 +304,11 @@ "CONVERSATION_ACTIONS": "Konuşma Eylemleri", "CONVERSATION_LABELS": "Konuşma Etiketleri", "CONVERSATION_INFO": "Konuşma Bilgisi", - "CONTACT_NOTES": "Contact Notes", + "CONTACT_NOTES": "Kişi Notları", "CONTACT_ATTRIBUTES": "İletişim Nitelikleri", "PREVIOUS_CONVERSATION": "Önceki Konuşmalar", "MACROS": "Kısayollar", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/tr/general.json b/app/javascript/dashboard/i18n/locale/tr/general.json index 862c4388a..57cbab2a8 100644 --- a/app/javascript/dashboard/i18n/locale/tr/general.json +++ b/app/javascript/dashboard/i18n/locale/tr/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Ara", "EMPTY_STATE": "Kayıt bulunamadı" - } + }, + "CLOSE": "Kapat" } } diff --git a/app/javascript/dashboard/i18n/locale/tr/generalSettings.json b/app/javascript/dashboard/i18n/locale/tr/generalSettings.json index a000921de..29f7f79bc 100644 --- a/app/javascript/dashboard/i18n/locale/tr/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/tr/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. Hacker plan allows only 2 agents.", - "NON_ADMIN": "Please contact your administrator to upgrade the plan and continue using all features." + "CONVERSATION": "Sohbet sınırını aştınız. Hacker planı yalnızca 500 sohbete izin verir.", + "INBOXES": "Gelen kutusu sınırını aştınız. Hacker planı yalnızca web sitesi canlı sohbetini destekler. E-posta, WhatsApp gibi ek gelen kutuları ücretli plan gerektirir.", + "AGENTS": "Temsilci sınırını aştınız. Hacker planı yalnızca 2 temsilciye izin verir.", + "NON_ADMIN": "Tüm özellikleri kullanmaya devam etmek için lütfen yöneticinizle iletişime geçin ve planı yükseltin." }, "TITLE": "Hesap Ayarları", "SUBMIT": "Ayarları Güncelle", @@ -15,23 +15,23 @@ "SUCCESS": "Hesap ayarları başarıyla güncellendi" }, "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": "Hesabınızı silin", + "NOTE": "Hesabınızı sildikten sonra tüm verileriniz silinecektir.", + "BUTTON_TEXT": "Hesabınızı Silin", "CONFIRM": { - "TITLE": "Delete Account", - "MESSAGE": "Deleting your Account is irreversible. Enter your account name below to confirm you want to permanently delete it.", + "TITLE": "Hesabı Sil", + "MESSAGE": "Hesabınızı silmek geri alınamaz. Kalıcı olarak silmek istediğinizi onaylamak için aşağıya hesap adınızı girin.", "BUTTON_TEXT": "Sil", "DISMISS": "İptal Et", "PLACE_HOLDER": "{accountName} yazarak onaylayın" }, - "SUCCESS": "Account marked for deletion", - "FAILURE": "Could not delete account, try again!", + "SUCCESS": "Hesap silinmek üzere işaretlendi", + "FAILURE": "Hesap silinemedi, tekrar deneyin!", "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": "Hesap silinmek üzere planlandı", + "MESSAGE_MANUAL": "Bu hesap {deletionDate} tarihinde silinmek üzere planlandı. Bu, bir yönetici tarafından talep edildi. Bu tarihten önce silmeyi iptal edebilirsiniz.", + "MESSAGE_INACTIVITY": "Bu hesap, hesap etkinliği olmadığı için {deletionDate} tarihinde silinmek üzere planlandı. Bu tarihten önce silmeyi iptal edebilirsiniz.", + "CLEAR_BUTTON": "Planlanan Silmeyi İptal Et" } }, "FORM": { @@ -45,8 +45,32 @@ "NOTE": "API tabanlı bir entegrasyon oluşturuyorsanız bu kimlik gereklidir" }, "AUTO_RESOLVE": { - "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "TITLE": "Sohbetleri otomatik çöz", + "NOTE": "Bu yapılandırma, belirli bir süre etkinlik olmadığında sohbeti otomatik olarak çözmenizi sağlar.", + "DURATION": { + "LABEL": "Etkinliksizlik süresi", + "HELP": "Sohbetin otomatik olarak çözüleceği etkinliksizlik süresi", + "PLACEHOLDER": "30", + "ERROR": "Otomatik çözme süresi 10 dakika ile 999 gün arasında olmalıdır", + "API": { + "SUCCESS": "Otomatik çözme ayarları başarıyla güncellendi", + "ERROR": "Otomatik çözme ayarları güncellenemedi" + } + }, + "MESSAGE": { + "LABEL": "Özel otomatik çözüm mesajı", + "PLACEHOLDER": "Sohbet, 15 gün etkinlik olmadığı için sistem tarafından çözüldü olarak işaretlendi", + "HELP": "Sohbet otomatik olarak çözüldükten sonra müşteriye gönderilen mesaj" + }, + "PREFERENCES": "Tercihler", + "LABEL": { + "LABEL": "Otomatik çözümden sonra etiket ekle", + "PLACEHOLDER": "Etiket seç" + }, + "IGNORE_WAITING": { + "LABEL": "Temsilci yanıtı bekleyen sohbetleri atla" + }, + "UPDATE_BUTTON": "Değişiklikleri Kaydet" }, "NAME": { "LABEL": "Hesap Adı", @@ -69,22 +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": "Yanıtsız sohbetleri hariç tut", + "HELP": "Etkinleştirildiğinde, sistem hâlâ temsilci yanıtı bekleyen sohbetleri çözmeyi atlayacaktır." + }, + "AUDIO_TRANSCRIPTION": { + "TITLE": "Sesli Mesajları Yazıya Döktür", + "NOTE": "Sohbetlerdeki sesli mesajları otomatik olarak yazıya dökün. Bir sesli mesaj gönderildiğinde veya alındığında bir metin dökümü oluşturun ve mesajın yanında gösterin.", + "API": { + "SUCCESS": "Sesli mesaj transkripsiyon ayarı başarıyla güncellendi", + "ERROR": "Sesli yazıya dökme ayarı güncellenemedi" + } }, "AUTO_RESOLVE_DURATION": { - "LABEL": "Inactivity duration for resolution", - "HELP": "Duration after a conversation should auto resolve if there is no activity", + "LABEL": "Çözüm için etkinliksizlik süresi", + "HELP": "Bir sohbette etkinlik yoksa otomatik çözüm için süre", "PLACEHOLDER": "30", - "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "ERROR": "Otomatik çözme süresi 10 dakika ile 999 gün arasında olmalıdır", "API": { - "SUCCESS": "Auto resolve settings updated successfully", - "ERROR": "Failed to update auto resolve settings" + "SUCCESS": "Otomatik çözme ayarları başarıyla güncellendi", + "ERROR": "Otomatik çözme ayarları güncellenemedi" }, "UPDATE_BUTTON": "Güncelleme", - "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": "Özel çözüm mesajı", + "MESSAGE_PLACEHOLDER": "Sohbet, 15 gün etkinlik olmadığı için sistem tarafından çözüldü olarak işaretlendi", + "MESSAGE_HELP": "Bu mesaj, bir sohbet sistem tarafından etkinliksizlik nedeniyle otomatik olarak çözüldüğünde müşteriye gönderilir." }, "FEATURES": { "INBOUND_EMAIL_ENABLED": "Hesabınız için e-posta ile iletişim devre dışı bırakıldı.", @@ -94,7 +126,7 @@ "UPDATE_CHATWOOT": "{latestChatwootVersion} chatwoot sürümü indirilebilir. Lütfen sürümü güncelleyin.", "LEARN_MORE": "Daha Fazla", "PAYMENT_PENDING": "Ödemeniz bekliyor. Devam etmek için ödeme bilgilerinizi güncelleyin.", - "UPGRADE": "Upgrade to continue using Chatwoot", + "UPGRADE": "Chatwoot'u kullanmaya devam etmek için yükseltin", "LIMITS_UPGRADE": "Hesabınız kullanım sınırlarını aştı, lütfen Chatwoot'u kullanmaya devam etmek için planınızı yükseltin", "OPEN_BILLING": "Fatura Detayları" }, diff --git a/app/javascript/dashboard/i18n/locale/tr/helpCenter.json b/app/javascript/dashboard/i18n/locale/tr/helpCenter.json index 27f34eb8e..2ab2b274d 100644 --- a/app/javascript/dashboard/i18n/locale/tr/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/tr/helpCenter.json @@ -697,7 +697,7 @@ "LABEL": "Slug", "PLACEHOLDER": "user-guide", "ERROR": "Slug gereklidir", - "FORMAT_ERROR": "Please enter a valid slug, for eg: user-guide" + "FORMAT_ERROR": "Lütfen geçerli bir kısa ad girin, örn: kullanici-rehberi" } }, "PORTAL_SETTINGS": { diff --git a/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json index eb08fec89..7291523dc 100644 --- a/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json @@ -47,13 +47,13 @@ "CREATE_INBOX": "Gelen Kutusu Oluştur" }, "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": "Instagram ile devam et", + "CONNECT_YOUR_INSTAGRAM_PROFILE": "Instagram profilinizi bağlayın", + "HELP": "Bu Instagram hesabı yeni Instagram kanal gelen kutusuna taşındı. Artık bu gelen kutusundan Instagram mesajı gönderip alamayacaksınız ", + "ERROR_MESSAGE": "Instagram'a bağlanırken bir hata oluştu, lütfen tekrar deneyin", + "ERROR_AUTH": "Instagram'a bağlanırken bir hata oluştu, lütfen tekrar deneyin", + "NEW_INBOX_SUGGESTION": "Bu Instagram hesabı daha önce farklı bir gelen kutusuna bağlıydı ve şimdi buraya taşındı. Tüm yeni mesajlar burada görünecek. Eski gelen kutusu artık bu hesap için mesaj gönderip alamayacak.", + "DUPLICATE_INBOX_BANNER": "Bu Instagram hesabı yeni Instagram kanal gelen kutusuna taşındı. Artık bu gelen kutusundan Instagram mesajı gönderip alamayacaksınız." }, "TWITTER": { "HELP": "Twitter profilinizi bir kanal olarak eklemek için, 'Twitter ile Giriş Yap'ı tıklayarak Twitter Profilinizi doğrulamanız gerekir.", @@ -579,28 +579,28 @@ }, "CSAT": { "TITLE": "CSAT'yi etkinleştir", - "SUBTITLE": "Automatically trigger CSAT surveys at the end of conversations to understand how customers feel about their support experience. Track satisfaction trends and identify areas for improvement over time.", + "SUBTITLE": "Müşterilerin destek deneyimleri hakkında ne hissettiklerini anlamak için sohbetlerin sonunda otomatik olarak CSAT anketleri başlatın. Memnuniyet eğilimlerini takip edin ve zaman içinde iyileştirme alanlarını belirleyin.", "DISPLAY_TYPE": { - "LABEL": "Display type" + "LABEL": "Görüntüleme türü" }, "MESSAGE": { "LABEL": "Mesaj", - "PLACEHOLDER": "Please enter a message to show users with the form" + "PLACEHOLDER": "Form ile kullanıcılara göstermek için bir mesaj girin" }, "SURVEY_RULE": { - "LABEL": "Survey rule", - "DESCRIPTION_PREFIX": "Send the survey if the conversation", - "DESCRIPTION_SUFFIX": "any of the labels", + "LABEL": "Anket kuralı", + "DESCRIPTION_PREFIX": "Sohbet olursa anketi gönder", + "DESCRIPTION_SUFFIX": "etiketlerden herhangi biri", "OPERATOR": { "CONTAINS": "i̇çerir", "DOES_NOT_CONTAINS": "i̇çermez" }, - "SELECT_PLACEHOLDER": "select labels" + "SELECT_PLACEHOLDER": "etiketleri seç" }, - "NOTE": "Note: CSAT surveys are sent only once per conversation", + "NOTE": "Not: CSAT anketleri her sohbet için yalnızca bir kez gönderilir", "API": { - "SUCCESS_MESSAGE": "CSAT settings updated successfully", - "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." + "SUCCESS_MESSAGE": "CSAT ayarları başarıyla güncellendi", + "ERROR_MESSAGE": "CSAT ayarları güncellenemedi. Lütfen daha sonra tekrar deneyin." } }, "BUSINESS_HOURS": { diff --git a/app/javascript/dashboard/i18n/locale/tr/integrations.json b/app/javascript/dashboard/i18n/locale/tr/integrations.json index d2e0426a9..12c7fc99c 100644 --- a/app/javascript/dashboard/i18n/locale/tr/integrations.json +++ b/app/javascript/dashboard/i18n/locale/tr/integrations.json @@ -42,8 +42,8 @@ "WEBWIDGET_TRIGGERED": "Kullanıcı tarafından canlı sohbet widget'ı açıldı", "CONTACT_CREATED": "Kişi Oluşturuldu", "CONTACT_UPDATED": "Kişi Güncellendi", - "CONVERSATION_TYPING_ON": "Conversation Typing On", - "CONVERSATION_TYPING_OFF": "Conversation Typing Off" + "CONVERSATION_TYPING_ON": "Sohbet Yazıyor Açık", + "CONVERSATION_TYPING_OFF": "Sohbet Yazıyor Kapalı" } }, "END_POINT": { @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Evet, sil", "CANCEL": "İptal Et" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,25 +337,38 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Copilot ile başlayın", + "KICK_OFF_MESSAGE": "Hızlı bir özet mi lazım, geçmiş sohbetleri mi kontrol etmek istiyorsunuz ya da daha iyi bir yanıt mı yazmak istiyorsunuz? Copilot işleri hızlandırmak için burada.", "SEND_MESSAGE": "Mesajı Gönder...", - "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", + "EMPTY_MESSAGE": "Yanıt oluşturulurken bir hata oluştu. Lütfen tekrar deneyin.", "LOADER": "Captain is thinking", "YOU": "Sen", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Adımları göster", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { - "LABEL": "Summarize this conversation", - "CONTENT": "Summarize the key points discussed between the customer and the support agent, including the customer's concerns, questions, and the solutions or responses provided by the support agent" + "LABEL": "Bu sohbeti özetle", + "CONTENT": "Müşteri ile destek temsilcisi arasında tartışılan ana noktaları özetle; müşterinin endişeleri, soruları ve temsilcinin sunduğu çözümler veya yanıtlar dahil" }, "SUGGEST": { - "LABEL": "Suggest an answer", - "CONTENT": "Analyze the customer's inquiry, and draft a response that effectively addresses their concerns or questions. Ensure the reply is clear, concise, and provides helpful information." + "LABEL": "Bir yanıt öner", + "CONTENT": "Müşterinin sorusunu analiz edin ve endişelerini veya sorularını etkili bir şekilde ele alan bir yanıt taslağı oluşturun. Yanıtın açık, öz ve bilgilendirici olmasını sağlayın." }, "RATE": { - "LABEL": "Rate this conversation", - "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + "LABEL": "Bu sohbeti değerlendir", + "CONTENT": "Sohbetin müşterinin ihtiyaçlarını ne kadar karşıladığını gözden geçirin. Ton, açıklık ve etkililik açısından 5 üzerinden bir puan verin." + }, + "HIGH_PRIORITY": { + "LABEL": "Yüksek öncelikli sohbetler", + "CONTENT": "Tüm yüksek öncelikli açık sohbetlerin bir özetini verin. Sohbet kimliği, müşteri adı (varsa), son mesaj içeriği ve atanan temsilciyi ekleyin. Gerekirse duruma göre gruplayın." + }, + "LIST_CONTACTS": { + "LABEL": "Kişileri listele", + "CONTENT": "İlk 10 kişiyi göster. Ad, e-posta veya telefon numarası (varsa), son görülme zamanı ve etiketler (varsa) dahil olsun." } } }, @@ -356,9 +376,9 @@ "USER": "Sen", "ASSISTANT": "Assistant", "MESSAGE_PLACEHOLDER": "Mesajınız...", - "HEADER": "Playground", - "DESCRIPTION": "Use this playground to send messages to your assistant and check if it responds accurately, quickly, and in the tone you expect.", - "CREDIT_NOTE": "Messages sent here will count toward your Captain credits." + "HEADER": "Oyun Alanı", + "DESCRIPTION": "Bu oyun alanını asistanınıza mesaj göndermek ve yanıtlarının doğru, hızlı ve beklediğiniz tonda olup olmadığını kontrol etmek için kullanın.", + "CREDIT_NOTE": "Buradan gönderilen mesajlar Captain kredilerinize sayılacaktır." }, "PAYWALL": { "TITLE": "Upgrade to use Captain AI", @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "Hesabınızda kullanılabilir asistan yok.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -400,42 +420,46 @@ "FORM": { "UPDATE": "Güncelleme", "SECTIONS": { - "BASIC_INFO": "Basic Information", - "SYSTEM_MESSAGES": "System Messages", - "INSTRUCTIONS": "Instructions", + "BASIC_INFO": "Temel Bilgiler", + "SYSTEM_MESSAGES": "Sistem Mesajları", + "INSTRUCTIONS": "Talimatlar", "FEATURES": "Özellikleri", - "TOOLS": "Tools " + "TOOLS": "Araçlar " }, "NAME": { "LABEL": "İsim", - "PLACEHOLDER": "Enter assistant name", - "ERROR": "The name is required" + "PLACEHOLDER": "Asistan adını girin", + "ERROR": "Ad gereklidir" + }, + "TEMPERATURE": { + "LABEL": "Yanıt Sıcaklığı", + "DESCRIPTION": "Asistanın yanıtlarının ne kadar yaratıcı veya kısıtlayıcı olması gerektiğini ayarlayın. Düşük değerler daha odaklı ve deterministik yanıtlar üretir, yüksek değerler ise daha yaratıcı ve çeşitli yanıtlar sağlar." }, "DESCRIPTION": { "LABEL": "Açıklama", - "PLACEHOLDER": "Enter assistant description", - "ERROR": "The description is required" + "PLACEHOLDER": "Asistan açıklamasını girin", + "ERROR": "Açıklama gereklidir" }, "PRODUCT_NAME": { "LABEL": "Product Name", - "PLACEHOLDER": "Enter product name", + "PLACEHOLDER": "Ürün adını girin", "ERROR": "The product name is required" }, "WELCOME_MESSAGE": { - "LABEL": "Welcome Message", - "PLACEHOLDER": "Enter welcome message" + "LABEL": "Karşılama Mesajı", + "PLACEHOLDER": "Karşılama mesajı girin" }, "HANDOFF_MESSAGE": { - "LABEL": "Handoff Message", - "PLACEHOLDER": "Enter handoff message" + "LABEL": "Aktarım Mesajı", + "PLACEHOLDER": "Aktarım mesajı girin" }, "RESOLUTION_MESSAGE": { - "LABEL": "Resolution Message", - "PLACEHOLDER": "Enter resolution message" + "LABEL": "Çözüm Mesajı", + "PLACEHOLDER": "Çözüm mesajı girin" }, "INSTRUCTIONS": { - "LABEL": "Instructions", - "PLACEHOLDER": "Enter instructions for the assistant" + "LABEL": "Talimatlar", + "PLACEHOLDER": "Asistan için talimatları girin" }, "FEATURES": { "TITLE": "Özellikleri", @@ -447,7 +471,7 @@ "TITLE": "Update the assistant", "SUCCESS_MESSAGE": "The assistant has been successfully updated", "ERROR_MESSAGE": "There was an error updating the assistant, please try again.", - "NOT_FOUND": "Could not find the assistant. Please try again." + "NOT_FOUND": "Asistan bulunamadı. Lütfen tekrar deneyin." }, "OPTIONS": { "EDIT_ASSISTANT": "Edit Assistant", diff --git a/app/javascript/dashboard/i18n/locale/tr/macros.json b/app/javascript/dashboard/i18n/locale/tr/macros.json index 4d6e7a079..8535a86ab 100644 --- a/app/javascript/dashboard/i18n/locale/tr/macros.json +++ b/app/javascript/dashboard/i18n/locale/tr/macros.json @@ -85,20 +85,20 @@ "ATLEAST_ONE_ACTION_REQUIRED": "En az bir eylem gereklidir" }, "ACTIONS": { - "ASSIGN_TEAM": "Assign a Team", - "ASSIGN_AGENT": "Assign an Agent", - "ADD_LABEL": "Add a Label", - "REMOVE_LABEL": "Remove a Label", - "REMOVE_ASSIGNED_TEAM": "Remove Assigned Team", - "SEND_EMAIL_TRANSCRIPT": "Send an Email Transcript", + "ASSIGN_TEAM": "Bir Ekibe Ata", + "ASSIGN_AGENT": "Bir Temsilci Ata", + "ADD_LABEL": "Etiket Ekle", + "REMOVE_LABEL": "Etiketi Kaldır", + "REMOVE_ASSIGNED_TEAM": "Atanan Ekibi Kaldır", + "SEND_EMAIL_TRANSCRIPT": "E-posta Dökümü Gönder", "MUTE_CONVERSATION": "Konuşmayı Sessize Al", "SNOOZE_CONVERSATION": "Konuşmayı Ertele", "RESOLVE_CONVERSATION": "Görüşmeyi çöz", - "SEND_ATTACHMENT": "Send Attachment", - "SEND_MESSAGE": "Send a Message", + "SEND_ATTACHMENT": "Ek Gönder", + "SEND_MESSAGE": "Mesaj Gönder", "CHANGE_PRIORITY": "Önceliği Değiştir", - "ADD_PRIVATE_NOTE": "Add a Private Note", - "SEND_WEBHOOK_EVENT": "Send Webhook Event" + "ADD_PRIVATE_NOTE": "Özel Bir Not Ekle", + "SEND_WEBHOOK_EVENT": "Webhook Olayı Gönder" } } } diff --git a/app/javascript/dashboard/i18n/locale/tr/report.json b/app/javascript/dashboard/i18n/locale/tr/report.json index 43f21de81..496a82156 100644 --- a/app/javascript/dashboard/i18n/locale/tr/report.json +++ b/app/javascript/dashboard/i18n/locale/tr/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Etiketler Genel Bakış", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Grafik verileri yükleniyor...", "NO_ENOUGH_DATA": "Rapor oluşturmak için yeterli veri yok, Lütfen daha sonra tekrar deneyin.", "DOWNLOAD_LABEL_REPORTS": "Etiket raporlarını indir", @@ -559,6 +560,7 @@ "INBOX": "Gelen Kutusu", "AGENT": "Kullanıcı", "TEAM": "Ekip", + "LABEL": "Etiket", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/tr/search.json b/app/javascript/dashboard/i18n/locale/tr/search.json index 56c53f3d6..ef7724c88 100644 --- a/app/javascript/dashboard/i18n/locale/tr/search.json +++ b/app/javascript/dashboard/i18n/locale/tr/search.json @@ -4,12 +4,14 @@ "ALL": "Hepsi", "CONTACTS": "Kişiler", "CONVERSATIONS": "Konuşmalar", - "MESSAGES": "Mesajlar" + "MESSAGES": "Mesajlar", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Kişiler", "CONVERSATIONS": "Konuşmalar", - "MESSAGES": "Mesajlar" + "MESSAGES": "Mesajlar", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/tr/settings.json b/app/javascript/dashboard/i18n/locale/tr/settings.json index bfd8bc041..57c563da6 100644 --- a/app/javascript/dashboard/i18n/locale/tr/settings.json +++ b/app/javascript/dashboard/i18n/locale/tr/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Erişim Jetonu", "NOTE": "Bu simge, API tabanlı bir entegrasyon oluşturuyorsanız kullanılabilir", - "COPY": "Kopyala" + "COPY": "Kopyala", + "RESET": "Reset", + "CONFIRM_RESET": "Emin misiniz?", + "CONFIRM_HINT": "Onaylamak için tekrar tıklayın", + "RESET_SUCCESS": "Erişim anahtarı başarıyla yeniden oluşturuldu", + "RESET_ERROR": "Erişim anahtarı yeniden oluşturulamadı. Lütfen tekrar deneyin" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Sesli Uyarılar", @@ -185,7 +190,8 @@ "OFFLINE": "Çevrimdışı" }, "SET_AVAILABILITY_SUCCESS": "Uygunluk başarıyla ayarlandı", - "SET_AVAILABILITY_ERROR": "Uygunluk ayarlanamadı, lütfen tekrar deneyin" + "SET_AVAILABILITY_ERROR": "Uygunluk ayarlanamadı, lütfen tekrar deneyin", + "IMPERSONATING_ERROR": "Bir kullanıcıyı taklit ederken kullanılabilirlik değiştirilemez" }, "EMAIL": { "LABEL": "E-posta Adresiniz", @@ -280,6 +286,7 @@ "REPORTS": "Raporlar", "SETTINGS": "Ayarlar", "CONTACTS": "Kişiler", + "ACTIVE": "Aktif", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/uk/agentBots.json b/app/javascript/dashboard/i18n/locale/uk/agentBots.json index 2b21dc139..5bdd49dd8 100644 --- a/app/javascript/dashboard/i18n/locale/uk/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/uk/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Не вдалося оновити бота. Будь ласка, спробуйте ще раз." } }, + "ACCESS_TOKEN": { + "TITLE": "Ключ доступу", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/uk/auditLogs.json b/app/javascript/dashboard/i18n/locale/uk/auditLogs.json index fb5f40c72..6f05f716c 100644 --- a/app/javascript/dashboard/i18n/locale/uk/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/uk/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/uk/contact.json b/app/javascript/dashboard/i18n/locale/uk/contact.json index de1ae547e..ba4239dcf 100644 --- a/app/javascript/dashboard/i18n/locale/uk/contact.json +++ b/app/javascript/dashboard/i18n/locale/uk/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Контакти", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Текст повідомлення", "SEND_MESSAGE": "Надіслати", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Видалити контакт", "DELETE_DIALOG": { "TITLE": "Підтвердження видалення", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Так, видалити", "API": { "SUCCESS_MESSAGE": "Кампанію успішно видалено", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Немає контактів, які відповідають вашому пошуку 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/uk/conversation.json b/app/javascript/dashboard/i18n/locale/uk/conversation.json index b1b0434f0..192acf812 100644 --- a/app/javascript/dashboard/i18n/locale/uk/conversation.json +++ b/app/javascript/dashboard/i18n/locale/uk/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Вирішити", "REOPEN_ACTION": "Відкрити знову", "OPEN_ACTION": "Відкриті", + "MORE_ACTIONS": "More actions", "OPEN": "Ще", "CLOSE": "Закрити", "DETAILS": "подробиці", @@ -117,6 +118,11 @@ "FAILED": "Не вдалося змінити пріоритет. Будь ласка, спробуйте ще раз." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Видалити" + }, "CARD_CONTEXT_MENU": { "PENDING": "Позначити як \"В очікуванні\"", "RESOLVED": "Позначити як вирішене", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Призначити мітку", "AGENTS_LOADING": "Завантаження агентів...", "ASSIGN_TEAM": "Призначити команду", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Ідентифікатор розмови {conversationId} призначено для \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Мітка успішно призначена", "ASSIGN_LABEL_FAILED": "Призначення мітки не вдалося", "CHANGE_TEAM": "Команда змінена", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Файл перевищує максимальний розмір вкладень {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} МБ", "MESSAGE_ERROR": "Не вдалося надіслати повідомлення, будь ласка, повторіть спробу пізніше", "SENT_BY": "Надіслав:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Атрибути контакту", "PREVIOUS_CONVERSATION": "Попередні бесіди", "MACROS": "Макрос", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/uk/general.json b/app/javascript/dashboard/i18n/locale/uk/general.json index 4b8be2403..5215dd837 100644 --- a/app/javascript/dashboard/i18n/locale/uk/general.json +++ b/app/javascript/dashboard/i18n/locale/uk/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Пошук", "EMPTY_STATE": "Результатів не знайдено" - } + }, + "CLOSE": "Закрити" } } diff --git a/app/javascript/dashboard/i18n/locale/uk/generalSettings.json b/app/javascript/dashboard/i18n/locale/uk/generalSettings.json index 1e166b3d0..7f2440d0a 100644 --- a/app/javascript/dashboard/i18n/locale/uk/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/uk/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Налаштування", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Назва облікового запису", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/uk/integrations.json b/app/javascript/dashboard/i18n/locale/uk/integrations.json index a13516cd8..619a3fff0 100644 --- a/app/javascript/dashboard/i18n/locale/uk/integrations.json +++ b/app/javascript/dashboard/i18n/locale/uk/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Так, видалити", "CANCEL": "Скасувати" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Надіслати...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "Ви", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "Ви можете змінити або скасувати план у будь-який час" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Будь ласка, зверніться до адміністратора для оновлення." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Опис", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/uk/report.json b/app/javascript/dashboard/i18n/locale/uk/report.json index bf5978d63..f15f5065b 100644 --- a/app/javascript/dashboard/i18n/locale/uk/report.json +++ b/app/javascript/dashboard/i18n/locale/uk/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Огляд міток", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Завантаження даних діаграми...", "NO_ENOUGH_DATA": "Ми не отримали достатньо даних для генерації звіту. Будь ласка, спробуйте ще раз пізніше.", "DOWNLOAD_LABEL_REPORTS": "Завантажити звіти по міткам", @@ -559,6 +560,7 @@ "INBOX": "Вхідні", "AGENT": "Агент", "TEAM": "Команда", + "LABEL": "Мітка", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/uk/search.json b/app/javascript/dashboard/i18n/locale/uk/search.json index 21a437522..86c6ae9c1 100644 --- a/app/javascript/dashboard/i18n/locale/uk/search.json +++ b/app/javascript/dashboard/i18n/locale/uk/search.json @@ -4,12 +4,14 @@ "ALL": "Всі", "CONTACTS": "Контакти", "CONVERSATIONS": "Бесіди", - "MESSAGES": "Текст повідомлень" + "MESSAGES": "Текст повідомлень", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Контакти", "CONVERSATIONS": "Бесіди", - "MESSAGES": "Текст повідомлень" + "MESSAGES": "Текст повідомлень", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/uk/settings.json b/app/javascript/dashboard/i18n/locale/uk/settings.json index b89d26590..c8f3dee00 100644 --- a/app/javascript/dashboard/i18n/locale/uk/settings.json +++ b/app/javascript/dashboard/i18n/locale/uk/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Ключ доступу", "NOTE": "Цей ключ можна використовувати, якщо ви створюєте API-інтеграцію", - "COPY": "Копіювати" + "COPY": "Копіювати", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Не в мережі" }, "SET_AVAILABILITY_SUCCESS": "Доступу успішно встановлено", - "SET_AVAILABILITY_ERROR": "Не вдалося налаштувати доступність, будь ласка, спробуйте ще раз" + "SET_AVAILABILITY_ERROR": "Не вдалося налаштувати доступність, будь ласка, спробуйте ще раз", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Ваша адреса електронної пошти", @@ -280,6 +286,7 @@ "REPORTS": "Звіти", "SETTINGS": "Налаштування", "CONTACTS": "Контакти", + "ACTIVE": "Активний", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ur/agentBots.json b/app/javascript/dashboard/i18n/locale/ur/agentBots.json index 3d8b3d107..e1cc3800d 100644 --- a/app/javascript/dashboard/i18n/locale/ur/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ur/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ur/auditLogs.json b/app/javascript/dashboard/i18n/locale/ur/auditLogs.json index 2896de8d5..8166e3717 100644 --- a/app/javascript/dashboard/i18n/locale/ur/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ur/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ur/contact.json b/app/javascript/dashboard/i18n/locale/ur/contact.json index afe8c5153..249c1b013 100644 --- a/app/javascript/dashboard/i18n/locale/ur/contact.json +++ b/app/javascript/dashboard/i18n/locale/ur/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "کانٹیکٹس", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "پیغام", "SEND_MESSAGE": "پیغام بھیجیں", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "کانٹیکٹ حذف کریں۔", "DELETE_DIALOG": { "TITLE": "حذف کرنے کی تصدیق کریں۔", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "ہاں، حذف کریں۔ ", "API": { "SUCCESS_MESSAGE": "کانٹیکٹ کامیابی سے حذف ہو گیا۔", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "کوئی کانٹیکٹ آپ کی تلاش سے میل نہیں کھاتا 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ur/conversation.json b/app/javascript/dashboard/i18n/locale/ur/conversation.json index 6520995b1..0078f4b5b 100644 --- a/app/javascript/dashboard/i18n/locale/ur/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ur/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "حل کریں۔", "REOPEN_ACTION": "دوبارہ کھولیں۔", "OPEN_ACTION": "کھولیں۔", + "MORE_ACTIONS": "More actions", "OPEN": "مزید", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "حذف کریں۔" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "پچھلی بات چیت", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ur/general.json b/app/javascript/dashboard/i18n/locale/ur/general.json index 795daa26e..92475863a 100644 --- a/app/javascript/dashboard/i18n/locale/ur/general.json +++ b/app/javascript/dashboard/i18n/locale/ur/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "تلاش کریں۔", "EMPTY_STATE": "کوئی نتیجہ نہیں" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/ur/generalSettings.json b/app/javascript/dashboard/i18n/locale/ur/generalSettings.json index e0bee9f65..b41fc07a2 100644 --- a/app/javascript/dashboard/i18n/locale/ur/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ur/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ur/integrations.json b/app/javascript/dashboard/i18n/locale/ur/integrations.json index 6e3f11061..aa18160a1 100644 --- a/app/javascript/dashboard/i18n/locale/ur/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ur/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "منسوخ کریں۔" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "پیغام بھیجیں...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ur/report.json b/app/javascript/dashboard/i18n/locale/ur/report.json index 0e456b5cd..37d8dc796 100644 --- a/app/javascript/dashboard/i18n/locale/ur/report.json +++ b/app/javascript/dashboard/i18n/locale/ur/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "ان باکس", "AGENT": "ایجنٹ", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ur/search.json b/app/javascript/dashboard/i18n/locale/ur/search.json index 1641a1ee3..bf0da44ef 100644 --- a/app/javascript/dashboard/i18n/locale/ur/search.json +++ b/app/javascript/dashboard/i18n/locale/ur/search.json @@ -4,12 +4,14 @@ "ALL": "تمام", "CONTACTS": "کانٹیکٹس", "CONVERSATIONS": "مکالمات", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "کانٹیکٹس", "CONVERSATIONS": "مکالمات", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ur/settings.json b/app/javascript/dashboard/i18n/locale/ur/settings.json index 93c90b9bf..cceb0facb 100644 --- a/app/javascript/dashboard/i18n/locale/ur/settings.json +++ b/app/javascript/dashboard/i18n/locale/ur/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "کانٹیکٹس", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/agentBots.json b/app/javascript/dashboard/i18n/locale/ur_IN/agentBots.json index 128cd1564..d3a0bb991 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Access Token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/auditLogs.json b/app/javascript/dashboard/i18n/locale/ur_IN/auditLogs.json index 35c054fa2..df236f5b5 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/contact.json b/app/javascript/dashboard/i18n/locale/ur_IN/contact.json index 476a69196..38489d630 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/contact.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Contacts", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "Message", "SEND_MESSAGE": "Send message", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Delete contact", "DELETE_DIALOG": { "TITLE": "Confirm Deletion", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Yes, Delete", "API": { "SUCCESS_MESSAGE": "Contact deleted successfully", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json b/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json index da2f64b01..c047f17ad 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Resolve", "REOPEN_ACTION": "Reopen", "OPEN_ACTION": "Open", + "MORE_ACTIONS": "More actions", "OPEN": "More", "CLOSE": "Close", "DETAILS": "details", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Delete" + }, "CARD_CONTEXT_MENU": { "PENDING": "Mark as pending", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Contact Attributes", "PREVIOUS_CONVERSATION": "Previous Conversations", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/general.json b/app/javascript/dashboard/i18n/locale/ur_IN/general.json index 78e97db90..129fb239a 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/general.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Search", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "Close" } } diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/generalSettings.json b/app/javascript/dashboard/i18n/locale/ur_IN/generalSettings.json index 7da76df18..c0c4d247d 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Account name", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json b/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json index e57ecb7cd..4eb1343cb 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Yes, delete", "CANCEL": "Cancel" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Send message...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Description", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/report.json b/app/javascript/dashboard/i18n/locale/ur_IN/report.json index e176d9147..18f1ed14b 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/report.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "Inbox", "AGENT": "Agent", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/search.json b/app/javascript/dashboard/i18n/locale/ur_IN/search.json index 3cb566813..e8510ab97 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/search.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/search.json @@ -4,12 +4,14 @@ "ALL": "All", "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Contacts", "CONVERSATIONS": "Conversations", - "MESSAGES": "Messages" + "MESSAGES": "Messages", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/settings.json b/app/javascript/dashboard/i18n/locale/ur_IN/settings.json index 4be80dba1..6a9cbf229 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/settings.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Access Token", "NOTE": "This token can be used if you are building an API based integration", - "COPY": "Copy" + "COPY": "Copy", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Offline" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Your email address", @@ -280,6 +286,7 @@ "REPORTS": "Reports", "SETTINGS": "Settings", "CONTACTS": "Contacts", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/vi/agentBots.json b/app/javascript/dashboard/i18n/locale/vi/agentBots.json index f9444a420..a001515bf 100644 --- a/app/javascript/dashboard/i18n/locale/vi/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/vi/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "Could not update bot. Please try again." } }, + "ACCESS_TOKEN": { + "TITLE": "Token truy cập", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/vi/auditLogs.json b/app/javascript/dashboard/i18n/locale/vi/auditLogs.json index 4f5eb0c9a..5f120867e 100644 --- a/app/javascript/dashboard/i18n/locale/vi/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/vi/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/vi/contact.json b/app/javascript/dashboard/i18n/locale/vi/contact.json index f83818461..384923580 100644 --- a/app/javascript/dashboard/i18n/locale/vi/contact.json +++ b/app/javascript/dashboard/i18n/locale/vi/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "Liên hệ", "SEARCH_TITLE": "Tìm kiếm liên hệ", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Tìm kiếm...", "MESSAGE_BUTTON": "Tin nhắn", "SEND_MESSAGE": "Gửi tin nhắn", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "Xoá liên hệ", "DELETE_DIALOG": { "TITLE": "Xác nhận xoá", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "Có, Xoá", "API": { "SUCCESS_MESSAGE": "Liên hệ đã được xóa thành công", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "Không có liên hệ nào khớp với tìm kiếm của bạn 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/vi/conversation.json b/app/javascript/dashboard/i18n/locale/vi/conversation.json index c8363b3a1..50b5edea3 100644 --- a/app/javascript/dashboard/i18n/locale/vi/conversation.json +++ b/app/javascript/dashboard/i18n/locale/vi/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "Giải quyết", "REOPEN_ACTION": "Mở lại", "OPEN_ACTION": "Mở", + "MORE_ACTIONS": "More actions", "OPEN": "Nhiều", "CLOSE": "Đóng", "DETAILS": "chi tiết", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "Xoá" + }, "CARD_CONTEXT_MENU": { "PENDING": "Đánh dấu chưa giải quyết", "RESOLVED": "Đánh dấu là đã giải quyết", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Gán nhãn", "AGENTS_LOADING": "Đang tải điện thoại viên...", "ASSIGN_TEAM": "Gán nhóm", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Id hội thoại {conversationId} được gán cho \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Đã gán nhãn thành công", "ASSIGN_LABEL_FAILED": "Gán nhãn không thành công", "CHANGE_TEAM": "Nhóm hội thoại đã được thay đổi", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Tệp vượt quá {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB mức hạn chế", "MESSAGE_ERROR": "Không thể gửi tin nhắn này, vui lòng thử lại sau", "SENT_BY": "Gửi bởi:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "Thuộc tính của liên hệ", "PREVIOUS_CONVERSATION": "Cuộc trò chuyện trước đó", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/vi/general.json b/app/javascript/dashboard/i18n/locale/vi/general.json index fa77eaf0f..52b5d2d2c 100644 --- a/app/javascript/dashboard/i18n/locale/vi/general.json +++ b/app/javascript/dashboard/i18n/locale/vi/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "Tìm kiếm", "EMPTY_STATE": "Không tìm thấy kết quả" - } + }, + "CLOSE": "Đóng" } } diff --git a/app/javascript/dashboard/i18n/locale/vi/generalSettings.json b/app/javascript/dashboard/i18n/locale/vi/generalSettings.json index 14332c848..39db9df91 100644 --- a/app/javascript/dashboard/i18n/locale/vi/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/vi/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "Tên tài khoản", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/vi/integrations.json b/app/javascript/dashboard/i18n/locale/vi/integrations.json index 6d50f75dc..53a9d6997 100644 --- a/app/javascript/dashboard/i18n/locale/vi/integrations.json +++ b/app/javascript/dashboard/i18n/locale/vi/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "Có, xoá", "CANCEL": "Huỷ" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "Gửi tin nhắn...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "Mô tả", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/vi/report.json b/app/javascript/dashboard/i18n/locale/vi/report.json index 3722dacd0..d6f282a3a 100644 --- a/app/javascript/dashboard/i18n/locale/vi/report.json +++ b/app/javascript/dashboard/i18n/locale/vi/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Tổng quan nhãn", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "Đang tải các biểu đồ dữ liệu...", "NO_ENOUGH_DATA": "Chúng tôi không nhận được đủ điểm dữ liệu để tạo báo cáo, Vui lòng thử lại sau.", "DOWNLOAD_LABEL_REPORTS": "Tải xuống báo cáo nhãn", @@ -559,6 +560,7 @@ "INBOX": "Hộp thư đến", "AGENT": "Nhà cung cấp", "TEAM": "Nhóm", + "LABEL": "Nhãn", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/vi/search.json b/app/javascript/dashboard/i18n/locale/vi/search.json index 1504f5025..c9155c953 100644 --- a/app/javascript/dashboard/i18n/locale/vi/search.json +++ b/app/javascript/dashboard/i18n/locale/vi/search.json @@ -4,12 +4,14 @@ "ALL": "Tất cả", "CONTACTS": "Danh bạ", "CONVERSATIONS": "Các cuộc hội thoại", - "MESSAGES": "Tin nhắn" + "MESSAGES": "Tin nhắn", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "Danh bạ", "CONVERSATIONS": "Các cuộc hội thoại", - "MESSAGES": "Tin nhắn" + "MESSAGES": "Tin nhắn", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/vi/settings.json b/app/javascript/dashboard/i18n/locale/vi/settings.json index 7f39c61c0..8933ff6f7 100644 --- a/app/javascript/dashboard/i18n/locale/vi/settings.json +++ b/app/javascript/dashboard/i18n/locale/vi/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "Token truy cập", "NOTE": "Có thể sử dụng Token này nếu bạn đang xây dựng tích hợp dựa trên API", - "COPY": "Sao Chép" + "COPY": "Sao Chép", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Audio Alerts", @@ -185,7 +190,8 @@ "OFFLINE": "Không Trực Tuyến" }, "SET_AVAILABILITY_SUCCESS": "Tính khả dụng đã được thiết lập thành công", - "SET_AVAILABILITY_ERROR": "Không thể đặt, vui lòng thử lại" + "SET_AVAILABILITY_ERROR": "Không thể đặt, vui lòng thử lại", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "Địa chỉ email của bạn", @@ -280,6 +286,7 @@ "REPORTS": "Báo cáo", "SETTINGS": "Cài Đặt", "CONTACTS": "Liên hệ", + "ACTIVE": "Có hiệu lực", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/agentBots.json b/app/javascript/dashboard/i18n/locale/zh_CN/agentBots.json index b91e58d66..3254d3098 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/agentBots.json @@ -2,13 +2,13 @@ "AGENT_BOTS": { "HEADER": "机器人", "LOADING_EDITOR": "正在加载编辑器...", - "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", + "DESCRIPTION": "客服机器人就像您团队中最出色的成员。它们可以处理琐事,让您专注于重要的事情。试试看吧。您可以在此页面管理您的机器人,或使用“配置新机器人”按钮创建新的机器人。", "LEARN_MORE": "了解客服机器人", - "GLOBAL_BOT": "System bot", + "GLOBAL_BOT": "系统级机器人", "GLOBAL_BOT_BADGE": "系统", "AVATAR": { - "SUCCESS_DELETE": "Bot avatar deleted successfully", - "ERROR_DELETE": "Error deleting bot avatar, please try again" + "SUCCESS_DELETE": "机器人头像删除成功", + "ERROR_DELETE": "删除机器人头像时出错,请重试" }, "BOT_CONFIGURATION": { "TITLE": "选择一个客服机器人", @@ -22,7 +22,7 @@ "SELECT_PLACEHOLDER": "选择机器人" }, "ADD": { - "TITLE": "Add Bot", + "TITLE": "添加机器人", "CANCEL_BUTTON_TEXT": "取消", "API": { "SUCCESS_MESSAGE": "机器人添加成功.", @@ -30,10 +30,10 @@ } }, "LIST": { - "404": "No bots found. You can create a bot by clicking the 'Add Bot' button.", + "404": "未找到机器人。您可以通过点击「添加机器人」按钮来创建一个机器人。", "LOADING": "正在获取机器人...", "TABLE_HEADER": { - "DETAILS": "Bot Details", + "DETAILS": "机器人详情", "URL": "Webhook 网址" } }, @@ -42,7 +42,7 @@ "TITLE": "删除机器人", "CONFIRM": { "TITLE": "确认删除", - "MESSAGE": "Are you sure you want to delete {name}?", + "MESSAGE": "您确定要删除 {name}?", "YES": "是,删除", "NO": "不,保留" }, @@ -59,14 +59,21 @@ "ERROR_MESSAGE": "无法更新机器人。请再试一次。" } }, + "ACCESS_TOKEN": { + "TITLE": "访问令牌", + "DESCRIPTION": "复制访问令牌并安全保存", + "COPY_SUCCESSFUL": "访问令牌已复制到剪贴板", + "RESET_SUCCESS": "成功重新生成访问令牌", + "RESET_ERROR": "无法重新生成访问令牌。请重试" + }, "FORM": { "AVATAR": { - "LABEL": "Bot avatar" + "LABEL": "机器人头像" }, "NAME": { "LABEL": "机器人名称", - "PLACEHOLDER": "Enter bot name", - "REQUIRED": "Bot name is required" + "PLACEHOLDER": "输入机器人名称", + "REQUIRED": "机器人名称是必需的" }, "DESCRIPTION": { "LABEL": "描述信息", @@ -75,19 +82,19 @@ "WEBHOOK_URL": { "LABEL": "Webhook 网址", "PLACEHOLDER": "https://example.com/webhook", - "REQUIRED": "Webhook URL is required" + "REQUIRED": "Webhook URL 是必需的" }, "ERRORS": { - "NAME": "Bot name is required", - "URL": "Webhook URL is required", - "VALID_URL": "Please enter a valid URL starting with http:// or https://" + "NAME": "机器人名称是必需的", + "URL": "Webhook URL 是必需的", + "VALID_URL": "请输入一个以 http:// 或 https:// 开头的有效URL" }, "CANCEL": "取消", - "CREATE": "Create Bot", - "UPDATE": "Update Bot" + "CREATE": "创建机器人", + "UPDATE": "更新机器人" }, "WEBHOOK": { - "DESCRIPTION": "Configure a webhook bot to integrate with your custom services. The bot will receive and process events from conversations and can respond to them." + "DESCRIPTION": "配置Webhook 机器人与您的自定义服务集成。机器人将接收和处理会话中的事件,并且能够响应这些事件。" }, "TYPES": { "WEBHOOK": "Webhook 机器人" diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/auditLogs.json b/app/javascript/dashboard/i18n/locale/zh_CN/auditLogs.json index c7df57e4b..b7fca9a39 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} 更新了账户配置 (##{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} 删除了对话 #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/automation.json b/app/javascript/dashboard/i18n/locale/zh_CN/automation.json index cf7ff42e0..285a7a8bd 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/automation.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/automation.json @@ -130,37 +130,37 @@ "EVENTS": { "CONVERSATION_CREATED": "对话创建", "CONVERSATION_UPDATED": "对话已更新", - "MESSAGE_CREATED": "Message Created", - "CONVERSATION_OPENED": "Conversation Opened" + "MESSAGE_CREATED": "消息已创建", + "CONVERSATION_OPENED": "对话已打开" }, "ACTIONS": { - "ASSIGN_AGENT": "Assign to Agent", - "ASSIGN_TEAM": "Assign a Team", - "ADD_LABEL": "Add a Label", - "REMOVE_LABEL": "Remove a Label", - "SEND_EMAIL_TO_TEAM": "Send an Email to Team", - "SEND_EMAIL_TRANSCRIPT": "Send an Email Transcript", + "ASSIGN_AGENT": "分配客服", + "ASSIGN_TEAM": "分配团队", + "ADD_LABEL": "添加标签", + "REMOVE_LABEL": "移除标签", + "SEND_EMAIL_TO_TEAM": "发送电子邮件给团队", + "SEND_EMAIL_TRANSCRIPT": "通过邮件发送聊天记录", "MUTE_CONVERSATION": "开始会话", "SNOOZE_CONVERSATION": "暂停对话", "RESOLVE_CONVERSATION": "解决对话", - "SEND_WEBHOOK_EVENT": "Send Webhook Event", - "SEND_ATTACHMENT": "Send Attachment", - "SEND_MESSAGE": "Send a Message", + "SEND_WEBHOOK_EVENT": "发送 Webhook 事件", + "SEND_ATTACHMENT": "发送附件", + "SEND_MESSAGE": "发送消息", "CHANGE_PRIORITY": "更改优先级", "ADD_SLA": "添加SLA" }, "ATTRIBUTES": { - "MESSAGE_TYPE": "Message Type", - "MESSAGE_CONTAINS": "Message Contains", + "MESSAGE_TYPE": "消息类型", + "MESSAGE_CONTAINS": "消息包含", "EMAIL": "Email", "INBOX": "收件箱", - "CONVERSATION_LANGUAGE": "Conversation Language", + "CONVERSATION_LANGUAGE": "对话语言", "PHONE_NUMBER": "电话号码", "STATUS": "状态", "BROWSER_LANGUAGE": "浏览器语言", - "MAIL_SUBJECT": "Email Subject", + "MAIL_SUBJECT": "电子邮件主题", "COUNTRY_NAME": "国家", - "REFERER_LINK": "Referrer Link", + "REFERER_LINK": "引荐链接", "ASSIGNEE_NAME": "负责人", "TEAM_NAME": "团队", "PRIORITY": "优先级" diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/components.json b/app/javascript/dashboard/i18n/locale/zh_CN/components.json index 8be474f93..3d5f736ec 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/components.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/components.json @@ -45,9 +45,9 @@ "WATCH_VIDEO": "观看视频" }, "DURATION_INPUT": { - "MINUTES": "Minutes", - "HOURS": "Hours", - "DAYS": "Days", - "PLACEHOLDER": "Enter duration" + "MINUTES": "分钟", + "HOURS": "小时", + "DAYS": "天", + "PLACEHOLDER": "输入耗时" } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/contact.json b/app/javascript/dashboard/i18n/locale/zh_CN/contact.json index cfffb212c..b233f798b 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/contact.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "联系人", "SEARCH_TITLE": "搜索联系人", + "ACTIVE_TITLE": "活跃的联系人", "SEARCH_PLACEHOLDER": "搜索……", "MESSAGE_BUTTON": "消息", "SEND_MESSAGE": "发送消息", @@ -457,6 +458,10 @@ "PLACEHOLDER": "添加 Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "这一操作是永久且不可逆转的。", + "BUTTON": "立即删除" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "删除联系人", "DELETE_DIALOG": { "TITLE": "确认删除", - "DESCRIPTION": "您确定要删除此 {contactName} 联系人吗?", + "DESCRIPTION": "您确定要删除此联系人吗?", "CONFIRM": "是,删除", "API": { "SUCCESS_MESSAGE": "联系人删除成功", @@ -545,8 +550,8 @@ "YOU": "您", "SAVE": "保存备注", "EXPAND": "扩展", - "COLLAPSE": "Collapse", - "NO_NOTES": "No notes, you can add notes from the contact details page.", + "COLLAPSE": "收起", + "NO_NOTES": "没有备注,您可以从联系人详细信息页面添加备注。", "EMPTY_STATE": "此联系人没有关联的备注。您可以在上方输入框中添加备注。" } }, @@ -555,7 +560,8 @@ "SUBTITLE": "点击下方按钮开始添加新联系人", "BUTTON_LABEL": "添加联系人", "SEARCH_EMPTY_STATE_TITLE": "没有搜索到联系人🔍", - "LIST_EMPTY_STATE_TITLE": "此视图中没有可用的联系人📋" + "LIST_EMPTY_STATE_TITLE": "此视图中没有可用的联系人📋", + "ACTIVE_EMPTY_STATE_TITLE": "目前没有联系人在线 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json b/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json index d91679633..43c46fa3a 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json @@ -32,12 +32,12 @@ "LOADING_CONVERSATIONS": "加载更多对话", "CANNOT_REPLY": "您不能回复,原因是:", "24_HOURS_WINDOW": "24 小时消息窗口限制", - "API_HOURS_WINDOW": "You can only reply to this conversation within {hours} hours", + "API_HOURS_WINDOW": "您只能在 {hours} 小时内回复此对话", "NOT_ASSIGNED_TO_YOU": "此对话未分配给您。您想要将此对话分配给自己吗?", "ASSIGN_TO_ME": "分配给我", "TWILIO_WHATSAPP_CAN_REPLY": "您只能使用模板信息回复此会话,原因是", "TWILIO_WHATSAPP_24_HOURS_WINDOW": "24 小时消息窗口限制", - "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": "此 Instagram 帐户已迁移到新的 Instagram 通道收件箱。 所有新消息都将在这里显示。您将无法从这个对话中发送消息。", "REPLYING_TO": "您正在回复到:", "REMOVE_SELECTION": "移除选择", "DOWNLOAD": "下载", @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "已解决", "REOPEN_ACTION": "重新打开", "OPEN_ACTION": "打开", + "MORE_ACTIONS": "更多操作", "OPEN": "详细信息", "CLOSE": "关闭", "DETAILS": "详情", @@ -117,6 +118,11 @@ "FAILED": "无法更改优先级。请重试。" } }, + "DELETE_CONVERSATION": { + "TITLE": "删除对话 #{conversationId}", + "DESCRIPTION": "您确定要删除此对话吗?", + "CONFIRM": "删除" + }, "CARD_CONTEXT_MENU": { "PENDING": "标记为待处理", "RESOLVED": "标记为已解决", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "分配标签", "AGENTS_LOADING": "正在加载客服代表...", "ASSIGN_TEAM": "分配一个团队", + "DELETE": "删除对话", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "对话 ID {conversationId} 已分配给 \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "已成功分配标签", "ASSIGN_LABEL_FAILED": "分配标签失败", "CHANGE_TEAM": "对话团队已更改", + "SUCCESS_DELETE_CONVERSATION": "对话成功删除", + "FAIL_DELETE_CONVERSATION": "无法删除对话!请重试", "FILE_SIZE_LIMIT": "文件超过了 {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB 的附件限制", "MESSAGE_ERROR": "无法发送此消息,请稍后再试", "SENT_BY": "发送人:", @@ -295,10 +304,11 @@ "CONVERSATION_ACTIONS": "对话操作", "CONVERSATION_LABELS": "对话标记", "CONVERSATION_INFO": "对话信息", - "CONTACT_NOTES": "Contact Notes", + "CONTACT_NOTES": "联系人备注", "CONTACT_ATTRIBUTES": "联系人属性", "PREVIOUS_CONVERSATION": "上一次对话", "MACROS": "宏", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/general.json b/app/javascript/dashboard/i18n/locale/zh_CN/general.json index bd655a5ba..3ee3c74db 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/general.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "搜索", "EMPTY_STATE": "没有检索到相关信息" - } + }, + "CLOSE": "关闭" } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/generalSettings.json b/app/javascript/dashboard/i18n/locale/zh_CN/generalSettings.json index a0545add4..f4535fee6 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/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. Hacker plan allows only 2 agents.", - "NON_ADMIN": "Please contact your administrator to upgrade the plan and continue using all features." + "CONVERSATION": "您已经超过对话限制。黑客计划只允许500次对话。", + "INBOXES": "您已超过收件箱限制。Hacker 计划只支持网站在线聊天。其他收件箱如电子邮件、WhatsApp 等需要付费计划。", + "AGENTS": "您已超过坐席限制。黑客计划只允许 2 个坐席。", + "NON_ADMIN": "请联系您的管理员升级计划并继续使用所有功能。" }, "TITLE": "帐户设置", "SUBMIT": "更新设置", @@ -15,23 +15,23 @@ "SUCCESS": "已成功更新账户设置" }, "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": "删除", "DISMISS": "取消", "PLACE_HOLDER": "请输入 {accountName} 以确认" }, - "SUCCESS": "Account marked for deletion", - "FAILURE": "Could not delete account, try again!", + "SUCCESS": "账户已标记为删除", + "FAILURE": "无法删除账户,请重试!", "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": "已计划删除的账户", + "MESSAGE_MANUAL": "此账户已计划在 {deletionDate} 删除。该操作由管理员请求。你可以在该日期前取消删除。", + "MESSAGE_INACTIVITY": "此账户由于不活跃已计划在 {deletionDate} 删除。你可以在该日期前取消删除。", + "CLEAR_BUTTON": "取消已计划的删除" } }, "FORM": { @@ -45,8 +45,32 @@ "NOTE": "如果您正在构建基于 API 的集成,那么此 ID 是必需的" }, "AUTO_RESOLVE": { - "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "TITLE": "自动解决对话", + "NOTE": "通过此项设置,系统可在对话静默一段时间后自动将其解决。", + "DURATION": { + "LABEL": "无活动持续时间", + "HELP": "在无活动后自动结束对话的时间段", + "PLACEHOLDER": "30", + "ERROR": "自动解决时长应在 10 分钟到 999 天之间", + "API": { + "SUCCESS": "自动解决设置已成功更新", + "ERROR": "更新自动解决设置失败" + } + }, + "MESSAGE": { + "LABEL": "自定义自动解决消息", + "PLACEHOLDER": "由于闲置 15 天,对话被系统标记已解决", + "HELP": "会话自动解决之后发送给客户的消息" + }, + "PREFERENCES": "偏好设置", + "LABEL": { + "LABEL": "自动解决后添加标签", + "PLACEHOLDER": "选择一个标签" + }, + "IGNORE_WAITING": { + "LABEL": "跳过等待客服回复的会话" + }, + "UPDATE_BUTTON": "保存修改" }, "NAME": { "LABEL": "帐户名称", @@ -69,22 +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": "排除未参加的对话", + "HELP": "启用后,系统将跳过解决仍在等待客服回复的对话。" + }, + "AUDIO_TRANSCRIPTION": { + "TITLE": "转录语音消息", + "NOTE": "自动转录对话中的语音消息。当发送或收到语音消息时生成转录的文本,并将其显示在消息旁边。", + "API": { + "SUCCESS": "语音转录设置更新成功", + "ERROR": "更新语音转录设置失败" + } }, "AUTO_RESOLVE_DURATION": { - "LABEL": "Inactivity duration for resolution", - "HELP": "Duration after a conversation should auto resolve if there is no activity", + "LABEL": "自动解决前的无活动市场", + "HELP": "对话无活动时自动解决时长", "PLACEHOLDER": "30", - "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "ERROR": "自动解决时长应在 10 分钟到 999 天之间", "API": { - "SUCCESS": "Auto resolve settings updated successfully", - "ERROR": "Failed to update auto resolve settings" + "SUCCESS": "自动解决设置已成功更新", + "ERROR": "更新自动解决设置失败" }, "UPDATE_BUTTON": "更新", - "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": "自定义解决消息", + "MESSAGE_PLACEHOLDER": "由于闲置 15 天,对话被系统标记已解决", + "MESSAGE_HELP": "当系统因为不活动而自动解决某个对话时,此消息将发送给客户。" }, "FEATURES": { "INBOUND_EMAIL_ENABLED": "您的帐户启用了与电子邮件的对话连续性。", @@ -94,7 +126,7 @@ "UPDATE_CHATWOOT": "Chatwoot 有可用更新{latestChatwootVersion},请更新您的应用。", "LEARN_MORE": "了解更多", "PAYMENT_PENDING": "您的付款尚未完成。请更新您的付款信息以继续使用Chatwoot", - "UPGRADE": "Upgrade to continue using Chatwoot", + "UPGRADE": "升级以继续使用 Chatwoot", "LIMITS_UPGRADE": "您的账户已超过使用限制,请升级您的计划以继续使用Chatwoot", "OPEN_BILLING": "查看计费" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json b/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json index 099c1db71..312080073 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json @@ -697,7 +697,7 @@ "LABEL": "Slug", "PLACEHOLDER": "用户指南", "ERROR": "Slug是必填项", - "FORMAT_ERROR": "Please enter a valid slug, for eg: user-guide" + "FORMAT_ERROR": "请输入有效的 Slug,例如:user-guide" } }, "PORTAL_SETTINGS": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json index 7c35e55fe..128379392 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json @@ -47,13 +47,13 @@ "CREATE_INBOX": "新增收件箱" }, "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": "在 Instagram 中继续", + "CONNECT_YOUR_INSTAGRAM_PROFILE": "连接您的 Instagram 配置文件", + "HELP": "若要将您的 Instagram 配置文件添加为通道,您需要点击「继续使用 Instagram」来验证您的 Instagram 配置文件。 ", + "ERROR_MESSAGE": "连接到 Instagram 时出错,请重试", + "ERROR_AUTH": "连接到 Instagram 时出错,请重试", + "NEW_INBOX_SUGGESTION": "这个 Instagram 账户先前已连接到一个不同的收件箱,现在已经迁移到这里。 所有新消息都将出现在这里。旧收件箱将无法再发送或接收此账户的消息。", + "DUPLICATE_INBOX_BANNER": "此 Instagram 账户已迁移到新的 Instagram 通道收件箱。您将无法从此收件箱发送/接收 Instagram 消息。" }, "TWITTER": { "HELP": "若要将您的Twitter个人资料添加为频道,您需要通过点击“使用Twitter登录”来验证您的Twitter个人资料。 ", @@ -579,28 +579,28 @@ }, "CSAT": { "TITLE": "启用CSAT", - "SUBTITLE": "Automatically trigger CSAT surveys at the end of conversations to understand how customers feel about their support experience. Track satisfaction trends and identify areas for improvement over time.", + "SUBTITLE": "在对话结束时自动启动 CSAT 问卷,以了解客户如何感觉到他们的支持体验。 跟踪满意的趋势并查明一段时间内需要改进的领域。", "DISPLAY_TYPE": { - "LABEL": "Display type" + "LABEL": "显示类型" }, "MESSAGE": { "LABEL": "消息", - "PLACEHOLDER": "Please enter a message to show users with the form" + "PLACEHOLDER": "请输入一条消息以将此表格显示给用户" }, "SURVEY_RULE": { - "LABEL": "Survey rule", - "DESCRIPTION_PREFIX": "Send the survey if the conversation", - "DESCRIPTION_SUFFIX": "any of the labels", + "LABEL": "问卷规则", + "DESCRIPTION_PREFIX": "发送此问卷如果对话", + "DESCRIPTION_SUFFIX": "任意标签", "OPERATOR": { "CONTAINS": "包含", "DOES_NOT_CONTAINS": "不包含" }, - "SELECT_PLACEHOLDER": "select labels" + "SELECT_PLACEHOLDER": "选择标签" }, - "NOTE": "Note: CSAT surveys are sent only once per conversation", + "NOTE": "注:每次对话只发送一次 CSAT 问卷", "API": { - "SUCCESS_MESSAGE": "CSAT settings updated successfully", - "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." + "SUCCESS_MESSAGE": "CSAT 设置更新成功", + "ERROR_MESSAGE": "我们无法更新 CSAT 设置。请稍后再试。" } }, "BUSINESS_HOURS": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json b/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json index 406e17ead..53911f104 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json @@ -42,8 +42,8 @@ "WEBWIDGET_TRIGGERED": "用户打开实时聊天小部件", "CONTACT_CREATED": "联系人已创建", "CONTACT_UPDATED": "联系人已更新", - "CONVERSATION_TYPING_ON": "Conversation Typing On", - "CONVERSATION_TYPING_OFF": "Conversation Typing Off" + "CONVERSATION_TYPING_ON": "对话输入开启", + "CONVERSATION_TYPING_OFF": "对话输入关闭" } }, "END_POINT": { @@ -318,11 +318,18 @@ "SUCCESS": "问题取消链接成功", "ERROR": "取消链接问题时出错,请重试" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "您确定要删除该集成吗?", "MESSAGE": "您确定要删除该集成吗?", "CONFIRM": "是,删除", "CANCEL": "取消" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,25 +337,38 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "了解更多", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "尝试这些提示信息", + "PANEL_TITLE": "开始使用 Copilot", + "KICK_OFF_MESSAGE": "需要快速摘要、回顾过往对话,或是优化回复内容?Copilot 可助您一臂之力,全面提升工作效率。", "SEND_MESSAGE": "发送消息...", - "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", + "EMPTY_MESSAGE": "生成响应时出错。请重试。", "LOADER": "Captain 正在思考", "YOU": "您", "USE": "使用此", "RESET": "重置", + "SHOW_STEPS": "显示步骤", "SELECT_ASSISTANT": "选择助手", "PROMPTS": { "SUMMARIZE": { - "LABEL": "Summarize this conversation", - "CONTENT": "Summarize the key points discussed between the customer and the support agent, including the customer's concerns, questions, and the solutions or responses provided by the support agent" + "LABEL": "总结此对话", + "CONTENT": "总结客户与客服的对话要点,涵盖客户的主要疑虑、问题,以及客服给出的解决方案或回应" }, "SUGGEST": { - "LABEL": "Suggest an answer", - "CONTENT": "Analyze the customer's inquiry, and draft a response that effectively addresses their concerns or questions. Ensure the reply is clear, concise, and provides helpful information." + "LABEL": "建议回答", + "CONTENT": "分析客户的咨询,并起草一份有效回应其关切或问题的回复。确保回复内容清晰、简明,并提供有用的信息。" }, "RATE": { - "LABEL": "Rate this conversation", - "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + "LABEL": "为此对话评分", + "CONTENT": "请审核对话,评估其在多大程度上满足了客户的需求。根据语气、清晰度和有效性进行 5 分制评分。" + }, + "HIGH_PRIORITY": { + "LABEL": "高优先级对话", + "CONTENT": "请给我所有高优先级未结对话的摘要。包括对话 ID、客户姓名(如有)、最后一条消息内容和分配的客服人员。如有需要,请按状态分组。" + }, + "LIST_CONTACTS": { + "LABEL": "列出联系人", + "CONTENT": "显示我的前 10 位联系人列表。包括姓名、电子邮件或电话号码(如有)、最后在线时间、标签(如有)。" } } }, @@ -356,9 +376,9 @@ "USER": "您", "ASSISTANT": "助手", "MESSAGE_PLACEHOLDER": "输入您的消息...", - "HEADER": "Playground", - "DESCRIPTION": "Use this playground to send messages to your assistant and check if it responds accurately, quickly, and in the tone you expect.", - "CREDIT_NOTE": "Messages sent here will count toward your Captain credits." + "HEADER": "试验场", + "DESCRIPTION": "使用此试验场向您的助手发送消息,并检查其是否能够准确、快速地以您期望的语气做出回应。", + "CREDIT_NOTE": "这里发送的消息将计入您的 Captain 积分。" }, "PAYWALL": { "TITLE": "升级以使用 Captain AI", @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "您可以随时更改或取消您的计划" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI 功能仅在付费计划中可用。", "UPGRADE_PROMPT": "升级您的计划以获取我们的助手、副驾驶等功能。", "ASK_ADMIN": "请联系您的管理员进行升级。" }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "助手", + "NO_ASSISTANTS_AVAILABLE": "您的帐户中没有可用的助手。", "ADD_NEW": "创建新的助手", "DELETE": { "TITLE": "您确定要删除该文档吗?", @@ -400,42 +420,46 @@ "FORM": { "UPDATE": "更新", "SECTIONS": { - "BASIC_INFO": "Basic Information", - "SYSTEM_MESSAGES": "System Messages", - "INSTRUCTIONS": "Instructions", + "BASIC_INFO": "基本信息", + "SYSTEM_MESSAGES": "系统消息", + "INSTRUCTIONS": "指令", "FEATURES": "特性", - "TOOLS": "Tools " + "TOOLS": "工具 " }, "NAME": { "LABEL": "姓名:", - "PLACEHOLDER": "Enter assistant name", - "ERROR": "The name is required" + "PLACEHOLDER": "输入助手名称", + "ERROR": "名称是必需的" + }, + "TEMPERATURE": { + "LABEL": "响应温度", + "DESCRIPTION": "调整助手回复的创造性或限制程度。较低的数值会产生更专注和确定性的回复,而较高的数值则允许更有创意和多样化的输出。" }, "DESCRIPTION": { "LABEL": "描述信息", - "PLACEHOLDER": "Enter assistant description", - "ERROR": "The description is required" + "PLACEHOLDER": "输入助手描述", + "ERROR": "描述是必需的" }, "PRODUCT_NAME": { "LABEL": "产品名称", - "PLACEHOLDER": "Enter product name", + "PLACEHOLDER": "输入产品名称", "ERROR": "产品名称是必需的" }, "WELCOME_MESSAGE": { - "LABEL": "Welcome Message", - "PLACEHOLDER": "Enter welcome message" + "LABEL": "欢迎消息", + "PLACEHOLDER": "输入欢迎消息" }, "HANDOFF_MESSAGE": { - "LABEL": "Handoff Message", - "PLACEHOLDER": "Enter handoff message" + "LABEL": "交接信息", + "PLACEHOLDER": "输入交接消息" }, "RESOLUTION_MESSAGE": { - "LABEL": "Resolution Message", - "PLACEHOLDER": "Enter resolution message" + "LABEL": "解决消息", + "PLACEHOLDER": "输入解决消息" }, "INSTRUCTIONS": { - "LABEL": "Instructions", - "PLACEHOLDER": "Enter instructions for the assistant" + "LABEL": "指令", + "PLACEHOLDER": "输入用于此助手的指令" }, "FEATURES": { "TITLE": "特性", @@ -447,7 +471,7 @@ "TITLE": "更新助手", "SUCCESS_MESSAGE": "助手已成功更新", "ERROR_MESSAGE": "更新助手时出错,请重试", - "NOT_FOUND": "Could not find the assistant. Please try again." + "NOT_FOUND": "无法找到助手。请重试。" }, "OPTIONS": { "EDIT_ASSISTANT": "编辑助手", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/macros.json b/app/javascript/dashboard/i18n/locale/zh_CN/macros.json index 4a359f5bf..afad13777 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/macros.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/macros.json @@ -85,20 +85,20 @@ "ATLEAST_ONE_ACTION_REQUIRED": "至少需要一个动作" }, "ACTIONS": { - "ASSIGN_TEAM": "Assign a Team", - "ASSIGN_AGENT": "Assign an Agent", - "ADD_LABEL": "Add a Label", - "REMOVE_LABEL": "Remove a Label", - "REMOVE_ASSIGNED_TEAM": "Remove Assigned Team", - "SEND_EMAIL_TRANSCRIPT": "Send an Email Transcript", + "ASSIGN_TEAM": "分配团队", + "ASSIGN_AGENT": "分配客服", + "ADD_LABEL": "添加标签", + "REMOVE_LABEL": "移除标签", + "REMOVE_ASSIGNED_TEAM": "移除已分配的团队", + "SEND_EMAIL_TRANSCRIPT": "通过邮件发送聊天记录", "MUTE_CONVERSATION": "开始会话", "SNOOZE_CONVERSATION": "暂停对话", "RESOLVE_CONVERSATION": "解决对话", - "SEND_ATTACHMENT": "Send Attachment", - "SEND_MESSAGE": "Send a Message", + "SEND_ATTACHMENT": "发送附件", + "SEND_MESSAGE": "发送消息", "CHANGE_PRIORITY": "更改优先级", - "ADD_PRIVATE_NOTE": "Add a Private Note", - "SEND_WEBHOOK_EVENT": "Send Webhook Event" + "ADD_PRIVATE_NOTE": "添加私密注释", + "SEND_WEBHOOK_EVENT": "发送 Webhook 事件" } } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/report.json b/app/javascript/dashboard/i18n/locale/zh_CN/report.json index 4b8562e7f..7a77d4b23 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/report.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "标签概览", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "正在载入图表数据...", "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", "DOWNLOAD_LABEL_REPORTS": "下载标签报表", @@ -559,6 +560,7 @@ "INBOX": "收件箱", "AGENT": "客服", "TEAM": "团队", + "LABEL": "标签", "AVG_RESOLUTION_TIME": "平均解决时间", "AVG_FIRST_RESPONSE_TIME": "平均首次响应时间", "AVG_REPLY_TIME": "平均客户等待时间", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/search.json b/app/javascript/dashboard/i18n/locale/zh_CN/search.json index 44de1798c..4870e551b 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/search.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/search.json @@ -4,12 +4,14 @@ "ALL": "全部", "CONTACTS": "联系人", "CONVERSATIONS": "会话", - "MESSAGES": "消息" + "MESSAGES": "消息", + "ARTICLES": "文章" }, "SECTION": { "CONTACTS": "联系人", "CONVERSATIONS": "会话", - "MESSAGES": "消息" + "MESSAGES": "消息", + "ARTICLES": "文章" }, "VIEW_MORE": "查看更多", "LOAD_MORE": "加载更多", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/settings.json b/app/javascript/dashboard/i18n/locale/zh_CN/settings.json index 0d46b18ce..97e288621 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/settings.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "访问令牌", "NOTE": "如果您正在构建基于 API 的集成,这个令牌可以被使用", - "COPY": "复制" + "COPY": "复制", + "RESET": "重置", + "CONFIRM_RESET": "您确定吗?", + "CONFIRM_HINT": "再次点击以确认", + "RESET_SUCCESS": "成功重新生成访问令牌", + "RESET_ERROR": "无法重新生成访问令牌。请重试" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "音频提醒", @@ -185,7 +190,8 @@ "OFFLINE": "离线" }, "SET_AVAILABILITY_SUCCESS": "可用性已成功设置", - "SET_AVAILABILITY_ERROR": "无法设置可用性,请重试" + "SET_AVAILABILITY_ERROR": "无法设置可用性,请重试", + "IMPERSONATING_ERROR": "当您处于模拟用户状态时,无法更改其在线状态" }, "EMAIL": { "LABEL": "您的电子邮件地址", @@ -280,6 +286,7 @@ "REPORTS": "报告", "SETTINGS": "设置", "CONTACTS": "联系人", + "ACTIVE": "状态", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "助手", "CAPTAIN_DOCUMENTS": "文档", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/agentBots.json b/app/javascript/dashboard/i18n/locale/zh_TW/agentBots.json index 3dd97125c..39a4511c0 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/agentBots.json @@ -59,6 +59,13 @@ "ERROR_MESSAGE": "無法更新機器人,請稍後再試" } }, + "ACCESS_TOKEN": { + "TITLE": "訪問 token", + "DESCRIPTION": "Copy the access token and save it securely", + "COPY_SUCCESSFUL": "Access token copied to clipboard", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" + }, "FORM": { "AVATAR": { "LABEL": "Bot avatar" diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/auditLogs.json b/app/javascript/dashboard/i18n/locale/zh_TW/auditLogs.json index f15d93d3f..3ebdf1ae9 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/auditLogs.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/auditLogs.json @@ -69,6 +69,9 @@ }, "ACCOUNT": { "EDIT": "{agentName} updated the account configuration (#{id})" + }, + "CONVERSATION": { + "DELETE": "{agentName} deleted conversation #{id}" } } } diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/contact.json b/app/javascript/dashboard/i18n/locale/zh_TW/contact.json index 47da29d52..bdde30a21 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/contact.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/contact.json @@ -285,6 +285,7 @@ "HEADER": { "TITLE": "聯絡人", "SEARCH_TITLE": "Search contacts", + "ACTIVE_TITLE": "Active contacts", "SEARCH_PLACEHOLDER": "Search...", "MESSAGE_BUTTON": "訊息", "SEND_MESSAGE": "傳送訊息", @@ -457,6 +458,10 @@ "PLACEHOLDER": "Add Twitter" } } + }, + "DELETE_CONTACT": { + "MESSAGE": "This action is permanent and irreversible.", + "BUTTON": "Delete now" } }, "DETAILS": { @@ -466,7 +471,7 @@ "DELETE_CONTACT": "刪除聯絡人", "DELETE_DIALOG": { "TITLE": "確認刪除", - "DESCRIPTION": "Are you sure you want to delete this {contactName} contact?", + "DESCRIPTION": "Are you sure you want to delete this contact?", "CONFIRM": "是,刪除", "API": { "SUCCESS_MESSAGE": "聯絡人刪除成功", @@ -555,7 +560,8 @@ "SUBTITLE": "Start adding new contacts by clicking on the button below", "BUTTON_LABEL": "Add contact", "SEARCH_EMPTY_STATE_TITLE": "找不到符合條件的聯絡人 🔍", - "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋" + "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", + "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" } }, "COMPOSE_NEW_CONVERSATION": { diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json b/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json index 154a0e63f..8e8082846 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json @@ -70,6 +70,7 @@ "RESOLVE_ACTION": "已解決", "REOPEN_ACTION": "重新打開", "OPEN_ACTION": "打開", + "MORE_ACTIONS": "More actions", "OPEN": "詳細資訊", "CLOSE": "關閉", "DETAILS": "詳情", @@ -117,6 +118,11 @@ "FAILED": "Couldn't change priority. Please try again." } }, + "DELETE_CONVERSATION": { + "TITLE": "Delete conversation #{conversationId}", + "DESCRIPTION": "Are you sure you want to delete this conversation?", + "CONFIRM": "刪除" + }, "CARD_CONTEXT_MENU": { "PENDING": "標記為待處理", "RESOLVED": "Mark as resolved", @@ -133,6 +139,7 @@ "ASSIGN_LABEL": "Assign label", "AGENTS_LOADING": "Loading agents...", "ASSIGN_TEAM": "Assign team", + "DELETE": "Delete conversation", "API": { "AGENT_ASSIGNMENT": { "SUCCESFUL": "Conversation id {conversationId} assigned to \"{agentName}\"", @@ -207,6 +214,8 @@ "ASSIGN_LABEL_SUCCESFUL": "Label assigned successfully", "ASSIGN_LABEL_FAILED": "Label assignment failed", "CHANGE_TEAM": "Conversation team changed", + "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", + "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "寄送者:", @@ -299,6 +308,7 @@ "CONTACT_ATTRIBUTES": "聯絡人屬性", "PREVIOUS_CONVERSATION": "上一次對話", "MACROS": "Macros", + "LINEAR_ISSUES": "Linked Linear Issues", "SHOPIFY_ORDERS": "Shopify Orders" }, "SHOPIFY": { diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/general.json b/app/javascript/dashboard/i18n/locale/zh_TW/general.json index cefe266b4..dcc5eb2a1 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/general.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/general.json @@ -4,6 +4,7 @@ "PHONE_INPUT": { "PLACEHOLDER": "搜尋", "EMPTY_STATE": "No results found" - } + }, + "CLOSE": "關閉" } } diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/generalSettings.json b/app/javascript/dashboard/i18n/locale/zh_TW/generalSettings.json index af49409ef..b4f4d0d74 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/generalSettings.json @@ -46,7 +46,31 @@ }, "AUTO_RESOLVE": { "TITLE": "Auto-resolve conversations", - "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period. Set the duration and customize the message to the user below." + "NOTE": "This configuration would allow you to automatically resolve the conversation after a certain period of inactivity.", + "DURATION": { + "LABEL": "Inactivity duration", + "HELP": "Time period of inactivity after which conversation is auto-resolved", + "PLACEHOLDER": "30", + "ERROR": "Auto resolve duration should be between 10 minutes and 999 days", + "API": { + "SUCCESS": "Auto resolve settings updated successfully", + "ERROR": "Failed to update auto resolve settings" + } + }, + "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" + }, + "PREFERENCES": "Preferences", + "LABEL": { + "LABEL": "Add label after auto-resolution", + "PLACEHOLDER": "Select a label" + }, + "IGNORE_WAITING": { + "LABEL": "Skip conversations waiting for agent’s reply" + }, + "UPDATE_BUTTON": "Save Changes" }, "NAME": { "LABEL": "帳戶名稱", @@ -70,7 +94,15 @@ }, "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." + "HELP": "When enabled, the system will skip resolving conversations that are still waiting for an agent's reply." + }, + "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.", + "API": { + "SUCCESS": "Audio transcription setting updated successfully", + "ERROR": "Failed to update audio transcription setting" + } }, "AUTO_RESOLVE_DURATION": { "LABEL": "Inactivity duration for resolution", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json b/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json index 71f96f4a2..3d6150301 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json @@ -318,11 +318,18 @@ "SUCCESS": "Issue unlinked successfully", "ERROR": "There was an error unlinking the issue, please try again" }, + "NO_LINKED_ISSUES": "No linked issues found", "DELETE": { "TITLE": "Are you sure you want to delete the integration?", "MESSAGE": "Are you sure you want to delete the integration?", "CONFIRM": "是的,刪除", "CANCEL": "取消" + }, + "CTA": { + "TITLE": "Connect to Linear", + "AGENT_DESCRIPTION": "Linear workspace is not connected. Request your administrator to connect a workspace to use this integration.", + "DESCRIPTION": "Linear workspace is not connected. Click the button below to connect your workspace to use this integration.", + "BUTTON_TEXT": "Connect Linear workspace" } } }, @@ -330,12 +337,17 @@ "NAME": "Captain", "HEADER_KNOW_MORE": "Know more", "COPILOT": { + "TITLE": "Copilot", + "TRY_THESE_PROMPTS": "Try these prompts", + "PANEL_TITLE": "Get started with Copilot", + "KICK_OFF_MESSAGE": "Need a quick summary, want to check past conversations, or draft a better reply? Copilot’s here to speed things up.", "SEND_MESSAGE": "傳送訊息...", "EMPTY_MESSAGE": "There was an error generating the response. Please try again.", "LOADER": "Captain is thinking", "YOU": "You", "USE": "Use this", "RESET": "Reset", + "SHOW_STEPS": "Show steps", "SELECT_ASSISTANT": "Select Assistant", "PROMPTS": { "SUMMARIZE": { @@ -349,6 +361,14 @@ "RATE": { "LABEL": "Rate this conversation", "CONTENT": "Review the conversation to see how well it meets the customer's needs. Share a rating out of 5 based on tone, clarity, and effectiveness." + }, + "HIGH_PRIORITY": { + "LABEL": "High priority conversations", + "CONTENT": "Give me a summary of all high priority open conversations. Include the conversation ID, customer name (if available), last message content, and assigned agent. Group by status if relevant." + }, + "LIST_CONTACTS": { + "LABEL": "List contacts", + "CONTENT": "Show me the list of top 10 contacts. Include name, email or phone number (if available), last seen time, tags (if any)." } } }, @@ -368,7 +388,6 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "Captain AI feature is only available in a paid plan.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, @@ -383,6 +402,7 @@ }, "ASSISTANTS": { "HEADER": "Assistants", + "NO_ASSISTANTS_AVAILABLE": "There are no assistants available in your account.", "ADD_NEW": "Create a new assistant", "DELETE": { "TITLE": "Are you sure to delete the assistant?", @@ -411,6 +431,10 @@ "PLACEHOLDER": "Enter assistant name", "ERROR": "The name is required" }, + "TEMPERATURE": { + "LABEL": "Response Temperature", + "DESCRIPTION": "Adjust how creative or restrictive the assistant's responses should be. Lower values produce more focused and deterministic responses, while higher values allow for more creative and varied outputs." + }, "DESCRIPTION": { "LABEL": "描述資訊", "PLACEHOLDER": "Enter assistant description", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/report.json b/app/javascript/dashboard/i18n/locale/zh_TW/report.json index 3837817fa..b1f9032f5 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/report.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/report.json @@ -193,6 +193,7 @@ }, "LABEL_REPORTS": { "HEADER": "Labels Overview", + "DESCRIPTION": "Track label performance with key metrics including conversations, response times, resolution times, and resolved cases. Click a label name for detailed insights.", "LOADING_CHART": "正在載入图表數據...", "NO_ENOUGH_DATA": "我們没有收到足夠的數據來生成報表,請稍後再試。", "DOWNLOAD_LABEL_REPORTS": "Download label reports", @@ -559,6 +560,7 @@ "INBOX": "收件匣", "AGENT": "客服", "TEAM": "Team", + "LABEL": "Label", "AVG_RESOLUTION_TIME": "Avg. Resolution Time", "AVG_FIRST_RESPONSE_TIME": "Avg. First Response Time", "AVG_REPLY_TIME": "Avg. Customer Waiting Time", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/search.json b/app/javascript/dashboard/i18n/locale/zh_TW/search.json index 7a434e552..f94719070 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/search.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/search.json @@ -4,12 +4,14 @@ "ALL": "所有的", "CONTACTS": "聯絡人", "CONVERSATIONS": "對話", - "MESSAGES": "訊息" + "MESSAGES": "訊息", + "ARTICLES": "Articles" }, "SECTION": { "CONTACTS": "聯絡人", "CONVERSATIONS": "對話", - "MESSAGES": "訊息" + "MESSAGES": "訊息", + "ARTICLES": "Articles" }, "VIEW_MORE": "View more", "LOAD_MORE": "Load more", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/settings.json b/app/javascript/dashboard/i18n/locale/zh_TW/settings.json index 06ffb83fc..bae56bbe1 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/settings.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/settings.json @@ -76,7 +76,12 @@ "ACCESS_TOKEN": { "TITLE": "訪問 token", "NOTE": "如果要構建基於 API 的整合,則可以使用此 token", - "COPY": "複製" + "COPY": "複製", + "RESET": "Reset", + "CONFIRM_RESET": "Are you sure?", + "CONFIRM_HINT": "Click again to confirm", + "RESET_SUCCESS": "Access token regenerated successfully", + "RESET_ERROR": "Unable to regenerate access token. Please try again" }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "音效通知", @@ -185,7 +190,8 @@ "OFFLINE": "離線" }, "SET_AVAILABILITY_SUCCESS": "Availability has been set successfully", - "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again" + "SET_AVAILABILITY_ERROR": "Couldn't set availability, please try again", + "IMPERSONATING_ERROR": "Cannot change availability while impersonating a user" }, "EMAIL": { "LABEL": "您的電子信箱地址", @@ -280,6 +286,7 @@ "REPORTS": "報表", "SETTINGS": "設定", "CONTACTS": "聯絡人", + "ACTIVE": "Active", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", diff --git a/app/javascript/dashboard/modules/widget-preview/components/WidgetHead.vue b/app/javascript/dashboard/modules/widget-preview/components/WidgetHead.vue index 4881c2a0a..5de9ca069 100644 --- a/app/javascript/dashboard/modules/widget-preview/components/WidgetHead.vue +++ b/app/javascript/dashboard/modules/widget-preview/components/WidgetHead.vue @@ -1,5 +1,6 @@ @@ -113,7 +137,7 @@ onMounted(() => { @close="closeContactPanel" /> -
+
{ @end="onDragEnd" > diff --git a/app/javascript/dashboard/routes/dashboard/settings/account/Index.vue b/app/javascript/dashboard/routes/dashboard/settings/account/Index.vue index 5681cb0f9..cc66d829f 100644 --- a/app/javascript/dashboard/routes/dashboard/settings/account/Index.vue +++ b/app/javascript/dashboard/routes/dashboard/settings/account/Index.vue @@ -16,6 +16,7 @@ import AccountId from './components/AccountId.vue'; import BuildInfo from './components/BuildInfo.vue'; import AccountDelete from './components/AccountDelete.vue'; import AutoResolve from './components/AutoResolve.vue'; +import AudioTranscription from './components/AudioTranscription.vue'; import SectionLayout from './components/SectionLayout.vue'; export default { @@ -26,6 +27,7 @@ export default { BuildInfo, AccountDelete, AutoResolve, + AudioTranscription, SectionLayout, WithLabel, NextInput, @@ -235,6 +237,7 @@ export default {
+
diff --git a/app/javascript/dashboard/routes/dashboard/settings/account/components/AudioTranscription.vue b/app/javascript/dashboard/routes/dashboard/settings/account/components/AudioTranscription.vue new file mode 100644 index 000000000..e0d561214 --- /dev/null +++ b/app/javascript/dashboard/routes/dashboard/settings/account/components/AudioTranscription.vue @@ -0,0 +1,51 @@ + + + diff --git a/app/javascript/dashboard/routes/dashboard/settings/inbox/Settings.vue b/app/javascript/dashboard/routes/dashboard/settings/inbox/Settings.vue index d9551c427..a3bb9f3f4 100644 --- a/app/javascript/dashboard/routes/dashboard/settings/inbox/Settings.vue +++ b/app/javascript/dashboard/routes/dashboard/settings/inbox/Settings.vue @@ -23,6 +23,8 @@ import { FEATURE_FLAGS } from '../../../../featureFlags'; import SenderNameExamplePreview from './components/SenderNameExamplePreview.vue'; import NextButton from 'dashboard/components-next/button/Button.vue'; import { INBOX_TYPES } from 'dashboard/helper/inbox'; +import { WIDGET_BUILDER_EDITOR_MENU_OPTIONS } from 'dashboard/constants/editor'; +import Editor from 'dashboard/components-next/Editor/Editor.vue'; export default { components: { @@ -43,6 +45,7 @@ export default { NextButton, InstagramReauthorize, DuplicateInboxBanner, + Editor, }, mixins: [inboxMixin], setup() { @@ -70,6 +73,7 @@ export default { selectedTabIndex: 0, selectedPortalSlug: '', showBusinessNameInput: false, + welcomeTaglineEditorMenuOptions: WIDGET_BUILDER_EDITOR_MENU_OPTIONS, }; }, computed: { @@ -480,10 +484,10 @@ export default { " /> -
-
- -
+ +