diff --git a/Gemfile b/Gemfile
index 677d56c1a..591630a82 100644
--- a/Gemfile
+++ b/Gemfile
@@ -47,7 +47,7 @@ gem 'redis-rack-cache'
gem 'dotenv-rails'
gem 'foreman'
gem 'puma'
-gem 'webpacker'
+gem 'webpacker', '~> 5.x'
##--- gems for authentication & authorization ---##
gem 'devise'
diff --git a/Gemfile.lock b/Gemfile.lock
index 00e93c5e1..fc5c613bb 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -141,7 +141,7 @@ GEM
coderay (1.1.3)
coercible (1.0.0)
descendants_tracker (~> 0.0.1)
- concurrent-ruby (1.1.6)
+ concurrent-ruby (1.1.7)
connection_pool (2.2.3)
crack (0.4.3)
safe_yaml (~> 1.0.0)
@@ -242,7 +242,7 @@ GEM
mime-types (~> 3.0)
multi_xml (>= 0.5.2)
httpclient (2.8.3)
- i18n (1.8.3)
+ i18n (1.8.5)
concurrent-ruby (~> 1.0)
ice_nine (0.11.2)
inflecto (0.0.2)
@@ -304,7 +304,7 @@ GEM
multipart-post (2.1.1)
netrc (0.11.0)
nio4r (2.5.2)
- nokogiri (1.10.9)
+ nokogiri (1.10.10)
mini_portile2 (~> 2.4.0)
oauth (0.5.4)
orm_adapter (0.5.0)
@@ -533,7 +533,7 @@ GEM
addressable (>= 2.3.6)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
- webpacker (5.1.1)
+ webpacker (5.2.1)
activesupport (>= 5.2)
rack-proxy (>= 0.6.1)
railties (>= 5.2)
@@ -545,7 +545,7 @@ GEM
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5)
wisper (2.0.0)
- zeitwerk (2.3.0)
+ zeitwerk (2.4.0)
PLATFORMS
ruby
@@ -625,7 +625,7 @@ DEPENDENCIES
valid_email2
web-console
webmock
- webpacker
+ webpacker (~> 5.x)
webpush
wisper (= 2.0.0)
diff --git a/README.md b/README.md
index 8d9fef405..0eb841bb8 100644
--- a/README.md
+++ b/README.md
@@ -23,40 +23,71 @@ ___
+Chatwoot is an open-source omnichannel customer support software. The development of Chatwoot started in 2016. It failed to succeed as a business and eventually shut up shop in 2017. During 2019 #Hacktoberfest, the maintainers decided to make it open-source, instead of letting the code rust in a private repo. With a pleasant surprise, Chatwoot became a trending project on Hacker News and best of all, got lots of love from the community.
Now, a failed project is back on track and the prospects are looking great. The team is back to working on the project and this time, we are building it in the open. Thanks to the ideas and contributions from the community.
-## Documentation
+---
-Detailed documentation is available at [www.chatwoot.com/docs](https://www.chatwoot.com/docs).
+### Features
-You can find the quick setup docs [here](https://www.chatwoot.com/docs/quick-setup).
+Chatwoot gives an integrated view of conversations happening in different communication channels.
-## Branching model
+It supports the following conversation channels:
+
+ - **Website**: Talk to your customers using our live chat widget and make use of our SDK to identify a user and provide contextual support.
+ - **Facebook**: Connect your Facebook pages and start replying to the direct messages to your page.
+ - **Twitter**: Connect your Twitter profiles and reply to direct messages or the tweets where you are mentioned.
+ - **Whatsapp**: Connect your Whatsapp business account and manage the conversation in Chatwoot
+ - **SMS**: Connect your Twilio SMS account and reply to the SMS queries in Chatwoot
+ - **API Channel**: Build custom communication channels using our API channel.
+ - **Email (beta)**: Forward all your email queries to Chatwoot and view it in our integrated dashboard.
+
+Other features include:
+
+- **Multi-brand inboxes**: Manage multiple brands or pages using a single dashboard.
+- **Private notes**: Inter team communication is possible using private notes in a conversation.
+- **Canned responses (Saved replies)**: Improve the response rate by adding saved replies for frequently asked questions.
+- **Conversation Labels**: Use conversation labelling to create custom workflows.
+- **Auto assignment**: Chatwoot intelligently assigns a ticket to the agents who have access to the inbox depending on their availability and load.
+- **Conversation continuity**: If the user has provided an email address through the chat widget, Chatwoot would send an email to the customer under the agent name so that the user can continue the conversation over the email.
+- **Multi-lingual support**: Chatwoot supports 10+ languages.
+- **Powerful API & Webhooks**: Extend the capability of the software using Chatwoot’s webhooks and APIs.
+- **Integrations**: Chatwoot natively integrates with Slack right now. Manage your conversations in Slack without logging into the dashboard.
+
+---
+
+### Documentation
+
+Detailed documentation is available at [www.chatwoot.com/help-center](https://www.chatwoot.com/help-center).
+
+---
+
+### Branching model
We use the [git-flow](https://nvie.com/posts/a-successful-git-branching-model/) branching model. The base branch is `develop`.
If you are looking for a stable version, please use the `master` or tags labelled as `v1.x.x`.
-## Heroku one-click deploy
+---
-Deploying chatwoot to heroku is a breeze. It's as simple as clicking this button:
+### Deployment
+
+#### Heroku one-click deploy
+
+Deploying Chatwoot to Heroku is a breeze. It's as simple as clicking this button:
[](https://heroku.com/deploy?template=https://github.com/chatwoot/chatwoot/tree/master)
-Follow this [link](https://www.chatwoot.com/docs/environment-variables) to understand setting the correct environment variables for the app to work with all the features. There might be breakages if you do not set the relevant environment variables. This applies to deploying the docker image as well.
+Follow this [link](https://www.chatwoot.com/docs/environment-variables) to understand setting the correct environment variables for the app to work with all the features. There might be breakages if you do not set the relevant environment variables.
-## Docker
+#### Other deployment options
-Follow our [docker development guide](https://www.chatwoot.com/docs/installation-guide-docker) to develop and debug the application using `docker-compose`.
+Please follow [deployment architecture guide](https://www.chatwoot.com/docs/deployment/architecture) to deploy with Docker or Caprover.
-Follow our [environment variables](https://www.chatwoot.com/docs/environment-variables/) guide to setup the environment for Docker.
+---
-## Contributors ✨
+### Contributors ✨
Thanks goes to all these [wonderful people](https://www.chatwoot.com/docs/contributors):
diff --git a/app/actions/contact_identify_action.rb b/app/actions/contact_identify_action.rb
index 75af71a1f..ff8efd3b5 100644
--- a/app/actions/contact_identify_action.rb
+++ b/app/actions/contact_identify_action.rb
@@ -33,7 +33,8 @@ class ContactIdentifyAction
end
def update_contact
- @contact.update!(params.slice(:name, :email, :identifier))
+ custom_attributes = params[:custom_attributes] ? @contact.custom_attributes.merge(params[:custom_attributes]) : @contact.custom_attributes
+ @contact.update!(params.slice(:name, :email, :identifier).merge({ custom_attributes: custom_attributes }))
ContactAvatarJob.perform_later(@contact, params[:avatar_url]) if params[:avatar_url].present?
end
diff --git a/app/controllers/api/v1/accounts/agents_controller.rb b/app/controllers/api/v1/accounts/agents_controller.rb
index 030c08045..dacd66e46 100644
--- a/app/controllers/api/v1/accounts/agents_controller.rb
+++ b/app/controllers/api/v1/accounts/agents_controller.rb
@@ -64,6 +64,6 @@ class Api::V1::Accounts::AgentsController < Api::V1::Accounts::BaseController
end
def agents
- @agents ||= Current.account.users
+ @agents ||= Current.account.users.order_by_full_name
end
end
diff --git a/app/controllers/api/v1/accounts/contacts_controller.rb b/app/controllers/api/v1/accounts/contacts_controller.rb
index eef50ef11..87b3898f1 100644
--- a/app/controllers/api/v1/accounts/contacts_controller.rb
+++ b/app/controllers/api/v1/accounts/contacts_controller.rb
@@ -12,14 +12,19 @@ class Api::V1::Accounts::ContactsController < Api::V1::Accounts::BaseController
def create
ActiveRecord::Base.transaction do
- @contact = Current.account.contacts.new(contact_create_params)
+ @contact = Current.account.contacts.new(contact_params)
@contact.save!
@contact_inbox = build_contact_inbox
end
end
def update
- @contact.update!(contact_params)
+ @contact.update!(contact_update_params)
+ rescue ActiveRecord::RecordInvalid => e
+ render json: {
+ message: e.record.errors.full_messages.join(', '),
+ contact: Contact.find_by(email: contact_params[:email])
+ }, status: :unprocessable_entity
end
def search
@@ -43,14 +48,21 @@ class Api::V1::Accounts::ContactsController < Api::V1::Accounts::BaseController
end
def contact_params
- params.require(:contact).permit(:name, :email, :phone_number)
+ params.require(:contact).permit(:name, :email, :phone_number, additional_attributes: {}, custom_attributes: {})
+ end
+
+ def contact_custom_attributes
+ return @contact.custom_attributes.merge(contact_params[:custom_attributes]) if contact_params[:custom_attributes]
+
+ @contact.custom_attributes
+ end
+
+ def contact_update_params
+ # we want the merged custom attributes not the original one
+ contact_params.except(:custom_attributes).merge({ custom_attributes: contact_custom_attributes })
end
def fetch_contact
@contact = Current.account.contacts.find(params[:id])
end
-
- def contact_create_params
- params.require(:contact).permit(:name, :email, :phone_number)
- end
end
diff --git a/app/controllers/api/v1/accounts/conversations_controller.rb b/app/controllers/api/v1/accounts/conversations_controller.rb
index 74f206e00..51b6aa079 100644
--- a/app/controllers/api/v1/accounts/conversations_controller.rb
+++ b/app/controllers/api/v1/accounts/conversations_controller.rb
@@ -25,6 +25,11 @@ class Api::V1::Accounts::ConversationsController < Api::V1::Accounts::BaseContro
head :ok
end
+ def transcript
+ ConversationReplyMailer.conversation_transcript(@conversation, params[:email])&.deliver_later if params[:email].present?
+ head :ok
+ end
+
def toggle_status
if params[:status]
@conversation.status = params[:status]
diff --git a/app/controllers/api/v1/accounts/inboxes_controller.rb b/app/controllers/api/v1/accounts/inboxes_controller.rb
index 9360b700f..d2b0dcb60 100644
--- a/app/controllers/api/v1/accounts/inboxes_controller.rb
+++ b/app/controllers/api/v1/accounts/inboxes_controller.rb
@@ -4,7 +4,7 @@ class Api::V1::Accounts::InboxesController < Api::V1::Accounts::BaseController
before_action :check_authorization
def index
- @inboxes = policy_scope(Current.account.inboxes.order_by_id.includes(:channel, :avatar_attachment))
+ @inboxes = policy_scope(Current.account.inboxes.order_by_name.includes(:channel, :avatar_attachment))
end
def create
diff --git a/app/controllers/api/v1/widget/contacts_controller.rb b/app/controllers/api/v1/widget/contacts_controller.rb
index 2a2b184fb..b58d26373 100644
--- a/app/controllers/api/v1/widget/contacts_controller.rb
+++ b/app/controllers/api/v1/widget/contacts_controller.rb
@@ -10,6 +10,6 @@ class Api::V1::Widget::ContactsController < Api::V1::Widget::BaseController
private
def permitted_params
- params.permit(:website_token, :identifier, :email, :name, :avatar_url)
+ params.permit(:website_token, :identifier, :email, :name, :avatar_url, custom_attributes: {})
end
end
diff --git a/app/controllers/api/v1/widget/conversations_controller.rb b/app/controllers/api/v1/widget/conversations_controller.rb
index c8d3b64a7..66b54d4b9 100644
--- a/app/controllers/api/v1/widget/conversations_controller.rb
+++ b/app/controllers/api/v1/widget/conversations_controller.rb
@@ -13,6 +13,16 @@ class Api::V1::Widget::ConversationsController < Api::V1::Widget::BaseController
head :ok
end
+ def transcript
+ if permitted_params[:email].present? && conversation.present?
+ ConversationReplyMailer.conversation_transcript(
+ conversation,
+ permitted_params[:email]
+ )&.deliver_later
+ end
+ head :ok
+ end
+
def toggle_typing
head :ok && return if conversation.nil?
@@ -32,6 +42,6 @@ class Api::V1::Widget::ConversationsController < Api::V1::Widget::BaseController
end
def permitted_params
- params.permit(:id, :typing_status, :website_token)
+ params.permit(:id, :typing_status, :website_token, :email)
end
end
diff --git a/app/drops/user_drop.rb b/app/drops/user_drop.rb
index e2876a58a..f10eee131 100644
--- a/app/drops/user_drop.rb
+++ b/app/drops/user_drop.rb
@@ -1,2 +1,5 @@
class UserDrop < BaseDrop
+ def available_name
+ @obj.try(:available_name)
+ end
end
diff --git a/app/javascript/dashboard/api/inbox/conversation.js b/app/javascript/dashboard/api/inbox/conversation.js
index 5a9173a7a..fa23fda66 100644
--- a/app/javascript/dashboard/api/inbox/conversation.js
+++ b/app/javascript/dashboard/api/inbox/conversation.js
@@ -53,6 +53,10 @@ class ConversationApi extends ApiClient {
},
});
}
+
+ sendEmailTranscript({ conversationId, email }) {
+ return axios.post(`${this.url}/${conversationId}/transcript`, { email });
+ }
}
export default new ConversationApi();
diff --git a/app/javascript/dashboard/api/specs/inbox/conversation.spec.js b/app/javascript/dashboard/api/specs/inbox/conversation.spec.js
index 4eceba728..ddea6b874 100644
--- a/app/javascript/dashboard/api/specs/inbox/conversation.spec.js
+++ b/app/javascript/dashboard/api/specs/inbox/conversation.spec.js
@@ -15,5 +15,6 @@ describe('#ConversationAPI', () => {
expect(conversationAPI).toHaveProperty('toggleTyping');
expect(conversationAPI).toHaveProperty('mute');
expect(conversationAPI).toHaveProperty('meta');
+ expect(conversationAPI).toHaveProperty('sendEmailTranscript');
});
});
diff --git a/app/javascript/dashboard/assets/scss/_foundation-custom.scss b/app/javascript/dashboard/assets/scss/_foundation-custom.scss
index 900dd4d9d..209874312 100644
--- a/app/javascript/dashboard/assets/scss/_foundation-custom.scss
+++ b/app/javascript/dashboard/assets/scss/_foundation-custom.scss
@@ -37,3 +37,9 @@ code {
padding: $space-two;
}
}
+
+.text-truncate {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
diff --git a/app/javascript/dashboard/assets/scss/_foundation-settings.scss b/app/javascript/dashboard/assets/scss/_foundation-settings.scss
index 9d3650f88..50957b385 100644
--- a/app/javascript/dashboard/assets/scss/_foundation-settings.scss
+++ b/app/javascript/dashboard/assets/scss/_foundation-settings.scss
@@ -347,7 +347,7 @@ $helptext-color: $header-color;
$helptext-font-size: $font-size-small;
$helptext-font-style: italic;
$input-prefix-color: $header-color;
-$input-prefix-background: $light-gray;
+$input-prefix-background: var(--b-100);
$input-prefix-border: 1px solid $color-border;
$input-prefix-padding: 1rem;
$form-label-color: $header-color;
diff --git a/app/javascript/dashboard/assets/scss/_helper-classes.scss b/app/javascript/dashboard/assets/scss/_helper-classes.scss
index ffd9e734e..cbcc31e42 100644
--- a/app/javascript/dashboard/assets/scss/_helper-classes.scss
+++ b/app/javascript/dashboard/assets/scss/_helper-classes.scss
@@ -55,5 +55,17 @@
input,
textarea,
select {
- border-radius: 4px !important;
+ border-radius: var(--space-smaller) !important;
+}
+
+.input-group {
+ .input-group-label:first-child {
+ border-bottom-left-radius: var(--space-smaller);
+ border-top-left-radius: var(--space-smaller);
+ }
+
+ .input-group-field {
+ border-bottom-left-radius: 0 !important;
+ border-top-left-radius: 0 !important;
+ }
}
diff --git a/app/javascript/dashboard/assets/scss/_mixins.scss b/app/javascript/dashboard/assets/scss/_mixins.scss
index 9bf19e1c2..36a87a4f9 100644
--- a/app/javascript/dashboard/assets/scss/_mixins.scss
+++ b/app/javascript/dashboard/assets/scss/_mixins.scss
@@ -235,3 +235,12 @@ $spinner-before-border-color: rgba(255, 255, 255, 0.7);
text-overflow: ellipsis;
white-space: nowrap;
}
+
+
+.justify-space-between {
+ justify-content: space-between;
+}
+
+.w-100 {
+ width: 100%;
+}
diff --git a/app/javascript/dashboard/assets/scss/widgets/_conv-header.scss b/app/javascript/dashboard/assets/scss/widgets/_conv-header.scss
index e1aef9307..878e5a788 100644
--- a/app/javascript/dashboard/assets/scss/widgets/_conv-header.scss
+++ b/app/javascript/dashboard/assets/scss/widgets/_conv-header.scss
@@ -15,10 +15,9 @@
.multiselect-box {
@include flex;
@include flex-align($x: justify, $y: middle);
- @include margin(0 $space-small);
@include border-light;
border-radius: $space-smaller;
- margin-right: $space-normal;
+ margin-right: var(--space-small);
&::before {
color: $medium-gray;
diff --git a/app/javascript/dashboard/components/buttons/Button.vue b/app/javascript/dashboard/components/buttons/Button.vue
new file mode 100644
index 000000000..ecd43f39f
--- /dev/null
+++ b/app/javascript/dashboard/components/buttons/Button.vue
@@ -0,0 +1,43 @@
+
+
+
+
+
diff --git a/app/javascript/dashboard/components/buttons/ResolveButton.vue b/app/javascript/dashboard/components/buttons/ResolveAction.vue
similarity index 68%
rename from app/javascript/dashboard/components/buttons/ResolveButton.vue
rename to app/javascript/dashboard/components/buttons/ResolveAction.vue
index 9b1181426..8d99d3ce3 100644
--- a/app/javascript/dashboard/components/buttons/ResolveButton.vue
+++ b/app/javascript/dashboard/components/buttons/ResolveAction.vue
@@ -12,8 +12,6 @@
+
+
diff --git a/app/javascript/dashboard/components/widgets/conversation/CannedResponse.vue b/app/javascript/dashboard/components/widgets/conversation/CannedResponse.vue
index 33fbadf67..e80adf24d 100644
--- a/app/javascript/dashboard/components/widgets/conversation/CannedResponse.vue
+++ b/app/javascript/dashboard/components/widgets/conversation/CannedResponse.vue
@@ -87,11 +87,3 @@ export default {
},
};
-
-
diff --git a/app/javascript/dashboard/components/widgets/conversation/ConversationBox.vue b/app/javascript/dashboard/components/widgets/conversation/ConversationBox.vue
index 6d46af8a1..2e0a89cb2 100644
--- a/app/javascript/dashboard/components/widgets/conversation/ConversationBox.vue
+++ b/app/javascript/dashboard/components/widgets/conversation/ConversationBox.vue
@@ -4,7 +4,7 @@
v-if="currentChat.id"
:inbox-id="inboxId"
:is-contact-panel-open="isContactPanelOpen"
- @contactPanelToggle="onToggleContactPanel"
+ @contact-panel-toggle="onToggleContactPanel"
/>
Labels
Labels help you to categorize conversations and prioritize them. You can assign label to a conversation from the sidepanel.
Labels are tied to the account and can be used to create custom workflows in your organization. You can assign custom color to a label, it makes it easier to identify the label. You will be able to display the label on the sidebar to filter the conversations easily.
Etiquetas
Las etiquetas le ayudan a categorizar las conversaciones y priorizarlas. Puede asignar la etiqueta a una conversación desde el panel latera.
Las etiquetas están vinculadas a la cuenta y pueden utilizarse para crear flujos de trabajo personalizados en su organización. Puede asignar un color personalizado a una etiqueta, hace más fácil identificarla. Podrás mostrar la etiqueta en la barra lateral para filtrar las conversaciones fácilmente.
Labels
Labels help you to categorize conversations and prioritize them. You can assign label to a conversation from the sidepanel.
Labels are tied to the account and can be used to create custom workflows in your organization. You can assign custom color to a label, it makes it easier to identify the label. You will be able to display the label on the sidebar to filter the conversations easily.
Labels
Labels help you to categorize conversations and prioritize them. You can assign label to a conversation from the sidepanel.
Labels are tied to the account and can be used to create custom workflows in your organization. You can assign custom color to a label, it makes it easier to identify the label. You will be able to display the label on the sidebar to filter the conversations easily.
Étiquettes
Les étiquettes vous aident à catégoriser les conversations et à les prioriser. Vous pouvez assigner une étiquette à une conversation depuis le panneau latéral.
Les étiquettes sont liées au compte et peuvent être utilisées pour créer des processus personnalisés dans votre entreprise. Vous pouvez assigner une couleur personnalisée à une étiquette, cela rend plus facile l'identification de l'étiquette. Vous serez en mesure d'afficher l'étiquette dans la barre latérale pour filtrer les conversations facilement.
Agents
An Agent is a member of your Customer Support team.
Agents will be able to view and reply to messages from your users. The list shows all agents currently in your account.
Click on Add Agent to add a new agent. Agent you add will receive an email with a confirmation link to activate their account, after which they can access Chatwoot and respond to messages.
Access to Chatwoot's features are based on following roles.
Agent - Agents with this role can only access inboxes, reports and conversations. They can assign conversations to other agents or themselves and resolve conversations.
Administrator - Administrator will have access to all Chatwoot features enabled for your account, including settings, along with all of a normal agents' privileges.
", + "SIDEBAR_TXT": "ഏജന്റുമാർ b>
നിങ്ങളുടെ ഉപഭോക്തൃ പിന്തുണാ ടീമിലെ ഒരു അംഗമാണ് ഏജൻറ് .
നിങ്ങളുടെ ഉപയോക്താക്കളിൽ നിന്നുള്ള സന്ദേശങ്ങൾ കാണാനും മറുപടി നൽകാനും ഏജന്റുമാർക്ക് കഴിയും. നിലവിൽ നിങ്ങളുടെ accountലുള്ള എല്ലാ ഏജന്റുമാരെയും പട്ടിക കാണിക്കുന്നു.
ഒരു പുതിയ ഏജന്റിനെ ചേർക്കാൻ ഏജന്റിനെ ചേർക്കുക b> ക്ലിക്കുചെയ്യുക. നിങ്ങൾ ചേർത്ത ഏജന്റിന് അവരുടെ account സജീവമാക്കുന്നതിന് ഒരു സ്ഥിരീകരണ ലിങ്ക് ഉള്ള ഒരു ഇമെയിൽ ലഭിക്കും, അതിനുശേഷം അവർക്ക് Chatwoot ആക്സസ് ചെയ്യാനും സന്ദേശങ്ങളോട് പ്രതികരിക്കാനും കഴിയും.
ചാറ്റ്വൂട്ടിന്റെ സവിശേഷതകളിലേക്കുള്ള ആക്സസ് ഇനിപ്പറയുന്ന റോളുകളെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്.
ഏജൻറ് - ഈ റോൾ ഉള്ള ഏജന്റുമാർക്ക് ഇൻബോക്സുകൾ, റിപ്പോർട്ടുകൾ, സംഭാഷണങ്ങൾ എന്നിവ മാത്രമേ ആക്സസ് ചെയ്യാൻ കഴിയൂ. അവർക്ക് മറ്റ് ഏജന്റുമാരുമായോ തങ്ങളുമായോ സംഭാഷണങ്ങൾ നിയോഗിക്കാനും സംഭാഷണങ്ങൾ പരിഹരിക്കാനും കഴിയും. സാധാരണ ഏജന്റുമാരുടെ പ്രത്യേകാവകാശങ്ങൾ.
", "AGENT_TYPES": [ { "name": "അഡ്മിനിസ്ട്രേറ്റർ", @@ -61,7 +61,7 @@ "TITLE": "ഇല്ലാതാക്കൽ സ്ഥിരീകരിക്കുക", "MESSAGE": "ഏജന്റുമാർ
ഒരു ഏജൻറ് നിങ്ങളുടെ ഉപഭോക്തൃ പിന്തുണാ ടീമിലെ ഒരു അംഗമാണ്.
ഏജന്റുമാർക്ക് നിങ്ങളുടെ ഉപയോക്താക്കളിൽ നിന്നുള്ള സന്ദേശങ്ങൾ കാണാനും മറുപടി നൽകാനും കഴിയും. നിങ്ങളുടെ അക്കൗണ്ടിലുള്ള എല്ലാ ഏജന്റുമാരെയും ഈ പട്ടിക കാണിക്കുന്നു. p>
ഒരു പുതിയ ഏജന്റിനെ ചേർക്കുന്നതിന് ഏജന്റിനെ ചേർക്കുക b> ബട്ടൺ ക്ലിക്കുചെയ്യുക. നിങ്ങൾ ചേർത്ത ഏജന്റിന് അവരുടെ അക്കൗണ്ട് സജീവമാക്കുന്നതിന് ഒരു സ്ഥിരീകരണ ലിങ്കുള്ള ഇമെയിൽ ലഭിക്കും. അതിനുശേഷം അവർക്ക് ചാറ്റ് വൂട്ട് ആക്സസ് ചെയ്യാനും സന്ദേശങ്ങളോട് പ്രതികരിക്കാനും കഴിയും.
ചാറ്റ് വൂട്ടിന്റെ സവിശേഷതകളിലേക്കുള്ള ആക്സസ് ഇനിപ്പറയുന്ന റോളുകളെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്.
ഏജൻറ് b> - ഈ റോൾ ഉള്ള ഏജന്റുമാർക്ക് ഇൻബോക്സുകൾ, റിപ്പോർട്ടുകൾ, സംഭാഷണങ്ങൾ എന്നിവ മാത്രമേ ആക്സസ് ചെയ്യാൻ കഴിയൂ. അവർക്ക് മറ്റ് ഏജന്റുമാരുടെയോ അല്ലെങ്കിൽ തങ്ങളുടേയോ സംഭാഷണങ്ങൾ നിർണ്ണയിക്കാനും സംഭാഷണങ്ങൾ പരിഹരിക്കാനും കഴിയും.
അഡ്മിനിസ്ട്രേറ്റർ - ഒരു സാധാരണ ഏജന്റിന്റെ പ്രത്യേകാവകാശങ്ങളോടൊപ്പം ക്രമീകരണങ്ങളും ബില്ലിംഗും ഉൾപ്പെടെ നിങ്ങളുടെ അക്കൗണ്ടിൽ ലഭ്യമായ എല്ലാ ചാറ്റ് വൂട്ട് സവിശേഷതകളിലേക്കും ആക്സസ് ഉണ്ടായിരിക്കുക. p> ", "YES": "അതെ, ഇല്ലാതാക്കുക ", - "NO": "No, Keep " + "NO": "ഇല്ല, സൂക്ഷിക്കുക" } }, "EDIT": { diff --git a/app/javascript/dashboard/i18n/locale/ml/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ml/cannedMgmt.json index bbf241f15..d5d29ae96 100644 --- a/app/javascript/dashboard/i18n/locale/ml/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/cannedMgmt.json @@ -69,7 +69,7 @@ "TITLE": "ഇല്ലാതാക്കൽ സ്ഥിരീകരിക്കുക", "MESSAGE": "ഇല്ലാതാക്കണമെന്ന് ഉറപ്പാണോ", "YES": "അതെ, ഇല്ലാതാക്കുക", - "NO": "No, Keep " + "NO": "ഇല്ല, സൂക്ഷിക്കുക" } } } diff --git a/app/javascript/dashboard/i18n/locale/ml/chatlist.json b/app/javascript/dashboard/i18n/locale/ml/chatlist.json index c0c835322..429135b83 100644 --- a/app/javascript/dashboard/i18n/locale/ml/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ml/chatlist.json @@ -45,6 +45,10 @@ { "TEXT": "പരിഹരിച്ചത്", "VALUE": "resolved" + }, + { + "TEXT": "ബോട്ട്", + "VALUE": "bot" } ], "ATTACHMENTS": { @@ -72,6 +76,9 @@ "ICON": "ion-link", "CONTENT": "ഒരു യു. ആർ. എൽ പങ്കിട്ടു" } - } + }, + "RECEIVED_VIA_EMAIL": "ഇമെയിൽ വഴി ലഭിച്ചു", + "VIEW_TWEET_IN_TWITTER": "ട്വിറ്ററിൽ ട്വീറ്റ് കാണുക", + "REPLY_TO_TWEET": "ഈ ട്വീറ്റിന് മറുപടി നൽകുക" } } diff --git a/app/javascript/dashboard/i18n/locale/ml/contact.json b/app/javascript/dashboard/i18n/locale/ml/contact.json index 485c20888..31f6bf41f 100644 --- a/app/javascript/dashboard/i18n/locale/ml/contact.json +++ b/app/javascript/dashboard/i18n/locale/ml/contact.json @@ -9,21 +9,26 @@ "NO_RECORDS_FOUND": "ഈ കോൺടാക്റ്റുമായി മുമ്പത്തെ സംഭാഷണങ്ങളൊന്നും ബന്ധപ്പെടുത്തിയിട്ടില്ല.", "TITLE": "മുമ്പത്തെ സംഭാഷണങ്ങൾ" }, + "CUSTOM_ATTRIBUTES": { + "TITLE": "ഇഷ്ടാനുസൃത ആട്രിബ്യൂട്ടുകൾ" + }, "LABELS": { "TITLE": "സംഭാഷണ ലേബലുകൾ", "MODAL": { - "TITLE": "Labels for", - "ACTIVE_LABELS": "Labels added to the conversation", - "INACTIVE_LABELS": "Labels available in the account", - "REMOVE": "Click on X icon to remove the label", - "ADD": "Click on + icon to add the label", - "UPDATE_BUTTON": "Update labels", + "TITLE": "ലേബലുകൾ", + "ACTIVE_LABELS": "സംഭാഷണത്തിലേക്ക് ലേബലുകൾ ചേർത്തു", + "INACTIVE_LABELS": "അക്കൗണ്ടിൽ ലേബലുകൾ ലഭ്യമാണ്", + "REMOVE": "ലേബൽ നീക്കംചെയ്യുന്നതിന് എക്സ് ഐക്കണിൽ ക്ലിക്കുചെയ്യുക", + "ADD": "ലേബൽ ചേർക്കാൻ + ഐക്കണിൽ ക്ലിക്കുചെയ്യുക", + "UPDATE_BUTTON": "ലേബലുകൾ അപ്ഡേറ്റുചെയ്യുക", "UPDATE_ERROR": "ലേബലുകൾ അപ്ഡേറ്റ് ചെയ്യാൻ കഴിഞ്ഞില്ല, വീണ്ടും ശ്രമിക്കുക." }, - "NO_LABELS_TO_ADD": "There are no more labels defined in the account.", - "NO_AVAILABLE_LABELS": "There are no labels added to this conversation." + "NO_LABELS_TO_ADD": "അക്കൗണ്ടിൽ കൂടുതൽ ലേബലുകൾ നിർവചിച്ചിട്ടില്ല.", + "NO_AVAILABLE_LABELS": "ഈ സംഭാഷണത്തിലേക്ക് ലേബലുകളൊന്നും ചേർത്തിട്ടില്ല." }, - "MUTE_CONTACT": "Mute Contact", + "MUTE_CONTACT": "സംഭാഷണം ഒച്ചയിലാതാക്കുക", + "MUTED_SUCCESS": "ഈ സംഭാഷണം 6 മണിക്കൂർ നിശബ്ദമാക്കി", + "SEND_TRANSCRIPT": "ട്രാൻസ്ക്രിപ്റ്റ് അയയ്ക്കുക", "EDIT_LABEL": "എഡിറ്റുചെയ്യുക" } } diff --git a/app/javascript/dashboard/i18n/locale/ml/conversation.json b/app/javascript/dashboard/i18n/locale/ml/conversation.json index 4bfe1caca..1661cd72d 100644 --- a/app/javascript/dashboard/i18n/locale/ml/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ml/conversation.json @@ -9,6 +9,11 @@ "CLICK_HERE": "ഇവിടെ ക്ലിക്കു ചെയ്യുക", "LOADING_INBOXES": "ഇൻബോക്സുകൾ ലോഡു ചെയ്യുന്നു", "LOADING_CONVERSATIONS": "സംഭാഷണങ്ങൾ ലോഡു ചെയ്യുന്നു", + "CANNOT_REPLY": "നിങ്ങൾക്ക് മറുപടി നൽകാൻ കഴിയില്ല", + "24_HOURS_WINDOW": "24 മണിക്കൂർ സന്ദേശ വിൻഡോ നിയന്ത്രണം", + "LAST_INCOMING_TWEET": "അവസാന ഇൻകമിംഗ് ട്വീറ്റിന് നിങ്ങൾ മറുപടി നൽകുന്നു", + "REPLYING_TO": "നിങ്ങൾ ഇതിന് മറുപടി നൽകുന്നു:", + "REMOVE_SELECTION": "തിരഞ്ഞെടുക്കൽ നീക്കംചെയ്യുക", "DOWNLOAD": "ഡൗൺലോഡ്", "HEADER": { "RESOLVE_ACTION": "പരിഹരിക്കുക", @@ -31,5 +36,22 @@ "VISIBLE_TO_AGENTS": "സ്വകാര്യ കുറിപ്പ്: നിങ്ങൾക്കും നിങ്ങളുടെ ടീമിനും മാത്രം ദൃശ്യമാണ്", "CHANGE_STATUS": "സംഭാഷണ നില മാറ്റി", "CHANGE_AGENT": "സംഭാഷണ നിയുക്തനെ മാറ്റി" + }, + "EMAIL_TRANSCRIPT": { + "TITLE": "സംഭാഷണ ട്രാൻസ്ക്രിപ്റ്റ് അയയ്ക്കുക", + "DESC": "സംഭാഷണ ട്രാൻസ്ക്രിപ്റ്റിന്റെ ഒരു പകർപ്പ് നിർദ്ദിഷ്ട ഇമെയിൽ വിലാസത്തിലേക്ക് അയയ്ക്കുക", + "SUBMIT": "സമർപ്പിക്കുക", + "CANCEL": "റദ്ദാക്കുക", + "SEND_EMAIL_SUCCESS": "ചാറ്റ് ട്രാൻസ്ക്രിപ്റ്റ് വിജയകരമായി അയച്ചു", + "SEND_EMAIL_ERROR": "ഒരു പിശക് ഉണ്ടായിരുന്നു, ദയവായി വീണ്ടും ശ്രമിക്കുക", + "FORM": { + "SEND_TO_CONTACT": "ഉപഭോക്താവിന് ട്രാൻസ്ക്രിപ്റ്റ് അയയ്ക്കുക", + "SEND_TO_AGENT": "നിയുക്ത ഏജന്റിന്റെ ട്രാൻസ്ക്രിപ്റ്റ് അയയ്ക്കുക", + "SEND_TO_OTHER_EMAIL_ADDRESS": "മറ്റൊരു ഇമെയിൽ വിലാസത്തിലേക്ക് ട്രാൻസ്ക്രിപ്റ്റ് അയയ്ക്കുക", + "EMAIL": { + "PLACEHOLDER": "ഒരു ഇമെയിൽ വിലാസം നൽകുക", + "ERROR": "ദയവായി സാധുവായ ഒരു ഇമെയിൽ വിലാസം നൽകുക" + } + } } } diff --git a/app/javascript/dashboard/i18n/locale/ml/generalSettings.json b/app/javascript/dashboard/i18n/locale/ml/generalSettings.json index 1e69e8706..eb9d48789 100644 --- a/app/javascript/dashboard/i18n/locale/ml/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ml/generalSettings.json @@ -2,7 +2,7 @@ "GENERAL_SETTINGS": { "TITLE": "അക്കൗണ്ട് ക്രമീകരണങ്ങൾ", "SUBMIT": "ക്രമീകരണങ്ങൾ അപ്ഡേറ്റു ചെയ്യുക", - "BACK": "Back", + "BACK": "മടങ്ങിപ്പോവുക", "UPDATE": { "ERROR": "ക്രമീകരണങ്ങൾ അപ്ഡേറ്റു ചെയ്യാനായില്ല, വീണ്ടും ശ്രമിക്കുക!", "SUCCESS": "അക്കൗണ്ട് ക്രമീകരണങ്ങൾ വിജയകരമായി അപ്ഡേറ്റു ചെയ്തു" @@ -24,23 +24,18 @@ "ERROR": "" }, "DOMAIN": { - "LABEL": "Domain", - "PLACEHOLDER": "Your website domain", + "LABEL": "ഇൻകമിംഗ് ഇമെയിൽ ഡൊമെയ്ൻ", + "PLACEHOLDER": "നിങ്ങൾക്ക് ഇമെയിലുകൾ ലഭിക്കുന്ന ഡൊമെയ്ൻ", "ERROR": "" }, "SUPPORT_EMAIL": { - "LABEL": "Support Email", - "PLACEHOLDER": "Your company's support email", + "LABEL": "ഇമെയിൽ", + "PLACEHOLDER": "നിങ്ങളുടെ കമ്പനിയുടെ പിന്തുണാ ഇമെയിൽ", "ERROR": "" }, - "ENABLE_DOMAIN_EMAIL": { - "LABEL": "Enable domain email", - "PLACEHOLDER": "Enable the custom domain email", - "ERROR": "", - "OPTIONS": { - "ENABLED": "പ്രവർത്തനക്ഷമമാക്കി", - "DISABLED": "പ്രവർത്തനരഹിതമാക്കി" - } + "FEATURES": { + "INBOUND_EMAIL_ENABLED": "നിങ്ങളുടെ അക്കൗണ്ടിനായി ഇമെയിലുകളുമായുള്ള സംഭാഷണ തുടർച്ച പ്രവർത്തനക്ഷമമാക്കി.", + "CUSTOM_EMAIL_DOMAIN_ENABLED": "നിങ്ങളുടെ ഇഷ്ടാനുസൃത ഡൊമെയ്നിൽ നിങ്ങൾക്ക് ഇപ്പോൾ ഇമെയിലുകൾ സ്വീകരിക്കാൻ കഴിയും." } } } diff --git a/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json index e2f427963..1d3e2e0ef 100644 --- a/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json @@ -1,7 +1,7 @@ { "INBOX_MGMT": { "HEADER": "ഇൻബോക്സുകൾ", - "SIDEBAR_TXT": "
Inbox
When you connect a website or a facebook Page to Chatwoot, it is called an Inbox. You can have unlimited inboxes in your Chatwoot account.
Click on Add Inbox to connect a website or a Facebook Page.
In the Dashboard, you can see all the conversations from all your inboxes in a single place and respond to them under the `Conversations` tab.
You can also see conversations specific to an inbox by clicking on the inbox name on the left pane of the dashboard.
", + "SIDEBAR_TXT": "ഇൻബോക്സ്
നിങ്ങൾ ഒരു വെബ്സൈറ്റ് അല്ലെങ്കിൽ ഒരു ഫേസ്ബുക്ക് പേജ് ചാറ്റ്വൂട്ടിലേക്ക് ബന്ധിപ്പിക്കുമ്പോൾ, അതിനെ ഇൻബോക്സ് എന്ന് വിളിക്കുന്നു. നിങ്ങളുടെ ചാറ്റ്വൂട്ട് അക്ക in ണ്ടിൽ പരിധിയില്ലാത്ത ഇൻബോക്സുകൾ നേടാൻ കഴിയും.
ഒരു വെബ്സൈറ്റോ ഫേസ്ബുക്ക് പേജോ ബന്ധിപ്പിക്കുന്നതിന് ഇൻബോക്സ് ചേർക്കുക ക്ലിക്കുചെയ്യുക.
ഡാഷ്ബോർഡിൽ, നിങ്ങളുടെ എല്ലാ ഇൻബോക്സുകളിൽ നിന്നുമുള്ള എല്ലാ സംഭാഷണങ്ങളും ഒരൊറ്റ സ്ഥലത്ത് കാണാനും `സംഭാഷണങ്ങൾ 'ടാബിന് കീഴിൽ അവയോട് പ്രതികരിക്കാനും കഴിയും.
ഡാഷ്ബോർഡിന്റെ ഇടത് പാളിയിലെ ഇൻബോക്സ് നാമത്തിൽ ക്ലിക്കുചെയ്തുകൊണ്ട് നിങ്ങൾക്ക് ഇൻബോക്സിന് പ്രത്യേകമായുള്ള സംഭാഷണങ്ങളും കാണാൻ കഴിയും.
", "LIST": { "404": "ഈ അക്കൗണ്ടിലേക്കു ഇൻബോക്സുകളൊന്നും ബന്ധിപ്പിച്ചിട്ടില്ല." }, @@ -30,12 +30,12 @@ "ADD": { "FB": { "HELP": "സൈൻ ഇൻ ചെയ്യുന്നതിലൂടെ, നിങ്ങളുടെ പേജിന്റെ സന്ദേശങ്ങളിലേക്ക് മാത്രമേ ഞങ്ങൾക്ക് പ്രവേശനം ലഭിക്കൂ. നിങ്ങളുടെ സ്വകാര്യ സന്ദേശങ്ങൾ ഒരിക്കലും ചാറ്റ് വൂട്ട് ഉപയോഗിച്ച് ആക്സസ് ചെയ്യാൻ കഴിയില്ല.", - "CHOOSE_PAGE": "Choose Page", - "CHOOSE_PLACEHOLDER": "Select a page from the list", - "INBOX_NAME": "Inbox Name", - "ADD_NAME": "Add a name for your inbox", - "PICK_NAME": "Pick A Name Your Inbox", - "PICK_A_VALUE": "Pick a value" + "CHOOSE_PAGE": "പേജ് തിരഞ്ഞെടുക്കുക", + "CHOOSE_PLACEHOLDER": "ലിസ്റ്റിൽ നിന്ന് ഒരു പേജ് തിരഞ്ഞെടുക്കുക", + "INBOX_NAME": "ഇൻബോക്സ് നാമം", + "ADD_NAME": "നിങ്ങളുടെ ഇൻബോക്സിനായി ഒരു പേര് ചേർക്കുക", + "PICK_NAME": "നിങ്ങളുടെ ഇൻബോക്സിന്റെ പേര് തിരഞ്ഞെടുക്കുക", + "PICK_A_VALUE": "ഒരു മൂല്യം തിരഞ്ഞെടുക്കുക" }, "TWITTER": { "HELP": "നിങ്ങളുടെ ട്വിറ്റർ പ്രൊഫൈൽ ഒരു ചാനലായി ചേർക്കുന്നതിന്, 'ട്വിറ്ററിനൊപ്പം പ്രവേശിക്കുക' ക്ലിക്കുചെയ്ത് നിങ്ങളുടെ ട്വിറ്റർ പ്രൊഫൈൽ പ്രാമാണീകരിക്കേണ്ടതുണ്ട് " @@ -45,7 +45,7 @@ "DESC": "നിങ്ങളുടെ വെബ്സൈറ്റിനായി ഒരു ചാനൽ സൃഷ്ടിച്ച് ഞങ്ങളുടെ വെബ്സൈറ്റ് വിജറ്റ് വഴി ഉപഭോക്താക്കളെ പിന്തുണയ്ക്കാൻ ആരംഭിക്കുക.", "LOADING_MESSAGE": "വെബ്സൈറ്റ് സപ്പോർട്ട് ചാനൽ സൃഷ്ടിക്കുന്നു", "CHANNEL_AVATAR": { - "LABEL": "Channel Avatar" + "LABEL": "ചാനൽ അവതാർ" }, "CHANNEL_NAME": { "LABEL": "വെബ്സൈറ്റിന്റെ പേര്", @@ -56,20 +56,20 @@ "PLACEHOLDER": "നിങ്ങളുടെ വെബ്സൈറ്റ് ഡൊമെയ്ൻ നൽകുക (ഉദാ: punnyalan.com)" }, "CHANNEL_WELCOME_TITLE": { - "LABEL": "Welcome Heading", - "PLACEHOLDER": "Hi there !" + "LABEL": "സ്വാഗത തലക്കെട്ട്", + "PLACEHOLDER": "ഹേയ്, അവിടെയുണ്ടോ!" }, "CHANNEL_WELCOME_TAGLINE": { - "LABEL": "Welcome Tagline", - "PLACEHOLDER": "We make it simple to connect with us. Ask us anything, or share your feedback." + "LABEL": "ടാഗ്ലൈൻ സ്വാഗതം", + "PLACEHOLDER": "ഞങ്ങളുമായി കണക്റ്റുചെയ്യുന്നത് ഞങ്ങൾ ലളിതമാക്കുന്നു. ഞങ്ങളോട് എന്തും ചോദിക്കുക, അല്ലെങ്കിൽ നിങ്ങളുടെ ഫീഡ്ബാക്ക് പങ്കിടുക." }, "CHANNEL_GREETING_MESSAGE": { - "LABEL": "Channel greeting message", - "PLACEHOLDER": "Acme Inc typically replies in a few hours." + "LABEL": "ചാനൽ അഭിവാദ്യ സന്ദേശം", + "PLACEHOLDER": "Acme Inc സാധാരണയായി കുറച്ച് മണിക്കൂറിനുള്ളിൽ മറുപടി നൽകുന്നു." }, "CHANNEL_GREETING_TOGGLE": { - "LABEL": "Enable channel greeting", - "HELP_TEXT": "Send a greeting message to the user when he starts the conversation.", + "LABEL": "ചാനൽ അഭിവാദ്യം പ്രവർത്തനക്ഷമമാക്കുക", + "HELP_TEXT": "സംഭാഷണം ആരംഭിക്കുമ്പോൾ ഉപയോക്താവിന് ഒരു അഭിവാദ്യ സന്ദേശം അയയ്ക്കുക.", "ENABLED": "പ്രവർത്തനക്ഷമമാക്കി", "DISABLED": "പ്രവർത്തനരഹിതമാക്കി" }, @@ -88,8 +88,8 @@ "ERROR": "ഈ ഫീൽഡ് ആവശ്യമാണ്" }, "CHANNEL_TYPE": { - "LABEL": "Channel Type", - "ERROR": "Please select your Channel Type" + "LABEL": "ചാനൽ തരം", + "ERROR": "നിങ്ങളുടെ ചാനൽ തരം തിരഞ്ഞെടുക്കുക" }, "AUTH_TOKEN": { "LABEL": "ഓത്ത് ടോക്കൺ", @@ -115,6 +115,43 @@ "ERROR_MESSAGE": "ഞങ്ങൾക്ക് ട്വിലിയോ ക്രെഡൻഷ്യലുകൾ പ്രാമാണീകരിക്കാൻ കഴിഞ്ഞില്ല, ദയവായി വീണ്ടും ശ്രമിക്കുക" } }, + "API_CHANNEL": { + "TITLE": "API Channel", + "DESC": "Integrate with API channel and start supporting your customers.", + "CHANNEL_NAME": { + "LABEL": "ചാനലിന്റെ പേര്", + "PLACEHOLDER": "ഈ ചാനലിനു ദയവായി ഒരു പേര് നൽകുക", + "ERROR": "ഈ ഫീൽഡ് ആവശ്യമാണ്" + }, + "WEBHOOK_URL": { + "LABEL": "വെബ്ഹുക്ക് യുആർഎൽ", + "SUBTITLE": "Configure the URL where you want to recieve callbacks on events.", + "PLACEHOLDER": "വെബ്ഹുക്ക് യുആർഎൽ" + }, + "SUBMIT_BUTTON": "Create API Channel", + "API": { + "ERROR_MESSAGE": "We were not able to save the api channel" + } + }, + "EMAIL_CHANNEL": { + "TITLE": "Email Channel", + "DESC": "Integrate you email inbox.", + "CHANNEL_NAME": { + "LABEL": "ചാനലിന്റെ പേര്", + "PLACEHOLDER": "ഈ ചാനലിനു ദയവായി ഒരു പേര് നൽകുക", + "ERROR": "ഈ ഫീൽഡ് ആവശ്യമാണ്" + }, + "EMAIL": { + "LABEL": "ഇമെയിൽ", + "SUBTITLE": "Email where your customers sends you support tickets", + "PLACEHOLDER": "ഇമെയിൽ" + }, + "SUBMIT_BUTTON": "Create Email Channel", + "API": { + "ERROR_MESSAGE": "We were not able to save the email channel" + }, + "FINISH_MESSAGE": "Start forwarding your emails to the following email address." + }, "AUTH": { "TITLE": "ചാനലുകൾ", "DESC": "നിലവിൽ ഞങ്ങൾ വെബ്സൈറ്റ് തത്സമയ ചാറ്റ് വിഡ്ജറ്റുകൾ, ഫേസ്ബുക്ക് പേജുകൾ, ട്വിറ്റർ പ്രൊഫൈലുകൾ എന്നിവ പ്ലാറ്റ്ഫോമുകളായി പിന്തുണയ്ക്കുന്നു. വാട്ട്സ്ആപ്പ്, ഇമെയിൽ, ടെലിഗ്രാം, ലൈൻ എന്നിവപോലുള്ള കൂടുതൽ പ്ലാറ്റ്ഫോമുകൾ ഞങ്ങളുടെ പക്കലുണ്ട്, അവ ഉടൻ പുറത്തിറങ്ങുന്നത് ആയിരിക്കും." @@ -168,14 +205,24 @@ "TITLE": "ഇല്ലാതാക്കൽ സ്ഥിരീകരിക്കുക", "MESSAGE": "ഇല്ലാതാക്കണമെന്നു ഉറപ്പാണോ ", "YES": "അതെ, ഇല്ലാതാക്കുക ", - "NO": "No, Keep " + "NO": "ഇല്ല, സൂക്ഷിക്കുക" }, "API": { "SUCCESS_MESSAGE": "ഇൻബോക്സ് വിജയകരമായി ഇല്ലാതാക്കിയിരിക്കുന്നു", "ERROR_MESSAGE": "ഇൻബോക്സ് ഇല്ലാതാക്കാൻ കഴിഞ്ഞില്ല. ദയവായി പിന്നീട് വീണ്ടും ശ്രമിക്കുക." } }, + "TABS": { + "SETTINGS": "ക്രമീകരണങ്ങൾ", + "COLLABORATORS": "Collaborators", + "CONFIGURATION": "Configuration" + }, "SETTINGS": "ക്രമീകരണങ്ങൾ", + "FEATURES": { + "LABEL": "Features", + "DISPLAY_FILE_PICKER": "Display file picker on the widget", + "DISPLAY_EMOJI_PICKER": "Display emoji picker on the widget" + }, "SETTINGS_POPUP": { "MESSENGER_HEADING": "മെസഞ്ചർ സ്ക്രിപ്റ്റ്", "MESSENGER_SUB_HEAD": "ഈ ബട്ടൺ നിങ്ങളുടെ ബോഡി ടാഗിനുള്ളിൽ സ്ഥാപിക്കുക", diff --git a/app/javascript/dashboard/i18n/locale/ml/integrations.json b/app/javascript/dashboard/i18n/locale/ml/integrations.json index e88d9d128..a22b052e6 100644 --- a/app/javascript/dashboard/i18n/locale/ml/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ml/integrations.json @@ -53,11 +53,11 @@ "DELETE": { "BUTTON_TEXT": "ഇല്ലാതാക്കുക", "API": { - "SUCCESS_MESSAGE": "Integration deleted successfully" + "SUCCESS_MESSAGE": "സംയോജനം വിജയകരമായി ഇല്ലാതാക്കി" } }, "CONNECT": { - "BUTTON_TEXT": "Connect" + "BUTTON_TEXT": "ബന്ധിപ്പിക്കുക" } } } diff --git a/app/javascript/dashboard/i18n/locale/ml/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ml/labelsMgmt.json index 5525be0c2..5f771fcce 100644 --- a/app/javascript/dashboard/i18n/locale/ml/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/labelsMgmt.json @@ -1,67 +1,67 @@ { "LABEL_MGMT": { - "HEADER": "Labels", - "HEADER_BTN_TXT": "Add label", - "LOADING": "Fetching labels", + "HEADER": "ലേബലുകൾ", + "HEADER_BTN_TXT": "ലേബൽ ചേർക്കുക", + "LOADING": "ലേബലുകൾ ലഭ്യമാക്കുന്നു", "SEARCH_404": "ഈ ചോദ്യവുമായി പൊരുത്തപ്പെടുന്ന ഇനങ്ങളൊന്നുമില്ല", - "SIDEBAR_TXT": "Labels
Labels help you to categorize conversations and prioritize them. You can assign label to a conversation from the sidepanel.
Labels are tied to the account and can be used to create custom workflows in your organization. You can assign custom color to a label, it makes it easier to identify the label. You will be able to display the label on the sidebar to filter the conversations easily.
ലേബലുകൾ
സംഭാഷണങ്ങൾ തരംതിരിക്കാനും മുൻഗണന നൽകാനും ലേബലുകൾ നിങ്ങളെ സഹായിക്കുന്നു. സൈഡ്പാനലിൽ നിന്നുള്ള സംഭാഷണത്തിലേക്ക് നിങ്ങൾക്ക് ലേബൽ നൽകാം.
ലേബലുകൾ അക്ക with ണ്ടുമായി ബന്ധിപ്പിച്ചിരിക്കുന്നു കൂടാതെ നിങ്ങളുടെ ഓർഗനൈസേഷനിൽ ഇച്ഛാനുസൃത വർക്ക്ഫ്ലോകൾ സൃഷ്ടിക്കാനും ഇത് ഉപയോഗിക്കാം. നിങ്ങൾക്ക് ഒരു ലേബലിന് ഇഷ്ടാനുസൃത നിറം നൽകാനാകും, ഇത് ലേബൽ തിരിച്ചറിയുന്നത് എളുപ്പമാക്കുന്നു. സംഭാഷണങ്ങൾ എളുപ്പത്തിൽ ഫിൽറ്റർ ചെയ്യുന്നതിന് സൈഡ്ബാറിൽ ലേബൽ പ്രദർശിപ്പിക്കാൻ നിങ്ങൾക്ക് കഴിയും.
ഏജന്റുമാർ
ഒരു ഏജൻറ് നിങ്ങളുടെ ഉപഭോക്തൃ പിന്തുണാ ടീമിലെ ഒരു അംഗമാണ്.
ഏജന്റുമാർക്ക് നിങ്ങളുടെ ഉപയോക്താക്കളിൽ നിന്നുള്ള സന്ദേശങ്ങൾ കാണാനും മറുപടി നൽകാനും കഴിയും. നിങ്ങളുടെ അക്കൗണ്ടിലുള്ള എല്ലാ ഏജന്റുമാരെയും ഈ പട്ടിക കാണിക്കുന്നു. p>
ഒരു പുതിയ ഏജന്റിനെ ചേർക്കുന്നതിന് ഏജന്റിനെ ചേർക്കുക b> ബട്ടൺ ക്ലിക്കുചെയ്യുക. നിങ്ങൾ ചേർത്ത ഏജന്റിന് അവരുടെ അക്കൗണ്ട് സജീവമാക്കുന്നതിന് ഒരു സ്ഥിരീകരണ ലിങ്കുള്ള ഇമെയിൽ ലഭിക്കും. അതിനുശേഷം അവർക്ക് ചാറ്റ് വൂട്ട് ആക്സസ് ചെയ്യാനും സന്ദേശങ്ങളോട് പ്രതികരിക്കാനും കഴിയും.
ചാറ്റ് വൂട്ടിന്റെ സവിശേഷതകളിലേക്കുള്ള ആക്സസ് ഇനിപ്പറയുന്ന റോളുകളെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്.
ഏജൻറ് b> - ഈ റോൾ ഉള്ള ഏജന്റുമാർക്ക് ഇൻബോക്സുകൾ, റിപ്പോർട്ടുകൾ, സംഭാഷണങ്ങൾ എന്നിവ മാത്രമേ ആക്സസ് ചെയ്യാൻ കഴിയൂ. അവർക്ക് മറ്റ് ഏജന്റുമാരുടെയോ അല്ലെങ്കിൽ തങ്ങളുടേയോ സംഭാഷണങ്ങൾ നിർണ്ണയിക്കാനും സംഭാഷണങ്ങൾ പരിഹരിക്കാനും കഴിയും.
അഡ്മിനിസ്ട്രേറ്റർ - ഒരു സാധാരണ ഏജന്റിന്റെ പ്രത്യേകാവകാശങ്ങളോടൊപ്പം ക്രമീകരണങ്ങളും ബില്ലിംഗും ഉൾപ്പെടെ നിങ്ങളുടെ അക്കൗണ്ടിൽ ലഭ്യമായ എല്ലാ ചാറ്റ് വൂട്ട് സവിശേഷതകളിലേക്കും ആക്സസ് ഉണ്ടായിരിക്കുക. p> ", "YES": "അതെ, ഇല്ലാതാക്കുക ", - "NO": "No, Keep " + "NO": "ഇല്ല, സൂക്ഷിക്കുക" } } } diff --git a/app/javascript/dashboard/i18n/locale/ml/settings.json b/app/javascript/dashboard/i18n/locale/ml/settings.json index bf7b14186..5598623e5 100644 --- a/app/javascript/dashboard/i18n/locale/ml/settings.json +++ b/app/javascript/dashboard/i18n/locale/ml/settings.json @@ -44,24 +44,29 @@ "LABEL": "പ്രൊഫൈൽ ചിത്രം" }, "NAME": { - "LABEL": "നിങ്ങളുടെ പേര്", - "ERROR": "ദയവായി സാധുവായ ഒരു പേര് നൽകുക", - "PLACEHOLDER": "ദയവായി നിങ്ങളുടെ പേര് നൽകുക, ഇത് സംഭാഷണങ്ങളിൽ ദൃശ്യമാകും" + "LABEL": "നിങ്ങളുടെ മുഴുവൻ പേര്", + "ERROR": "സാധുവായ ഒരു പൂർണ്ണ നാമം നൽകുക", + "PLACEHOLDER": "ദയവായി നിങ്ങളുടെ മുഴുവൻ പേര് നൽകുക" + }, + "DISPLAY_NAME": { + "LABEL": "പ്രദർശന നാമം", + "ERROR": "സാധുവായ ഒരു പ്രദർശന നാമം നൽകുക", + "PLACEHOLDER": "ദയവായി ഒരു പ്രദർശന നാമം നൽകുക, ഇത് സംഭാഷണങ്ങളിൽ ദൃശ്യമാകും" }, "AVAILABILITY": { - "LABEL": "Availability", + "LABEL": "ലഭ്യത", "STATUSES_LIST": [ { "value": "online", - "label": "Online" + "label": "ഓൺലൈൻ" }, { "value": "busy", - "label": "Busy" + "label": "തിരക്ക്" }, { "value": "offline", - "label": "Offline" + "label": "ഓഫ്ലൈൻ" } ] }, @@ -83,44 +88,60 @@ } }, "SIDEBAR_ITEMS": { - "CHANGE_ACCOUNTS": "Switch Account", - "SELECTOR_SUBTITLE": "Select an account from the following list", + "CHANGE_ACCOUNTS": "അക്കൗണ്ട് സ്വിച്ചുചെയ്യുക", + "SELECTOR_SUBTITLE": "ഇനിപ്പറയുന്ന ലിസ്റ്റിൽ നിന്ന് ഒരു അക്കൗണ്ട് തിരഞ്ഞെടുക്കുക", "PROFILE_SETTINGS": "പ്രൊഫൈൽ ക്രമീകരണങ്ങൾ", "LOGOUT": "ലോഗൗട്ട്" }, "APP_GLOBAL": { - "TRIAL_MESSAGE": "days trial remaining.", - "TRAIL_BUTTON": "Buy Now" + "TRIAL_MESSAGE": "ദിവസത്തെ ട്രയൽ ശേഷിക്കുന്നു.", + "TRAIL_BUTTON": "ഇപ്പോൾ വാങ്ങുക" }, "COMPONENTS": { "CODE": { - "BUTTON_TEXT": "Copy", - "COPY_SUCCESSFUL": "Code copied to clipboard successfully" + "BUTTON_TEXT": "പകർത്തുക", + "COPY_SUCCESSFUL": "കോഡ് ക്ലിപ്പ്ബോർഡിലേക്ക് വിജയകരമായി പകർത്തി" }, "FILE_BUBBLE": { "DOWNLOAD": "ഡൗൺലോഡ്", - "UPLOADING": "Uploading..." + "UPLOADING": "അപ്ലോഡുചെയ്യുന്നു..." }, "FORM_BUBBLE": { "SUBMIT": "സമർപ്പിക്കുക" } }, - "CONFIRM_EMAIL": "Verifying...", + "CONFIRM_EMAIL": "പരിശോധിച്ചുറപ്പിക്കുന്നു...", "SETTINGS": { "INBOXES": { - "NEW_INBOX": "Add Inbox" + "NEW_INBOX": "ഇൻബോക്സ് ചേർക്കുക" } }, "SIDEBAR": { "CONVERSATIONS": "സംഭാഷണങ്ങൾ", "REPORTS": "റിപ്പോർട്ടുകൾ", "SETTINGS": "ക്രമീകരണങ്ങൾ", - "HOME": "Home", + "HOME": "ഹോം", "AGENTS": "ഏജന്റുമാർ", "INBOXES": "ഇൻബോക്സുകൾ", "CANNED_RESPONSES": "ക്യാൻഡ് പ്രതികരണങ്ങൾ", "INTEGRATIONS": "സംയോജനങ്ങൾ", - "ACCOUNT_SETTINGS": "Account Settings", - "LABELS": "Labels" + "ACCOUNT_SETTINGS": "അക്കൗണ്ട് ക്രമീകരണങ്ങൾ", + "LABELS": "ലേബലുകൾ" + }, + "CREATE_ACCOUNT": { + "NEW_ACCOUNT": "പുതിയ അക്കൗണ്ട്", + "SELECTOR_SUBTITLE": "അക്കൗണ്ട് ഒരു പുതിയ അക്കൗണ്ട് വിജയകരമായി സൃഷ്ടിക്കുക", + "API": { + "SUCCESS_MESSAGE": "അക്കൗണ്ട് വിജയകരമായി സൃഷ്ടിച്ചു", + "EXIST_MESSAGE": "അക്കൗണ്ട് ഇതിനകം നിലവിലുണ്ട്", + "ERROR_MESSAGE": "വൂട്ട് സെർവറിലേക്ക് കണക്റ്റുചെയ്യാനായില്ല, ദയവായി പിന്നീട് വീണ്ടും ശ്രമിക്കുക" + }, + "FORM": { + "NAME": { + "LABEL": "അക്കൗണ്ട് നാമം", + "PLACEHOLDER": "പുണ്ണ്യാളൻ അഗർബത്തീസ്" + }, + "SUBMIT": "സമർപ്പിക്കുക" + } } } diff --git a/app/javascript/dashboard/i18n/locale/nl/chatlist.json b/app/javascript/dashboard/i18n/locale/nl/chatlist.json index b69c66842..d44463213 100644 --- a/app/javascript/dashboard/i18n/locale/nl/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/nl/chatlist.json @@ -45,6 +45,10 @@ { "TEXT": "Opgelost", "VALUE": "resolved" + }, + { + "TEXT": "Bot", + "VALUE": "bot" } ], "ATTACHMENTS": { @@ -72,6 +76,9 @@ "ICON": "ion-link", "CONTENT": "heeft een url gedeeld" } - } + }, + "RECEIVED_VIA_EMAIL": "Received via email", + "VIEW_TWEET_IN_TWITTER": "View tweet in Twitter", + "REPLY_TO_TWEET": "Reply to this tweet" } } diff --git a/app/javascript/dashboard/i18n/locale/nl/contact.json b/app/javascript/dashboard/i18n/locale/nl/contact.json index bc40a08c0..a427abe0b 100644 --- a/app/javascript/dashboard/i18n/locale/nl/contact.json +++ b/app/javascript/dashboard/i18n/locale/nl/contact.json @@ -9,6 +9,9 @@ "NO_RECORDS_FOUND": "Er zijn geen eerdere gesprekken gekoppeld aan dit contact.", "TITLE": "Vorige gesprekken" }, + "CUSTOM_ATTRIBUTES": { + "TITLE": "Custom Attributes" + }, "LABELS": { "TITLE": "Labels voor gesprekken", "MODAL": { @@ -23,7 +26,9 @@ "NO_LABELS_TO_ADD": "There are no more labels defined in the account.", "NO_AVAILABLE_LABELS": "There are no labels added to this conversation." }, - "MUTE_CONTACT": "Mute Contact", + "MUTE_CONTACT": "Mute Conversation", + "MUTED_SUCCESS": "This conversation is muted for 6 hours", + "SEND_TRANSCRIPT": "Send Transcript", "EDIT_LABEL": "Bewerken" } } diff --git a/app/javascript/dashboard/i18n/locale/nl/conversation.json b/app/javascript/dashboard/i18n/locale/nl/conversation.json index 33159ec91..ccdde5159 100644 --- a/app/javascript/dashboard/i18n/locale/nl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/nl/conversation.json @@ -9,6 +9,11 @@ "CLICK_HERE": "Klik hier", "LOADING_INBOXES": "Inboxen laden", "LOADING_CONVERSATIONS": "Conversaties laden", + "CANNOT_REPLY": "You cannot reply due to", + "24_HOURS_WINDOW": "24 hour message window restriction", + "LAST_INCOMING_TWEET": "You are replying to the last incoming tweet", + "REPLYING_TO": "You are replying to:", + "REMOVE_SELECTION": "Remove Selection", "DOWNLOAD": "Download", "HEADER": { "RESOLVE_ACTION": "Oplossen", @@ -31,5 +36,22 @@ "VISIBLE_TO_AGENTS": "Privéopmerking: alleen zichtbaar voor jou en je team", "CHANGE_STATUS": "Gespreksstatus veranderd", "CHANGE_AGENT": "Toegewezen persoon voor dit gesprek is veranderd" + }, + "EMAIL_TRANSCRIPT": { + "TITLE": "Send conversation transcript", + "DESC": "Send a copy of the conversation transcript to the specified email address", + "SUBMIT": "Bevestigen", + "CANCEL": "Annuleren", + "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", + "SEND_EMAIL_ERROR": "Er is een fout opgetreden, probeer het opnieuw", + "FORM": { + "SEND_TO_CONTACT": "Send the transcript to the customer", + "SEND_TO_AGENT": "Send the transcript of the assigned agent", + "SEND_TO_OTHER_EMAIL_ADDRESS": "Send the transcript to another email address", + "EMAIL": { + "PLACEHOLDER": "Enter an email address", + "ERROR": "Voer een geldig e-mailadres in" + } + } } } diff --git a/app/javascript/dashboard/i18n/locale/nl/generalSettings.json b/app/javascript/dashboard/i18n/locale/nl/generalSettings.json index e5c6cb3c7..a12d5b5a3 100644 --- a/app/javascript/dashboard/i18n/locale/nl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/nl/generalSettings.json @@ -24,8 +24,8 @@ "ERROR": "" }, "DOMAIN": { - "LABEL": "Domeinnaam", - "PLACEHOLDER": "Domeinnaam website", + "LABEL": "Incoming Email Domain", + "PLACEHOLDER": "The domain where you will receive the emails", "ERROR": "" }, "SUPPORT_EMAIL": { @@ -33,14 +33,9 @@ "PLACEHOLDER": "E-mailadres support van uw bedrijf", "ERROR": "" }, - "ENABLE_DOMAIN_EMAIL": { - "LABEL": "E-mail voor domein activeren", - "PLACEHOLDER": "Aangepaste e-mail voor domein activeren", - "ERROR": "", - "OPTIONS": { - "ENABLED": "Ingeschakeld", - "DISABLED": "Uitgeschakeld" - } + "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/nl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json index 6fc50aa4f..94f50906f 100644 --- a/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json @@ -115,6 +115,43 @@ "ERROR_MESSAGE": "Het is niet gelukt om Twilio referenties te verifiëren, probeer het opnieuw" } }, + "API_CHANNEL": { + "TITLE": "API Channel", + "DESC": "Integrate with API channel and start supporting your customers.", + "CHANNEL_NAME": { + "LABEL": "Kanaal naam", + "PLACEHOLDER": "Voer een kanaal naam in", + "ERROR": "Dit veld is verplicht" + }, + "WEBHOOK_URL": { + "LABEL": "Webhook URL", + "SUBTITLE": "Configure the URL where you want to recieve callbacks on events.", + "PLACEHOLDER": "Webhook URL" + }, + "SUBMIT_BUTTON": "Create API Channel", + "API": { + "ERROR_MESSAGE": "We were not able to save the api channel" + } + }, + "EMAIL_CHANNEL": { + "TITLE": "Email Channel", + "DESC": "Integrate you email inbox.", + "CHANNEL_NAME": { + "LABEL": "Kanaal naam", + "PLACEHOLDER": "Voer een kanaal naam in", + "ERROR": "Dit veld is verplicht" + }, + "EMAIL": { + "LABEL": "E-mailadres", + "SUBTITLE": "Email where your customers sends you support tickets", + "PLACEHOLDER": "E-mailadres" + }, + "SUBMIT_BUTTON": "Create Email Channel", + "API": { + "ERROR_MESSAGE": "We were not able to save the email channel" + }, + "FINISH_MESSAGE": "Start forwarding your emails to the following email address." + }, "AUTH": { "TITLE": "Kanalen", "DESC": "Momenteel ondersteunen we website live chat widgets, Facebook pagina's en Twitter-profielen als platformen. We hebben meer platforms zoals Whatsapp, E-mail, Telegram en Lijn in de werken, die binnenkort zullen verschijnen." @@ -175,7 +212,17 @@ "ERROR_MESSAGE": "Postvak verwijderen mislukt. Probeer het later opnieuw." } }, + "TABS": { + "SETTINGS": "Instellingen", + "COLLABORATORS": "Collaborators", + "CONFIGURATION": "Configuration" + }, "SETTINGS": "Instellingen", + "FEATURES": { + "LABEL": "Features", + "DISPLAY_FILE_PICKER": "Display file picker on the widget", + "DISPLAY_EMOJI_PICKER": "Display emoji picker on the widget" + }, "SETTINGS_POPUP": { "MESSENGER_HEADING": "Messenger Script", "MESSENGER_SUB_HEAD": "Plaats deze knop in je lichaam tag", diff --git a/app/javascript/dashboard/i18n/locale/nl/settings.json b/app/javascript/dashboard/i18n/locale/nl/settings.json index 94bd497a1..fb16bc6f6 100644 --- a/app/javascript/dashboard/i18n/locale/nl/settings.json +++ b/app/javascript/dashboard/i18n/locale/nl/settings.json @@ -44,9 +44,14 @@ "LABEL": "Profiel afbeelding" }, "NAME": { - "LABEL": "Uw naam", - "ERROR": "Voer een geldige naam in", - "PLACEHOLDER": "Voer je naam in, dit zou worden weergegeven in gesprekken" + "LABEL": "Your full name", + "ERROR": "Please enter a valid full name", + "PLACEHOLDER": "Please enter your full name" + }, + "DISPLAY_NAME": { + "LABEL": "Display name", + "ERROR": "Please enter a valid display name", + "PLACEHOLDER": "Please enter a display name, this would be displayed in conversations" }, "AVAILABILITY": { "LABEL": "Availability", @@ -122,5 +127,21 @@ "INTEGRATIONS": "Integraties", "ACCOUNT_SETTINGS": "Accountinstellingen", "LABELS": "Labelen" + }, + "CREATE_ACCOUNT": { + "NEW_ACCOUNT": "New Account", + "SELECTOR_SUBTITLE": "Create a new account", + "API": { + "SUCCESS_MESSAGE": "Account created successfully", + "EXIST_MESSAGE": "Account already exists", + "ERROR_MESSAGE": "Kan geen verbinding maken met Woot Server, probeer het later opnieuw" + }, + "FORM": { + "NAME": { + "LABEL": "Klant naam", + "PLACEHOLDER": "Wayne Ondernemingen" + }, + "SUBMIT": "Bevestigen" + } } } diff --git a/app/javascript/dashboard/i18n/locale/pl/chatlist.json b/app/javascript/dashboard/i18n/locale/pl/chatlist.json index 3b0726f35..371f6191a 100644 --- a/app/javascript/dashboard/i18n/locale/pl/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/pl/chatlist.json @@ -45,6 +45,10 @@ { "TEXT": "Rozwiązano", "VALUE": "resolved" + }, + { + "TEXT": "Bot", + "VALUE": "bot" } ], "ATTACHMENTS": { @@ -72,6 +76,9 @@ "ICON": "ion-link", "CONTENT": "udostępnił adres url" } - } + }, + "RECEIVED_VIA_EMAIL": "Received via email", + "VIEW_TWEET_IN_TWITTER": "View tweet in Twitter", + "REPLY_TO_TWEET": "Reply to this tweet" } } diff --git a/app/javascript/dashboard/i18n/locale/pl/contact.json b/app/javascript/dashboard/i18n/locale/pl/contact.json index e3adfb7ca..ce15520be 100644 --- a/app/javascript/dashboard/i18n/locale/pl/contact.json +++ b/app/javascript/dashboard/i18n/locale/pl/contact.json @@ -9,6 +9,9 @@ "NO_RECORDS_FOUND": "Brak poprzednich rozmów powiązanych z tym kontaktem.", "TITLE": "Poprzednie rozmowy" }, + "CUSTOM_ATTRIBUTES": { + "TITLE": "Custom Attributes" + }, "LABELS": { "TITLE": "Etykiety konwersacji", "MODAL": { @@ -23,7 +26,9 @@ "NO_LABELS_TO_ADD": "There are no more labels defined in the account.", "NO_AVAILABLE_LABELS": "There are no labels added to this conversation." }, - "MUTE_CONTACT": "Mute Contact", + "MUTE_CONTACT": "Mute Conversation", + "MUTED_SUCCESS": "This conversation is muted for 6 hours", + "SEND_TRANSCRIPT": "Send Transcript", "EDIT_LABEL": "Edytuj" } } diff --git a/app/javascript/dashboard/i18n/locale/pl/conversation.json b/app/javascript/dashboard/i18n/locale/pl/conversation.json index 3a8f07517..84a59fd47 100644 --- a/app/javascript/dashboard/i18n/locale/pl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pl/conversation.json @@ -9,6 +9,11 @@ "CLICK_HERE": "Kliknij tutaj", "LOADING_INBOXES": "Ładowanie skrzynek odbiorczych", "LOADING_CONVERSATIONS": "Ładowanie konwersacji", + "CANNOT_REPLY": "You cannot reply due to", + "24_HOURS_WINDOW": "24 hour message window restriction", + "LAST_INCOMING_TWEET": "You are replying to the last incoming tweet", + "REPLYING_TO": "You are replying to:", + "REMOVE_SELECTION": "Remove Selection", "DOWNLOAD": "Pobierz", "HEADER": { "RESOLVE_ACTION": "Rozwiąż", @@ -31,5 +36,22 @@ "VISIBLE_TO_AGENTS": "Prywatna uwaga: widoczne tylko dla Ciebie i twojego zespołu", "CHANGE_STATUS": "Status konwersacji zmieniony", "CHANGE_AGENT": "Osoba przypisana do konwersacji zmieniona" + }, + "EMAIL_TRANSCRIPT": { + "TITLE": "Send conversation transcript", + "DESC": "Send a copy of the conversation transcript to the specified email address", + "SUBMIT": "Prześlij", + "CANCEL": "Anuluj", + "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", + "SEND_EMAIL_ERROR": "There was an error, please try again", + "FORM": { + "SEND_TO_CONTACT": "Send the transcript to the customer", + "SEND_TO_AGENT": "Send the transcript of the assigned agent", + "SEND_TO_OTHER_EMAIL_ADDRESS": "Send the transcript to another email address", + "EMAIL": { + "PLACEHOLDER": "Enter an email address", + "ERROR": "Wprowadź poprawny adres e-mail" + } + } } } diff --git a/app/javascript/dashboard/i18n/locale/pl/generalSettings.json b/app/javascript/dashboard/i18n/locale/pl/generalSettings.json index cab6f01b0..dc31e5f75 100644 --- a/app/javascript/dashboard/i18n/locale/pl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pl/generalSettings.json @@ -24,8 +24,8 @@ "ERROR": "" }, "DOMAIN": { - "LABEL": "Domain", - "PLACEHOLDER": "Your website domain", + "LABEL": "Incoming Email Domain", + "PLACEHOLDER": "The domain where you will receive the emails", "ERROR": "" }, "SUPPORT_EMAIL": { @@ -33,14 +33,9 @@ "PLACEHOLDER": "Your company's support email", "ERROR": "" }, - "ENABLE_DOMAIN_EMAIL": { - "LABEL": "Enable domain email", - "PLACEHOLDER": "Enable the custom domain email", - "ERROR": "", - "OPTIONS": { - "ENABLED": "Włączone", - "DISABLED": "Wyłączone" - } + "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/pl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json index 3c8ebbbf4..1aebf1077 100644 --- a/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json @@ -115,6 +115,43 @@ "ERROR_MESSAGE": "Nie byliśmy w stanie uwierzytelnić danych logowania Twilio, spróbuj ponownie" } }, + "API_CHANNEL": { + "TITLE": "API Channel", + "DESC": "Integrate with API channel and start supporting your customers.", + "CHANNEL_NAME": { + "LABEL": "Nazwa kanału", + "PLACEHOLDER": "Wprowadź nazwę kanału", + "ERROR": "To pole jest wymagane" + }, + "WEBHOOK_URL": { + "LABEL": "URL webhooka", + "SUBTITLE": "Configure the URL where you want to recieve callbacks on events.", + "PLACEHOLDER": "URL webhooka" + }, + "SUBMIT_BUTTON": "Create API Channel", + "API": { + "ERROR_MESSAGE": "We were not able to save the api channel" + } + }, + "EMAIL_CHANNEL": { + "TITLE": "Email Channel", + "DESC": "Integrate you email inbox.", + "CHANNEL_NAME": { + "LABEL": "Nazwa kanału", + "PLACEHOLDER": "Wprowadź nazwę kanału", + "ERROR": "To pole jest wymagane" + }, + "EMAIL": { + "LABEL": "E-mail", + "SUBTITLE": "Email where your customers sends you support tickets", + "PLACEHOLDER": "E-mail" + }, + "SUBMIT_BUTTON": "Create Email Channel", + "API": { + "ERROR_MESSAGE": "We were not able to save the email channel" + }, + "FINISH_MESSAGE": "Start forwarding your emails to the following email address." + }, "AUTH": { "TITLE": "Kanały", "DESC": "Obecnie obsługujemy widżety czatu na żywo, strony na Facebooku i profile Twittera jako platformy. Mamy więcej platform takich jak Whatsapp, E-mail, Telegram i Line w pracach, które wkrótce się zakończą." @@ -175,7 +212,17 @@ "ERROR_MESSAGE": "Nie można usunąć skrzynki odbiorczej. Spróbuj ponownie później." } }, + "TABS": { + "SETTINGS": "Ustawienia", + "COLLABORATORS": "Collaborators", + "CONFIGURATION": "Configuration" + }, "SETTINGS": "Ustawienia", + "FEATURES": { + "LABEL": "Features", + "DISPLAY_FILE_PICKER": "Display file picker on the widget", + "DISPLAY_EMOJI_PICKER": "Display emoji picker on the widget" + }, "SETTINGS_POPUP": { "MESSENGER_HEADING": "Skrypt Messengera", "MESSENGER_SUB_HEAD": "Umieść ten przycisk wewnątrz znacznika ciała", diff --git a/app/javascript/dashboard/i18n/locale/pl/settings.json b/app/javascript/dashboard/i18n/locale/pl/settings.json index 05d230716..69cb9ebc0 100644 --- a/app/javascript/dashboard/i18n/locale/pl/settings.json +++ b/app/javascript/dashboard/i18n/locale/pl/settings.json @@ -44,9 +44,14 @@ "LABEL": "Zdjęcie profilowe" }, "NAME": { - "LABEL": "Twoje imię", - "ERROR": "Wprowadź prawidłową nazwę", - "PLACEHOLDER": "Wprowadź swoje imię i nazwisko, które będzie wyświetlane w rozmowach" + "LABEL": "Your full name", + "ERROR": "Please enter a valid full name", + "PLACEHOLDER": "Please enter your full name" + }, + "DISPLAY_NAME": { + "LABEL": "Display name", + "ERROR": "Please enter a valid display name", + "PLACEHOLDER": "Please enter a display name, this would be displayed in conversations" }, "AVAILABILITY": { "LABEL": "Availability", @@ -122,5 +127,21 @@ "INTEGRATIONS": "Integracje", "ACCOUNT_SETTINGS": "Account Settings", "LABELS": "Labels" + }, + "CREATE_ACCOUNT": { + "NEW_ACCOUNT": "New Account", + "SELECTOR_SUBTITLE": "Create a new account", + "API": { + "SUCCESS_MESSAGE": "Account created successfully", + "EXIST_MESSAGE": "Account already exists", + "ERROR_MESSAGE": "Nie można połączyć się z Woot Server, spróbuj ponownie później" + }, + "FORM": { + "NAME": { + "LABEL": "Nazwa konta", + "PLACEHOLDER": "Przedsiębiorstwa Wayne" + }, + "SUBMIT": "Prześlij" + } } } diff --git a/app/javascript/dashboard/i18n/locale/pt/chatlist.json b/app/javascript/dashboard/i18n/locale/pt/chatlist.json index c2d125233..ad8710e50 100644 --- a/app/javascript/dashboard/i18n/locale/pt/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/pt/chatlist.json @@ -45,6 +45,10 @@ { "TEXT": "Resolvido", "VALUE": "resolved" + }, + { + "TEXT": "Bot", + "VALUE": "bot" } ], "ATTACHMENTS": { @@ -72,6 +76,9 @@ "ICON": "ion-link", "CONTENT": "compartilhou uma url" } - } + }, + "RECEIVED_VIA_EMAIL": "Received via email", + "VIEW_TWEET_IN_TWITTER": "View tweet in Twitter", + "REPLY_TO_TWEET": "Reply to this tweet" } } diff --git a/app/javascript/dashboard/i18n/locale/pt/contact.json b/app/javascript/dashboard/i18n/locale/pt/contact.json index 056c4cd87..e0e871d94 100644 --- a/app/javascript/dashboard/i18n/locale/pt/contact.json +++ b/app/javascript/dashboard/i18n/locale/pt/contact.json @@ -9,6 +9,9 @@ "NO_RECORDS_FOUND": "Não há conversas anteriores associadas a este contato.", "TITLE": "Conversas anteriores" }, + "CUSTOM_ATTRIBUTES": { + "TITLE": "Custom Attributes" + }, "LABELS": { "TITLE": "Rótulos da conversa", "MODAL": { @@ -23,7 +26,9 @@ "NO_LABELS_TO_ADD": "There are no more labels defined in the account.", "NO_AVAILABLE_LABELS": "There are no labels added to this conversation." }, - "MUTE_CONTACT": "Mute Contact", + "MUTE_CONTACT": "Mute Conversation", + "MUTED_SUCCESS": "This conversation is muted for 6 hours", + "SEND_TRANSCRIPT": "Send Transcript", "EDIT_LABEL": "Alterar" } } diff --git a/app/javascript/dashboard/i18n/locale/pt/conversation.json b/app/javascript/dashboard/i18n/locale/pt/conversation.json index 5ef204558..22ab5291e 100644 --- a/app/javascript/dashboard/i18n/locale/pt/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pt/conversation.json @@ -9,6 +9,11 @@ "CLICK_HERE": "Clique aqui", "LOADING_INBOXES": "Carregando caixas de entrada", "LOADING_CONVERSATIONS": "Carregando conversas", + "CANNOT_REPLY": "You cannot reply due to", + "24_HOURS_WINDOW": "24 hour message window restriction", + "LAST_INCOMING_TWEET": "You are replying to the last incoming tweet", + "REPLYING_TO": "You are replying to:", + "REMOVE_SELECTION": "Remove Selection", "DOWNLOAD": "BAIXAR", "HEADER": { "RESOLVE_ACTION": "Resolver", @@ -31,5 +36,22 @@ "VISIBLE_TO_AGENTS": "Nota Privada: Apenas visível para você e sua equipe", "CHANGE_STATUS": "Estado da conversa alterado", "CHANGE_AGENT": "Responsável da conversa alterado" + }, + "EMAIL_TRANSCRIPT": { + "TITLE": "Send conversation transcript", + "DESC": "Send a copy of the conversation transcript to the specified email address", + "SUBMIT": "submeter", + "CANCEL": "cancelar", + "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", + "SEND_EMAIL_ERROR": "There was an error, please try again", + "FORM": { + "SEND_TO_CONTACT": "Send the transcript to the customer", + "SEND_TO_AGENT": "Send the transcript of the assigned agent", + "SEND_TO_OTHER_EMAIL_ADDRESS": "Send the transcript to another email address", + "EMAIL": { + "PLACEHOLDER": "Enter an email address", + "ERROR": "Por favor, insira um endereço de e-mail válido" + } + } } } diff --git a/app/javascript/dashboard/i18n/locale/pt/generalSettings.json b/app/javascript/dashboard/i18n/locale/pt/generalSettings.json index c18dc7c55..a464d6a73 100644 --- a/app/javascript/dashboard/i18n/locale/pt/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pt/generalSettings.json @@ -24,8 +24,8 @@ "ERROR": "" }, "DOMAIN": { - "LABEL": "Domínio", - "PLACEHOLDER": "Domínio do seu site", + "LABEL": "Incoming Email Domain", + "PLACEHOLDER": "The domain where you will receive the emails", "ERROR": "" }, "SUPPORT_EMAIL": { @@ -33,14 +33,9 @@ "PLACEHOLDER": "E-mail de suporte da sua empresa", "ERROR": "" }, - "ENABLE_DOMAIN_EMAIL": { - "LABEL": "Habilitar e-mail de domínio", - "PLACEHOLDER": "Ativar o e-mail de domínio personalizado", - "ERROR": "", - "OPTIONS": { - "ENABLED": "Ativado", - "DISABLED": "Desabilitado" - } + "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/pt/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json index 6ff9f90fe..b78055f84 100644 --- a/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json @@ -115,6 +115,43 @@ "ERROR_MESSAGE": "Não fomos capazes de autenticar as credenciais Twilio, por favor, tente novamente" } }, + "API_CHANNEL": { + "TITLE": "API Channel", + "DESC": "Integrate with API channel and start supporting your customers.", + "CHANNEL_NAME": { + "LABEL": "Nome do Canal", + "PLACEHOLDER": "Por favor, insira um nome de canal", + "ERROR": "Este campo é obrigatório" + }, + "WEBHOOK_URL": { + "LABEL": "URL do Webhook", + "SUBTITLE": "Configure the URL where you want to recieve callbacks on events.", + "PLACEHOLDER": "URL do Webhook" + }, + "SUBMIT_BUTTON": "Create API Channel", + "API": { + "ERROR_MESSAGE": "We were not able to save the api channel" + } + }, + "EMAIL_CHANNEL": { + "TITLE": "Email Channel", + "DESC": "Integrate you email inbox.", + "CHANNEL_NAME": { + "LABEL": "Nome do Canal", + "PLACEHOLDER": "Por favor, insira um nome de canal", + "ERROR": "Este campo é obrigatório" + }, + "EMAIL": { + "LABEL": "e-mail", + "SUBTITLE": "Email where your customers sends you support tickets", + "PLACEHOLDER": "e-mail" + }, + "SUBMIT_BUTTON": "Create Email Channel", + "API": { + "ERROR_MESSAGE": "We were not able to save the email channel" + }, + "FINISH_MESSAGE": "Start forwarding your emails to the following email address." + }, "AUTH": { "TITLE": "Canais", "DESC": "Atualmente oferecemos suporte a widgets de chat ao vivo do site, Facebook Pages e perfis do Twitter como plataformas. Temos mais plataformas como Whatsapp, E-mail, Telegrama e Linha no trabalho, que em breve." @@ -175,7 +212,17 @@ "ERROR_MESSAGE": "Não foi possível excluir a caixa de entrada. Tente novamente mais tarde." } }, + "TABS": { + "SETTINGS": "Confirgurações", + "COLLABORATORS": "Collaborators", + "CONFIGURATION": "Configuration" + }, "SETTINGS": "Confirgurações", + "FEATURES": { + "LABEL": "Features", + "DISPLAY_FILE_PICKER": "Display file picker on the widget", + "DISPLAY_EMOJI_PICKER": "Display emoji picker on the widget" + }, "SETTINGS_POPUP": { "MESSENGER_HEADING": "Script do Messenger", "MESSENGER_SUB_HEAD": "Coloque esse botão dentro da sua tag corporal", diff --git a/app/javascript/dashboard/i18n/locale/pt/settings.json b/app/javascript/dashboard/i18n/locale/pt/settings.json index d8d47942e..ffb1e57ba 100644 --- a/app/javascript/dashboard/i18n/locale/pt/settings.json +++ b/app/javascript/dashboard/i18n/locale/pt/settings.json @@ -44,9 +44,14 @@ "LABEL": "Imagem do perfil" }, "NAME": { - "LABEL": "Seu Nome", - "ERROR": "Por favor, insira um nome válido", - "PLACEHOLDER": "Por favor, insira seu nome, isto seria exibido em conversas" + "LABEL": "Your full name", + "ERROR": "Please enter a valid full name", + "PLACEHOLDER": "Please enter your full name" + }, + "DISPLAY_NAME": { + "LABEL": "Display name", + "ERROR": "Please enter a valid display name", + "PLACEHOLDER": "Please enter a display name, this would be displayed in conversations" }, "AVAILABILITY": { "LABEL": "Availability", @@ -122,5 +127,21 @@ "INTEGRATIONS": "Integrações", "ACCOUNT_SETTINGS": "Account Settings", "LABELS": "Labels" + }, + "CREATE_ACCOUNT": { + "NEW_ACCOUNT": "New Account", + "SELECTOR_SUBTITLE": "Create a new account", + "API": { + "SUCCESS_MESSAGE": "Account created successfully", + "EXIST_MESSAGE": "Account already exists", + "ERROR_MESSAGE": "Não foi possível conectar ao servidor Woot, por favor tente novamente mais tarde" + }, + "FORM": { + "NAME": { + "LABEL": "Nome da Conta", + "PLACEHOLDER": "Wayne Enterprises" + }, + "SUBMIT": "submeter" + } } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/agentMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/agentMgmt.json index 7003360a1..3f668e7ce 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/agentMgmt.json @@ -3,7 +3,7 @@ "HEADER": "Agentes", "HEADER_BTN_TXT": "Adicionar Agente", "LOADING": "Buscando lista de agente", - "SIDEBAR_TXT": "
Agents
An Agent is a member of your Customer Support team.
Agents will be able to view and reply to messages from your users. The list shows all agents currently in your account.
Click on Add Agent to add a new agent. Agent you add will receive an email with a confirmation link to activate their account, after which they can access Chatwoot and respond to messages.
Access to Chatwoot's features are based on following roles.
Agent - Agents with this role can only access inboxes, reports and conversations. They can assign conversations to other agents or themselves and resolve conversations.
Administrator - Administrator will have access to all Chatwoot features enabled for your account, including settings, along with all of a normal agents' privileges.
", + "SIDEBAR_TXT": "Agentes
Um Agente é um membro da sua equipe de Suporte ao Cliente.
Os agentes serão capazes de ver e responder as mensagens dos seus usuários. A lista mostra todos os agentes atualmente em sua conta.
Clique em Adicionar Agente para adicionar um novo agente. O agente que você adicionar receberá um e-mail com um link de confirmação para ativar sua conta, para acessar o Chatwoot e responder às mensagens.
O acesso aos recursos do Chatwoot são baseados nas seguintes funções.
Agentes - Agentes com essa função só podem acessar caixas de entrada, relatórios e conversas. Eles podem atribuir conversas a outros agentes ou a eles próprios e resolver conversas.
Administrador - Administrador terá acesso a todos os recursos do Chatwoot ativados para sua conta, incluindo configurações e todos os privilégios de agentes normais.
", "AGENT_TYPES": [ { "name": "administrador", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/chatlist.json b/app/javascript/dashboard/i18n/locale/pt_BR/chatlist.json index 8db7de8f3..8d5a0f797 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/chatlist.json @@ -45,6 +45,10 @@ { "TEXT": "Resolvidas", "VALUE": "resolved" + }, + { + "TEXT": "Robô", + "VALUE": "bot" } ], "ATTACHMENTS": { @@ -72,6 +76,9 @@ "ICON": "ion-link", "CONTENT": "compartilhou uma URL" } - } + }, + "RECEIVED_VIA_EMAIL": "Recebido por e-mail", + "VIEW_TWEET_IN_TWITTER": "Ver tweet no Twitter", + "REPLY_TO_TWEET": "Responder a este tweet" } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/contact.json b/app/javascript/dashboard/i18n/locale/pt_BR/contact.json index d11d6155f..b49addb22 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/contact.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/contact.json @@ -9,21 +9,26 @@ "NO_RECORDS_FOUND": "Não há conversas anteriores associadas a este contato.", "TITLE": "Conversas anteriores" }, + "CUSTOM_ATTRIBUTES": { + "TITLE": "Atributos personalizados" + }, "LABELS": { "TITLE": "Marcador da conversa", "MODAL": { - "TITLE": "Labels for", - "ACTIVE_LABELS": "Labels added to the conversation", - "INACTIVE_LABELS": "Labels available in the account", - "REMOVE": "Click on X icon to remove the label", - "ADD": "Click on + icon to add the label", - "UPDATE_BUTTON": "Update labels", + "TITLE": "Marcadores para", + "ACTIVE_LABELS": "Marcadores adicionados à conversa", + "INACTIVE_LABELS": "Marcadores disponíveis na conta", + "REMOVE": "Clique no ícone X para remover o marcador", + "ADD": "Clique no ícone + para adicionar o marcador", + "UPDATE_BUTTON": "Atualizar marcadores", "UPDATE_ERROR": "Não foi possível atualizar os marcadores, tente novamente." }, - "NO_LABELS_TO_ADD": "There are no more labels defined in the account.", - "NO_AVAILABLE_LABELS": "There are no labels added to this conversation." + "NO_LABELS_TO_ADD": "Não há mais rótulos definidos na conta.", + "NO_AVAILABLE_LABELS": "Não há rótulos adicionados a esta conversa." }, - "MUTE_CONTACT": "Silenciar Contato", + "MUTE_CONTACT": "Silenciar a conversa", + "MUTED_SUCCESS": "Esta conversa está silenciada por 6 horas", + "SEND_TRANSCRIPT": "Enviar Transcrição", "EDIT_LABEL": "Alterar" } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json b/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json index 05d63059c..ac66df597 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json @@ -9,6 +9,11 @@ "CLICK_HERE": "Clique aqui", "LOADING_INBOXES": "Carregando caixas de entrada", "LOADING_CONVERSATIONS": "Carregando conversas", + "CANNOT_REPLY": "Você não pode responder porque", + "24_HOURS_WINDOW": "Restrições de janela de mensagem de 24 horas", + "LAST_INCOMING_TWEET": "Você está respondendo ao último tweet recebido", + "REPLYING_TO": "Você está respondendo a:", + "REMOVE_SELECTION": "Remover Seleção", "DOWNLOAD": "Baixar", "HEADER": { "RESOLVE_ACTION": "Resolver", @@ -31,5 +36,22 @@ "VISIBLE_TO_AGENTS": "Mensagem Privada: Apenas visível para você e sua equipe", "CHANGE_STATUS": "Estado da conversa mudou", "CHANGE_AGENT": "Responsável da conversa alterado" + }, + "EMAIL_TRANSCRIPT": { + "TITLE": "Enviar transcrição de conversa", + "DESC": "Enviar uma cópia da transcrição da conversa para o endereço de e-mail especificado", + "SUBMIT": "Enviar", + "CANCEL": "Cancelar", + "SEND_EMAIL_SUCCESS": "A transcrição do chat foi enviada com sucesso", + "SEND_EMAIL_ERROR": "Ocorreu um erro, por favor tente novamente", + "FORM": { + "SEND_TO_CONTACT": "Envie a transcrição para o cliente", + "SEND_TO_AGENT": "Enviar a transcrição do agente designado", + "SEND_TO_OTHER_EMAIL_ADDRESS": "Enviar a transcrição para outro endereço de e-mail", + "EMAIL": { + "PLACEHOLDER": "Digite um endereço de e-mail", + "ERROR": "Por favor, insira um endereço de e-mail válido" + } + } } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json b/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json index 7af731c6b..1c2d148dc 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json @@ -2,7 +2,7 @@ "GENERAL_SETTINGS": { "TITLE": "Configurações da conta", "SUBMIT": "Atualizar configurações", - "BACK": "Back", + "BACK": "Anterior", "UPDATE": { "ERROR": "Não foi possível atualizar as configurações, tente novamente!", "SUCCESS": "Configurações de conta atualizadas com sucesso" @@ -24,8 +24,8 @@ "ERROR": "" }, "DOMAIN": { - "LABEL": "Domínio", - "PLACEHOLDER": "Domínio do seu website", + "LABEL": "Domínio de recebimento de emails", + "PLACEHOLDER": "O domínio onde você receberá os e-mails", "ERROR": "" }, "SUPPORT_EMAIL": { @@ -33,14 +33,9 @@ "PLACEHOLDER": "E-mail de suporte da sua empresa", "ERROR": "" }, - "ENABLE_DOMAIN_EMAIL": { - "LABEL": "Ativar domínio de e-mail", - "PLACEHOLDER": "Ativar domínio de e-mail personalizado", - "ERROR": "", - "OPTIONS": { - "ENABLED": "Ativado", - "DISABLED": "Desativado" - } + "FEATURES": { + "INBOUND_EMAIL_ENABLED": "A continuidade das conversas com e-mails está ativada para sua conta.", + "CUSTOM_EMAIL_DOMAIN_ENABLED": "Você pode receber e-mails em seu domínio personalizado agora." } } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json index eff5e8043..79ab038ca 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json @@ -1,7 +1,7 @@ { "INBOX_MGMT": { "HEADER": "Caixas de Entrada", - "SIDEBAR_TXT": "Inbox
When you connect a website or a facebook Page to Chatwoot, it is called an Inbox. You can have unlimited inboxes in your Chatwoot account.
Click on Add Inbox to connect a website or a Facebook Page.
In the Dashboard, you can see all the conversations from all your inboxes in a single place and respond to them under the `Conversations` tab.
You can also see conversations specific to an inbox by clicking on the inbox name on the left pane of the dashboard.
", + "SIDEBAR_TXT": "Caixa de entrada
Quando você conectar um site ou uma página de Facebook ao Chatwoot, é chamado de caixa de entrada. Você pode ter caixas de entrada ilimitadas na sua conta de Chatwoot.
Clique em Adicionar caixa de entrada para conectar um site ou uma página do Facebook.
No Painel, você pode ver todas as conversas de todas as suas caixas de entrada em um único lugar e responder a elas sob a guia `Conversations`.
Você também pode ver conversas específicas para uma caixa de entrada clicando no nome da caixa de entrada no painel esquerdo do painel.
", "LIST": { "404": "Não há caixas de entrada anexadas a esta conta." }, @@ -64,12 +64,12 @@ "PLACEHOLDER": "Nós tornamos simples a conexão conosco. Pergunte qualquer assunto ou compartilhe seus comentários." }, "CHANNEL_GREETING_MESSAGE": { - "LABEL": "Channel greeting message", + "LABEL": "Mensagem de saudação do canal", "PLACEHOLDER": "Acme Inc tipicamente retorna em algumas horas." }, "CHANNEL_GREETING_TOGGLE": { - "LABEL": "Enable channel greeting", - "HELP_TEXT": "Send a greeting message to the user when he starts the conversation.", + "LABEL": "Ativar saudação do canal", + "HELP_TEXT": "Enviar uma mensagem de saudação ao usuário quando ele iniciar a conversa.", "ENABLED": "Ativado", "DISABLED": "Desativado" }, @@ -115,6 +115,43 @@ "ERROR_MESSAGE": "Não fomos capazes de autenticar as credenciais Twilio, por favor, tente novamente" } }, + "API_CHANNEL": { + "TITLE": "Canal da API", + "DESC": "Integre com canal API e comece a ajudar seus clientes.", + "CHANNEL_NAME": { + "LABEL": "Nome do Canal", + "PLACEHOLDER": "Por favor, insira um nome de canal", + "ERROR": "Este campo é obrigatório" + }, + "WEBHOOK_URL": { + "LABEL": "URL do webhook", + "SUBTITLE": "Configure a URL onde deseja receber chamadas em eventos.", + "PLACEHOLDER": "URL do webhook" + }, + "SUBMIT_BUTTON": "Criar canal de API", + "API": { + "ERROR_MESSAGE": "Não foi possível salvar o canal de API" + } + }, + "EMAIL_CHANNEL": { + "TITLE": "Canal de e-mail", + "DESC": "Integre sua caixa de email.", + "CHANNEL_NAME": { + "LABEL": "Nome do Canal", + "PLACEHOLDER": "Por favor, insira um nome de canal", + "ERROR": "Este campo é obrigatório" + }, + "EMAIL": { + "LABEL": "e-mail", + "SUBTITLE": "E-mail para onde os seus clientes lhe enviam tickets de suporte", + "PLACEHOLDER": "e-mail" + }, + "SUBMIT_BUTTON": "Criar canal de e-mail", + "API": { + "ERROR_MESSAGE": "Não foi possível salvar o canal de e-mail" + }, + "FINISH_MESSAGE": "Comece a encaminhar seus e-mails para o seguinte endereço de e-mail." + }, "AUTH": { "TITLE": "Canais", "DESC": "Atualmente, suportamos widgets de bate-papo ao vivo do site, páginas do Facebook e perfis do Twitter como plataformas. Temos mais plataformas como WhatsApp, Email, Telegram e Line em andamento, que serão lançadas em breve." @@ -175,7 +212,17 @@ "ERROR_MESSAGE": "Não foi possível excluir a caixa de entrada. Tente novamente mais tarde." } }, + "TABS": { + "SETTINGS": "Confirgurações", + "COLLABORATORS": "Colaboradores", + "CONFIGURATION": "Configuração" + }, "SETTINGS": "Confirgurações", + "FEATURES": { + "LABEL": "Funcionalidades", + "DISPLAY_FILE_PICKER": "Exibir seletor de arquivos no widget", + "DISPLAY_EMOJI_PICKER": "Exibir seletor de emoji no widget" + }, "SETTINGS_POPUP": { "MESSENGER_HEADING": "Código Menssageiro