discourse/plugins/chat/config/locales/server.en.yml
Joffrey JAFFEUX ab832cc865
FEATURE: introduces group channels (#24288)
Group channels will allow users to create channels with a name and invite people. It's possible to add people even after creation of the channel. Removing users is not yet possible but will be added in the near future.

Technically a group channel is `direct_message_channel` with a group attribute set to true on its direct message (chatable). This model might evolve in the future but offers much flexibility for now without having to rely on a complex migration.

The commit essentially consists of:
- a migration to set existing direct message channels with more than 2 users to a group
- a new message creator which allows to search, add members, and create groups
- a new `AddUsersToChannel` service
- a modified `SearchChatable` service
2023-11-10 11:29:28 +01:00

266 lines
16 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

en:
site_settings:
chat_separate_sidebar_mode: "Show separate sidebar modes for forum and chat."
chat_enabled: "Enable chat."
enable_public_channels: "Enable public channels based on categories."
chat_allowed_groups: "Users in these groups can chat. Note that staff can always access chat."
chat_channel_retention_days: "Chat messages in regular channels will be retained for this many days. Set to '0' to retain messages forever."
chat_dm_retention_days: "Chat messages in personal chat channels will be retained for this many days. Set to '0' to retain messages forever."
chat_auto_silence_duration: "Number of minutes that users will be silenced for when they exceed the chat message creation rate limit. Set to '0' to disable auto-silencing."
chat_allowed_messages_for_trust_level_0: "Number of messages that trust level 0 users is allowed to send in 30 seconds. Set to '0' to disable limit."
chat_allowed_messages_for_other_trust_levels: "Number of messages that users with trust levels 1-4 is allowed to send in 30 seconds. Set to '0' to disable limit."
chat_silence_user_sensitivity: "The likelihood that a user flagged in chat will be automatically silenced."
chat_auto_silence_from_flags_duration: "Number of minutes that users will be silenced for when they are automatically silenced due to flagged chat messages."
chat_default_channel_id: "The chat channel that will be opened by default when a user has no unread messages or mentions in other channels."
chat_duplicate_message_sensitivity: "The likelihood that a duplicate message by the same sender will be blocked in a short period. Decimal number between 0 and 1.0, with 1.0 being the highest setting (blocks messages more frequently in a shorter amount of time). Set to `0` to allow duplicate messages."
chat_minimum_message_length: "Minimum number of characters for a chat message."
chat_allow_uploads: "Allow uploads in public chat channels and direct message channels."
chat_archive_destination_topic_status: "The status that the destination topic should be once a channel archive is completed. This only applies when the destination topic is a new topic, not an existing one."
default_emoji_reactions: "Default emoji reactions for chat messages. Add up to 5 emojis for quick reaction."
direct_message_enabled_groups: "Allow users within these groups to create user-to-user Personal Chats. Note: staff can always create Personal Chats, and users will be able to reply to Personal Chats initiated by users who have permission to create them."
chat_message_flag_allowed_groups: "Users in these groups are allowed to flag chat messages."
max_mentions_per_chat_message: "Maximum number of @name notifications a user can use in a chat message."
chat_max_direct_message_users: "Users cannot add more than this number of other users when creating a new direct message. Set to 0 to only allow messages to oneself. Staff are exempt from this setting."
chat_allow_archiving_channels: "Allow staff to archive messages to a topic when closing a channel."
chat_editing_grace_period: "For (n) seconds after sending a chat, editing will not display the (edited) tag by the chat message."
chat_editing_grace_period_max_diff_low_trust: "Maximum number of character changes allowed in chat editing grace period, if more changed display the (edited) tag by the chat message (trust level 0 and 1)."
chat_editing_grace_period_max_diff_high_trust: "Maximum number of character changes allowed in chat editing grace period, if more changed display the (edited) tag by the chat message (trust level 2 and up)."
errors:
chat_default_channel: "The default chat channel must be a public channel."
direct_message_enabled_groups_invalid: "You must specify at least one group for this setting. If you do not want anyone except staff to send direct messages, choose the staff group."
chat_upload_not_allowed_secure_uploads: "Chat uploads are not allowed when secure uploads site setting is enabled."
system_messages:
chat_channel_archive_complete:
title: "Chat Channel Archive Complete"
subject_template: "Chat channel archive completed successfully"
text_body_template: |
Archiving the chat channel %{channel_hashtag_or_name} has been completed successfully. The messages were copied into the topic [%{topic_title}](%{topic_url}).
chat_channel_archive_failed:
title: "Chat Channel Archive Failed"
subject_template: "Chat channel archive failed"
text_body_template: |
Archiving the chat channel %{channel_hashtag_or_name} has failed. %{messages_archived} messages have been archived. Partially archived messages were copied into the topic [%{topic_title}](%{topic_url}). Visit the channel at %{channel_url} to retry.
chat_channel_archive_failed_no_topic:
title: "Chat Channel Archive Failed"
subject_template: "Chat channel archive failed"
text_body_template: |
Archiving the chat channel %{channel_hashtag_or_name} has failed. No messages have been archived. The topic was not created successfully for the following reasons:
%{topic_validation_errors}
Visit the channel at %{channel_url} to retry.
chat:
deleted_chat_username: deleted
errors:
users_cant_be_added_to_channel: "Users can't be added to this channel."
channel_exists_for_category: "A channel already exists for this category and name"
channel_new_message_disallowed:
archived: "The channel is archived, no new messages can be sent"
closed: "The channel is closed, no new messages can be sent"
read_only: "The channel is read only, no new messages can be sent"
channel_modify_message_disallowed:
archived: "The channel is archived, no messages can be edited or deleted"
closed: "The channel is closed, no messages can be edited or deleted"
read_only: "The channel is read only, no messages can be edited or deleted"
user_cannot_send_message: "You cannot send messages at this time."
rate_limit_exceeded: "Exceeded the limit of chat messages that can be sent within 30 seconds"
auto_silence_from_flags: "Chat message flagged with score high enough to silence user."
channel_cannot_be_archived: "The channel cannot be archived at this time, it must be either closed or open to archive."
duplicate_message: "You posted an identical message too recently."
delete_channel_failed: "Delete channel failed, please try again."
minimum_length_not_met:
one: "Message is too short, must have a minimum of %{count} character."
other: "Message is too short, must have a minimum of %{count} characters."
message_too_long:
one: "Message is too long, messages must be a maximum of %{count} character."
other: "Message is too long, messages must be a maximum of %{count} characters."
draft_too_long: "Draft is too long."
max_reactions_limit_reached: "New reactions are not allowed on this message."
message_move_invalid_channel: "The source and destination channel must be public channels."
message_move_no_messages_found: "No messages were found with the provided message IDs."
cant_update_direct_message_channel: "Direct message channel properties like name and description cant be updated."
not_accepting_dms: "Sorry, %{username} is not accepting messages at the moment."
actor_ignoring_target_user: "You are ignoring %{username}, so you cannot send messages to them."
actor_muting_target_user: "You are muting %{username}, so you cannot send messages to them."
actor_disallowed_dms: "You have chosen to prevent users from sending you private and direct messages, so you cannot create new direct messages."
actor_preventing_target_user_from_dm: "You have chosen to prevent %{username} from sending you private and direct messages, so you cannot create new direct messages to them."
user_cannot_send_direct_messages: "Sorry, you cannot send direct messages."
over_chat_max_direct_message_users_allow_self: "You can only create a direct message with yourself."
over_chat_max_direct_message_users:
one: "You can't create a direct message with more than %{count} other user."
other: "You can't create a direct message with more than %{count} other users."
original_message_not_found: "The ancestor of the message you are replying to cannot be found or has been deleted."
thread_invalid_for_channel: "Thread is not part of the provided channel."
thread_does_not_match_parent: "Thread does not match parent message."
reviewables:
message_already_handled: "Thanks, but we've already reviewed this message and determined it does not need to be flagged again."
actions:
agree:
title: "Agree..."
agree_and_keep_message:
title: "Keep Message"
description: "Agree with flag and keep the message unchanged."
agree_and_keep_deleted:
title: "Keep Message Deleted"
description: "Agree with flag and leave the message deleted."
agree_and_suspend:
title: "Suspend User"
description: "Agree with flag and suspend the user."
agree_and_silence:
title: "Silence User"
description: "Agree with flag and silence the user."
agree_and_restore:
title: "Restore Message"
description: "Restore the message so that users can see it."
agree_and_delete:
title: "Delete Message"
description: "Delete the message so that users cannot see it."
delete_and_agree:
title: "Ignore Flag and Delete Message"
description: "Ignore the flag by removing it from the queue and delete the message."
disagree_and_restore:
title: "Disagree and Restore Message"
description: "Restore the message so that all users can see it."
disagree:
title: "Disagree"
ignore:
title: "Do Nothing"
description: "Ignore the flag by removing it from the queue without taking any action."
direct_messages:
transcript_title: "Transcript of previous messages in %{channel_name}"
transcript_body: "To give you more context, we included a transcript of the previous messages in this conversation (up to ten):\n\n%{transcript}"
channel:
users_invited_to_channel:
one: "%{invited_users} has been invited by %{inviting_user}."
other: "%{invited_users} have been invited by %{inviting_user}."
archive:
first_post_raw: "This topic is an archive of the [%{channel_name}](%{channel_url}) chat channel."
messages_moved:
one: "@%{acting_username} moved a message to the [%{channel_name}](%{first_moved_message_url}) channel."
other: "@%{acting_username} moved %{count} messages to the [%{channel_name}](%{first_moved_message_url}) channel."
dm_title:
single_user: "%{username}"
multi_user: "%{comma_separated_usernames}"
multi_user_truncated:
one: "%{comma_separated_usernames} and %{count} other"
other: "%{comma_separated_usernames} and %{count} others"
mention_warning:
dismiss: "dismiss"
cannot_see: "%{first_identifier} can't access this channel and was not notified."
cannot_see_multiple:
one: "%{first_identifier} and %{count} other user cannot access this channel and were not notified."
other: "%{first_identifier} and %{count} other users cannot access this channel and were not notified."
invitations_sent:
one: "Invitation sent"
other: "Invitations sent"
invite: "Invite to channel"
without_membership: "%{first_identifier} has not joined this channel."
without_membership_multiple:
one: "%{first_identifier} and %{count} other user have not joined this channel."
other: "%{first_identifier} and %{count} other users have not joined this channel."
group_mentions_disabled: "%{first_identifier} doesn't allow mentions."
group_mentions_disabled_multiple:
one: "%{first_identifier} and %{count} other group don't allow mentions."
other: "%{first_identifier} and %{count} other groups don't allow mentions."
global_mentions_disallowed: "@here and @all mentions are disabled in this channel."
too_many_members: "%{first_identifier} has too many members. No one was notified."
too_many_members_multiple:
one: "%{first_identifier} and %{count} other group have too many members. No one was notified."
other: "%{first_identifier} and %{count} other groups have too many members. No one was notified."
category_channel:
errors:
slug_contains_non_ascii_chars: "contains non-ascii characters"
is_already_in_use: "is already in use"
bookmarkable:
notification_title: "message in %{channel_name}"
personal_chat: "personal chat"
onebox:
inline_to_message: "Message #%{message_id} by %{username} #%{chat_channel}"
inline_to_channel: "Chat #%{chat_channel}"
inline_to_topic_channel: "Chat for Topic %{topic_title}"
thread_title_connector: "in"
x_members:
one: "%{count} member"
other: "%{count} members"
and_x_others:
one: "and %{count} other"
other: "and %{count} others"
summaries:
no_targets: "There were no messages during the selected period."
discourse_push_notifications:
popup:
chat_mention:
direct: '%{username} mentioned you in "%{channel}"'
other_type: '%{username} mentioned %{identifier} in "%{channel}"'
direct_message_chat_mention:
direct: "%{username} mentioned you in personal chat"
other_type: "%{username} mentioned %{identifier} in personal chat"
new_chat_message: '%{username} sent a message in "%{channel}"'
new_direct_chat_message: "%{username} sent a message in personal chat"
discourse_automation:
scriptables:
send_chat_message:
title: Send chat message
reviewable_score_types:
needs_review:
title: "Needs Review"
notify_user:
chat_pm_title: 'Your chat message in "%{channel_name}"'
chat_pm_body: "%{link}\n\n%{message}"
notify_moderators:
chat_pm_title: 'A chat message in "%{channel_name}" requires staff attention'
chat_pm_body: "%{link}\n\n%{message}"
reviewables:
reasons:
chat_message_queued_by_staff: "A staff member thinks this chat message needs review."
user_notifications:
chat_summary:
deleted_user: "Deleted user"
description:
one: "You have a new chat message"
other: "You have new chat messages"
from: "%{site_name}"
subject:
direct_message_from_1: "[%{email_prefix}] New message from %{username}"
direct_message_from_2: "[%{email_prefix}] New message from %{username1} and %{username2}"
direct_message_from_more:
one: "[%{email_prefix}] New message from %{username} and %{count} other"
other: "[%{email_prefix}] New message from %{username} and %{count} others"
chat_channel_1: "[%{email_prefix}] New message in %{channel}"
chat_channel_2: "[%{email_prefix}] New message in %{channel1} and %{channel2}"
chat_channel_more:
one: "[%{email_prefix}] New message in %{channel} and %{count} other"
other: "[%{email_prefix}] New message in %{channel} and %{count} others"
chat_channel_and_direct_message: "[%{email_prefix}] New message in %{channel} and from %{username}"
unsubscribe: "This chat summary is sent from %{site_link} when you are away. Change your %{email_preferences_link}, or %{unsubscribe_link} to unsubscribe."
unsubscribe_no_link: "This chat summary is sent from %{site_link} when you are away. Change your %{email_preferences_link}."
view_messages:
one: "View message"
other: "View %{count} messages"
view_more:
one: "View %{count} more message"
other: "View %{count} more messages"
your_chat_settings: "chat email frequency preference"
unsubscribe:
chat_summary:
select_title: "Set chat summary emails frequency to:"
never: Never
when_away: Only when away
category:
cannot_delete:
has_chat_channels: "Can't delete this category because it has chat channels."