diff --git a/docs/main/administration-guide/comply/embedded-json-audit-log-schema.mdx b/docs/main/administration-guide/comply/embedded-json-audit-log-schema.mdx index fde3d2bb64b4..a62ddd703da0 100644 --- a/docs/main/administration-guide/comply/embedded-json-audit-log-schema.mdx +++ b/docs/main/administration-guide/comply/embedded-json-audit-log-schema.mdx @@ -1829,7 +1829,7 @@ This comprehensive list includes all audit events captured by Mattermost across timestamp int64 -
Date/time when event or activity has taken place. |

Mattermost currently supports three log formats: plain, JSON, and | GELF. | | - Plain log format uses RFC3339 by default. | See the plain log format configuration documentation for supported options. | - JSON log format uses RFC3339 by default. | See the JSON log format configuration documentation for supported options. | | - GELF log format uses unixtime. | See the GELF log format configuration documentation for supported options. |

+
Date/time when event or activity has taken place. |

Mattermost currently supports three log formats: plain, JSON, and | GELF. | | - Plain log format uses RFC3339 by default. | See the plain log format configuration documentation for supported options. | - JSON log format uses RFC3339 by default. | See the JSON log format configuration documentation for supported options. | | - GELF log format uses unixtime. | See the GELF log format configuration documentation for supported options. |

event_name diff --git a/docs/main/administration-guide/comply/export-mattermost-channel-data.mdx b/docs/main/administration-guide/comply/export-mattermost-channel-data.mdx index 00bce4371edd..e30d7a5226db 100644 --- a/docs/main/administration-guide/comply/export-mattermost-channel-data.mdx +++ b/docs/main/administration-guide/comply/export-mattermost-channel-data.mdx @@ -1,6 +1,8 @@ --- title: "Export channel data" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Ensure important data isn't trapped in silos by migrating data between systems or backing data up for operational continuity. Once exported, channel data can be analyzed using various tools for insights into team dynamics, productivity, and communication patterns, and to fulfill reporting and auditability requirements. @@ -15,7 +17,7 @@ For Mattermost Cloud deployments, no setup is required. See the [usage](#usage) For self-hosted deployments, a Mattermost system admin must install the Channel Export integration from the in-product App Marketplace: -1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 2. Search for or scroll to **Channel Export**, and select **Install**. 3. Once installed, select **Configure**. You're taken to the System Console. 4. On the **Channel Export** configuration page, enable and configure the plugin, and then select **Save**. You can restrict the ability to export channels to system, team, and channel admins only, and you can configure a maximum file size for channel export files. diff --git a/docs/main/administration-guide/comply/legal-hold.mdx b/docs/main/administration-guide/comply/legal-hold.mdx index 511e973893d1..7b01f3ae3912 100644 --- a/docs/main/administration-guide/comply/legal-hold.mdx +++ b/docs/main/administration-guide/comply/legal-hold.mdx @@ -1,6 +1,8 @@ --- title: "Legal Hold" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + A Legal Hold, also known as a litigation hold, is a process that an organization uses to preserve all forms of relevant information when litigation is reasonably anticipated. It's a requirement established by the Federal Rules of Civil Procedure (FRCP) in the United States and similar laws in other jurisdictions. @@ -74,13 +76,13 @@ While a Legal Hold is in place, you can edit details of the Legal Hold, access t ##### Edit a Legal Hold -Select the **Edit** Contribute to Mattermost documentation by selecting the Edit option located in the top right corner of any documentation page. icon to change the name of the Legal Hold, add or remove users, change the end date, as well as include or exclude public channels. +Select the **Edit** Contribute to Mattermost documentation by selecting the Edit option located in the top right corner of any documentation page. icon to change the name of the Legal Hold, add or remove users, change the end date, as well as include or exclude public channels. ##### Access a Legal Hold secret A Legal Hold secret enables you to verify the authenticity of the data for a Legal Hold in Mattermost. -Select the **Show** Review your message text formatting using the Show/Hide preview icon in the message formatting toolbar. icon to display the Legal Hold secret key. Keep a copy of this key in a secure location. +Select the **Show** Review your message text formatting using the Show/Hide preview icon in the message formatting toolbar. icon to display the Legal Hold secret key. Keep a copy of this key in a secure location. ![An example of a Legal Hold Secret Key available to Mattermost system admins.](/images/legal-hold-secret.png) @@ -104,7 +106,7 @@ Secret key was provided, verifying legal holds... ##### Download Legal Hold data -Select the **Download** Use the Download icon to download an attached file to your local system. icon to download a copy of the preserved data to a location on your local machine. Note, no data will be available to download until at least one scheduled job is completed. This may take up to 24 hours. +Select the **Download** Use the Download icon to download an attached file to your local system. icon to download a copy of the preserved data to a location on your local machine. Note, no data will be available to download until at least one scheduled job is completed. This may take up to 24 hours. ### Step 5: Release a Legal Hold @@ -179,7 +181,7 @@ $ ./processor --legal-hold-data ./legalholddata.zip --output-path ./path/to/wher - `--legal-hold-data`: Path to the Legal Hold zip file downloaded from Mattermost - `--output-path`: Directory where the HTML output will be generated -- `--legal-hold-secret`: (Optional) Used as a security measure for an operator to ensure the authenticity of a downloaded zip file. The operator can copy the key corresponding to a particular "hold" from the Legal Hold Plugin settings page in the System Console by selecting the **Show** Review your message text formatting using the Show/Hide preview icon in the message formatting toolbar. icon next to the Legal Hold entry. +- `--legal-hold-secret`: (Optional) Used as a security measure for an operator to ensure the authenticity of a downloaded zip file. The operator can copy the key corresponding to a particular "hold" from the Legal Hold Plugin settings page in the System Console by selecting the **Show** Review your message text formatting using the Show/Hide preview icon in the message formatting toolbar. icon next to the Legal Hold entry. ### Is data gathered when a channel has been archived? diff --git a/docs/main/administration-guide/configure/authentication-configuration-settings.mdx b/docs/main/administration-guide/configure/authentication-configuration-settings.mdx index 20dfd1d6bd08..687d5bddc984 100644 --- a/docs/main/administration-guide/configure/authentication-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/authentication-configuration-settings.mdx @@ -1,6 +1,8 @@ --- title: "Authentication configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Mattermost supports up to 4 distinct, concurrent methods of user authentication: @@ -10,7 +12,7 @@ Mattermost supports up to 4 distinct, concurrent methods of user authentication: - An LDAP instance (e.g., Active Directory, OpenLDAP) - Email and Password -Review and manage the following authentication configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Authentication**: +Review and manage the following authentication configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Authentication**: - [Signup](#signup) - [Email](#email) @@ -66,7 +68,7 @@ Access the following configuration settings in the System Console by going to ** -This setting limits the email address domains that can be used to create a new account or team. | - System Config path: Authentication > Signup | You must set Require Email Verification | - config.json setting: TeamSettings > RestrictCreationToDomains to true for the restriction to function. This setting only affects email login. | - Environment variable: MM_TEAMSETTINGS_RESTRICTCREATIONTODOMAINS | +This setting limits the email address domains that can be used to create a new account or team. | - System Config path: Authentication > Signup | You must set Require Email Verification | - config.json setting: TeamSettings > RestrictCreationToDomains to true for the restriction to function. This setting only affects email login. | - Environment variable: MM_TEAMSETTINGS_RESTRICTCREATIONTODOMAINS | @@ -302,7 +304,7 @@ We recommend deploying Mattermost within your own private network, and using VPN -
  • true: Users who sign-in with AD/LDAP or an email address have the option to add | - System Config path: Authentication > MFA | multi-factor authentication to their accounts. | - config.json setting: ServiceSettings > EnableMultifactorAuthentication > false
  • false: (Default) Disables multi-factor authentication. | - Environment variable: MM_SERVICESETTINGS_ENABLEMULTIFACTORAUTHENTICATION |
+
  • true: Users who sign-in with AD/LDAP or an email address have the option to add | - System Config path: Authentication > MFA | multi-factor authentication to their accounts. | - config.json setting: ServiceSettings > EnableMultifactorAuthentication > false
  • false: (Default) Disables multi-factor authentication. | - Environment variable: MM_SERVICESETTINGS_ENABLEMULTIFACTORAUTHENTICATION |
@@ -315,7 +317,7 @@ We recommend deploying Mattermost within your own private network, and using VPN -
- true: Requires multi-factor authentication (MFA) | - System Config path: **Authentication > MFA** | | - config.json setting: ServiceSettings > EnforceMultifactorAuthentication > false

for users who sign-in with AD/LDAP or an email address. | - Environment variable: MM_SERVICESETTINGS_ENFORCEMULTIFACTORAUTHENTICATION | New users must set up MFA. Logged in users are redirected to the MFA | | setup page until configuration is complete. | |

  • false: (Default) MFA is optional. | |
+
- true: Requires multi-factor authentication (MFA) | - System Config path: **Authentication > MFA** | | - config.json setting: ServiceSettings > EnforceMultifactorAuthentication > false

for users who sign-in with AD/LDAP or an email address. | - Environment variable: MM_SERVICESETTINGS_ENFORCEMULTIFACTORAUTHENTICATION | New users must set up MFA. Logged in users are redirected to the MFA | | setup page until configuration is complete. | |

  • false: (Default) MFA is optional. | |
@@ -665,7 +667,7 @@ If this setting is `false`, no additional users are designated as system admins -
This setting accepts an AD/LDAP filter to apply when searching for external users with Guest Access to Mattermost. Only users selected by the query can access Mattermost as Guests. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > GuestFilter |
See Guest Accounts for more information. | - Environment variable: MM_LDAPSETTINGS_GUESTFILTER
                                                              |

String input. | |

+
This setting accepts an AD/LDAP filter to apply when searching for external users with Guest Access to Mattermost. Only users selected by the query can access Mattermost as Guests. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > GuestFilter |
See Guest Accounts for more information. | - Environment variable: MM_LDAPSETTINGS_GUESTFILTER
                                                              |

String input. | |

@@ -755,7 +757,7 @@ The ID attribute value is matched verbatim - Mattermost applies no case normaliz -
This is the attribute in the AD/LDAP server that populates the first name field in Mattermost. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > FirstNameAttribute |
When set, users cannot edit their first name. | - Environment variable: MM_LDAPSETTINGS_FIRSTNAMEATTRIBUTE |
                                                                     |

When not set, users can edit their first name in their | | profile settings. | | | String input. | |

+
This is the attribute in the AD/LDAP server that populates the first name field in Mattermost. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > FirstNameAttribute |
When set, users cannot edit their first name. | - Environment variable: MM_LDAPSETTINGS_FIRSTNAMEATTRIBUTE |
                                                                     |

When not set, users can edit their first name in their | | profile settings. | | | String input. | |

@@ -768,7 +770,7 @@ The ID attribute value is matched verbatim - Mattermost applies no case normaliz -
This is the attribute in the AD/LDAP server that populates the last name field in Mattermost. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > LastNameAttribute |
When set, users cannot edit their last name. | - Environment variable: MM_LDAPSETTINGS_LASTNAMEATTRIBUTE |
                                                                    |

When not set, users can edit their last name as part of their | | profile settings. | | | | String input. | |

+
This is the attribute in the AD/LDAP server that populates the last name field in Mattermost. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > LastNameAttribute |
When set, users cannot edit their last name. | - Environment variable: MM_LDAPSETTINGS_LASTNAMEATTRIBUTE |
                                                                    |

When not set, users can edit their last name as part of their | | profile settings. | | | | String input. | |

@@ -781,7 +783,7 @@ The ID attribute value is matched verbatim - Mattermost applies no case normaliz -
This is the attribute in the AD/LDAP server that populates the nickname field in Mattermost. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > NicknameAttribute |
When set, users cannot edit their nickname. | - Environment variable: MM_LDAPSETTINGS_NICKNAMEATTRIBUTE |
                                                                    |

When not set, users can edit their nickname as part of their | | profile settings. | | | String input. | |

+
This is the attribute in the AD/LDAP server that populates the nickname field in Mattermost. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > NicknameAttribute |
When set, users cannot edit their nickname. | - Environment variable: MM_LDAPSETTINGS_NICKNAMEATTRIBUTE |
                                                                    |

When not set, users can edit their nickname as part of their | | profile settings. | | | String input. | |

@@ -794,7 +796,7 @@ The ID attribute value is matched verbatim - Mattermost applies no case normaliz -
This is the attribute in the AD/LDAP server that populates the position field in Mattermost. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > PositionAttribute |
When set, users cannot edit their position. | - Environment variable: MM_LDAPSETTINGS_POSITIONATTRIBUTE |
                                                                    |

When not set, users can edit their position as part of their | | profile settings. | | | String input. | |

+
This is the attribute in the AD/LDAP server that populates the position field in Mattermost. | - System Config path: Authentication > AD/LDAP |
- config.json setting: LdapSettings > PositionAttribute |
When set, users cannot edit their position. | - Environment variable: MM_LDAPSETTINGS_POSITIONATTRIBUTE |
                                                                    |

When not set, users can edit their position as part of their | | profile settings. | | | String input. | |

@@ -952,7 +954,7 @@ If a sync is `Pending` and does not complete, check that **Enable Synchronizatio
-../../images/ldap-sync-table.png +/images/ldap-sync-table.png
### Config settings not available in the AD/LDAP Wizard @@ -1008,7 +1010,7 @@ In line with Microsoft ADFS guidance, we recommend [configuring intranet forms-b -
  • true: Enables sign-in with SAML. See SAML Single Sign-On to learn more. | - System Config path: Authentication > SAML 2.0
  • false: (Default) Disables sign-in with SAML. | - config.json setting: SamlSettings > Enable > false |
    - Environment variable: MM_SAMLSETTINGS_ENABLE |
+
  • true: Enables sign-in with SAML. See SAML Single Sign-On to learn more. | - System Config path: Authentication > SAML 2.0
  • false: (Default) Disables sign-in with SAML. | - config.json setting: SamlSettings > Enable > false |
    - Environment variable: MM_SAMLSETTINGS_ENABLE |
@@ -1332,7 +1334,7 @@ The ID attribute value is matched verbatim - Mattermost applies no case normaliz -
(Optional) This setting determines the SAML Assertion attribute used to apply a Guest role to users in Mattermost. | - System Config path: Authentication > SAML 2.0 |
- config.json setting: SamlSettings > GuestAttribute|
See the Guest Accounts documentation for more information. | - Environment variable: MM_SAMLSETTINGS_GUESTATTRIBUTE
                                                                |

String input. | |

+
(Optional) This setting determines the SAML Assertion attribute used to apply a Guest role to users in Mattermost. | - System Config path: Authentication > SAML 2.0 |
- config.json setting: SamlSettings > GuestAttribute|
See the Guest Accounts documentation for more information. | - Environment variable: MM_SAMLSETTINGS_GUESTATTRIBUTE
                                                                |

String input. | |

@@ -1609,7 +1611,7 @@ GitLab provides the [Application Secret Key](#gitlab-oauth-20-application-secret -
  • true: Allows team and account creation using Google OAuth authentication. Input the Client ID and Client Secret credentials to configure. | - System Config path: Authentication > OAuth 2.0 |
- false: (Default) Disables Google OAuth authentication. | - config.json setting: GoogleSettings > Enable > false|
- Environment variable: MM_GOOGLESETTINGS_ENABLE |

See Google Single Sign-On implementation instructions. |

+
  • true: Allows team and account creation using Google OAuth authentication. Input the Client ID and Client Secret credentials to configure. | - System Config path: Authentication > OAuth 2.0 |
- false: (Default) Disables Google OAuth authentication. | - config.json setting: GoogleSettings > Enable > false|
- Environment variable: MM_GOOGLESETTINGS_ENABLE |

See Google Single Sign-On implementation instructions. |

@@ -1622,7 +1624,7 @@ GitLab provides the [Application Secret Key](#gitlab-oauth-20-application-secret -
This setting stores the OAuth Client ID from Google. Generate the ID by going to the Credentials section of the Google Cloud Platform APIs & Services menu and selecting Create Credentials > OAuth client ID. | - System Config path: Authentication > OAuth 2.0 |
- config.json setting: GoogleSettings > Id|
See Google Single Sign-On for instructions that can be used to implement Google OAuth or OpenID authentication. | - Environment variable: MM_GOOGLESETTINGS_ID
                                                      |

String input. | |

+
This setting stores the OAuth Client ID from Google. Generate the ID by going to the Credentials section of the Google Cloud Platform APIs & Services menu and selecting Create Credentials > OAuth client ID. | - System Config path: Authentication > OAuth 2.0 |
- config.json setting: GoogleSettings > Id|
See Google Single Sign-On for instructions that can be used to implement Google OAuth or OpenID authentication. | - Environment variable: MM_GOOGLESETTINGS_ID
                                                      |

String input. | |

@@ -1985,7 +1987,7 @@ See **Step 2** of the [GitLab Single Sign-On](/administration-guide/onboard/sso- -
  • true: Allows team and account creation using Google OpenID authentication. | - System Config path: Authentication > OpenID Connect |
- false: (Default) Disables Google OpenID authentication. | - config.json setting: GoogleSettings > Enable > false |
- Environment variable: MM_GOOGLESETTINGS_ENABLE |

See Google Single Sign-On implementation instructions. |

+
  • true: Allows team and account creation using Google OpenID authentication. | - System Config path: Authentication > OpenID Connect |
- false: (Default) Disables Google OpenID authentication. | - config.json setting: GoogleSettings > Enable > false |
- Environment variable: MM_GOOGLESETTINGS_ENABLE |

See Google Single Sign-On implementation instructions. |

@@ -1998,7 +2000,7 @@ See **Step 2** of the [GitLab Single Sign-On](/administration-guide/onboard/sso- -
This setting is prepopulated with the Discovery Endpoint for Google OpenID Connect. | - System Config path: Authentication > OpenID Connect |
- config.json setting: GoogleSettings > DiscoveryEndpoint |
See Configure Mattermost for Google Apps SSO. | - Environment variable: MM_GOOGLESETTINGS_DISCOVERYENDPOINT
                                                                      |

String input. Default is https://accounts.google.com/.well-known/openid-configuration | |

+
This setting is prepopulated with the Discovery Endpoint for Google OpenID Connect. | - System Config path: Authentication > OpenID Connect |
- config.json setting: GoogleSettings > DiscoveryEndpoint |
See Configure Mattermost for Google Apps SSO. | - Environment variable: MM_GOOGLESETTINGS_DISCOVERYENDPOINT
                                                                      |

String input. Default is https://accounts.google.com/.well-known/openid-configuration | |

@@ -2011,7 +2013,7 @@ See **Step 2** of the [GitLab Single Sign-On](/administration-guide/onboard/sso- -
This setting stores the Client ID generated by Google. | - System Config path: Authentication > OpenID Connect |
- config.json setting: GoogleSettings > Id |
See Google Single Sign-On implementation instructions. | - Environment variable: MM_GOOGLESETTINGS_ID
                                                          |

String input. | |

+
This setting stores the Client ID generated by Google. | - System Config path: Authentication > OpenID Connect |
- config.json setting: GoogleSettings > Id |
See Google Single Sign-On implementation instructions. | - Environment variable: MM_GOOGLESETTINGS_ID
                                                          |

String input. | |

@@ -2024,7 +2026,7 @@ See **Step 2** of the [GitLab Single Sign-On](/administration-guide/onboard/sso- -
This setting stores the Client Secret generated by Google. | - System Config path: Authentication > OpenID Connect |
- config.json setting: GoogleSettings > Secret|
See Google Single Sign-On implementation instructions. | - Environment variable: MM_GOOGLESETTINGS_SECRET
                                                          |

String input. | |

+
This setting stores the Client Secret generated by Google. | - System Config path: Authentication > OpenID Connect |
- config.json setting: GoogleSettings > Secret|
See Google Single Sign-On implementation instructions. | - Environment variable: MM_GOOGLESETTINGS_SECRET
                                                          |

String input. | |

@@ -2059,7 +2061,7 @@ In line with Microsoft ADFS guidance, we recommend [configuring intranet forms-b -
  • true: Allows team and account creation using Entra ID OpenID Connect authentication. | - System Config path: Authentication > OpenID Connect |
- false: (Default) Disables Entra ID OpenID Connect authentication. | - config.json setting: Office365Settings > Enable > false |
- Environment variable: MM_OFFICE365SETTINGS_ENABLE |

See Entra ID Single Sign-On implementation instructions. |

+
  • true: Allows team and account creation using Entra ID OpenID Connect authentication. | - System Config path: Authentication > OpenID Connect |
- false: (Default) Disables Entra ID OpenID Connect authentication. | - config.json setting: Office365Settings > Enable > false |
- Environment variable: MM_OFFICE365SETTINGS_ENABLE |

See Entra ID Single Sign-On implementation instructions. |

@@ -2072,7 +2074,7 @@ In line with Microsoft ADFS guidance, we recommend [configuring intranet forms-b -
This setting holds the Directory (tenant) ID set for Mattermost through the Microsoft Azure Portal. | - System Config path: Authentication > OpenID Connect |
- config.json setting: Office365Settings > DirectoryId |
See Entra ID Single Sign-On implementation instructions. | - Environment variable: MM_OFFICE365SETTINGS_DIRECTORYID
                                                                   |

String input. | |

+
This setting holds the Directory (tenant) ID set for Mattermost through the Microsoft Azure Portal. | - System Config path: Authentication > OpenID Connect |
- config.json setting: Office365Settings > DirectoryId |
See Entra ID Single Sign-On implementation instructions. | - Environment variable: MM_OFFICE365SETTINGS_DIRECTORYID
                                                                   |

String input. | |

@@ -2085,7 +2087,7 @@ In line with Microsoft ADFS guidance, we recommend [configuring intranet forms-b -
This setting is prepopulated with the Discovery Endpoint for Entra ID OpenID Connect. | - System Config path: Authentication > OpenID Connect |
- config.json setting: Office365Settings > DiscoveryEndpoint |
See Entra ID Single Sign-On implementation instructions. | - Environment variable: MM_OFFICE365SETTINGS_DISCOVERYENDPOINT
                                                                                                                   |

String input. Default is https://login.microsoftonline.com/common/v2.0/.well-known/openid-configuration | |

+
This setting is prepopulated with the Discovery Endpoint for Entra ID OpenID Connect. | - System Config path: Authentication > OpenID Connect |
- config.json setting: Office365Settings > DiscoveryEndpoint |
See Entra ID Single Sign-On implementation instructions. | - Environment variable: MM_OFFICE365SETTINGS_DISCOVERYENDPOINT
                                                                                                                   |

String input. Default is https://login.microsoftonline.com/common/v2.0/.well-known/openid-configuration | |

@@ -2098,7 +2100,7 @@ In line with Microsoft ADFS guidance, we recommend [configuring intranet forms-b -
This setting stores the Application (client) ID generated through the Microsoft Azure Portal. | - System Config path: Authentication > OpenID Connect |
- config.json setting: Office365Settings > Id |
See Entra ID Single Sign-On implementation instructions. | - Environment variable: MM_OFFICE365SETTINGS_ID
                                                          |

String input. | |

+
This setting stores the Application (client) ID generated through the Microsoft Azure Portal. | - System Config path: Authentication > OpenID Connect |
- config.json setting: Office365Settings > Id |
See Entra ID Single Sign-On implementation instructions. | - Environment variable: MM_OFFICE365SETTINGS_ID
                                                          |

String input. | |

@@ -2111,7 +2113,7 @@ In line with Microsoft ADFS guidance, we recommend [configuring intranet forms-b -
This setting stores the Client Secret generated through the Microsoft Azure Portal. | - System Config path: Authentication > OpenID Connect |
- config.json setting: Office365Settings > Secret |
See Entra ID Single Sign-On implementation instructions. | - Environment variable: MM_OFFICE365SETTINGS_SECRET
                                                               |

String input. | |

+
This setting stores the Client Secret generated through the Microsoft Azure Portal. | - System Config path: Authentication > OpenID Connect |
- config.json setting: Office365Settings > Secret |
See Entra ID Single Sign-On implementation instructions. | - Environment variable: MM_OFFICE365SETTINGS_SECRET
                                                               |

String input. | |

@@ -2146,7 +2148,7 @@ To make the `preferred_username` claim available, add it as an optional claim in -
  • true: Allows team and account creation using other OpenID Connect service providers. | - System Config path: Authentication > OpenID Connect |
- false: (Default) Disables OpenID Connect authentication with other service providers. | - config.json setting: OpenIdSettings > Enable > false |
- Environment variable: MM_OPENIDSETTINGS_ENABLE |

See OpenID Connect Single Sign-On implementation instructions. |

+
  • true: Allows team and account creation using other OpenID Connect service providers. | - System Config path: Authentication > OpenID Connect |
- false: (Default) Disables OpenID Connect authentication with other service providers. | - config.json setting: OpenIdSettings > Enable > false |
- Environment variable: MM_OPENIDSETTINGS_ENABLE |

See OpenID Connect Single Sign-On implementation instructions. |

@@ -2189,7 +2191,7 @@ To make the `preferred_username` claim available, add it as an optional claim in -This setting stores the Discovery Endpoint URL from the OpenID provider. | - System Config path: Authentication > OpenID Connect | The URL should be in the format of https://myopenid.provider.com/{my_organization}/ | -config.jsonsetting:OpenIdSettings>DiscoveryEndpoint| .well-known/openid-configuration. | - Environment variable: MM_OPENIDSETTINGS_DISCOVERYENDPOINT | | | See OpenID Connect Single Sign-On | implementation instructions. | | | | String input. | | +This setting stores the Discovery Endpoint URL from the OpenID provider. | - System Config path: Authentication > OpenID Connect | The URL should be in the format of https://myopenid.provider.com/{my_organization}/ | -config.jsonsetting:OpenIdSettings>DiscoveryEndpoint| .well-known/openid-configuration. | - Environment variable: MM_OPENIDSETTINGS_DISCOVERYENDPOINT | | | See OpenID Connect Single Sign-On | implementation instructions. | | | | String input. | | @@ -2208,7 +2210,7 @@ The **Discovery Endpoint** setting can be used to determine the connectivity and -
This setting stores the Client ID from the OpenID provider. | - System Config path: Authentication > OpenID Connect |
- config.json setting: OpenIdSettings > Id |
See OpenID Connect Single Sign-On implementation instructions. | - Environment variable: MM_OPENIDSETTINGS_ID
                                                          |

String input. | |

+
This setting stores the Client ID from the OpenID provider. | - System Config path: Authentication > OpenID Connect |
- config.json setting: OpenIdSettings > Id |
See OpenID Connect Single Sign-On implementation instructions. | - Environment variable: MM_OPENIDSETTINGS_ID
                                                          |

String input. | |

@@ -2221,7 +2223,7 @@ The **Discovery Endpoint** setting can be used to determine the connectivity and -
This setting stores the Client Secret from the OpenID provider. | - System Config path: Authentication > OpenID Connect |
- config.json setting: OpenIdSettings > Secret|
See OpenID Connect Single Sign-On implementation instructions. | - Environment variable: MM_OPENIDSETTINGS_SECRET
                                                          |

String input. | |

+
This setting stores the Client Secret from the OpenID provider. | - System Config path: Authentication > OpenID Connect |
- config.json setting: OpenIdSettings > Secret|
See OpenID Connect Single Sign-On implementation instructions. | - Environment variable: MM_OPENIDSETTINGS_SECRET
                                                          |

String input. | |

diff --git a/docs/main/administration-guide/configure/calls-deployment-guide.mdx b/docs/main/administration-guide/configure/calls-deployment-guide.mdx index 4d32855c64f3..baef51caf0b1 100644 --- a/docs/main/administration-guide/configure/calls-deployment-guide.mdx +++ b/docs/main/administration-guide/configure/calls-deployment-guide.mdx @@ -1,6 +1,7 @@ --- title: "Mattermost Calls Deployment Guide" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -167,7 +168,7 @@ Use the tabs below to view the reference architecture for each deployment model: An **Integrated** deployment does not require any additional infrastructure: -Integrated Calls deployment +Integrated Calls deployment **When to use it** - You are evaluating Calls for the first time. @@ -189,7 +190,7 @@ The **Recording** service (`calls-offloader`) can optionally be added to an **In Reference architecture when using the Recording service with Integrated Calls: -Calls deployment with Integrated Calls and recording +Calls deployment with Integrated Calls and recording **Components** - **Mattermost server**: Calls plugin is pre-installed. @@ -204,7 +205,7 @@ Reference architecture when using the Recording service with Integrated Calls: An **RTCD Server** is added as a dedicated media service that processes all call audio and screen sharing media. -Calls deployment with RTCD +Calls deployment with RTCD The Mattermost server is still responsible for signaling (setting up, managing, and ending calls) and channel state (who is joining or leaving, who has muted, and overall call status), but the call media itself flows directly between clients and the RTCD server, completely bypassing the Mattermost server. **When to use it** @@ -231,7 +232,7 @@ The **Recording** service (`calls-offloader`) can optionally be added to an **RT Reference architecture when using the Recording service with RTCD: -Calls deployment with RTCD and recording +Calls deployment with RTCD and recording **Components** - **Mattermost server**: Calls plugin is pre-installed. diff --git a/docs/main/administration-guide/configure/cloud-billing-account-settings.mdx b/docs/main/administration-guide/configure/cloud-billing-account-settings.mdx index 03f48ccf788c..a6c92739b74a 100644 --- a/docs/main/administration-guide/configure/cloud-billing-account-settings.mdx +++ b/docs/main/administration-guide/configure/cloud-billing-account-settings.mdx @@ -1,7 +1,9 @@ --- title: "Cloud workspace subscription, billing, and account settings" --- -Review and manage the following aspects of your Mattermost cloud-based deployment by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Billing and Account**: +import useBaseUrl from '@docusaurus/useBaseUrl'; + +Review and manage the following aspects of your Mattermost cloud-based deployment by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Billing and Account**: - Access billing history - Manage the [product subscription](/product-overview/cloud-subscriptions) and account details for your Mattermost Cloud deployment. diff --git a/docs/main/administration-guide/configure/compliance-configuration-settings.mdx b/docs/main/administration-guide/configure/compliance-configuration-settings.mdx index 8fc18a20d14a..c9e93343423c 100644 --- a/docs/main/administration-guide/configure/compliance-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/compliance-configuration-settings.mdx @@ -1,9 +1,11 @@ --- title: "Compliance configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -Review and manage the following compliance configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Compliance**: +Review and manage the following compliance configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Compliance**: - [Data Retention Policies](#data-retention-policies) - [Compliance Export](/administration-guide/comply/compliance-export) diff --git a/docs/main/administration-guide/configure/configuration-settings.mdx b/docs/main/administration-guide/configure/configuration-settings.mdx index 7d99e892aadc..eac614bdcf79 100644 --- a/docs/main/administration-guide/configure/configuration-settings.mdx +++ b/docs/main/administration-guide/configure/configuration-settings.mdx @@ -1,9 +1,11 @@ --- title: "Configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -System admins for both self-hosted and Cloud Mattermost deployments can manage Mattermost configuration using the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu and selecting **System Console**. +System admins for both self-hosted and Cloud Mattermost deployments can manage Mattermost configuration using the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu and selecting **System Console**. diff --git a/docs/main/administration-guide/configure/custom-branding-tools.mdx b/docs/main/administration-guide/configure/custom-branding-tools.mdx index 06b35132afbc..4c98386c0a70 100644 --- a/docs/main/administration-guide/configure/custom-branding-tools.mdx +++ b/docs/main/administration-guide/configure/custom-branding-tools.mdx @@ -1,12 +1,14 @@ --- title: "Custom branding tools" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Use custom branding tools to present a Mattermost experience that's tailored to the branding of your organization.
-../../images/custom-branding-tools.png +/images/custom-branding-tools.png
## Enable custom branding diff --git a/docs/main/administration-guide/configure/environment-configuration-settings.mdx b/docs/main/administration-guide/configure/environment-configuration-settings.mdx index f26c22d2152a..b1a01e868c2e 100644 --- a/docs/main/administration-guide/configure/environment-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/environment-configuration-settings.mdx @@ -1,6 +1,7 @@ --- title: "Environment configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -9,7 +10,7 @@ import Inc1_rate_limiting_configuration_settings from './rate-limiting-configura -Review and manage the following environmental configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Environment**: +Review and manage the following environmental configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Environment**: - [Web server](#web-server) - [Database](#database) @@ -834,7 +835,7 @@ MySQL databases must be configured to support searching strings shorter than thr -When enterprise-scale search, | - System Config path: Environment > Database database search can be disabled from performing searches. | - config.json setting: SqlSettings > DisableDatabaseSearch > false | | - Environment variable: MM_SQLSETTINGS_DISABLEDATABASESEARCH | - true: Disables the use of the database to perform | | searches. If another search engine isn't configured, | | setting this value to true will result in empty search | | results. | | - false: (Default) Database search isn't disabled. | | +When enterprise-scale search, | - System Config path: Environment > Database database search can be disabled from performing searches. | - config.json setting: SqlSettings > DisableDatabaseSearch > false | | - Environment variable: MM_SQLSETTINGS_DISABLEDATABASESEARCH | - true: Disables the use of the database to perform | | searches. If another search engine isn't configured, | | setting this value to true will result in empty search | | results. | | - false: (Default) Database search isn't disabled. | | @@ -862,7 +863,7 @@ However, the ability to perform database searches in Mattermost is a critical fe ### Applied schema migrations -A list of all migrations that have been applied to the data store based on the version information available in the `db_migrations` table. Select **About Mattermost** from the Product Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu to review the current database schema version applied to your deployment. +A list of all migrations that have been applied to the data store based on the version information available in the `db_migrations` table. Select **About Mattermost** from the Product Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu to review the current database schema version applied to your deployment. ### Active search backend @@ -3746,7 +3747,7 @@ This setting improves an organization's mobile security posture by restricting f -
  • true: Prevents file downloads, previews, and sharing for most file types, | - System Config path: Site Configuration > File sharing and downloads | even when the | - config.json setting: FileSettings > MobileEnableSecureFilePreview > false | Allow file downloads on mobile | - Environment variable: MM_FILESETTINGS_MOBILEENABLESECUREFILEPREVIEW configuration setting is enabled. Allows in-app previews for PDFs, | | videos, and images only. Files are stored temporarily in the app's cache and cannot be exported or shared. | |
  • false: (Default) Secure file preview mode is disabled. | |
+
  • true: Prevents file downloads, previews, and sharing for most file types, | - System Config path: Site Configuration > File sharing and downloads | even when the | - config.json setting: FileSettings > MobileEnableSecureFilePreview > false | Allow file downloads on mobile | - Environment variable: MM_FILESETTINGS_MOBILEENABLESECUREFILEPREVIEW configuration setting is enabled. Allows in-app previews for PDFs, | | videos, and images only. Files are stored temporarily in the app's cache and cannot be exported or shared. | |
  • false: (Default) Secure file preview mode is disabled. | |
@@ -4014,7 +4015,7 @@ Adding a prefix to all Redis cache keys reduces key collisions, simplifies debug -

Enables the ability to specify an alternate filestore target for Mattermost bulk exports and compliance exports.

  • True: A new ExportFileBackend() is generated under FileSettings using new configuration values for the following configuration settings:
    • ExportDriverName
    • ExportDirectory
    • ExportAmazonS3AccessKeyId
    • ExportAmazonS3SecretAccessKey
    • ExportAmazonS3Bucket
    • ExportAmazonS3PathPrefix
    • ExportAmazonS3Region
    • ExportAmazonS3Endpoint
    • ExportAmazonS3SSL
    • ExportAmazonS3SignV2
    • ExportAmazonS3SSE
    • ExportAmazonS3Trace
    • ExportAmazonS3RequestTimeoutMilliseconds
    • ExportAmazonS3PresignExpiresSeconds
    • ExportAzureStorageAccount
    • ExportAzureAuthMode
    • ExportAzureAccessKey
    • ExportAzureContainer
    • ExportAzurePathPrefix
    • ExportAzureCloud
    • ExportAzureEndpoint
    • ExportAzureSSL
    • ExportAzureRequestTimeoutMilliseconds
    • ExportAzurePresignExpiresSeconds
  • False: (Default) Standard file storage is used. Standard file storage will also be used when the configuration setting or value is omitted.
+

Enables the ability to specify an alternate filestore target for Mattermost bulk exports and compliance exports.

  • True: A new ExportFileBackend() is generated under FileSettings using new configuration values for the following configuration settings:
    • ExportDriverName
    • ExportDirectory
    • ExportAmazonS3AccessKeyId
    • ExportAmazonS3SecretAccessKey
    • ExportAmazonS3Bucket
    • ExportAmazonS3PathPrefix
    • ExportAmazonS3Region
    • ExportAmazonS3Endpoint
    • ExportAmazonS3SSL
    • ExportAmazonS3SignV2
    • ExportAmazonS3SSE
    • ExportAmazonS3Trace
    • ExportAmazonS3RequestTimeoutMilliseconds
    • ExportAmazonS3PresignExpiresSeconds
    • ExportAzureStorageAccount
    • ExportAzureAuthMode
    • ExportAzureAccessKey
    • ExportAzureContainer
    • ExportAzurePathPrefix
    • ExportAzureCloud
    • ExportAzureEndpoint
    • ExportAzureSSL
    • ExportAzureRequestTimeoutMilliseconds
    • ExportAzurePresignExpiresSeconds
  • False: (Default) Standard file storage is used. Standard file storage will also be used when the configuration setting or value is omitted.
  • System Config path: N/A
  • config.json setting: FileSettings > DedicatedExportStore
  • Environment variable: MM_FILESETTINGS_DEDICATEDEXPORTSTORE
diff --git a/docs/main/administration-guide/configure/experimental-configuration-settings.mdx b/docs/main/administration-guide/configure/experimental-configuration-settings.mdx index 4ce0e9e0e925..69fe4d858aa0 100644 --- a/docs/main/administration-guide/configure/experimental-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/experimental-configuration-settings.mdx @@ -1,9 +1,11 @@ --- title: "Experimental configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -Review and manage the following [experimental](/administration-guide/manage/feature-labels#experimental) configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Experimental \> Features**: +Review and manage the following [experimental](/administration-guide/manage/feature-labels#experimental) configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Experimental \> Features**: - [Experimental System Console configuration settings](#experimental-system-console-configuration-settings) - [Experimental job configuration settings](#experimental-job-configuration-settings) diff --git a/docs/main/administration-guide/configure/integrations-configuration-settings.mdx b/docs/main/administration-guide/configure/integrations-configuration-settings.mdx index 39732808c5de..264ba64fb08b 100644 --- a/docs/main/administration-guide/configure/integrations-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/integrations-configuration-settings.mdx @@ -1,9 +1,11 @@ --- title: "Integrations configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -Review and manage the following integration configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Integrations**: +Review and manage the following integration configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Integrations**: - [Integrations management](#integrations-management) - [Bot Accounts](#bot-accounts) diff --git a/docs/main/administration-guide/configure/manage-plugins.mdx b/docs/main/administration-guide/configure/manage-plugins.mdx index e30fe425218a..c153560c71f5 100644 --- a/docs/main/administration-guide/configure/manage-plugins.mdx +++ b/docs/main/administration-guide/configure/manage-plugins.mdx @@ -1,6 +1,8 @@ --- title: "Install and manage plugins" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Plugins extend Mattermost with new features and integrations, from pre-built integrations such as GitHub, Jira, and Zoom to custom plugins your team builds in-house. As a system admin, you can install, enable, configure, update, and remove plugins using either the System Console or the [mmctl command line tool](/administration-guide/manage/mmctl-command-line-tool). This page describes how to manage the plugin lifecycle. For a conceptual overview of pre-built and custom plugins, see the [plugins](/integrations-guide/plugins) documentation. For the complete list of plugin configuration options, see the [plugins configuration settings](/administration-guide/configure/plugins-configuration-settings) documentation. To build your own plugin, see the [Mattermost plugin developer](https://developers.mattermost.com/integrate/plugins/) documentation. @@ -36,7 +38,7 @@ You can install a plugin from the in-product Marketplace, by uploading a plugin Installing from the Marketplace is the recommended method for pre-built plugins. The Marketplace always installs the latest compatible version, and plugins downloaded from the Marketplace are signature-validated. -1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 2. Search for or scroll to the plugin you want, and then select **Install**. 3. Once the plugin is installed, select **Configure** to open its settings in the System Console, or **Enable** to turn it on with the default configuration. 4. Confirm the installation succeeded: the plugin appears in the **Installed Plugins** list under **Plugins > Plugin Management**, and its features are available in Mattermost. diff --git a/docs/main/administration-guide/configure/optimize-your-workspace.mdx b/docs/main/administration-guide/configure/optimize-your-workspace.mdx index 3e4545b63420..51a254c9896c 100644 --- a/docs/main/administration-guide/configure/optimize-your-workspace.mdx +++ b/docs/main/administration-guide/configure/optimize-your-workspace.mdx @@ -1,11 +1,13 @@ --- title: "Optimize your Mattermost workspace" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + With workspace optimizations, system admins can review their workspace health and growth scores, then take advantage of recommended actions for ensuring their workspace is running smoothly and teams are maximizing productivity. -System admins can access their workspace optimization page in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and going to **Reporting \> Workspace Optimization**. +System admins can access their workspace optimization page in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and going to **Reporting \> Workspace Optimization**. ![Review your workspace health and growth scores, then take advantage of recommended optimizations.](/images/workspace-optimization.png) @@ -55,7 +57,7 @@ The following optimization areas can alert you to workspace suggestions, warning
======================================================================================================================================================================+
-

You're notified when updates are available. | See the Upgrade Mattermost product documentation for details on upgrading your workspace. |

+

You're notified when updates are available. | See the Upgrade Mattermost product documentation for details on upgrading your workspace. |

@@ -75,10 +77,10 @@ The following optimization areas can alert you to workspace suggestions, warning
    -
  • Set up SSL |
  • -
  • Configure session length
  • +
  • Set up SSL |
  • +
  • Configure session length
  • -
    Configure file storage
    +
    Configure file storage

    |

    @@ -88,12 +90,12 @@ The following optimization areas can alert you to workspace suggestions, warning Workspace access Is the Mattermost workspace accessible to users? -If your web server settings don't pass a live URL test, your workspace may not be accessible to others. | See the Web server configuration settings product documentation to learn more: +If your web server settings don't pass a live URL test, your workspace may not be accessible to others. | See the Web server configuration settings product documentation to learn more: Search performance As your user base grows, is search getting slower? -See the Enterprise search product documentation to learn more. | +See the Enterprise search product documentation to learn more. | Data privacy @@ -105,8 +107,8 @@ The following optimization areas can alert you to workspace suggestions, warning
    @@ -122,8 +124,8 @@ The following optimization areas can alert you to workspace suggestions, warning diff --git a/docs/main/administration-guide/configure/plugins-configuration-settings.mdx b/docs/main/administration-guide/configure/plugins-configuration-settings.mdx index c2e1fc006b95..2a3d4a1cf1ed 100644 --- a/docs/main/administration-guide/configure/plugins-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/plugins-configuration-settings.mdx @@ -1,9 +1,11 @@ --- title: "Plugins configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -Review and manage the following plugin configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Plugins**: +Review and manage the following plugin configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Plugins**: - [Plugin management](#plugin-management) - [Calls](#calls) diff --git a/docs/main/administration-guide/configure/reporting-configuration-settings.mdx b/docs/main/administration-guide/configure/reporting-configuration-settings.mdx index 57e9c77e9900..d913079f6e21 100644 --- a/docs/main/administration-guide/configure/reporting-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/reporting-configuration-settings.mdx @@ -1,9 +1,11 @@ --- title: "Reporting configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -View the following statistics for your overall deployment and specific teams, as well as access server logs, in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Reporting**: +View the following statistics for your overall deployment and specific teams, as well as access server logs, in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Reporting**: - [System statistics](#system-statistics) - [Team statistics](#team-statistics) diff --git a/docs/main/administration-guide/configure/self-hosted-account-settings.mdx b/docs/main/administration-guide/configure/self-hosted-account-settings.mdx index 052b0ead3bf3..1e55b4990796 100644 --- a/docs/main/administration-guide/configure/self-hosted-account-settings.mdx +++ b/docs/main/administration-guide/configure/self-hosted-account-settings.mdx @@ -1,9 +1,11 @@ --- title: "Self-hosted workspace edition and license settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -Start a trial or manage your self-hosted deployment by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **About \> Edition and License**. +Start a trial or manage your self-hosted deployment by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **About \> Edition and License**. ## Start a trial diff --git a/docs/main/administration-guide/configure/site-configuration-settings.mdx b/docs/main/administration-guide/configure/site-configuration-settings.mdx index 106dd5a9a75b..0a89cc5a5d23 100644 --- a/docs/main/administration-guide/configure/site-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/site-configuration-settings.mdx @@ -1,9 +1,11 @@ --- title: "Site configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -Review and manage the following site configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Site Configuration**: +Review and manage the following site configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **Site Configuration**: - [Customization](#customization) - [Localization](#localization) @@ -102,7 +104,7 @@ Access the following configuration settings in the System Console by going to ** -Text that will be shown below the Custom brand image on the login page. | - System Config path: Site Configuration > Customization | You can format this text using the same Markdown formatting | - config.json setting: TeamSettings > CustomBrandText as in Mattermost messages. | - Environment variable: MM_TEAMSETTINGS_CUSTOMBRANDTEXT | | | String input. Maximum 500 characters. Enable custom branding | | must be set to true to display the text. | | +Text that will be shown below the Custom brand image on the login page. | - System Config path: Site Configuration > Customization | You can format this text using the same Markdown formatting | - config.json setting: TeamSettings > CustomBrandText as in Mattermost messages. | - Environment variable: MM_TEAMSETTINGS_CUSTOMBRANDTEXT | | | String input. Maximum 500 characters. Enable custom branding | | must be set to true to display the text. | | @@ -385,7 +387,7 @@ This setting is applicable to self-hosted deployments only. -Specify the minimum version of the Mattermost Desktop App required to connect to this server | - System Config path: Site Configuration > Customization | (e.g., 5.10.0). Users connecting with a Desktop App version below this minimum are shown | - config.json setting: ServiceSettings > MinimumDesktopAppVersion | an update required screen and cannot use the application until they update. | - Environment variable: MM_SERVICESETTINGS_MINIMUMDESKTOPAPPVERSION | | | The update screen includes a download link configured via the | | Mattermost apps download page link setting. | | | Must be a valid semantic version (e.g., 5.0.0). Leave blank to allow all Desktop App | | versions to connect. | | | | String input. Default is empty (no minimum enforced). | | +Specify the minimum version of the Mattermost Desktop App required to connect to this server | - System Config path: Site Configuration > Customization | (e.g., 5.10.0). Users connecting with a Desktop App version below this minimum are shown | - config.json setting: ServiceSettings > MinimumDesktopAppVersion | an update required screen and cannot use the application until they update. | - Environment variable: MM_SERVICESETTINGS_MINIMUMDESKTOPAPPVERSION | | | The update screen includes a download link configured via the | | Mattermost apps download page link setting. | | | Must be a valid semantic version (e.g., 5.0.0). Leave blank to allow all Desktop App | | versions to connect. | | | | String input. Default is empty (no minimum enforced). | | @@ -680,7 +682,7 @@ Access the following configuration settings in the System Console by going to ** -The Max users per team is the maximum total number of users per team, | - System Config path: Site Configuration > Users and Teams | including activated and deactivated users. | - config.json setting: TeamSettings > MaxUsersPerTeam > 50 | | - Environment variable: MM_TEAMSETTINGS_MAXUSERSPERTEAM | In Mattermost, a team of people should be a small organization with a | | specific goal. In the physical world, a team could sit around a single | | table. The default maximum (50) should be enough for most teams, but | | with appropriate hardware, this limit can be increased to | | thousands of users. | | | | Channels | are another way of organizing communications within teams on various topics. | | | | Numerical input. Default is 50 self-hosted deployments, and 10000 | | for Cloud deployments. | | +The Max users per team is the maximum total number of users per team, | - System Config path: Site Configuration > Users and Teams | including activated and deactivated users. | - config.json setting: TeamSettings > MaxUsersPerTeam > 50 | | - Environment variable: MM_TEAMSETTINGS_MAXUSERSPERTEAM | In Mattermost, a team of people should be a small organization with a | | specific goal. In the physical world, a team could sit around a single | | table. The default maximum (50) should be enough for most teams, but | | with appropriate hardware, this limit can be increased to | | thousands of users. | | | | Channels | are another way of organizing communications within teams on various topics. | | | | Numerical input. Default is 50 self-hosted deployments, and 10000 | | for Cloud deployments. | | @@ -736,7 +738,7 @@ Access the following configuration settings in the System Console by going to ** -This setting determines how names appear in posts and under the Direct Messages list. | - System Config path: Site Configuration > Users and Teams | Users can change this setting in their interface under Settings > Display > | - ``config.json`` setting: ``TeamSettings`` > ``TeammateNameDisplay`` > ``username`` | Teammate Name Display, unless this setting is locked by a system admin | - Environment variable: MM_TEAMSETTINGS_TEAMMATENAMEDISPLAY | via the Lock teammate name display for all users configuration setting. | | | | - Show username: (Default for self-hosted deployments) Displays usernames. | | config.json option: "username". | | - Show nickname if one exists...: Displays the user's nickname. If the user doesn't have a | | nickname, their full name is displayed. If the user doesn't have a full name, their username | | is displayed. config.json option: "nickname_full_name". | | - Show first and last name: (Default for Cloud deployments) Displays user's full name. | | If the user doesn't have a full name, their username is displayed. Recommended when using | | SAML or | LDAP if first name and last name | attributes are configured. config.json option: "full_name". | | +This setting determines how names appear in posts and under the Direct Messages list. | - System Config path: Site Configuration > Users and Teams | Users can change this setting in their interface under Settings > Display > | - ``config.json`` setting: ``TeamSettings`` > ``TeammateNameDisplay`` > ``username`` | Teammate Name Display, unless this setting is locked by a system admin | - Environment variable: MM_TEAMSETTINGS_TEAMMATENAMEDISPLAY | via the Lock teammate name display for all users configuration setting. | | | | - Show username: (Default for self-hosted deployments) Displays usernames. | | config.json option: "username". | | - Show nickname if one exists...: Displays the user's nickname. If the user doesn't have a | | nickname, their full name is displayed. If the user doesn't have a full name, their username | | is displayed. config.json option: "nickname_full_name". | | - Show first and last name: (Default for Cloud deployments) Displays user's full name. | | If the user doesn't have a full name, their username is displayed. Recommended when using | | SAML or | LDAP if first name and last name | attributes are configured. config.json option: "full_name". | | @@ -769,7 +771,7 @@ Access the following configuration settings in the System Console by going to ** -

    This setting controls whether users who sign in with email and password can change their own profile fields under Settings > Profile. System admins are always exempt and can edit any user's profile through the System Console or the API. Users authenticating through an external provider (AD/LDAP, SAML, or OAuth) aren't affected; their fields remain governed by the provider's attribute settings.

    • Don't lock profile fields: (Default) Users can change all of their profile fields. config.json option: "none".
    • Lock name and username: Users cannot change their first name, last name, or username. config.json option: "name_and_username".
    • Lock entire profile: Additionally locks the nickname, position, and profile picture. Email stays editable because it's the sign-in credential, protected by password re-entry and verification. config.json option: "all".

    Empty first and last names can be filled in once by the user, so people who join through a team invite link or open server signup aren't left without a name. Once set, the name is locked.

    When this setting is enabled, anyone with the Invite Users permission can pre-set the first name, last name, and username for each email invitation they send. The invited person sees the pre-set username on the account creation page and cannot change it. We recommend restricting the Invite Users permission through advanced permissions to people trusted to enter this information correctly.

    For a display name convention of "First Last" across the workspace, combine this setting with Teammate Name Display set to Show first and last name and Lock Teammate Name Display set to true.

    +

    This setting controls whether users who sign in with email and password can change their own profile fields under Settings > Profile. System admins are always exempt and can edit any user's profile through the System Console or the API. Users authenticating through an external provider (AD/LDAP, SAML, or OAuth) aren't affected; their fields remain governed by the provider's attribute settings.

    • Don't lock profile fields: (Default) Users can change all of their profile fields. config.json option: "none".
    • Lock name and username: Users cannot change their first name, last name, or username. config.json option: "name_and_username".
    • Lock entire profile: Additionally locks the nickname, position, and profile picture. Email stays editable because it's the sign-in credential, protected by password re-entry and verification. config.json option: "all".

    Empty first and last names can be filled in once by the user, so people who join through a team invite link or open server signup aren't left without a name. Once set, the name is locked.

    When this setting is enabled, anyone with the Invite Users permission can pre-set the first name, last name, and username for each email invitation they send. The invited person sees the pre-set username on the account creation page and cannot change it. We recommend restricting the Invite Users permission through advanced permissions to people trusted to enter this information correctly.

    For a display name convention of "First Last" across the workspace, combine this setting with Teammate Name Display set to Show first and last name and Lock Teammate Name Display set to true.

    • System Config path: Site Configuration > Users and Teams
    • config.json setting: TeamSettings > LockProfileFieldsForEmailUsers > none
    • Environment variable: MM_TEAMSETTINGS_LOCKPROFILEFIELDSFOREMAILUSERS
    @@ -1317,7 +1319,7 @@ Customers upgrading from a legacy Mattermost release prior to v7.0 must review t -
    - Always On: (Default) Enables threaded discussions | - System Config path: **Site Configuration > Posts** | | - config.json setting: ServiceSettings > CollapsedThreads

    on the server and for all users. This is the recommended configuration for optimal user experience | - Environment variable: MM_SERVICESETTINGS_COLLAPSEDTHREADS | and to ensure consistency in how users read and respond to threaded conversations. | | config.json setting: "always_on" | |

    • Default On: Enables threaded discussions on the server and for all users. | |
    • Default Off: Enables threaded discussions on the server but not for users. | |
    • Disabled: Users cannot enable threaded discussions. config.json setting: "disabled" | |
    +
    - Always On: (Default) Enables threaded discussions | - System Config path: **Site Configuration > Posts** | | - config.json setting: ServiceSettings > CollapsedThreads

    on the server and for all users. This is the recommended configuration for optimal user experience | - Environment variable: MM_SERVICESETTINGS_COLLAPSEDTHREADS | and to ensure consistency in how users read and respond to threaded conversations. | | config.json setting: "always_on" | |

    • Default On: Enables threaded discussions on the server and for all users. | |
    • Default Off: Enables threaded discussions on the server but not for users. | |
    • Disabled: Users cannot enable threaded discussions. config.json setting: "disabled" | |
    @@ -1534,7 +1536,7 @@ Disabling this configuration setting in larger deployments may improve server pe -
    • true: (Default) Share links to Mattermost messages | - System Config path: Site Configuration > Posts will generate a preview for any users that have access to the original message. | - config.json setting: ServiceSettings > EnablePermalinkPreviews > true |
    • false: Share links do not generate a preview. | - Environment variable: MM_SERVICESETTINGS_ENABLEPERMALINKPREVIEWS |
    +
    • true: (Default) Share links to Mattermost messages | - System Config path: Site Configuration > Posts will generate a preview for any users that have access to the original message. | - config.json setting: ServiceSettings > EnablePermalinkPreviews > true |
    • false: Share links do not generate a preview. | - Environment variable: MM_SERVICESETTINGS_ENABLEPERMALINKPREVIEWS |
    @@ -1581,7 +1583,7 @@ Enabling SVGs is not recommended in environments where not all users are trusted -
    • true: Enables rendering of LaTeX in code blocks. | - System Config path: Site Configuration > Posts
    • false: (Default) Disables rendering in blocks. Instead, LaTeX code is highlighted. | - config.json setting: ServiceSettings > EnableLatex > false|
      - Environment variable: MM_SERVICESETTINGS_ENABLELATEX |
    +
    • true: Enables rendering of LaTeX in code blocks. | - System Config path: Site Configuration > Posts
    • false: (Default) Disables rendering in blocks. Instead, LaTeX code is highlighted. | - config.json setting: ServiceSettings > EnableLatex > false|
      - Environment variable: MM_SERVICESETTINGS_ENABLELATEX |
    @@ -1600,7 +1602,7 @@ Enabling LaTeX rendering is not recommended in environments where not all users -
    • true: Enables rendering of | - System Config path: Site Configuration > Posts | LaTeX in message text. | - config.json setting: ServiceSettings > EnableInlineLatex > false
    • false: (Default) Disables inline rendering of LaTeX. Instead, LaTeX in message text is highlighted. | - Environment variable: MM_SERVICESETTINGS_ENABLEINLINELATEX | LaTeX can also be rendered in a code block, if that feature is enabled. See Enable LaTeX code block rendering. | |
    +
    • true: Enables rendering of | - System Config path: Site Configuration > Posts | LaTeX in message text. | - config.json setting: ServiceSettings > EnableInlineLatex > false
    • false: (Default) Disables inline rendering of LaTeX. Instead, LaTeX in message text is highlighted. | - Environment variable: MM_SERVICESETTINGS_ENABLEINLINELATEX | LaTeX can also be rendered in a code block, if that feature is enabled. See Enable LaTeX code block rendering. | |
    @@ -1920,7 +1922,7 @@ This setting improves an organization's mobile security posture by restricting f -
    • true: Prevents file downloads, previews, and sharing for most file types, | - System Config path: Site Configuration > File sharing and downloads | even when the | - config.json setting: FileSettings > MobileEnableSecureFilePreview > false | Allow file downloads on mobile | - Environment variable: MM_FILESETTINGS_MOBILEENABLESECUREFILEPREVIEW configuration setting is enabled. Allows in-app previews for PDFs, | | videos, and images only. Files are stored temporarily in the app's cache and cannot be exported or shared. | |
    • false: (Default) Secure file preview mode is disabled. | |
    +
    • true: Prevents file downloads, previews, and sharing for most file types, | - System Config path: Site Configuration > File sharing and downloads | even when the | - config.json setting: FileSettings > MobileEnableSecureFilePreview > false | Allow file downloads on mobile | - Environment variable: MM_FILESETTINGS_MOBILEENABLESECUREFILEPREVIEW configuration setting is enabled. Allows in-app previews for PDFs, | | videos, and images only. Files are stored temporarily in the app's cache and cannot be exported or shared. | |
    • false: (Default) Secure file preview mode is disabled. | |
    @@ -1962,7 +1964,7 @@ With self-hosted deployments, you can access the following configuration setting -
    • true: Allows users to create public links to files attached to Mattermost messages. | - System Config path: Site Configuration > Public Links
    • false: (Default) Prevents users from creating public links to files and disables all previously created links. | - config.json setting: FileSettings > EnablePublicLink > false |
      - Environment variable: MM_FILESETTINGS_ENABLEPUBLICLINK |
    +
    • true: Allows users to create public links to files attached to Mattermost messages. | - System Config path: Site Configuration > Public Links
    • false: (Default) Prevents users from creating public links to files and disables all previously created links. | - config.json setting: FileSettings > EnablePublicLink > false |
      - Environment variable: MM_FILESETTINGS_ENABLEPUBLICLINK |
    @@ -2002,7 +2004,7 @@ Access the following configuration settings in the System Console by going to ** -
    • true: (Default) System admins will receive in-product notices about server upgrades and administration features. | - System Config path: Site Configuration > Notices - | - config.json setting: AnnouncementSettings > AdminNoticesEnabled > true |
    • false: System admins will not receive specific notices. Admins will still receive notices for all users (see Enable end user notices) | - Environment variable: MM_ANNOUNCEMENTSETTINGS_ADMINNOTICESENABLED |
    +
    • true: (Default) System admins will receive in-product notices about server upgrades and administration features. | - System Config path: Site Configuration > Notices - | - config.json setting: AnnouncementSettings > AdminNoticesEnabled > true |
    • false: System admins will not receive specific notices. Admins will still receive notices for all users (see Enable end user notices) | - Environment variable: MM_ANNOUNCEMENTSETTINGS_ADMINNOTICESENABLED |
    @@ -2015,7 +2017,7 @@ Access the following configuration settings in the System Console by going to ** -
    • true: (Default) All users receive in-product notices about client upgrades and end user features. | - System Config path: Site Configuration > Notices
    • false: Users will not receive in-product notices. | - config.json setting: AnnouncementSettings > UserNoticesEnabled > true |
      - Environment variable: MM_ANNOUNCEMENTSETTINGS_USERNOTICESENABLED |
    +
    • true: (Default) All users receive in-product notices about client upgrades and end user features. | - System Config path: Site Configuration > Notices
    • false: Users will not receive in-product notices. | - config.json setting: AnnouncementSettings > UserNoticesEnabled > true |
      - Environment variable: MM_ANNOUNCEMENTSETTINGS_USERNOTICESENABLED |
    diff --git a/docs/main/administration-guide/configure/system-attributes.mdx b/docs/main/administration-guide/configure/system-attributes.mdx index ed4afa67215b..5cec035573a5 100644 --- a/docs/main/administration-guide/configure/system-attributes.mdx +++ b/docs/main/administration-guide/configure/system-attributes.mdx @@ -1,11 +1,13 @@ --- title: "System Attributes" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + System attributes configuration settings provide system admins with centralized control over key user account properties. -Review and manage the following system attributes configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **System Attributes**. +Review and manage the following system attributes configuration options in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **System Attributes**. You can define, manage, and enforce specific attributes, including: diff --git a/docs/main/administration-guide/configure/user-management-configuration-settings.mdx b/docs/main/administration-guide/configure/user-management-configuration-settings.mdx index 2508ac2a3b3f..892a48e5a52c 100644 --- a/docs/main/administration-guide/configure/user-management-configuration-settings.mdx +++ b/docs/main/administration-guide/configure/user-management-configuration-settings.mdx @@ -1,9 +1,11 @@ --- title: "User management configuration settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -Review and manage the following in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **User Management**: +Review and manage the following in the System Console by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu, selecting **System Console**, and then selecting **User Management**: - [Users](#users) - [Groups](#groups) @@ -198,7 +200,7 @@ Add or remove users from teams using the System Console. ![Add a user to a Mattermost team using the System Console.](/images/add-user-to-team.png) -4. To remove the user from a specific team, select **More** Use the More icon to access additional message options. next to the team name, and select **Remove from team**. +4. To remove the user from a specific team, select **More** Use the More icon to access additional message options. next to the team name, and select **Remove from team**. ![Remove a user from a Mattermost team using the System Console.](/images/remove-user-from-team.png) @@ -323,7 +325,7 @@ View user profile details using the System Console. Gather information including -See the AD/LDAP groups documentation for details. | +See the AD/LDAP groups documentation for details. | @@ -631,7 +633,7 @@ Channels can be deleted with all content, including posts in the database, using -See advanced permissions documentation for details +See advanced permissions documentation for details @@ -659,7 +661,7 @@ Channels can be deleted with all content, including posts in the database, using -See the delegated granular administration documentation for details | +See the delegated granular administration documentation for details | diff --git a/docs/main/administration-guide/manage/admin/user-attributes.mdx b/docs/main/administration-guide/manage/admin/user-attributes.mdx index 7ae07e8cd10a..6d7161b0f913 100644 --- a/docs/main/administration-guide/manage/admin/user-attributes.mdx +++ b/docs/main/administration-guide/manage/admin/user-attributes.mdx @@ -1,6 +1,7 @@ --- title: "User attributes" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -131,13 +132,13 @@ If an attribute is created or updated without explicit visibility or sort order -Duplicate existing attributes by selecting **More** Use the More icon to access additional message options. and selecting **Duplicate attribute**. This creates a new attribute with the same name and type as the original attribute. You can then edit the new attribute to change its name, type, and visibility as needed. +Duplicate existing attributes by selecting **More** Use the More icon to access additional message options. and selecting **Duplicate attribute**. This creates a new attribute with the same name and type as the original attribute. You can then edit the new attribute to change its name, type, and visibility as needed. ## Manage attributes -- **Modify**: Select the attribute fields to make inline changes to the attribute's name, type, or values. Select **More** Use the More icon to access additional message options. to change a attribute's visibility. +- **Modify**: Select the attribute fields to make inline changes to the attribute's name, type, or values. Select **More** Use the More icon to access additional message options. to change a attribute's visibility. @@ -146,7 +147,7 @@ From Mattermost v11.8, existing user attributes are backfilled so the Display Na - **Order**: Control the order you want attributes to appear in user profiles by dragging and dropping them in the list. -- **Delete**: Delete attributes you no longer need or want by selecting **More** Use the More icon to access additional message options. and selecting **Delete property**. +- **Delete**: Delete attributes you no longer need or want by selecting **More** Use the More icon to access additional message options. and selecting **Delete property**. @@ -154,7 +155,7 @@ When updating user attributes via API or automation, the `attrs` object replaces -- **User Edit Permissions**: From Mattermost v11, all user attributes are admin-managed by default for enhanced security. To allow user editing for specific attributes, administrators can enable this through the **More** Use the More icon to access additional message options. menu and selecting **Allow user editing**. This should only be enabled for attributes that do not impact security access controls or organizational policies. Attributes used in ABAC policies should remain admin-managed unless there's a specific business need and the security implications are fully understood. +- **User Edit Permissions**: From Mattermost v11, all user attributes are admin-managed by default for enhanced security. To allow user editing for specific attributes, administrators can enable this through the **More** Use the More icon to access additional message options. menu and selecting **Allow user editing**. This should only be enabled for attributes that do not impact security access controls or organizational policies. Attributes used in ABAC policies should remain admin-managed unless there's a specific business need and the security implications are fully understood. - **Edit User Attribute Values**: From Mattermost v11.1, you can view and update user attribute values for individual users through the System Console. See the [Manage user attributes](/administration-guide/configure/user-management-configuration-settings#manage-user-attributes) documentation for details. In cases where multiple system admins manage system attributes, refresh your web browser instance to see real-time updates to system attributes made by other admins. @@ -173,7 +174,7 @@ Masking in the policy editor only applies to attributes with `shared_only` or `s ## Sync attributes with your identity provider -1. Synchronize a attribute with AD/LDAP or SAML by selecting **More** Use the More icon to access additional message options. and selecting **Link attribute to AD/LDAP** or **Link attribute to SAML**. Mattermost takes you directly to the **AD/LDAP** or **SAML 2.0** configuration settings page in the System Console where you can map the attributes you want to synchronize. +1. Synchronize a attribute with AD/LDAP or SAML by selecting **More** Use the More icon to access additional message options. and selecting **Link attribute to AD/LDAP** or **Link attribute to SAML**. Mattermost takes you directly to the **AD/LDAP** or **SAML 2.0** configuration settings page in the System Console where you can map the attributes you want to synchronize. 2. Scroll to the **User attributes sync** section to specify the attribute used to populate the attribute in user profiles. 3. Specify the attribute mapping for the attribute by entering the attribute name in the system attribute's **Attribute** field. The attribute name must match the attribute name in your identity provider. 4. Save your changes. diff --git a/docs/main/administration-guide/manage/cloud-data-export.mdx b/docs/main/administration-guide/manage/cloud-data-export.mdx index 39f3dd0d12fe..307de585cc98 100644 --- a/docs/main/administration-guide/manage/cloud-data-export.mdx +++ b/docs/main/administration-guide/manage/cloud-data-export.mdx @@ -199,14 +199,14 @@ Finally, it's time to take our export from the source server and use it as an im -Maximum Users Per Team | Increase this value to a number that **exceeds** the maximum number of users, per team, in the import file. | | +Maximum Users Per Team | Increase this value to a number that **exceeds** the maximum number of users, per team, in the import file. | | -Maximum File Size | Temporarily increase this value to be **larger** than the size of the import file. | | Following a successful import, we strongly recommend reverting this value to a reasonable limit for daily expected usage. | +Maximum File Size | Temporarily increase this value to be **larger** than the size of the import file. | | Following a successful import, we strongly recommend reverting this value to a reasonable limit for daily expected usage. |
    -
    Write Timeout | Temporarily adjust this value based on import file speed and network path to enable the file to upload without timeouts. | | Start with a value of 3600 and adjust if needed. |
    +
    Write Timeout | Temporarily adjust this value based on import file speed and network path to enable the file to upload without timeouts. | | Start with a value of 3600 and adjust if needed. |
    Following a successful import, we strongly recommend reverting this setting to its initial or previous value. |
    @@ -214,14 +214,14 @@ Finally, it's time to take our export from the source server and use it as an im
    -
    Read Timeout | Temporarily adjust this value based on import file speed and network path to enable the file to upload without timeouts. | | Start with a value of 3600 and adjust if needed. |
    +
    Read Timeout | Temporarily adjust this value based on import file speed and network path to enable the file to upload without timeouts. | | Start with a value of 3600 and adjust if needed. |
    Following a successful import, we strongly recommend reverting this setting to its initial or previous value. |
    -Amazon S3 Request Timeout | If using cloud-based file storage, adjust this value to ensure your storage requests don't time out too soon. | | +Amazon S3 Request Timeout | If using cloud-based file storage, adjust this value to ensure your storage requests don't time out too soon. | | diff --git a/docs/main/administration-guide/manage/cloud-ip-filtering.mdx b/docs/main/administration-guide/manage/cloud-ip-filtering.mdx index f5d40b69ebac..8451b96ad8fb 100644 --- a/docs/main/administration-guide/manage/cloud-ip-filtering.mdx +++ b/docs/main/administration-guide/manage/cloud-ip-filtering.mdx @@ -1,13 +1,15 @@ --- title: "Cloud IP Filtering" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + IP filtering is a powerful security feature that allows system admins to control access to their workspace by defining approved IP ranges. Only users within these specified IP ranges can access the workspace, ensuring enhanced security for your workspace. **IP filtering requires a subscription to Mattermost Cloud Enterprise.** ## Configure IP filtering -1. **Log in as system admin**: As a system admin, access the System Console of your workspace by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu and selecting **System Console**. +1. **Log in as system admin**: As a system admin, access the System Console of your workspace by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu and selecting **System Console**. 2. **Go to Site Configuration**: Go to the **Site Configuration** section. diff --git a/docs/main/administration-guide/manage/product-limits.mdx b/docs/main/administration-guide/manage/product-limits.mdx index df773cf78a2a..7102776af9f4 100644 --- a/docs/main/administration-guide/manage/product-limits.mdx +++ b/docs/main/administration-guide/manage/product-limits.mdx @@ -15,132 +15,132 @@ This page describes some of the product limits that apply to Mattermost, includi -Group messages +Group messages 8 participants If 8 isn't enough, create a private channel -Call participants +Call participants Unlimited 50 -Custom brand text +Custom brand text 500 -Custom site description +Custom site description 1024 -Advanced log output +Advanced log output 500 MB file size, 1000 audit records -Custom status +Custom status 100 characters -Channel name +Channel name 64 characters -Channel purpose +Channel purpose 250 characters -Channel header +Channel header 1024 characters -Bookmarked links & files +Bookmarked links & files 50 -Message acknowledgement response time +Message acknowledgement response time 5 minutes -Custom user group notifications +Custom user group notifications 256 users per group -Emoji reactions per message +Emoji reactions per message 50 -Custom emoji uploads +Custom emoji uploads 6000 -Team description +Team description 50 characters -SSO user session duration +SSO user session duration 30 days -Mobile user session duration +Mobile user session duration 30 days -Attachments per message (files or images) +Attachments per message (files or images) 10 -Attachment file size +Attachment file size 100 MB Configurable -Attachment image file size +Attachment image file size 253 MB Configurable -Attachment dimensions +Attachment dimensions 7680 pixels x 4320 pixels Configurable -Attachment image resolution size +Attachment image resolution size 33 MP (mega pixels) or 8K resolution Configurable -User nickname +User nickname 64 characters -Message length +Message length 16,383 characters -Teams per deployment +Teams per deployment 10,000 -Users per team +Users per team No enforced limit Dependent on infrastructure diff --git a/docs/main/administration-guide/onboard/ad-ldap-groups-synchronization.mdx b/docs/main/administration-guide/onboard/ad-ldap-groups-synchronization.mdx index d5e5a087e807..696f6f9c3333 100644 --- a/docs/main/administration-guide/onboard/ad-ldap-groups-synchronization.mdx +++ b/docs/main/administration-guide/onboard/ad-ldap-groups-synchronization.mdx @@ -1,6 +1,8 @@ --- title: "AD/LDAP groups" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + ## Overview @@ -93,19 +95,19 @@ Channels are nested below the team they belong to in the team and channel list. -image +image Team is open for anyone to join. -image +image Team isn't open for anyone to join. -image +image Public channel. -image +image Private channel. diff --git a/docs/main/administration-guide/onboard/connected-workspaces.mdx b/docs/main/administration-guide/onboard/connected-workspaces.mdx index 82ee9ea85e34..d99239a8bfcf 100644 --- a/docs/main/administration-guide/onboard/connected-workspaces.mdx +++ b/docs/main/administration-guide/onboard/connected-workspaces.mdx @@ -1,6 +1,7 @@ --- title: "Connected workspaces" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -138,7 +139,7 @@ Once a connection is established between two Mattermost servers, system admins o 1. Under **Shared Channels**, select **Add channels**. 2. Specify the channels you want to share between Mattermost servers. -Shared channels and members of those shared channels display a shared Shared icon indicates channels and their members that are shared across connected Mattermost servers. icon to distinguish them from channels and channel members of the local server. +Shared channels and members of those shared channels display a shared Shared icon indicates channels and their members that are shared across connected Mattermost servers. icon to distinguish them from channels and channel members of the local server. @@ -228,7 +229,7 @@ System admins can [edit](#edit-a-connected-workspace) or [delete](#delete-a-conn In the System Console, system admins can change the **Organization Name**, the **Destination Team** (which serves as the default location for organizing shared channels from this connected workspace), or channels shared with a remote Mattermost instance as well as channels shared with your local Mattermost instance. 1. Under **Connected Workspaces**, identify the connected workspace you want to change. -2. Select the **More** Use the More icon to access additional message options. icon to the right of the connected workspace, and then select **Edit**. +2. Select the **More** Use the More icon to access additional message options. icon to the right of the connected workspace, and then select **Edit**. ### Remove all connections from the current channel @@ -248,7 +249,7 @@ From Mattermost v10.10, removing a shared channel from a connected workspace rem 1. Under **Connected Workspaces**, identify the connected workspace you want to remove. -2. Select the **More** Use the More icon to access additional message options. icon to the right of the connected workspace, and then select **Delete**. +2. Select the **More** Use the More icon to access additional message options. icon to the right of the connected workspace, and then select **Delete**. @@ -308,7 +309,7 @@ Status details include: When using the System Console to manage connected workspaces, system admins can re-generate invitation codes and passwords for pending connections. 1. Under **Connected Workspaces**, identify the pending connection whose invitation and password you want to regenerate. -2. Select the **More** Use the More icon to access additional message options. icon to the right of the connected workspace, and then select **Regenerate invitation code**. +2. Select the **More** Use the More icon to access additional message options. icon to the right of the connected workspace, and then select **Regenerate invitation code**. diff --git a/docs/main/administration-guide/scale/collect-performance-metrics.mdx b/docs/main/administration-guide/scale/collect-performance-metrics.mdx index eaa84f0abb8a..c4e31f79fa7a 100644 --- a/docs/main/administration-guide/scale/collect-performance-metrics.mdx +++ b/docs/main/administration-guide/scale/collect-performance-metrics.mdx @@ -1,6 +1,8 @@ --- title: "Collect performance metrics" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + System admins can collect and store the [same performance monitoring metrics](/administration-guide/scale/performance-monitoring-metrics) as Prometheus, without having to deploy these third-party tools. Data is collected every minute and is stored in a path you configure. The data is synchronized to either a cloud-based or local file store every hour, and retained for 15 days. @@ -24,7 +26,7 @@ For Mattermost Cloud deployments, no setup is required. See the [usage](#usage) For a self-hosted Mattermost deployment, a Mattermost system admin must perform the following steps in Mattermost. 1. Log in to your Mattermost [workspace](/end-user-guide/end-user-guide-index) as a system admin. -2. From Mattermost v10.1, you can install the Metrics plugin from the in-product Mattermost Marketplace by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and selecting **App Marketplace**. Search for **Metrics** and select **Install**. +2. From Mattermost v10.1, you can install the Metrics plugin from the in-product Mattermost Marketplace by selecting the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and selecting **App Marketplace**. Search for **Metrics** and select **Install**. 3. Go to **System Console \> Plugins \> Plugin Management**. In the **Installed Plugins** section, scroll to **Mattermost Metrics Plugin**, and select **Enable Plugin**. 4. Specify the path of the time-series database, and select **Save**. 5. Go to **System Console \> Environment \> Performance Monitoring**, and set **Enable Performance Monitoring** to **true**. Select **Save**. @@ -59,7 +61,7 @@ Once you set this up, run `docker-compose` as described in [Dockprom Repository] You can also use our [Mattermost Performance Monitoring v2](https://grafana.com/grafana/dashboards/15582-mattermost-performance-monitoring-v2/) dashboard by simply importing it into Grafana. 1. Open Grafana (`<localhost>:3000` by default) and then log into it. -2. Once you log in, go to the **Plus** The Plus icon provides access to channel and direct message functionality. icon on the left sidebar, and then select **Import**. +2. Once you log in, go to the **Plus** The Plus icon provides access to channel and direct message functionality. icon on the left sidebar, and then select **Import**. 3. Enter the dashboard ID (`15582`) in the **Grafana.com Dashboard** field, and then select **Load** to fetch the dashboard. ## What's collected? diff --git a/docs/main/administration-guide/scale/high-availability-cluster-based-deployment.mdx b/docs/main/administration-guide/scale/high-availability-cluster-based-deployment.mdx index c1e8c5d621da..fdfe5429d37b 100644 --- a/docs/main/administration-guide/scale/high-availability-cluster-based-deployment.mdx +++ b/docs/main/administration-guide/scale/high-availability-cluster-based-deployment.mdx @@ -1,6 +1,8 @@ --- title: "High availability cluster-based deployment" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + A high availability cluster-based deployment enables a Mattermost system to maintain service during outages and hardware failures through the use of redundant infrastructure. @@ -1267,7 +1269,7 @@ For example, if you're deploying Mattermost on AWS with Amazon Aurora we recomme ### How to find the hostname of the connected websocket? -From Mattermost v10.4, Enterprise customers running self-hosted deployments can go to the **Product** menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon. and select **About Mattermost** to see the hostname of the node in the cluster running Mattermost. +From Mattermost v10.4, Enterprise customers running self-hosted deployments can go to the **Product** menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon. and select **About Mattermost** to see the hostname of the node in the cluster running Mattermost. ## Troubleshooting diff --git a/docs/main/administration-guide/scale/server-architecture.mdx b/docs/main/administration-guide/scale/server-architecture.mdx index 692ef959d674..7c9cbebaf7dd 100644 --- a/docs/main/administration-guide/scale/server-architecture.mdx +++ b/docs/main/administration-guide/scale/server-architecture.mdx @@ -1,6 +1,7 @@ --- title: "Deployment Architecture at Scale" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -32,22 +33,22 @@ Mattermost is designed to be able to handle a large number of concurrent users, -Mattermost high availability deployment architecture on AWS for 5,000 users +Mattermost high availability deployment architecture on AWS for 5,000 users -Mattermost high availability deployment architecture on AWS for 10,000 users +Mattermost high availability deployment architecture on AWS for 10,000 users -Mattermost high availability deployment architecture on AWS for 25,000 users +Mattermost high availability deployment architecture on AWS for 25,000 users -Mattermost high availability deployment architecture on AWS for 50,000 users +Mattermost high availability deployment architecture on AWS for 50,000 users @@ -58,22 +59,22 @@ Mattermost is designed to be able to handle a large number of concurrent users, -Mattermost high availability deployment architecture on Azure for 5,000 users +Mattermost high availability deployment architecture on Azure for 5,000 users -Mattermost high availability deployment architecture on Azure for 10,000 users +Mattermost high availability deployment architecture on Azure for 10,000 users -Mattermost high availability deployment architecture on Azure for 25,000 users +Mattermost high availability deployment architecture on Azure for 25,000 users -Mattermost high availability deployment architecture on Azure for 50,000 users +Mattermost high availability deployment architecture on Azure for 50,000 users @@ -84,7 +85,7 @@ Mattermost is designed to be able to handle a large number of concurrent users, -Mattermost high availability deployment architecture on Oracle Cloud Infrastructure for 5,000 users +Mattermost high availability deployment architecture on Oracle Cloud Infrastructure for 5,000 users diff --git a/docs/main/administration-guide/upgrade/important-upgrade-notes.mdx b/docs/main/administration-guide/upgrade/important-upgrade-notes.mdx index e9339f6845fa..2c3cef926f64 100644 --- a/docs/main/administration-guide/upgrade/important-upgrade-notes.mdx +++ b/docs/main/administration-guide/upgrade/important-upgrade-notes.mdx @@ -666,7 +666,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( v10.6 -Support for PostgreSQL v11 and v12 have been removed. The new minimum PostgreSQL version is v13+. | See the | minimum supported PostgreSQL version policy documentation | for details. | +Support for PostgreSQL v11 and v12 have been removed. The new minimum PostgreSQL version is v13+. | See the | minimum supported PostgreSQL version policy documentation | for details. |

    System Console statistics now perform faster on PostgreSQL. The MaxUsersForStatistics configuration setting now only disables the User counts with posts chart, while all other stats remain unaffected. The other stats remain unaffected because that configuration value is no longer needed to disable the other queries since they are always fast now. Post and file counts update daily, so they may not always reflect real-time data. Advanced stats, such as line charts and plugin data, are now hidden until clicked, reducing load time. No performance improvements apply to MySQL since it's scheduled for full deprecation in v11. We recommend migrating to PostgreSQL for better performance and long-term support. Migration times: On a system with 12M posts, and 1M fileinfo entries, the migration takes 15s, but could take several minutes depending on the server's table sizes and database specs. This migration is non-locking. Note that there is no migration for MySQL deployments because this optimization is only applicable for PostgreSQL. Below are the SQL queries included in the schema changes:

    CREATE MATERIALIZED VIEW IF NOT EXISTS posts_by_team_day asSELECT to_timestamp(p.createat/1000)::date as day, COUNT(*) as num, teamidFROM posts p JOIN channels c on p.channelid=c.idGROUP BY day, c.teamid;CREATE MATERIALIZED VIEW IF NOT EXISTS bot_posts_by_team_day asSELECT to_timestamp(p.createat/1000)::date as day, COUNT(*) as num, teamidFROM posts pJOIN Bots b ON p.UserId = b.UseridJOIN channels c on p.channelid=c.idGROUP BY day, c.teamid;CREATE MATERIALIZED VIEW IF NOT EXISTS file_stats asSELECT COUNT(*) as num, COALESCE(SUM(Size), 0) as usageFROM fileinfoWHERE DeleteAt = 0;
    @@ -685,7 +685,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in this forum post. -v10.5 introduces updates to the Compliance Export functionality, which will modify how exported data is structured, stored and processed. These changes | primarily affect System Administrators and the main changes are outlined below. See more details in | the Compliance Export documentation. | | Output files and directories have changed - Previously we were exporting a single zip containing all the batch directories. Now we will export a single | directory, and under that directory each batch will be its own zip. | | Compliance exports performance improvements - Compliance exports should now be at least 50% faster, and possibly more. | | Logic improvements - We’ve made improvements and fixed bugs that we found. | | Changes specific to each Export Type - The export output formats have been changed. Some fields’ semantic meaning has been clarified, and there are a number of | new fields. Our goal was to maintain backwards compatibility while fixing the logic bugs. | | See the compliance export product documentation for details. | +v10.5 introduces updates to the Compliance Export functionality, which will modify how exported data is structured, stored and processed. These changes | primarily affect System Administrators and the main changes are outlined below. See more details in | the Compliance Export documentation. | | Output files and directories have changed - Previously we were exporting a single zip containing all the batch directories. Now we will export a single | directory, and under that directory each batch will be its own zip. | | Compliance exports performance improvements - Compliance exports should now be at least 50% faster, and possibly more. | | Logic improvements - We’ve made improvements and fixed bugs that we found. | | Changes specific to each Export Type - The export output formats have been changed. Some fields’ semantic meaning has been clarified, and there are a number of | new fields. Our goal was to maintain backwards compatibility while fixing the logic bugs. | | See the compliance export product documentation for details. |

    As part of the Property System Architecture feature, Mattermost v10.5 is going to run a set of migrations to add new tables to the schema. This migration only creates new tables and indexes, so there is no impact on preexisting data.

    New tables PropertyGroups, PropertyFields and PropertyValues are going to be created.

    In the case of PostgreSQL, a new enum type property_field_type is going to be created, to be used in the Type column of the PropertyFields table.

    The PropertyFields and PropertyValues tables have a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, they directly use a UNIQUE INDEX to enforce this constraint.

    A new index idx_propertyvalues_targetid_groupid will be created for the PropertyValues table.

    The migration is only creating new tables with no data. The migration is backwards-compatible, and a previous version of Mattermost can run with the new schema changes. No table locks or existing operations on the table are impacted by this upgrade. Zero downtime is possible when upgrading to this release.

    Below are the SQL queries included in the schema changes:

    MySQL:

    CREATE TABLE IF NOT EXISTS PropertyGroups ( ID varchar(26) PRIMARY KEY, Name varchar(64) NOT NULL, UNIQUE(Name));CREATE TABLE IF NOT EXISTS PropertyFields ( ID varchar(26) PRIMARY KEY, GroupID varchar(26) NOT NULL, Name varchar(255) NOT NULL, Type enum('text', 'select', 'multiselect', 'date', 'user', 'multiuser'), Attrs json, TargetID varchar(255), TargetType varchar(255), CreateAt bigint(20), UpdateAt bigint(20), DeleteAt bigint(20), UNIQUE(GroupID, TargetID, Name, DeleteAt));CREATE TABLE IF NOT EXISTS PropertyValues ( ID varchar(26) PRIMARY KEY, TargetID varchar(255) NOT NULL, TargetType varchar(255) NOT NULL, GroupID varchar(26) NOT NULL, FieldID varchar(26) NOT NULL, Value json, CreateAt bigint(20), UpdateAt bigint(20), DeleteAt bigint(20), UNIQUE(GroupID, TargetID, FieldID, DeleteAt));SET @preparedStatement = (SELECT IF( (    SELECT COUNT(*) FROM INFORMATION_SCHEMA.STATISTICS    WHERE table_name = 'PropertyValues'    AND table_schema = DATABASE()    AND index_name = 'idx_propertyvalues_targetid_groupid' ) > 0, 'SELECT 1', 'CREATE INDEX idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID);'));PREPARE createIndexIfNotExists FROM @preparedStatement;EXECUTE createIndexIfNotExists;DEALLOCATE PREPARE createIndexIfNotExists;

    PostgreSQL:

    CREATE TABLE IF NOT EXISTS PropertyGroups ( ID varchar(26) PRIMARY KEY, Name varchar(64) NOT NULL, UNIQUE(Name));DOBEGIN  IF NOT EXISTS (SELECT * FROM pg_type typ                        INNER JOIN pg_namespace nsp ON nsp.oid = typ.typnamespace                    WHERE nsp.nspname = current_schema()                        AND typ.typname = 'property_field_type') THEN CREATE TYPE property_field_type AS ENUM (    'text',    'select',    'multiselect',    'date',    'user',    'multiuser' );  END IF;END;LANGUAGE plpgsql;CREATE TABLE IF NOT EXISTS PropertyFields ( ID varchar(26) PRIMARY KEY, GroupID varchar(26) NOT NULL, Name varchar(255) NOT NULL, Type property_field_type, Attrs jsonb, TargetID varchar(255), TargetType varchar(255), CreateAt bigint NOT NULL, UpdateAt bigint NOT NULL, DeleteAt bigint NOT NULL);CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyfields_unique ON PropertyFields (GroupID, TargetID, Name) WHERE DeleteAt = 0;CREATE TABLE IF NOT EXISTS PropertyValues ( ID varchar(26) PRIMARY KEY, TargetID varchar(255) NOT NULL, TargetType varchar(255) NOT NULL, GroupID varchar(26) NOT NULL, FieldID varchar(26) NOT NULL, Value jsonb NOT NULL, CreateAt bigint NOT NULL, UpdateAt bigint NOT NULL, DeleteAt bigint NOT NULL);CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyvalues_unique ON PropertyValues (GroupID, TargetID, FieldID) WHERE DeleteAt = 0;CREATE INDEX IF NOT EXISTS idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID);    ``
    @@ -748,7 +748,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( v9.11 -Added support for Elasticsearch v8. Also added Beta support for OpenSearch v1.x and v2.x. A new config setting ElasticsearchSettings.Backend has been | added to differentiate between Elasticsearch and OpenSearch. The default value is elasticsearch which breaks support for AWS Elasticsearch v7.10.x | since the official v8 client only works from Elasticsearch v7.11+ versions. | | .. note:: | | - For AWS customers on OpenSearch, you must modify Mattermost configuration from elasticsearch to opensearch and disable compatibility mode. | See the OpenSearch documentation for details on upgrading. | - After upgrading the Mattermost server, use mmctl or edit the config manually, | then restart the Mattermost server. | - If you are using OpenSearch, you must set the backend to opensearch. Otherwise Mattermost will not work. | | If you are using Elasticsearch v8, be sure to set action.destructive_requires_name to false in elasticsearch.yml to allow for wildcard operations to | work. | +Added support for Elasticsearch v8. Also added Beta support for OpenSearch v1.x and v2.x. A new config setting ElasticsearchSettings.Backend has been | added to differentiate between Elasticsearch and OpenSearch. The default value is elasticsearch which breaks support for AWS Elasticsearch v7.10.x | since the official v8 client only works from Elasticsearch v7.11+ versions. | | .. note:: | | - For AWS customers on OpenSearch, you must modify Mattermost configuration from elasticsearch to opensearch and disable compatibility mode. | See the OpenSearch documentation for details on upgrading. | - After upgrading the Mattermost server, use mmctl or edit the config manually, | then restart the Mattermost server. | - If you are using OpenSearch, you must set the backend to opensearch. Otherwise Mattermost will not work. | | If you are using Elasticsearch v8, be sure to set action.destructive_requires_name to false in elasticsearch.yml to allow for wildcard operations to | work. | v9.10 @@ -775,7 +775,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( We have stopped supporting MySQL v5.7 since it's at the end of life. We urge customers to upgrade their MySQL instance at their earliest convenience. -Added safety limit error message in compiled Team Edition and Enterprise Edition deployments when enterprise scale and access control automation features are | unavailable and count of users who are registered and not deactivated exceeds 10,000. | ERROR_SAFETY_LIMITS_EXCEEDED. | +Added safety limit error message in compiled Team Edition and Enterprise Edition deployments when enterprise scale and access control automation features are | unavailable and count of users who are registered and not deactivated exceeds 10,000. | ERROR_SAFETY_LIMITS_EXCEEDED. | v9.4 @@ -851,7 +851,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( Removed deprecated model.CommandArgs.Session. -For servers wanting to allow websockets to connect from origins other than the origin of the site URL, please set the ServiceSettings.AllowCorsFrom | configuration setting. Also ensure that | the siteURL is set correctly. | +For servers wanting to allow websockets to connect from origins other than the origin of the site URL, please set the ServiceSettings.AllowCorsFrom | configuration setting. Also ensure that | the siteURL is set correctly. | In v8.0 release, the following repositories are merged into one: mattermost-server, mattermost-webapp and mmctl. Developers should read the updated Developer Guide for details. @@ -876,7 +876,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( In v7.10.1, fixed an issue where a user would still see threads in the threads view of channels they have left. Migration execution time in MySQL: Query OK, 2766769 rows affected (4 min 47.57 sec). Migration execution time in PostgreSQL: 58.11 sec, DELETE 2766690. -In v7.10.3, for servers wanting to allow websockets to connect from origins other than the origin of the site URL, please set the | ServiceSettings.AllowCorsFrom | configuration setting. Also ensure that | the siteURL is set correctly. | +In v7.10.3, for servers wanting to allow websockets to connect from origins other than the origin of the site URL, please set the | ServiceSettings.AllowCorsFrom | configuration setting. Also ensure that | the siteURL is set correctly. | v7.9 @@ -889,11 +889,11 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN (

    In v7.9.4, backported a fix related Oauth 2. Query times depend on if you have rows to delete or not.

    With no rows to delete:

    • MySQL v5.7.12: 9ms
    • PostgreSQL v10: 21ms

    4 rows:

    • MySQL v5.7.12: 17.2ms
    • PostgreSQL v10: 9.9ms

    Those times are based off the following table sizes:

    • Preferences: 2 million records
    • oauthaccessdata and sessions: 10 records

    You can assess the number of impacted rows by running the following:

    PostgreSQL:

    SELECT count(o.*)FROM oauthaccessdata o WHERE NOT EXISTS (    SELECT p.*    FROM preferences p    WHERE o.clientid = p.name      AND o.userid = p.      userid      AND p.category =      'oauth_app'    );

    MySQL:

    SELECT COUNT(o.`Token`)FROM OAuthAccessData oLEFT JOIN Preferences p ON o.  clientid = p.name  AND o.userid = p.userid  AND p.category = 'oauth_app'INNER JOIN Sessions s ON o.token = s  .tokenWHERE p.name IS NULL;

    Locks on the oauthaccessdata and sessions table will only be acquired if there are rows to delete.

    -In v7.9.5, for servers wanting to allow websockets to connect from origins other than the origin of the site URL, please set the | ServiceSettings.AllowCorsFrom | configuration setting. Also ensure that | the siteURL is set correctly. | +In v7.9.5, for servers wanting to allow websockets to connect from origins other than the origin of the site URL, please set the | ServiceSettings.AllowCorsFrom | configuration setting. Also ensure that | the siteURL is set correctly. | v7.8 -Message Priority & Acknowledgement is now enabled by default | for all instances. You may disable this feature in the System Console by going to Posts > Message Priority or via the config PostPriority setting. | +Message Priority & Acknowledgement is now enabled by default | for all instances. You may disable this feature in the System Console by going to Posts > Message Priority or via the config PostPriority setting. | In v7.8.5, fixed an issue where a user would still see threads in the threads view of channels they have left. Migration execution time in MySQL: Query OK, 2766769 rows affected (4 min 47.57 sec). Migration execution time in PostgreSQL: 58.11 sec, DELETE 2766690. @@ -902,7 +902,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN (

    In v7.8.5, backported a fix related Oauth 2. Query times depend on if you have rows to delete or not.

    With no rows to delete:

    • MySQL v5.7.12: 9ms
    • PostgreSQL v10: 21ms

    4 rows:

    • MySQL v5.7.12: 17.2ms
    • PostgreSQL v10: 9.9ms

    Those times are based off the following table sizes:

    • Preferences: 2 million records
    • oauthaccessdata and sessions: 10 records

    You can assess the number of impacted rows by running the following:

    PostgreSQL:

    SELECT count(o.*) FROM oauthaccessdata o WHERE NOT EXISTS (    SELECT p.*    FROM preferences p    WHERE o.clientid = p.name      AND o.userid = p.      userid      AND p.category =      'oauth_app'    );

    MySQL:

    SELECT COUNT(o.`Token`)FROM OAuthAccessData oLEFT JOIN Preferences p ON o.  clientid = p.name  AND o.userid = p.userid  AND p.category = 'oauth_app'INNER JOIN Sessions s ON o.token = s  .tokenWHERE p.name IS NULL;

    Locks on the oauthaccessdata and sessions table will only be acquired if there are rows to delete.

    -In v7.8.7, for servers wanting to allow websockets to connect from origins other than the origin of the site URL, please set the | ServiceSettings.AllowCorsFrom | configuration setting. Also ensure that | the siteURL is set correctly. | +In v7.8.7, for servers wanting to allow websockets to connect from origins other than the origin of the site URL, please set the | ServiceSettings.AllowCorsFrom | configuration setting. Also ensure that | the siteURL is set correctly. |

    In v7.8.11, improved performance on data retention DeleteOrphanedRows queries.

    New migration for a new table:

    MySQL:

    CREATE TABLEIF NOT EXISTS  RetentionIdsForDeletion(Id    VARCHAR(26) NOT NULL,    TableName VARCHAR(64),    Ids json, PRIMARY KEY (Id      ), KEY    idx_retentionidsfordeletion_tablename    (TableName)) ENGINE =  InnoDB DEFAULT CHARSET =  utf8mb4;  ``

    PostgreSQL:

    CREATE TABLEIF NOT EXISTS  retentionidsfordeletion(id    VARCHAR(26) PRIMARY KEY,    tablename VARCHAR(64),    ids VARCHAR(26) []);  CREATE INDEXIF NOT EXISTS  idx_retentionidsfordeletion_tablename  ON retentionidsfordeletion(    tablename);  ``

    Hard deleting a user or a channel will now also clean up associated reactions.

    Removed feature flag DataRetentionConcurrencyEnabled. Data retention now runs without concurrency in order to avoid any performance degradation.

    Added a new configuration setting DataRetentionSettings.RetentionIdsBatchSize, which allows admins to configure how many batches of IDs will be fetched at a time when deleting orphaned reactions. The default value is 100.

    @@ -918,7 +918,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( Starting with the Calls version shipping with v7.7, there's now a minimum version requirement when using the external RTCD service. This means that if Calls is configured to use the external service, customers need to upgrade RTCD first to at least version 0.8.0 or the plugin will fail to start. -In v7.7.2, Message Priority & Acknowledgement is now enabled by | default for all instances. You may disable this feature in the System Console by going to Posts > Message Priority or via the config PostPriority | setting. | +In v7.7.2, Message Priority & Acknowledgement is now enabled by | default for all instances. You may disable this feature in the System Console by going to Posts > Message Priority or via the config PostPriority | setting. | v7.5 @@ -953,34 +953,34 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( When a new configuration setting via System Console > Experimental > Features > Enable App Bar is enabled, all channel header icons registered by plugins will be moved to the new Apps Bar, even if they do not explicitly use the new registry function to render a component there. The setting for Apps Bar defaults to false for self-hosted deployments. -The value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain conditions. | Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | +The value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain conditions. | Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | -Collapsed Reply Threads is now generally available and enabled by default for new | Mattermost servers. For servers upgrading to v7.0 and later, please reference | this article for more information | and guidance on enabling the feature. | +Collapsed Reply Threads is now generally available and enabled by default for new | Mattermost servers. For servers upgrading to v7.0 and later, please reference | this article for more information | and guidance on enabling the feature. | v6.7

    New schema changes were introduced in the form of a new index. The following summarizes the test results measuring how long it took for the database queries to run with these schema changes:

    MySQL 7M Posts - ~17s (Instance: db.r5.xlarge)

    MySQL 9M Posts - 2min 12s (Instance: db.r5.large)

    Postgres 7M Posts - ~9s (Instance: db.r5.xlarge)

    For customers wanting a zero downtime upgrade, they are encouraged to apply this index prior to doing the upgrade. This is fully backwards compatible and will not acquire any table lock or affect any existing operations on the table when run manually. Else, the queries will run during the upgrade process and will lock the table in non-MySQL environments. Run the following to apply this index:

    For MySQL: CREATE INDEX idx_posts_create_at_id on Posts(CreateAt, Id) LOCK=NONE;

    For Postgres: CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_posts_create_at_id on posts(createat, id);

    -In v6.7.1, the value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain | conditions. Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | +In v6.7.1, the value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain | conditions. Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | v6.6 The Apps Framework protocol for binding/form submissions has changed, by separating the single call into separate submit, form, refresh and lookup calls. If any users have created their own Apps, they have to be updated to the new system. -Channel admins can now configure certain actions to be executed automatically based on trigger | conditions without writing any code. Users running an older Playbooks release need to upgrade their Playbooks instance to at least v1.26 to take advantage of | the channel actions functionality. | +Channel admins can now configure certain actions to be executed automatically based on trigger | conditions without writing any code. Users running an older Playbooks release need to upgrade their Playbooks instance to at least v1.26 to take advantage of | the channel actions functionality. | -In v6.6.2, the value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain | conditions. Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | +In v6.6.2, the value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain | conditions. Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | v6.5 -The mattermost version CLI command does not interact with the database anymore. Therefore the database version is not going to be | printed. Also, the database migrations are not going to be applied with the version sub command. | A new db migrate sub command is added to enable administrators | to trigger migrations. | +The mattermost version CLI command does not interact with the database anymore. Therefore the database version is not going to be | printed. Also, the database migrations are not going to be applied with the version sub command. | A new db migrate sub command is added to enable administrators | to trigger migrations. | -In v6.5.2, the value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain | conditions. Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | +In v6.5.2, the value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain | conditions. Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | v6.4 @@ -994,11 +994,11 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( In v6.3.3, the default for ThreadAutoFollow has been changed to false. This does not affect existing configurations where this value is already set to true. -In v6.3.9, the value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain | conditions. Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | +In v6.3.9, the value of ServiceSettings.TrustedProxyIPHeader defaults to empty from now on. A previous bug prevented this from happening in certain | conditions. Customers are requested to check for these values in their config and set them to nil if necessary. See more details | here. | v6.2 -Channel results in the channel autocomplete will include private channels. Customers using Bleve or | Elasticsearch for autocomplete will have to reindex their data to get the new results. Since this can | take a long time, we suggest disabling autocomplete and running indexing in the background. When this is complete, re-enable autocomplete. | | .. note:: | Only channel members see private channel names in autocomplete results. | +Channel results in the channel autocomplete will include private channels. Customers using Bleve or | Elasticsearch for autocomplete will have to reindex their data to get the new results. Since this can | take a long time, we suggest disabling autocomplete and running indexing in the background. When this is complete, re-enable autocomplete. | | .. note:: | Only channel members see private channel names in autocomplete results. | In v6.2.3, the default for ThreadAutoFollow has been changed to false. This does not affect existing configurations where this value is already set to true. @@ -1030,16 +1030,16 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN (

    While trying to upgrade to a Mattermost version >= 6.0.x, you might encounter the following error: Failed to alter column type. It is likely you have invalid JSON values in the column. Please fix the values manually and run the migration again.

    This means that the particular column has some invalid JSON values which need to be fixed manually. A common fix that is known to work is to wipe out all \u0000 characters.

    Please follow these steps:

    1. Check the affected values by: SELECT COUNT(*) FROM <table> WHERE <column> LIKE '%\u0000%';
    2. If you get a count more than 0, check those values manually, and confirm they are okay to be removed.
    3. Remove them by UPDATE <table> SET <column> = regexp_replace(<column>, '\\u0000', '', 'g') where <column> like '%\u0000%';

    Then try to start Mattermost again.

    -Please see unsupported legacy releases documentation for a list of deprecations in this release. | +Please see unsupported legacy releases documentation for a list of deprecations in this release. | Focalboard plugin has been renamed to Mattermost Boards, and v0.9.1 (released with Mattermost v6.0) is now enabled by default. -The advanced logging configuration schema changed. This is a breaking change relative to 5.x. See updated | documentation. | +The advanced logging configuration schema changed. This is a breaking change relative to 5.x. See updated | documentation. | -The existing theme names and colors, including "Mattermost", "Organization", "Mattermost Dark", and "Windows Dark" have been updated to the new "Denim", | "Quartz", "Indigo", and "Onyx" theme names and colors, respectively. Anyone using the existing themes will see slightly modified theme colors after their | server or workspace is upgraded. The theme variables for the existing "Mattermost", "Organization", "Mattermost Dark", and "Windows Dark" themes will still be | accessible in our documentation. A custom theme can be created with these theme variables if desired. | Custom themes are unaffected by this change. | +The existing theme names and colors, including "Mattermost", "Organization", "Mattermost Dark", and "Windows Dark" have been updated to the new "Denim", | "Quartz", "Indigo", and "Onyx" theme names and colors, respectively. Anyone using the existing themes will see slightly modified theme colors after their | server or workspace is upgraded. The theme variables for the existing "Mattermost", "Organization", "Mattermost Dark", and "Windows Dark" themes will still be | accessible in our documentation. A custom theme can be created with these theme variables if desired. | Custom themes are unaffected by this change. |

    Some breaking changes to plugins are included:

    • Support for left-hand side-specific bot icons was dropped.
    • Removed a deprecated "Backend" field from the plugin manifest.
    • Converted the "Executables" field in the plugin manifest to a map.
    @@ -1062,7 +1062,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( The platform binary and “--platform” flag have been removed. If you are using the “--platform” flag or are using the platform binary directly to run the Mattermost server application via a systemd file or custom script, you will be required to use only the mattermost binary. -Collapsed Reply Threads are available as Beta in Mattermost Server | v5.37 and later. It’s expected that you may experience bugs as we stabilize the feature. In particular, please be aware of | the known issues documented here. | +Collapsed Reply Threads are available as Beta in Mattermost Server | v5.37 and later. It’s expected that you may experience bugs as we stabilize the feature. In particular, please be aware of | the known issues documented here. | v5.37 adds support for emoji standard v13.0. If you have added a custom emoji in the past that uses one of the new system names, then it is going to get overwritten by the system emoji. The workaround is to change the custom emoji name. @@ -1088,7 +1088,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( The existing password generation logic used during the bulk user import process was comparatively weak. Hence it's advised for admins to immediately reset the passwords for all the users who were generated during the bulk import process and whose password has not been changed even once. -v5.35.0 introduces a new feature to search for files. Search results for files shared in the past may be incomplete until a | content extraction command is executed to extract | and index the content of files already in the database. Instances running Elasticsearch or Bleve search backends will also need to execute a Bulk Indexing after | the content extraction is complete. Please see more details in this blog post. | +v5.35.0 introduces a new feature to search for files. Search results for files shared in the past may be incomplete until a | content extraction command is executed to extract | and index the content of files already in the database. Instances running Elasticsearch or Bleve search backends will also need to execute a Bulk Indexing after | the content extraction is complete. Please see more details in this blog post. | v5.34.1 @@ -1120,7 +1120,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( v5.29.0 -A new configuration setting ThreadAutoFollow has been added to support Collapsed Reply Threads releasing in beta in Q1 2021. | This setting is enabled by default and may affect server performance. It is recommended to review our documentation on hardware requirements | to ensure your servers are appropriately scaled for the size of your user base. | +A new configuration setting ThreadAutoFollow has been added to support Collapsed Reply Threads releasing in beta in Q1 2021. | This setting is enabled by default and may affect server performance. It is recommended to review our documentation on hardware requirements | to ensure your servers are appropriately scaled for the size of your user base. | Disabled the xmlsec1-based SAML library in favor of the re-enabled and improved SAML library. @@ -1130,7 +1130,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN (

    Now when the service crashes, it will generate a coredump instead of just dumping the stack trace to the console. This allows us to preserve the full information of the crash to help with debugging it.

    For more information about coredumps, please see: https://man7.org/linux/man-pages/man5/core.5.html.

    -In-product notices have been introduced to keep system admins and end users informed of the latest product enhancements available in new server and desktop | versions. Learn more about in-product notices and how to disable them in our documentation. | +In-product notices have been introduced to keep system admins and end users informed of the latest product enhancements available in new server and desktop | versions. Learn more about in-product notices and how to disable them in our documentation. | Disabled the xmlsec1-based SAML library in favor of the re-enabled and improved SAML library. @@ -1154,7 +1154,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( v5.25.0 -Some incorrect instructions regarding SAML setup with Active Directory ADFS for setting the “Relying Party Trust Identifier” were corrected. Although the | settings will continue to work, it is encouraged that you | modify those settings. | +Some incorrect instructions regarding SAML setup with Active Directory ADFS for setting the “Relying Party Trust Identifier” were corrected. Although the | settings will continue to work, it is encouraged that you | modify those settings. | Disabled the xmlsec1-based SAML library in favor of the re-enabled and improved SAML library. @@ -1227,14 +1227,14 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( The Mattermost Desktop v4.3.0 release includes a change to how desktop notifications are sent sent from non-secure URLs http://. Organizations using non-secure Mattermost Servers http:// will need to update to Mattermost Server versions 5.16.0+, 5.15.1, 5.14.4 or 5.9.5 (ESR) to continue receiving desktop notifications when using Mattermost Desktop v4.3.0 or later. -When enabling Guest Accounts, all users who have the ability to invite users will be able to | invite guests by default. System admins will need to remove this permission on each role via System Console > Permissions Schemes. In Mattermost Server | version 5.17, the system admin will be the only role to automatically get the invite guest permission, however the fix will not be applicable in 5.16 due to | database migration processes. | +When enabling Guest Accounts, all users who have the ability to invite users will be able to | invite guests by default. System admins will need to remove this permission on each role via System Console > Permissions Schemes. In Mattermost Server | version 5.17, the system admin will be the only role to automatically get the invite guest permission, however the fix will not be applicable in 5.16 due to | database migration processes. | v5.14.0 Webhooks are now only displayed if the user is the creator of the webhook or a system administrator. -With the update from Google+ to Google People, system admins need to ensure the GoogleSettings.Scope config.json setting is set to profile email and | UserAPIEndpoint setting should be set to https://people.googleapis.com/v1/people/me?personFields=names,emailAddresses,nicknames,metadata per | updated documentation. | +With the update from Google+ to Google People, system admins need to ensure the GoogleSettings.Scope config.json setting is set to profile email and | UserAPIEndpoint setting should be set to https://people.googleapis.com/v1/people/me?personFields=names,emailAddresses,nicknames,metadata per | updated documentation. | v5.12.0 @@ -1255,18 +1255,18 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( v5.10.0 -SupportedTimezonesPath setting in config.json and changes to timezones in the UI based on the timezones.json file was removed. This was made to support | storing configurations in the database. | +SupportedTimezonesPath setting in config.json and changes to timezones in the UI based on the timezones.json file was removed. This was made to support | storing configurations in the database. | v5.9.0 -If DisableLegacyMfa setting in config.json is set to true and | multi-factor authentication is enabled, ensure your users have upgraded to mobile app | version 1.17 or later. Otherwise, users who have MFA enabled may not be able to log in successfully. | | If the setting is not defined in the config.json file, the DisableLegacyMfa setting is set to false by default to ensure no breaking changes. | | We recommend setting DisableLegacyMfa to true for additional security hardening. | +If DisableLegacyMfa setting in config.json is set to true and | multi-factor authentication is enabled, ensure your users have upgraded to mobile app | version 1.17 or later. Otherwise, users who have MFA enabled may not be able to log in successfully. | | If the setting is not defined in the config.json file, the DisableLegacyMfa setting is set to false by default to ensure no breaking changes. | | We recommend setting DisableLegacyMfa to true for additional security hardening. | -The public IP of the Mattermost application server is considered a reserved IP for additional security hardening in the context of untrusted external requests | such as Open Graph metadata, webhooks, or slash commands. | See documentation for additional information. | +The public IP of the Mattermost application server is considered a reserved IP for additional security hardening in the context of untrusted external requests | such as Open Graph metadata, webhooks, or slash commands. | See documentation for additional information. | v5.8.0 -The local image proxy has been added, and images displayed within the client are now affected by the AllowUntrustedInternalConnections setting. | See documentation for more details if you have trouble loading images. | +The local image proxy has been added, and images displayed within the client are now affected by the AllowUntrustedInternalConnections setting. | See documentation for more details if you have trouble loading images. | v5.6.0 @@ -1320,7 +1320,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN (

    This release includes support for post messages longer than the default of 4000 characters, but may require a manual database migration. This migration is entirely optional, and need only be done if you want to enable post messages up to 16383 characters. For many installations, no migration will be required, or the old limit remains sufficient.

    To check your current post limit after upgrading to 5.0.0, look for a log message on startup:

    [2018/03/27 09:08:00 EDT] [INFO] Post.Message supports at most 16383 characters (65535 bytes)

    As of 5.0.0, the maximum post message size is 16383 (multi-byte) characters. If your logs show a number less than this limit and you want to enable longer post messages, you will need to manually migrate your database as described below. This migration can be slow for larger Posts tables, so it's best to schedule this upgrade during off-peak hours.

    To migrate a MySQL database, connect to your database and run the following:

    ALTER TABLE Posts MODIFY COLUMN Message TEXT;

    To migrate a PostgreSQL database, connect to your database and run the following:

    ALTER TABLE Posts ALTER COLUMN Message TYPE VARCHAR(65535);

    Restart your Mattermost instances.

    -Deployments on Enterprise E20 will need to enable RunJobs in the config.json and allow the permissions migration to complete before using Team | Override Schemes. | +Deployments on Enterprise E20 will need to enable RunJobs in the config.json and allow the permissions migration to complete before using Team | Override Schemes. | v4.10.0 @@ -1349,11 +1349,11 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( The behavior of the config.json setting PostEditTimeLimit has been updated to accommodate the migration to a roles based permission system. When post editing is permitted, set "PostEditTimeLimit": -1 to allow editing anytime, or set "PostEditTimeLimit" to a positive integer to restrict editing time in seconds. If post editing is disabled, this setting does not apply. -
    If using Let's Encrypt without a proxy server, the server will fail to start with an error message unless the Forward80To443 | config.json setting is set to true.

    If forwarding port 80 to 443, the server will fail to start with an error message unless the ListenAddress | config.json setting is set to listen on port 443. |

    +
    If using Let's Encrypt without a proxy server, the server will fail to start with an error message unless the Forward80To443 | config.json setting is set to true.

    If forwarding port 80 to 443, the server will fail to start with an error message unless the ListenAddress | config.json setting is set to listen on port 443. |

    v4.6.2 -If using Let's Encrypt without a proxy server, forward port 80 through a firewall, with the Forward80To443 | config.json setting set to true to complete the Let's Encrypt certification. | +If using Let's Encrypt without a proxy server, forward port 80 through a firewall, with the Forward80To443 | config.json setting set to true to complete the Let's Encrypt certification. | v4.4.0 @@ -1367,7 +1367,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN ( Mattermost now handles multiple content types for integrations, including plaintext content type. If your integration suddenly prints the JSON payload data instead of rendering the generated message, make sure your integration is returning the application/json content-type to retain previous behavior. -By default, user-supplied URLs such as those used for Open Graph metadata, webhooks, or slash commands will no longer be allowed to connect to reserved IP | addresses including loopback or link-local addresses used for internal networks. | | This change may cause private integrations to break in testing environments, which may point to a URL such as http://127.0.0.1:1021/my-command. | | If you point private integrations to such URLs, you may whitelist such domains, IP addresses, or CIDR notations via the | Allowed Untrusted Internal Connections | configuration setting in your local environment. Although not recommended, you may also whitelist the addresses in your production environments. See | documentation to learn more. | | Push notification, OAuth 2.0 and WebRTC server URLs are trusted and not affected by this setting. | +By default, user-supplied URLs such as those used for Open Graph metadata, webhooks, or slash commands will no longer be allowed to connect to reserved IP | addresses including loopback or link-local addresses used for internal networks. | | This change may cause private integrations to break in testing environments, which may point to a URL such as http://127.0.0.1:1021/my-command. | | If you point private integrations to such URLs, you may whitelist such domains, IP addresses, or CIDR notations via the | Allowed Untrusted Internal Connections | configuration setting in your local environment. Although not recommended, you may also whitelist the addresses in your production environments. See | documentation to learn more. | | Push notification, OAuth 2.0 and WebRTC server URLs are trusted and not affected by this setting. | Uploaded file attachments are now grouped by day and stored in /data/<date-of-upload-as-YYYYMMDD>/teams/... of your file storage system. @@ -1391,7 +1391,7 @@ DELETE FROM threadmemberships WHERE (postid, userid) IN (

    You need to verify settings in the System Console due to a security-related change.

    1. Go to the the GENERAL section of the System Console
    2. Click Logging
    3. Make sure that the File Log Directory field is either empty or has a directory path only. It must not have a filename as part of the path.
    -Backwards compatibility with the old CLI tool was removed. If you have any scripts that rely on the old CLI, they must be revised to use the | new CLI. | +Backwards compatibility with the old CLI tool was removed. If you have any scripts that rely on the old CLI, they must be revised to use the | new CLI. | v3.6.0 diff --git a/docs/main/administration-guide/upgrade/upgrade-v11.mdx b/docs/main/administration-guide/upgrade/upgrade-v11.mdx deleted file mode 100644 index ca543e1996d8..000000000000 --- a/docs/main/administration-guide/upgrade/upgrade-v11.mdx +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: Upgrade Guide v11 -sidebar_position: 20 -description: Operator-facing upgrade procedure for moving a Mattermost cluster to v11. -slug: /upgrade-guide/upgrade-v11 ---- - - - - -# Upgrade Guide v11 - -Per-major-version upgrade guides give operators a single canonical procedure for moving a Mattermost cluster to that major version. This page focuses on the operator runbook; see the [v11 Changelog](../../product-overview/mattermost-v11-changelog.mdx) for commit-level release notes. - -URL convention: `/upgrade-guide/upgrade-v{X.Y}/` (Grafana pattern). Predictable, deep-linkable, per-version. - -:::note Status -This page is a stub seeded by the IA redesign Phase 1 (see `docs/_redesign/proposed-ia.md` §6 in the repo). Content authored by the release-management + technical-writing team. -::: - -## Before you upgrade - -- Confirm the source version is within the supported upgrade matrix. See [Important Upgrade Notes](/administration-guide/upgrade/important-upgrade-notes) for non-sequential upgrade paths. -- Read [Prepare to Upgrade Mattermost](./prepare-to-upgrade-mattermost.mdx). -- For air-gapped deployments, stage the v11 release artifacts following [Air-Gapped Quick-Start Runbook](../../deployment-guide/air-gapped-operations/quick-start-runbook) steps 1–3. - -## Procedure - -*Per-release, version-specific procedure authored by release-management team.* - -## Validation - -*Post-upgrade verification checklist.* - -## Rollback - -*Documented rollback procedure for this version, if any. See [Downgrading Mattermost Server](./downgrading-mattermost-server.mdx) for cross-version downgrade guidance.* - -## Related - -- [v11 Changelog](../../product-overview/mattermost-v11-changelog.mdx) — commit-level release notes. -- [Important Upgrade Notes](/administration-guide/upgrade/important-upgrade-notes) — version-by-version notes for non-sequential upgrades. -- [Upgrading Mattermost Server](./upgrading-mattermost-server.mdx) — general upgrade procedure (cross-version). diff --git a/docs/main/deployment-guide/air-gapped-operations/disable-phone-home-features.mdx b/docs/main/deployment-guide/air-gapped-operations/disable-phone-home-features.mdx index 3d6fcf8cd013..e71c19b1cb3b 100644 --- a/docs/main/deployment-guide/air-gapped-operations/disable-phone-home-features.mdx +++ b/docs/main/deployment-guide/air-gapped-operations/disable-phone-home-features.mdx @@ -1,90 +1,36 @@ --- -title: Disable Phone-Home Features -sidebar_position: 4 -description: Complete inventory of outbound network calls Mattermost makes, and the settings to disable each one for air-gapped operation. +title: Configure for Air-Gapped Operation +sidebar_position: 3 +description: Server settings that depend on internet access and should be disabled or adjusted for an air-gapped deployment. --- -# Disable Phone-Home Features +# Configure for Air-Gapped Operation -Mattermost makes a small set of outbound network calls during normal operation. In an air-gapped enclave these calls fail silently — they do not affect functionality, but they pollute egress logs and may trigger boundary alerts. Disable each one explicitly so the cluster makes **zero** unexpected outbound connections. +After successful deployment, you'll need to configure Mattermost for air-gapped operation. The following sections describe features that rely on internet access and offer recommendations for settings. -This page is the **single canonical inventory** of phone-home behavior. Every outbound call Mattermost initiates from the server process is listed below with its purpose, target, and the setting that disables it. +## Mobile push notifications -:::important Use this list as a checklist -Run through every row of the table below as a Day-1 task. After the cluster is up, packet-capture at the enclave boundary should show no outbound connections to any of the targets listed. -::: +Mattermost can use mobile push notifications to notify users of new messages and activity. These notifications require a server component to be deployed to send the notifications to mobile devices. By default, Mattermost uses the public push notification service, which isn't available in an air-gapped environment. We recommend disabling push notifications in **System Console > Environment > [Push Notification Server](/administration-guide/configure/environment-configuration-settings#push-notification-server)**. -## Outbound call inventory +## Email -| Feature | Outbound target | Disable in `config.json` | -|---|---|---| -| Anonymous diagnostics telemetry | `telemetry.mattermost.com` | `LogSettings.EnableDiagnostics = false` | -| Security update notifications | `security.mattermost.com` | `ServiceSettings.EnableSecurityFixAlert = false` | -| Plugin Marketplace catalog | `api.integrations.mattermost.com` | `PluginSettings.EnableMarketplace = false` | -| Automated license utilization reporting | `customers.mattermost.com` | `ServiceSettings.EnableLicenseReporting = false` *(see [Offline License Activation](./offline-license-activation))* | -| In-product version check | `releases.mattermost.com` | `ServiceSettings.EnableLatestVersionCheck = false` | -| In-product notices feed | `notices.mattermost.com` | `AnnouncementSettings.AdminNoticesEnabled = false` and `AnnouncementSettings.UserNoticesEnabled = false` | -| Image proxy for inline images | varies (per-image origin) | `ImageProxySettings.Enable = false` *(in air-gapped mode, inline images from external URLs are blocked at the network layer anyway)* | -| Outbound webhooks / slash commands | per-integration URL | Disable individual integrations in **System Console → Integrations** | -| Apple Push Notification Service (APNs) | `api.push.apple.com` | Use mediated push proxy — *Push Notifications without Direct APNs / FCM Egress* (Phase 2) | -| Google Firebase Cloud Messaging (FCM) | `fcm.googleapis.com` | Use mediated push proxy — Phase 2 | -| Bleve search index download (first start) | `releases.mattermost.com` | Pre-stage Bleve index on internal mirror; see [Mirror Package Repositories](./mirror-package-repositories) | -| Plugin install from URL | per-plugin URL | Plugins must be installed via `mmctl plugin add` from local file system; do not use URL install | +Unless you've set up an internal air-gapped email service, we recommend disabling email invitations and email verification from **System Console > Authentication > Signup**. -## Recommended `config.json` snippet +## Website link previews -```json -{ - "ServiceSettings": { - "EnableSecurityFixAlert": false, - "EnableLicenseReporting": false, - "EnableLatestVersionCheck": false - }, - "LogSettings": { - "EnableDiagnostics": false - }, - "PluginSettings": { - "EnableMarketplace": false - }, - "AnnouncementSettings": { - "AdminNoticesEnabled": false, - "UserNoticesEnabled": false - }, - "ImageProxySettings": { - "Enable": false - } -} -``` +Website link previews require a connection to the internet to fetch the content of the links. We recommend [disabling website link previews](/administration-guide/configure/site-configuration-settings#enable-website-link-previews) in **System Console > Site Configuration > Posts**. -Apply this snippet via configuration management (Ansible, Salt, etc.) rather than editing `config.json` by hand. The Mattermost Operator (Kubernetes) accepts these settings via the `MattermostInstallation` CR's `mattermostConfig` field. +## GIF picker -## Cross-cutting concerns +The GIF picker relies on a third-party service which has a dependency on external internet access. You can disable it in **System Console > Integrations > GIF**. -### What this does *not* disable +## Notices -These settings disable **Mattermost-initiated** outbound calls. They do **not** disable: +[In-product notices](/administration-guide/manage/in-product-notices) require internet access to periodically inform administrators and end users of new product improvements, features, and releases. You can disable notices in **System Console > Site Configuration > Notices**. -- **OS-level callbacks** (NTP, DNS, distribution-package updaters). Manage these via your OS hardening profile, not Mattermost configuration. -- **User-initiated outbound calls** (link unfurling when a user pastes a public URL into a channel). Mattermost respects the enclave's network policy here — link unfurling will simply fail. -- **Plugin-initiated outbound calls**. Each plugin has its own outbound behavior. Audit each plugin you install. The Mattermost Calls plugin in particular requires careful egress configuration; see [Calls Deployment](/administration-guide/configure/calls-deployment-guide). +## Telemetry -### Verification - -After applying the snippet and restarting Mattermost: - -1. Tail the server log for one hour during steady-state traffic. -2. Grep the log for any of the disabled targets: - ``` - grep -E '(telemetry|security|releases|notices|customers|api.integrations)\.mattermost\.com' mattermost.log - ``` - Expected output: **none**. -3. Run a packet capture at the enclave boundary for one hour. Confirm zero connections to any row of the table above. - -If any outbound call is observed despite the settings being applied, file a security issue at `security@mattermost.com`. In an air-gapped enclave, you may need to send this out-of-band via your security liaison. - -## Reference - -This page consolidates phone-home behavior previously scattered across multiple admin configuration pages. The canonical home for this inventory is here under Air-Gapped Operations because the Air-Gapped Operator persona (`docs/_redesign/personas.md` §4 in the repo) is the primary consumer. +To avoid log errors, we recommend disabling [telemetry-related features](/administration-guide/manage/telemetry), including the security update check, and error and diagnostics reporting features. diff --git a/docs/main/deployment-guide/air-gapped-operations/index.mdx b/docs/main/deployment-guide/air-gapped-operations/index.mdx index 48128ee9db07..03b19b4c49b5 100644 --- a/docs/main/deployment-guide/air-gapped-operations/index.mdx +++ b/docs/main/deployment-guide/air-gapped-operations/index.mdx @@ -1,34 +1,26 @@ --- title: Air-Gapped Operations sidebar_position: 5 -description: Deploy and operate Mattermost in network-isolated enclaves — air-gapped, sovereign-cloud, and tactical-edge environments. +description: Deploy and operate Mattermost in a self-hosted air-gapped environment with no direct internet access. --- - - + + # Air-Gapped Operations -This section is for operators deploying Mattermost in **network-isolated enclaves** — environments with no egress to public networks, no DNS to public resolvers, no upstream package mirrors, and no telemetry. Typical contexts: DoD SIPRNet / JWICS, IL4 / IL5 enclaves, sovereign-cloud (AWS GovCloud, Azure Government), and forward-deployed tactical edges with DDIL (Disconnected, Intermittent, Limited bandwidth) connectivity. +An air-gapped environment is one that's isolated from the public internet, requiring all necessary components to be available locally. This section outlines what you'll need to deploy and operate Mattermost in a self-hosted air-gapped environment — preparation, deployment guidance, and the configuration changes required for a successful deployment. -Mattermost runs fully in air-gapped mode. The procedure differs from a connected install in five ways: package mirroring, offline license activation, disabling phone-home features, push-notification mediation, and audit-log export topology. Each is documented below. +Deploying Mattermost in an air-gapped environment requires preparing all necessary software, container images, and configuration resources in advance, since the target system has no direct internet access; transferring these artifacts to the isolated network using secure media; and then installing, configuring, and validating the deployment within the air-gapped environment. -:::note Persona scope -This sub-tree is the canonical home for the **Air-Gapped Operator** persona (see `docs/_redesign/personas.md` §4 in the repo). Companion pages for **Security Architects** live under Security & Compliance; compliance machinery for **Compliance Officers** lives under Administration Guide → Comply. -::: + -## In this section - -- [Quick-Start Runbook](/deployment-guide/air-gapped-operations/quick-start-runbook) — 12-step procedure to stand up a working air-gapped Mattermost cluster from scratch. -- [Mirror Package Repositories](/deployment-guide/air-gapped-operations/mirror-package-repositories) — internal Linux package + container registry topology and trust setup. -- [Offline License Activation](/deployment-guide/air-gapped-operations/offline-license-activation) — activate Enterprise / Enterprise Advanced licenses without phoning home to `mattermost.com`. -- [Disable Phone-Home Features](/deployment-guide/air-gapped-operations/disable-phone-home-features) — inventory of every outbound network call Mattermost makes and how to disable it in air-gapped mode. +Consider [talking to a Mattermost expert](https://mattermost.com/contact-sales/) if your organization needs support deploying Mattermost and supporting services in an air-gapped environment. -## Roadmap (Phase 2) + -Phase 2 of the IA redesign (see `docs/_redesign/proposed-ia.md` §6 in the repo) adds four more pages: +## In this section -- Push Notifications without Direct APNs / FCM Egress -- Air-Gapped Upgrade Procedure -- Audit Log Export to Air-Gapped SIEM -- Tactical Edge / DDIL Operations +- [Deployment Overview](/deployment-guide/air-gapped-operations/quick-start-runbook) — the high-level steps to prepare for and complete an air-gapped install. +- [Bill of Materials and Registry Mirroring](/deployment-guide/air-gapped-operations/mirror-package-repositories) — what to gather before you cross the air gap, and how to set up a private package mirror or container registry. +- [Configure for Air-Gapped Operation](/deployment-guide/air-gapped-operations/disable-phone-home-features) — server settings that depend on internet access and should be disabled or adjusted. diff --git a/docs/main/deployment-guide/air-gapped-operations/mirror-package-repositories.mdx b/docs/main/deployment-guide/air-gapped-operations/mirror-package-repositories.mdx index 2b999ca06fb5..72ec74556a5d 100644 --- a/docs/main/deployment-guide/air-gapped-operations/mirror-package-repositories.mdx +++ b/docs/main/deployment-guide/air-gapped-operations/mirror-package-repositories.mdx @@ -1,66 +1,375 @@ --- -title: Mirror Package Repositories +title: Bill of Materials and Registry Mirroring sidebar_position: 2 -description: Stand up internal Linux package mirrors and container registries that host Mattermost artifacts inside the enclave. +description: Gather the packages, images, and certificates you need before crossing the air gap, and set up a private registry or package mirror. --- +import Tabs from '@theme/Tabs'; + -# Mirror Package Repositories +# Bill of Materials and Registry Mirroring + +On an internet-connected machine, you must gather all required packages, container images, and dependencies needed for the installation process. The resources you'll need will depend on your deployment method. + +## Bill of materials + + + + +Using our provided tarball is recommended as the simplest installation method for air-gapped environments. You can install the Mattermost Server in a few minutes on any air-gapped 64-bit Linux system. + +**Prerequisites** + +- [Mattermost tarball](/product-overview/version-archive). We recommend using the latest [ESR](/product-overview/release-policy#extended-support-releases) for extended support where server upgrades may be infrequent. +- Database: PostgreSQL [installation packages](https://www.postgresql.org/download/) or container images for your Linux distribution. +- File Storage: Local filesystem storage is sufficient for deployments under 2,000 users. For larger deployments requiring high availability, we recommend using an S3-compatible object storage solution or an NFS (Network File System) server for shared storage needs. +- Load balancer: If you already have a load balancer running in your air-gapped environment you can skip this resource, otherwise we recommend deploying [NGINX](/deployment-guide/server/setup-nginx-proxy) from these [Linux packages](https://nginx.org/en/linux_packages.html). +- Desktop app: Download the [required package](https://github.com/mattermost/desktop/releases) based on your deployment method. + +**(Optional) Supporting services** + +Consider downloading these additional resources if you plan to enable these optional components: + +- [Mattermost Calls](/administration-guide/configure/calls-deployment-guide): [mattermost-calls-offloader](https://github.com/mattermost/calls-offloader/releases) (required for recording, transcription, and live captions) and [mattermost-rtcd](https://github.com/mattermost/rtcd/releases) (required for performance and scalability). +- [Elasticsearch](https://www.elastic.co/downloads/elasticsearch) can be [deployed](https://www.elastic.co/docs/deploy-manage/deploy/self-managed/installing-elasticsearch) for enhanced search performance at scale. +- [Prometheus](https://prometheus.io/download/) and [Grafana](https://grafana.com/grafana/download) for monitoring and observability. + + + + +Kubernetes is recommended for a highly scalable and robust deployment if your organization is already running a Kubernetes cluster in the air-gapped environment. + +**Prerequisites** + +- [Mattermost Operator](https://github.com/mattermost/mattermost-helm/tree/master/charts/mattermost-operator) and [values](https://github.com/mattermost/mattermost-helm/blob/master/charts/mattermost-operator/values.yaml). +- Database: We recommend options such as the [Postgres Operator](https://access.crunchydata.com/documentation/postgres-operator/latest/quickstart) from Crunchy Data, [CloudNativePG](https://cloudnative-pg.io/documentation/1.27/installation_upgrade/), or [pgEdge](https://github.com/pgEdge/pgedge-helm). +- File Storage: We recommend using an S3-compatible storage service or a mounted NFS volume for shared storage needs. +- Load balancer: If you already have a load balancer running in your air-gapped environment you can skip this resource, otherwise we recommend deploying [NGINX](/deployment-guide/server/setup-nginx-proxy), using the [NGINX Ingress Controller operator](https://docs.nginx.com/nginx-ingress-controller/installation/installing-nic/installation-with-operator/). +- Desktop app: Download the [required package](https://github.com/mattermost/desktop/releases) based on your deployment method. + +**(Optional) Supporting services** + +Consider downloading these additional resources if you plan to enable these optional components: + +- [Mattermost Calls](/administration-guide/configure/calls-deployment-guide) helm charts: [mattermost-calls-offloader](https://github.com/mattermost/mattermost-helm/tree/master/charts/mattermost-calls-offloader) and [values](https://github.com/mattermost/mattermost-helm/blob/master/charts/mattermost-calls-offloader/values.yaml) (required for recording, transcription, and live captions), [mattermost-rtcd](https://github.com/mattermost/mattermost-helm/tree/master/charts/mattermost-rtcd) and [values](https://github.com/mattermost/mattermost-helm/blob/master/charts/mattermost-rtcd/values.yaml) (required for performance and scalability). +- [Elasticsearch](https://www.elastic.co/docs/deploy-manage/deploy/cloud-on-k8s) can be [deployed in air-gapped k8s environments](https://www.elastic.co/guide/en/cloud-on-k8s/2.8/k8s-air-gapped.html) for enhanced search performance at scale. +- [Prometheus](https://github.com/prometheus-operator/prometheus-operator) and [Grafana](https://github.com/grafana/grafana-operator) operators for monitoring and observability. + + + + +Docker can be used if you don't have a running Kubernetes cluster in the air-gapped environment, but want to use containers for simplified installation and dependency management. Docker is not recommended for production environments at high scale, as it doesn't support clustered deployments or High Availability (HA) configurations out-of-the-box. + +**Prerequisites** + +- [Mattermost Enterprise Edition](https://hub.docker.com/r/mattermost/mattermost-enterprise-edition) image. +- Database: [PostgreSQL](https://hub.docker.com/_/postgres) image. +- Load balancer: If you already have a load balancer running in your air-gapped environment you can skip this resource, otherwise we recommend deploying [NGINX](/deployment-guide/server/setup-nginx-proxy) from these [images](https://hub.docker.com/_/nginx). +- Desktop app: Download the [required package](https://github.com/mattermost/desktop/releases) based on your deployment method. + +**(Optional) Supporting services** + +Consider downloading these additional resources if you plan to enable these optional components: + +- [Mattermost Calls](/administration-guide/configure/calls-deployment-guide) images: [calls-offloader](https://hub.docker.com/r/mattermost/calls-offloader) (required for recording, transcription, and live captions) and [rtcd](https://hub.docker.com/r/mattermost/rtcd) (required for performance and scalability). +- [Elasticsearch](https://hub.docker.com/_/elasticsearch) image for enhanced search performance at scale. +- [Prometheus](https://hub.docker.com/r/prom/prometheus) and [Grafana](https://hub.docker.com/r/grafana/grafana) images for monitoring and observability. + + + + +## Mattermost plugins + +Mattermost includes a number of [pre-built integrations](/integrations-guide/popular-integrations) for mission-critical tools. If you'd like to use any plugins beyond those that are pre-built in the Mattermost package, you'll need to download the plugin binaries from the [Mattermost Marketplace](https://mattermost.com/marketplace/). Once you have Mattermost deployed, these plugin binaries can be uploaded directly in the System Console. + +## SSL/TLS certificates and keys + +If your deployment requires SSL, ensure you have the necessary certificates. This includes certificates and keys for enabling HTTPS with Mattermost, as well as any CA files or certificates needed to access internal services such as LDAP or SAML. See [Setup TLS](/deployment-guide/server/setup-tls) for configuration details. + +## Set up a private registry or mirror + +A private container registry securely stores the Docker images necessary for air-gapped deployments, ensuring compliance with data isolation requirements. Similarly, a private package mirror stores operating system packages necessary for air-gapped deployments in Ubuntu or RHEL/CentOS Linux environments. Setting up a local registry or mirror is a critical step in deploying Mattermost to ensure all images, dependencies, and packages are available to you in the air-gapped environment. The steps below outline the process required to set up a local registry or mirror, depending on the deployment method you are using. These steps are a rough guide, and can be supplemented with online resources depending on your specific deployment needs. + + + + +**(Ubuntu) Set up a private Debian package mirror** + +We will use Aptly to create a local mirror, although you can also use other options such as debmirror. + +1. **Install Aptly** (on an internet-connected machine): + + ```bash + apt-get update + apt-get install aptly gnupg + ``` + +2. **Create a GPG key for signing packages**: + + ```bash + gpg --gen-key + ``` + +3. **Create a mirror configuration**: + + ```bash + aptly mirror create -architectures=amd64 debian-bullseye http://deb.debian.org/debian bullseye main contrib non-free + ``` + +4. **Update the mirror to download packages**: + + ```bash + aptly mirror update debian-bullseye + ``` + +5. **Create and publish a snapshot**: + + ```bash + aptly snapshot create debian-bullseye-$(date +%Y%m%d) from mirror debian-bullseye + aptly publish snapshot debian-bullseye-$(date +%Y%m%d) + ``` + +6. **Serve the repository**: + + ```bash + aptly serve + ``` + +7. **Client configuration:** Configure apt to use your local mirror: + + ```bash + cat > /etc/apt/sources.list << EOF + deb http://mirror.example.com/debian bullseye main contrib non-free + EOF + ``` + +**(RHEL/CentOS) Set up a private RHEL package mirror** + +We will use reposync for a local mirror. + +1. **Install required tools** (on an internet-connected RHEL system): + + ```bash + yum install yum-utils createrepo + ``` + +2. **Download packages**: + + ```bash + mkdir -p /var/www/html/repos/rhel8 + reposync -p /var/www/html/repos/rhel8 --download-metadata --repo=rhel-8-for-x86_64-baseos-rpms + reposync -p /var/www/html/repos/rhel8 --download-metadata --repo=rhel-8-for-x86_64-appstream-rpms + ``` + +3. **Create repository metadata**: + + ```bash + createrepo /var/www/html/repos/rhel8/rhel-8-for-x86_64-baseos-rpms + createrepo /var/www/html/repos/rhel8/rhel-8-for-x86_64-appstream-rpms + ``` + +4. **Set up a web server**: + + ```bash + yum install httpd + systemctl enable httpd + systemctl start httpd + ``` + +5. **Client configuration:** Disable existing repositories: + + ```bash + cd /etc/yum.repos.d/ + mkdir backup + mv *.repo backup/ + ``` + +6. **Client configuration:** Create new repository files: + + ```bash + cat > /etc/yum.repos.d/local-baseos.repo << EOF + [local-baseos] + name=Red Hat Enterprise Linux 8 BaseOS + baseurl=http://mirror.example.com/repos/rhel8/rhel-8-for-x86_64-baseos-rpms + enabled=1 + gpgcheck=0 + EOF + + cat > /etc/yum.repos.d/local-appstream.repo << EOF + [local-appstream] + name=Red Hat Enterprise Linux 8 AppStream + baseurl=http://mirror.example.com/repos/rhel8/rhel-8-for-x86_64-appstream-rpms + enabled=1 + gpgcheck=0 + EOF + ``` + +7. **Client configuration:** Clear cache and test: + + ```bash + yum clean all + yum repolist + ``` + + + + +**Set up a self-hosted private container registry** + +1. **Install Docker Registry**: + + ```bash + docker run -d -p 5000:5000 --restart=always --name registry registry:2 + ``` + +2. **Configure persistent storage**: + + ```bash + docker run -d -p 5000:5000 --restart=always --name registry \ + -v /mnt/registry:/var/lib/registry \ + registry:2 + ``` + +3. **Add TLS security** (recommended): + + a. Generate self-signed certificates: + + ```bash + mkdir -p certs + openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key \ + -x509 -days 365 -out certs/domain.crt + ``` + + b. Run the registry with TLS: + + ```bash + docker run -d -p 5000:5000 --restart=always --name registry \ + -v /mnt/registry:/var/lib/registry \ + -v $(pwd)/certs:/certs \ + -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \ + -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \ + registry:2 + ``` + +**Configure Kubernetes to use private image registries** + +When using Kubernetes in an air-gapped environment, you need to configure it to use your private registry. + +1. **Create a Kubernetes secret for registry authentication**: + + ```bash + kubectl create secret docker-registry regcred \ + --docker-server=registry.example.com:5000 \ + --docker-username=your_username \ + --docker-password=your_password \ + --docker-email=your_email@example.com + ``` + +2. **Reference the secret in pod specifications**: + + ```yaml + apiVersion: v1 + kind: Pod + metadata: + name: mattermost-pod + spec: + containers: + - name: mattermost + image: registry.example.com:5000/mattermost/mattermost-enterprise-edition:latest + imagePullSecrets: + - name: regcred + ``` + +3. **For Helm deployments**, specify the registry in `values.yaml`: + + ```yaml + image: + repository: registry.example.com:5000/mattermost/mattermost-enterprise-edition + tag: latest + pullPolicy: IfNotPresent + + imagePullSecrets: + - name: regcred + ``` + + + + +**Set up a self-hosted private container registry** + +1. **Install Docker Registry**: -In an air-gapped enclave, every package and container image Mattermost depends on must come from a mirror inside the enclave. There is no fall-through to upstream registries. This page enumerates the artifacts that need mirroring and the trust topology that ties them together. + ```bash + docker run -d -p 5000:5000 --restart=always --name registry registry:2 + ``` -## What needs mirroring +2. **Configure persistent storage**: -### Linux distribution packages + ```bash + docker run -d -p 5000:5000 --restart=always --name registry \ + -v /mnt/registry:/var/lib/registry \ + registry:2 + ``` -Mirror the upstream Linux package repositories for the OS image you run Mattermost on. Mattermost requires recent versions of `glibc`, `ca-certificates`, and (for plugins) `ImageMagick` and `xpdf-utils`. PostgreSQL is the only supported database for new installs. +3. **Add TLS security** (recommended): -- **Ubuntu / Debian**: mirror the upstream `apt` repos for the release you use (e.g., `noble`, `jammy`). Tools: `apt-mirror`, `aptly`, internal Pulp 3. -- **RHEL / Rocky / Alma / SUSE**: mirror upstream `dnf` / `zypper` repos. Tools: `reposync`, Red Hat Satellite, Pulp. + a. Generate self-signed certificates: -### Mattermost release artifacts + ```bash + mkdir -p certs + openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key \ + -x509 -days 365 -out certs/domain.crt + ``` -Mattermost publishes three artifact families. Stage all three on your operator workstation, verify checksums and signatures, then transfer across the air gap. + b. Run the registry with TLS: -| Artifact | Source | Verification | -|---|---|---| -| Server tarball (`mattermost-VERSION-linux-amd64.tar.gz`) | `releases.mattermost.com` | SHA-256 + PGP signature | -| Container images (`mattermost/mattermost-enterprise-edition:VERSION`, `mattermost/mattermost-mobile-push-proxy:VERSION`) | Docker Hub | Image digest (`sha256:…`) | -| Mattermost Operator Helm chart | `chartmuseum.mattermost.com` | SHA-256 of `.tgz` | + ```bash + docker run -d -p 5000:5000 --restart=always --name registry \ + -v /mnt/registry:/var/lib/registry \ + -v $(pwd)/certs:/certs \ + -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \ + -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \ + registry:2 + ``` -### Plugin and integration artifacts +**Populate your private registry** -Pre-built plugins ship as signed `.tar.gz` files from the Mattermost Marketplace. Stage the bundle of plugins you intend to install (e.g., Channel Export, Legal Hold, Calls, AI Agents) before the air-gap transfer. +Ensure the required images from the [Bill of Materials](#bill-of-materials) are downloaded and pushed to the private registry. -:::important -The Mattermost Marketplace itself **cannot reach your enclave**. After air-gapped install, the Marketplace UI surface is disabled (see [Disable Phone-Home Features](./disable-phone-home-features)). Plugins are installed via `mmctl plugin add` from the local file system. -::: +**Configure Docker to use private image registries** -## Internal container registry +Configure Docker on all hosts to trust and use your private registry. -For Kubernetes / container deployments, push the Mattermost container images to your internal registry (Harbor, Artifactory, Quay, GitLab Container Registry, AWS ECR inside GovCloud). Tag images with the same version strings you pulled upstream. +1. **Add your registry to Docker's trusted registries**: -Configure your Kubernetes cluster's `imagePullSecrets` to authenticate to the internal registry, and configure the Mattermost Operator Helm chart's `image.repository` value to point at the internal path (e.g., `registry.enclave.example/mattermost/mattermost-enterprise-edition`). + Edit or create `/etc/docker/daemon.json`: -## Trust topology + ```json + { + "insecure-registries": ["registry.example.com:5000"] + } + ``` -The artifact-trust chain inside the enclave depends on: + For registries using self-signed certificates: -1. **Your internal CA** signing the TLS certificate served by the internal package mirror and container registry. -2. **The enclave OS trust store** including your internal CA. Without this, `apt update` / `dnf install` will fail with TLS errors. -3. **A verified signature chain** for the Mattermost artifacts themselves. The enclave operator should verify checksums and PGP signatures *before* publishing to the internal mirror. + ```bash + mkdir -p /etc/docker/certs.d/registry.example.com:5000 + cp domain.crt /etc/docker/certs.d/registry.example.com:5000/ca.crt + ``` -## Validation +2. **Restart Docker daemon**: -After mirroring is complete: + ```bash + systemctl restart docker + ``` -- `apt update` (or distribution equivalent) succeeds against only the internal mirror. -- `docker pull registry.enclave.example/mattermost/mattermost-enterprise-edition:VERSION` succeeds. -- `helm pull oci://registry.enclave.example/charts/mattermost-operator --version VERSION` succeeds. -- Outbound traffic capture at the enclave boundary shows **no connections to `releases.mattermost.com`, `chartmuseum.mattermost.com`, or Docker Hub** during install. +3. **Test the configuration**: -## Reference + ```bash + docker pull registry.example.com:5000/mattermost/mattermost-enterprise-edition:latest + ``` -This page is a stub — Phase 2 will add per-distribution `apt-mirror` / `reposync` configuration examples and a Harbor + GovCloud ECR worked example. Tracked in `docs/_redesign/proposed-ia.md` §6 in the repo. + + diff --git a/docs/main/deployment-guide/air-gapped-operations/offline-license-activation.mdx b/docs/main/deployment-guide/air-gapped-operations/offline-license-activation.mdx deleted file mode 100644 index 528ec288e6b7..000000000000 --- a/docs/main/deployment-guide/air-gapped-operations/offline-license-activation.mdx +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: Offline License Activation -sidebar_position: 3 -description: Activate Mattermost Enterprise or Enterprise Advanced licenses inside an enclave without phoning home. ---- - - - - -# Offline License Activation - -In a connected install, Mattermost activates Enterprise licenses by contacting `customers.mattermost.com` and validating the license signature against Mattermost's signing key. In an air-gapped enclave, that callback is impossible. - -Offline activation produces a **license file** that is signed by Mattermost's customer-success team and validated locally by the Mattermost server using a pre-installed public key. No network access is required at activation time. - -## Procedure - -1. **Open a license request with Mattermost Customer Success** through your standard support channel. Provide: - - The Mattermost server version you'll install (e.g., `v10.5.0`). - - The expected user count (must match your purchased seat count). - - Your enclave's clock authority (so the license `IssuedAt` is sensible relative to your NTP source). - - Whether the deployment requires the **FIPS-compliant container image** (see [FIPS / STIG container builds](../server/containers/fips-stig)). -2. **Receive a signed `mattermost.license` file** out-of-band (typically encrypted email, customer portal download, or shipped on physical media for sovereign-cloud deployments). -3. **Transfer the license across the air gap** using your approved transfer mechanism. Verify the file SHA-256 hash on both sides. -4. **Install the license** on the running Mattermost server: - ``` - mmctl license upload /path/to/mattermost.license - ``` - Or via the System Console: **System Console → Edition and License → Upload Mattermost License File**. -5. **Verify activation**: - ``` - mmctl license status - ``` - The output should list the licensee, expiration, and active feature set. - -## License lifecycle in air-gapped mode - -| Event | Connected install | Air-gapped install | -|---|---|---| -| Initial activation | Online callback to `customers.mattermost.com` | Local validation of pre-signed `.license` file | -| Renewal | Automatic prompt 60 days before expiry | Manual: customer-success issues new file; operator re-uploads | -| Automated utilization reporting | Daily POST to `customers.mattermost.com` | **Disabled** — Mattermost does not contact `customers.mattermost.com` from inside the enclave. Reporting is done manually at renewal. | - -:::important Automated license utilization reporting must be disabled -The `EnableLicenseReporting` server setting must be set to `false` in `config.json`. Otherwise, Mattermost attempts (and silently fails) a daily POST to `customers.mattermost.com`. The failure does not affect functionality, but it pollutes egress logs and triggers boundary alerts. See [Disable Phone-Home Features](./disable-phone-home-features). -::: - -## License signature verification - -Mattermost server ships with the public key used to verify license signatures embedded in the binary. There is no need to import or trust an additional key. - -If license validation fails after upload, the server logs an explicit error message. Common causes: - -- **Clock skew**: enclave clock is more than 5 minutes off from the license `IssuedAt`. Fix your NTP source. -- **Version mismatch**: the license was issued for a different Mattermost major version than the one installed. Re-request from customer success. -- **Tampering**: SHA-256 hash of the license file changed during air-gap transfer. Re-transfer. - -## Renewal cadence - -Mattermost Enterprise licenses are typically 12-month terms. In air-gapped mode, plan for license renewal **60 days before expiry** to allow time for customer-success issuance + air-gap transfer. Expired licenses degrade Mattermost to free-tier features; they do not lock the server. - -## Reference - -This page is a stub — Phase 2 will add a worked example for sovereign-cloud (GovCloud) deployments where the license file is delivered via the customer portal rather than out-of-band. Tracked in `docs/_redesign/proposed-ia.md` §6 in the repo. diff --git a/docs/main/deployment-guide/air-gapped-operations/quick-start-runbook.mdx b/docs/main/deployment-guide/air-gapped-operations/quick-start-runbook.mdx index ca37ddd4631f..a4c08d5f2031 100644 --- a/docs/main/deployment-guide/air-gapped-operations/quick-start-runbook.mdx +++ b/docs/main/deployment-guide/air-gapped-operations/quick-start-runbook.mdx @@ -1,53 +1,32 @@ --- -title: Quick-Start Runbook +title: Deployment Overview sidebar_position: 1 -description: 12-step procedure to stand up a working Mattermost cluster in an air-gapped enclave from scratch. +description: The high-level steps to prepare for and complete a self-hosted air-gapped Mattermost deployment. --- - + -# Air-Gapped Quick-Start Runbook +# Air-Gapped Deployment Overview -This runbook brings a Mattermost cluster online inside a network-isolated enclave. It assumes you are the **deploying operator** with administrative access to the enclave's package mirror, container registry, certificate authority, and DNS. +This is a summary of the steps involved in deploying Mattermost in an air-gapped environment. -:::important Prerequisites -- An enclave with internal-only DNS, an internal package mirror (Linux distro repos), and an internal container registry (Harbor / Artifactory / equivalent). -- An offline-activatable Enterprise or Enterprise Advanced license — see [Offline License Activation](./offline-license-activation). -- A staged Mattermost Server release tarball + checksums verified out-of-band, and a Mattermost Operator Helm chart (Kubernetes) or Linux package (`.deb` / `.rpm`). -- A PostgreSQL database reachable from the Mattermost host(s) inside the enclave. -- An NTP source reachable from inside the enclave. -::: +1. **Select your preferred Mattermost deployment option.** This step is often dictated by the infrastructure already running in your air-gapped environment. If you're deploying from scratch, review our [server deployment documentation](/deployment-guide/server/server-deployment-planning#deployment-options) to select the optimal option given your organization's needs. -## The 12 steps +2. **Set up a private container registry or package mirror.** Ideally the air-gapped environment already has a private container registry or package mirror available. If not, see [Bill of Materials and Registry Mirroring](./mirror-package-repositories) for setup guidance. -1. **Stage the release artifacts on the operator workstation.** Download the Mattermost Server tarball, container images, Helm chart, and Vale + plugin assets from `releases.mattermost.com` on an internet-connected workstation. Verify SHA-256 checksums and PGP signatures against the published list. *Never* let a non-verified artifact cross the air gap. -2. **Transfer artifacts across the air gap.** Use the enclave's approved transfer mechanism (one-way diode, manual media, or cross-domain solution). Re-verify checksums on the enclave side before staging in the internal mirror. -3. **Publish artifacts to the internal package mirror and container registry.** Mirror the Linux package repos (Ubuntu, RHEL, SLES — whichever your hosts use) and push container images (e.g., `mattermost/mattermost-enterprise-edition`, `mattermost/mattermost-mobile-push-proxy`) to the internal registry. Tag images with the same version strings published upstream. -4. **Provision PostgreSQL.** Provision the database inside the enclave per [Reference Architecture](/deployment-guide/reference-architecture/reference-architecture-index). Set `max_connections`, `shared_buffers`, and `effective_cache_size` per the [scale tier](/deployment-guide/reference-architecture/reference-architecture-index) you're targeting. -5. **Configure DNS and TLS inside the enclave.** Create an internal DNS A record for the Mattermost host (e.g., `mattermost.enclave.example`). Issue a TLS certificate from your internal CA. Configure NGINX or your reverse proxy with [TLS](../server/setup-tls.mdx). -6. **Install the Mattermost binary.** Install on Linux ([deploy-linux](../server/deploy-linux.mdx)), Kubernetes via the Mattermost Operator ([deploy-kubernetes](../server/deploy-kubernetes.mdx)), or containers ([deploy-containers](../server/deploy-containers.mdx)). Point image references at your internal registry, not Docker Hub. -7. **Apply the air-gapped configuration profile.** See [Disable Phone-Home Features](./disable-phone-home-features) for the complete list. At minimum, disable: `EnableDiagnostics`, `EnableSecurityFixAlert`, `EnableMarketplace`, automated license utilization reporting, image proxy, and the in-product version check. -8. **Activate the license.** Apply the offline license file produced by the Customer Account team — see [Offline License Activation](./offline-license-activation). -9. **Mediate push notifications.** Apple APNs and Google FCM are reachable only from internet-connected networks. Deploy a mediated push proxy at your enclave boundary; see *Push Notifications without Direct APNs / FCM Egress* (Phase 2). -10. **Configure NTP.** Mattermost relies on accurate clocks for token validation, audit-log timestamps, and rate-limiting. Point hosts at the enclave's internal NTP source. -12. **Verify and run smoke tests.** Confirm the cluster passes the [post-install verification checklist](../server/server-deployment-planning.mdx). Run a manual smoke: log in as system admin, create a team, send a message, install one bundled plugin, trigger an audit-log export. +3. **Prepare your Bill of Materials.** Depending on your deployment method, you'll need to download, tag, and push required materials into your private registry or mirror. -## Validation +4. **Transfer materials into the air-gapped environment.** If the private registry cannot access the public internet, you can prepare an archive of the registry data on your internet-connected machine and securely transfer it using approved data transfer methods — for example, burning to a disk. -After completing all 12 steps, your air-gapped cluster should: +5. **Install Mattermost Server.** Once you have all the necessary resources in your air-gapped environment, you can move forward with deployment following the instructions for [Linux](/deployment-guide/server/deploy-linux), [Kubernetes](/deployment-guide/server/deploy-kubernetes), or [Docker](/deployment-guide/server/deploy-containers). -- Reach the in-product login page over TLS from inside the enclave. -- Authenticate users against your internal directory (AD/LDAP, SAML, OIDC) — no public IdP. -- Make **no outbound DNS queries to public resolvers** during steady-state operation. Verify with packet capture at the enclave boundary. -- Show no "Mattermost installation telemetry" or "Marketplace pings" in egress logs. +6. **Install Mattermost Desktop Apps.** Since air-gapped devices cannot access the publicly available app stores, you'll need to install the apps directly from the latest [packages available on our GitHub release page](https://github.com/mattermost/desktop/releases). You'll find [installation instructions](/deployment-guide/desktop/desktop-app-deployment) in our documentation based on your desired deployment method. -## What this runbook does *not* cover +7. **Configure Mattermost for air-gapped operation.** See [Configure for Air-Gapped Operation](./disable-phone-home-features) for the settings that accommodate the lack of internet access. -- **Hardening beyond the install procedure** — see [Security & Compliance → Hardening Guides](../../security-guide/security-guide-index.mdx). -- **Upgrade procedure for an already-installed air-gapped cluster** — see *Air-Gapped Upgrade Procedure* (Phase 2). -- **Tactical edge / DDIL operation** — for forward-deployed nodes that sync intermittently to a parent enclave, see *Tactical Edge / DDIL Operations* (Phase 2). + -## Reference +Consider [talking to a Mattermost expert](https://mattermost.com/contact-sales/) if your organization needs support deploying Mattermost and supporting services in an air-gapped environment. -This runbook is modelled on GitLab's [Offline GitLab Quick Start Guide](https://docs.gitlab.com/topics/offline/quick_start_guide/) and Red Hat OpenShift's [Disconnected installation chapter](https://docs.okd.io/4.18/installing/disconnected_install/index.html). Both treat air-gapped deployment as a first-class, runbook-shaped operation rather than a "contact sales" stub. + diff --git a/docs/main/deployment-guide/deployment-architecture.mdx b/docs/main/deployment-guide/deployment-architecture.mdx index 72bb59307da5..604cb06fb761 100644 --- a/docs/main/deployment-guide/deployment-architecture.mdx +++ b/docs/main/deployment-guide/deployment-architecture.mdx @@ -20,8 +20,8 @@ Pick your scale tier, deployment type, and hosting provider. The builder below r Once you've sized the architecture: -- For **air-gapped, sovereign-cloud, or DDIL** environments, also work through [Air-Gapped Operations](/deployment-guide/air-gapped-operations/quick-start-runbook). The architecture is the same; the install procedure and dependency-staging are different. -- For **regulated workloads** (FedRAMP, DoD IL, DISA STIG), see [Security & Compliance → Compliance Frameworks](/security-guide/compliance-frameworks) for the configuration overlay that goes on top of the architecture choices above. +- For **air-gapped** environments, also work through [Air-Gapped Operations](/deployment-guide/air-gapped-operations/quick-start-runbook). The architecture is the same; the install procedure and dependency-staging are different. +- For **regulated workloads** (DoD IL, DISA STIG), see [Security & Compliance → Compliance Frameworks](/security-guide/compliance-frameworks) for the configuration overlay that goes on top of the architecture choices above. - For **HA tuning** (clustering, Redis configuration, multi-AZ database topology), see [High Availability cluster-based deployment](/administration-guide/scale/high-availability-cluster-based-deployment). - For **specific install paths**, jump to [Install on Linux](/deployment-guide/server/deploy-linux), [Install on Kubernetes](/deployment-guide/server/deploy-kubernetes), or [Install with Containers](/deployment-guide/server/deploy-containers). diff --git a/docs/main/deployment-guide/desktop/desktop-custom-dictionaries.mdx b/docs/main/deployment-guide/desktop/desktop-custom-dictionaries.mdx index daf7d536bf88..5d84591843d0 100644 --- a/docs/main/deployment-guide/desktop/desktop-custom-dictionaries.mdx +++ b/docs/main/deployment-guide/desktop/desktop-custom-dictionaries.mdx @@ -1,6 +1,8 @@ --- title: "Desktop App custom dictionaries" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + From Mattermost desktop app v4.7.1, custom dictionary definitions can be served through a URL on Windows and Linux. If custom dictionaries aren't specified, default dictionary definitions are obtained automatically from Chromium's CDNs (content delivery networks). On macOS, the Mattermost desktop app uses dictionary definitions provided by Apple that can't be customized. @@ -18,7 +20,7 @@ To access a copy of these dictionary definitions: ## Configure the Desktop App -1. In the Mattermost Desktop App, go to Settings by selecting Use the More icon in the top left corner to access Mattermost desktop apps customization settings. **\> File \> Settings**. +1. In the Mattermost Desktop App, go to Settings by selecting Use the More icon in the top left corner to access Mattermost desktop apps customization settings. **\> File \> Settings**. 2. Under **App Options**, ensure that the **Check spelling** option is enabled. 3. Select **Use an alternative dictionary URL** to specify the URL to the root folder of your custom dictionaries, then select **Save**. diff --git a/docs/main/deployment-guide/desktop/linux-desktop-install.mdx b/docs/main/deployment-guide/desktop/linux-desktop-install.mdx index 6a49f872dc76..a2fd552e06c7 100644 --- a/docs/main/deployment-guide/desktop/linux-desktop-install.mdx +++ b/docs/main/deployment-guide/desktop/linux-desktop-install.mdx @@ -1,6 +1,7 @@ --- title: "Install desktop app on Linux" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -51,7 +52,7 @@ A snap is available for systems that have Snapcraft installed. Snapcraft is inst -You can review the current version of your desktop app by selecting the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top left corner of the desktop app, then selecting **Help \> Version...**. +You can review the current version of your desktop app by selecting the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top left corner of the desktop app, then selecting **Help \> Version...**. @@ -79,7 +80,7 @@ To manually update the desktop app, run the following command: -You can review the current version of your desktop app by selecting the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top left corner of the desktop app, then selecting **Help \> Version...**. +You can review the current version of your desktop app by selecting the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top left corner of the desktop app, then selecting **Help \> Version...**. @@ -129,7 +130,7 @@ Flatpak packages are available for: -You can review the current version of your desktop app by selecting the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top left corner of the desktop app, then selecting **Help \> Version...**. +You can review the current version of your desktop app by selecting the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top left corner of the desktop app, then selecting **Help \> Version...**. diff --git a/docs/main/deployment-guide/mobile/deploy-mobile-apps-using-emm-provider.mdx b/docs/main/deployment-guide/mobile/deploy-mobile-apps-using-emm-provider.mdx index 1e17d914f1c6..d6000ea0f99a 100644 --- a/docs/main/deployment-guide/mobile/deploy-mobile-apps-using-emm-provider.mdx +++ b/docs/main/deployment-guide/mobile/deploy-mobile-apps-using-emm-provider.mdx @@ -1,6 +1,8 @@ --- title: "Deploy using an EMM provider" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + You can enhance mobile security by deploying the Mattermost mobile app with [Enterprise Mobility Management (EMM)](https://en.wikipedia.org/wiki/Enterprise_mobility_management) and Mattermost AppConfig compatibility to secure mobile endpoints with management application configuration. @@ -67,85 +69,85 @@ The following table shows all the configuration options that can be sent from th inAppPinCode
    String Require users to authenticate as the device owner before using the app. Prompts for fingerprint or passcode when the app first opens and when the app has been in the background for more than five minutes. Default: false
    Valid: true | false - - + Supported + Supported blurApplicationScreen
    String Blur the app when it's set to background to protect any confidential on-screen information. On Android, it also prevents taking screenshots of the app. Default: false
    Valid: true | false - - + Supported + Supported jailbreakDetection
    String Disable app launch on jailbroken or rooted devices. Default: false
    Valid: true | false - - + Supported + Supported copyAndPasteProtection
    String Disable the ability to copy from or paste into any text inputs in the app. Default: false
    Valid: true | false - - (since v1.24.0) + Supported + Supported (since v1.24.0) serverUrl
    String Set a default Mattermost server URL. Supports a single server only while v2.0 of the mobile app supports multiple server connections. Valid: URL - - + Supported + Supported serverName
    String Automatically populates the server display name for the URL specified in serverURL. Valid: alphanumeric or empty - - + Supported + Supported allowOtherServers
    String Allow the user to change the above server URL. If set to true, users can connect to multiple servers that aren't specified in the server URL setting. If set to false, users can only connect to a single defined server. Default: true
    Valid: true | false - - + Supported + Supported username
    String Set the username or email address to use to authenticate against the Mattermost Server. - - + Supported + Supported useVPN
    String Enable connection to the Mattermost Server to use a per-app VPN or VPN on-demand. Default: false
    Valid: true | false - + Supported timeoutVPN
    String Set how long the request waits (in milliseconds) for an initial VPN connection to establish before timeout. Default: 30000 - + Supported vendor
    String Name of the EMM vendor or company deploying the app. Used in help text when prompting for passcodes so users are aware why the app is being protected. Default: Mattermost - - + Supported + Supported inAppSessionAuth
    String Use the app's internal browser for SSO instead of an external browser. From Mattermost v10.2 and mobile v2.2.1, deprecated in favor of the mobile external browser server configuration setting. Default: false
    Valid: true | false - - + Supported + Supported diff --git a/docs/main/deployment-guide/mobile/mobile-troubleshooting.mdx b/docs/main/deployment-guide/mobile/mobile-troubleshooting.mdx index 359fd58d5a66..cb20bfb6b3b4 100644 --- a/docs/main/deployment-guide/mobile/mobile-troubleshooting.mdx +++ b/docs/main/deployment-guide/mobile/mobile-troubleshooting.mdx @@ -1,6 +1,8 @@ --- title: "Mobile deployment troubleshooting" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + ## I keep getting a message "Cannot connect to the server. Please check your server URL and internet connection." @@ -103,19 +105,19 @@ Then use the following instructions to confirm push notifications are working pr 1. Log in to your mobile app with an account on your Mattermost Server, which we’ll refer to as “Account A”. 2. (iOS) When the app asks whether you wish to receive notifications, **confirm you want to receive notifications**. -> Mattermost prompts you to confirm whether you want to allow mobile push notifications. To test mobile push notifications, you must select Allow. + Mattermost prompts you to confirm whether you want to allow mobile push notifications. To test mobile push notifications, you must select Allow. 3. Confirm push notifications are enabled for “Account A”. -> 1. Go to the notification settings menu in the mobile app. -> -> Access notification settings by selecting your profile picture to access Settings > Notifications. -> -> 2. Check that the mobile push notifications are set to send. -> -> Select Push Notifications to confirm when mobile push notifications will be sent. -> -> Specify whether all new messages or only mentions and direct messages send push notifications. + 1. Go to the notification settings menu in the mobile app. + + Access notification settings by selecting your profile picture to access Settings > Notifications. + + 2. Check that the mobile push notifications are set to send. + + Select Push Notifications to confirm when mobile push notifications will be sent. + + Specify whether all new messages or only mentions and direct messages send push notifications. 4. Have “Account A” put the app to background or close the app. 5. Using a browser, log in to “Account B” on the same Mattermost Server. diff --git a/docs/main/deployment-guide/reference-architecture/application-architecture.mdx b/docs/main/deployment-guide/reference-architecture/application-architecture.mdx index 6ef6564de376..3975c01d6b96 100644 --- a/docs/main/deployment-guide/reference-architecture/application-architecture.mdx +++ b/docs/main/deployment-guide/reference-architecture/application-architecture.mdx @@ -1,9 +1,11 @@ --- title: "Application architecture" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Mattermost is an open-source collaboration platform that offers secure messaging, file sharing, and integrations for team communication. It's self-hosted, providing IT admins full control over data, security, integrations, and customization. The platform is built with modular components to ensure scalability, flexibility, and extensibility. -Mattermost network diagram shows how the components can be deployed. Includes optional configurations for scaling for larger enterprise organizations. +Mattermost network diagram shows how the components can be deployed. Includes optional configurations for scaling for larger enterprise organizations. ## Workflow overview @@ -31,7 +33,7 @@ The Access Layer plays a critical role in ensuring that users are always connect The Mattermost Server is the heart of the platform and responsible for processing all user and system operations. It's composed of multiple modular elements as follows: -Mattermost architecture basics +Mattermost architecture basics **RESTful JSON Web Service**: Handles all incoming API requests (from web clients, apps, and integrations) and ensures that responses are formatted in JSON. Acts as the communication bridge between the clients (Access Layer) and backend systems. To ensure high availability, this layer can be distributed across multiple servers and load-balanced, preventing service disruptions due to high traffic or server failure. @@ -109,7 +111,7 @@ If a WSS connection is not available and HTTPS is substituted, the system will a High availability for WSS connections can be achieved through clustering Mattermost servers and load balancing WebSocket connections across those cluster nodes. Proxy servers and WebSocket-specific configurations (such as sticky sessions or connection persistence) are essential to maintain real-time interactivity during server or network failures. -Mattermost architecture with protocol connections +Mattermost architecture with protocol connections By incorporating high availability strategies into communication protocols, the platform ensures secure, scalable, and reliable connections for both regular user interactions (via HTTPS) and real-time updates (via WSS). These measures are critical for mission-critical environments and distributed deployments where continuous communication is necessary. diff --git a/docs/main/deployment-guide/reference-architecture/deployment-scenarios/deploy-oob.mdx b/docs/main/deployment-guide/reference-architecture/deployment-scenarios/deploy-oob.mdx index 53d1a119bd22..c9439008fa3e 100644 --- a/docs/main/deployment-guide/reference-architecture/deployment-scenarios/deploy-oob.mdx +++ b/docs/main/deployment-guide/reference-architecture/deployment-scenarios/deploy-oob.mdx @@ -1,6 +1,8 @@ --- title: "Deploy for Out-of-Band (OOB) Communications" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + When a critical incident disrupts an organization’s primary infrastructure—due to a cyberattack, cloud outage, or internal failure—a secure, independent communication channel becomes essential. Mattermost can serve as that channel by operating in an Out-of-Band (OOB) environment: isolated, pre-provisioned, and ready to support incident response and business continuity teams. This document outlines architectural guidance for deploying Mattermost in an OOB scenario across [generic](#generic-oob-architecture), [AWS](#aws-based-oob-deployment), and [Azure](#azure-based-oob-deployment) environments. @@ -9,7 +11,7 @@ This document outlines architectural guidance for deploying Mattermost in an OOB This platform-agnostic design establishes a fallback communication system, decoupled from primary networks and identity providers. -Generic OOB Architecture +Generic OOB Architecture ### Architecture components @@ -30,7 +32,7 @@ This platform-agnostic design establishes a fallback communication system, decou Deploying Mattermost in AWS leverages managed services and strong isolation capabilities. -AWS OOB Deployment diagram +AWS OOB Deployment diagram ### AWS components @@ -52,7 +54,7 @@ Deploying Mattermost in AWS leverages managed services and strong isolation capa For Azure customers, AKS and related services provide a robust OOB platform for Mattermost. -Azure OOB Deployment diagram +Azure OOB Deployment diagram ### Azure components diff --git a/docs/main/deployment-guide/server/deploy-linux.mdx b/docs/main/deployment-guide/server/deploy-linux.mdx index de0fad8eabd9..f65bd8206ac4 100644 --- a/docs/main/deployment-guide/server/deploy-linux.mdx +++ b/docs/main/deployment-guide/server/deploy-linux.mdx @@ -49,9 +49,9 @@ Once Mattermost is running, complete these steps before exposing it to users: - Review the [post-install configuration checklist](/deployment-guide/server/server-deployment-planning) under Server deployment planning. :::tip Air-gapped environments -If you're deploying into a network-isolated enclave, use the [Air-Gapped Quick-Start Runbook](/deployment-guide/air-gapped-operations/quick-start-runbook) instead of the connected install paths above. The runbook adds package mirroring, offline license activation, and the phone-home-disable inventory on top of the standard install. +If you're deploying into a network-isolated enclave, see [Air-Gapped Operations](/deployment-guide/air-gapped-operations/quick-start-runbook) instead of the connected install paths above. It covers package mirroring and the configuration changes needed on top of the standard install. ::: -:::note Troubleshooting +:::note[Troubleshooting] See [Deployment Troubleshooting](/deployment-guide/deployment-troubleshooting) for common install failures. ::: diff --git a/docs/main/deployment-guide/server/linux/deploy-tar.mdx b/docs/main/deployment-guide/server/linux/deploy-tar.mdx index df753bad81e7..33e320700e50 100644 --- a/docs/main/deployment-guide/server/linux/deploy-tar.mdx +++ b/docs/main/deployment-guide/server/linux/deploy-tar.mdx @@ -68,7 +68,7 @@ Enterprise and Team Edition releases are listed in the [version archive](/produc -In an air-gapped environment, stage the tarball on your operator workstation, verify the SHA-256 and PGP signature, then transfer it across the boundary. See [Air-Gapped Operations → Quick-Start Runbook](/deployment-guide/air-gapped-operations/quick-start-runbook) for the full procedure. +In an air-gapped environment, stage the tarball on your operator workstation, verify the SHA-256 and PGP signature, then transfer it across the boundary. See [Air-Gapped Operations → Deployment Overview](/deployment-guide/air-gapped-operations/quick-start-runbook) for the full procedure. @@ -191,4 +191,4 @@ sudo userdel mattermost - [Set up an NGINX reverse proxy](/deployment-guide/server/setup-nginx-proxy) - [Set up TLS](/deployment-guide/server/setup-tls) -- For air-gapped deployments: [Air-Gapped Quick-Start Runbook](/deployment-guide/air-gapped-operations/quick-start-runbook), [Disable Phone-Home Features](/deployment-guide/air-gapped-operations/disable-phone-home-features) +- For air-gapped deployments: [Air-Gapped Deployment Overview](/deployment-guide/air-gapped-operations/quick-start-runbook), [Configure for Air-Gapped Operation](/deployment-guide/air-gapped-operations/disable-phone-home-features) diff --git a/docs/main/deployment-guide/server/linux/deploy-ubuntu.mdx b/docs/main/deployment-guide/server/linux/deploy-ubuntu.mdx index ecaba4d155d8..068bf0133b45 100644 --- a/docs/main/deployment-guide/server/linux/deploy-ubuntu.mdx +++ b/docs/main/deployment-guide/server/linux/deploy-ubuntu.mdx @@ -8,7 +8,7 @@ sidebar_label: "Ubuntu / Debian" Install Mattermost Server on Ubuntu or Debian from the signed Mattermost APT repository. The same `.deb` packages cover single-host installs and clustered deployments via tools like Packer. -:::info Minimum requirements +:::info[Minimum requirements] - **Operating system**: Ubuntu 20.04 / 22.04 / 24.04 LTS, or Debian (current stable). Other Debian-family distributions usually work but aren't tested by Mattermost. - **Hardware**: 1 vCPU and 2 GB RAM (supports up to ~1,000 users). - **Database**: [PostgreSQL 14+](/deployment-guide/postgres-migration). @@ -29,7 +29,7 @@ Follow the [database preparation](/deployment-guide/server/preparations#database ## Step 3: Add the Mattermost APT repository -:::important GPG key change +:::important[GPG key change] The GPG public key has changed. Either [import the new public key](https://deb.packages.mattermost.com/pubkey.gpg) or run the repository setup script in the next step (recommended). Existing installations should remove the old key before adding the new one: For Ubuntu 22.04 LTS and 24.04 LTS: @@ -66,7 +66,7 @@ sudo apt install mattermost -y Mattermost installs to `/opt/mattermost`. The package creates a `mattermost` user and group and a systemd unit file. The service is **not** enabled or started at this point. -:::note systemd dependencies +:::note[systemd dependencies] The Mattermost package doesn't declare a database dependency in its systemd unit (the package is used for both single-host and external-database installs). If you installed PostgreSQL on the same host, add the following to the `[Unit]` section of `/lib/systemd/system/mattermost.service`: ```ini @@ -92,7 +92,7 @@ Edit `/opt/mattermost/config/config.json` and set: - `ServiceSettings.SiteURL`: the public URL of your deployment (e.g., `https://mattermost.example.com`). - (Recommended) [`SupportSettings.SupportEmail`](/administration-guide/configure/site-configuration-settings#support-email-address): the email address users contact for help. -:::note TLS mode for `DataSource` +:::note[TLS mode for `DataSource`] The `sslmode` value depends on your database environment. The two relevant options are `disable` and `require`. Managed services such as AWS Lightsail require `sslmode=require`. Check your provider's documentation. ::: @@ -124,7 +124,7 @@ sudo apt update && sudo apt upgrade sudo systemctl start mattermost ``` -:::important Stop the server before upgrading +:::important[Stop the server before upgrading] `apt upgrade` will replace the Mattermost binary while it's running. Stop the systemd service first to avoid corrupt state. ::: diff --git a/docs/main/deployment-guide/server/prepare-mattermost-mysql-database.mdx b/docs/main/deployment-guide/server/prepare-mattermost-mysql-database.mdx index e046580d3805..774daac15886 100644 --- a/docs/main/deployment-guide/server/prepare-mattermost-mysql-database.mdx +++ b/docs/main/deployment-guide/server/prepare-mattermost-mysql-database.mdx @@ -1,6 +1,7 @@ --- title: "Set up the Mattermost MySQL database" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -244,7 +245,7 @@ WantedBy=mysql.service # Technical notes about searching -By default, Mattermost uses full text search support included in MySQL. Select the **product menu** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. then select **About Mattermost** to see which database you’re using. +By default, Mattermost uses full text search support included in MySQL. Select the **product menu** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. then select **About Mattermost** to see which database you’re using. - Stop words are filtered out of search results. See [MySQL](https://dev.mysql.com/doc/refman/5.7/en/fulltext-stopwords.html) database documentation for a full list of applicable stop words. - Hashtags or recent mentions of usernames containing a dot don't return results. diff --git a/docs/main/deployment-guide/server/server-deployment-planning.mdx b/docs/main/deployment-guide/server/server-deployment-planning.mdx index 1dbd20c03951..42c013c48638 100644 --- a/docs/main/deployment-guide/server/server-deployment-planning.mdx +++ b/docs/main/deployment-guide/server/server-deployment-planning.mdx @@ -95,38 +95,40 @@ When a PostgreSQL version reaches its end of life (EOL), Mattermost will require - - + + + +Mattermost Version +Release Date +Minimum PostgreSQL Version + + -
    -

    Mattermost Version | Release Date | Minimum PostgreSQL Version |

    -
    -
    -
    ===========================================================+==================+================================+
    -
    -

    v9.11 ESR | 2024-8-15 | 11.x

    -
    -
    +v9.11 ESR +2024-8-15 +11.x -v10.5 ESR | 2025-2-15 | 11.x +v10.5 ESR +2025-2-15 +11.x -v10.6 | 2025-3-15 | 13.x +v10.6 +2025-3-15 +13.x v10.11 ESR 2025-8-15 13.x - v11.5 ESR * 2026-2-15 14.x (EOL 2026-11-12) - diff --git a/docs/main/end-user-guide/access/client-availability.mdx b/docs/main/end-user-guide/access/client-availability.mdx index af2b6c0f9600..64936baee0c5 100644 --- a/docs/main/end-user-guide/access/client-availability.mdx +++ b/docs/main/end-user-guide/access/client-availability.mdx @@ -30,49 +30,49 @@ The following tables highlight the end user features of Mattermost and their sup -Threaded discussions | checkmark | checkmark | checkmark | +Threaded discussions | checkmark | checkmark | checkmark | -Format messages with Markdown | checkmark | checkmark | Partial Support | +Format messages with Markdown | checkmark | checkmark | Partial Support | -Emojis | checkmark | checkmark | checkmark | +Emojis | checkmark | checkmark | checkmark | -Emoji reactions +Emoji reactions _ | checkmark | checkmark | checkmark | -File sharing | checkmark | checkmark | checkmark | +File sharing | checkmark | checkmark | checkmark | -@mentions | checkmark | checkmark | checkmark | +@mentions | checkmark | checkmark | checkmark | -Search hashtags | checkmark | checkmark | checkmark | +Search hashtags | checkmark | checkmark | checkmark | -Search modifiers | checkmark | checkmark | checkmark | +Search modifiers | checkmark | checkmark | checkmark | Search highlighting checkmark | checkmark | checkmark | -Pin and save messages | checkmark | checkmark | checkmark | +Pin and save messages | checkmark | checkmark | checkmark | -Preview image links -ments>`__ | checkmark | checkmark | checkmark | +Preview image links +checkmark | checkmark | checkmark | -Preview websites | | | | | checkmark | checkmark | checkmark +Preview websites | checkmark | checkmark | checkmark -Notifications | checkmark | checkmark | checkmark | +Notifications | checkmark | checkmark | checkmark | -Bookmark channels | checkmark | checkmark | checkmark | +Bookmark channels | checkmark | checkmark | checkmark | @@ -102,37 +102,37 @@ The following tables highlight the end user features of Mattermost and their sup -Create a new channel | checkmark | checkmark | checkmark | +Create a new channel | checkmark | checkmark | checkmark | -Join a channel +Join a channel
    -Leave a channel +Leave a channel
    -Favorite a channel | checkmark | checkmark | checkmark | +Favorite a channel | checkmark | checkmark | checkmark | -Mute a channel | | | | | checkmark | checkmark | checkmark | +Mute a channel | checkmark | checkmark | checkmark | -Manage members | checkmark | checkmark | checkmark | +Manage members | checkmark | checkmark | checkmark | -Add members | checkmark | checkmark | checkmark +Add members | checkmark | checkmark | checkmark -Rename channels | checkmark | checkmark | checkmark | +Rename channels | checkmark | checkmark | checkmark | -Deactivate members | | | | | checkmark | checkmark | | +Deactivate members | checkmark | checkmark | | @@ -162,36 +162,36 @@ The following tables highlight the end user features of Mattermost and their sup -Multi-team support for notifications | | | | | checkmark | checkmark | checkmark +Multi-team support for notifications | checkmark | checkmark | checkmark -Team switching | checkmark | checkmark | checkmark | +Team switching | checkmark | checkmark | checkmark | -Team-based theming | checkmark | checkmark | checkmark | +Team-based theming | checkmark | checkmark | checkmark | -Team settings | checkmark | checkmark | | +Team settings | checkmark | checkmark | | -Join existing team -eam>`__ | checkmark | checkmark | checkmark | +Join existing team +checkmark | checkmark | checkmark | -Create a new team -team>`__ | checkmark | checkmark | | +Create a new team +checkmark | checkmark | | -Share an invite link | checkmark | checkmark | checkmark | +Share an invite link | checkmark | checkmark | checkmark | -Invite people | checkmark | checkmark | checkmark | +Invite people | checkmark | checkmark | checkmark | -Manage team members | checkmark | checkmark | | +Manage team members | checkmark | checkmark | | -Leave team +Leave team
    @@ -223,7 +223,7 @@ The following tables highlight the end user features of Mattermost and their sup -Collaborative playbooks | | | | | checkmark | checkmark | +Collaborative playbooks | checkmark | checkmark | @@ -253,19 +253,19 @@ The following tables highlight the end user features of Mattermost and their sup -Join call | | | | | checkmark | checkmark | checkmark | +Join call | checkmark | checkmark | checkmark | -Share screen | | | | | checkmark | checkmark | | +Share screen | checkmark | checkmark | | -Chat in thread | | | | | checkmark | checkmark | checkmark +Chat in thread | checkmark | checkmark | checkmark -React with emoji | | | | | checkmark | checkmark | checkmark | +React with emoji | checkmark | checkmark | checkmark | -Record a call | | | | | checkmark | checkmark | checkmark | +Record a call | checkmark | checkmark | checkmark | @@ -295,10 +295,10 @@ The following tables highlight the end user features of Mattermost and their sup -Slash commands | checkmark | checkmark | Partial Support | +Slash commands | checkmark | checkmark | Partial Support | -Server-side plugins | checkmark | checkmark | checkmark +Server-side plugins | checkmark | checkmark | checkmark Interactive dialogs @@ -364,22 +364,22 @@ The following tables highlight the end user features of Mattermost and their sup -Email password login | | | | | checkmark | checkmark | checkmark +Email password login | checkmark | checkmark | checkmark -AD/LDAP | checkmark | checkmark | checkmark | +AD/LDAP | checkmark | checkmark | checkmark | -SAML SSO | checkmark | checkmark | checkmark | +SAML SSO | checkmark | checkmark | checkmark | -GitLab SSO | checkmark | checkmark | checkmark | +GitLab SSO | checkmark | checkmark | checkmark | -Entra ID SSO | checkmark | checkmark | checkmark | +Entra ID SSO | checkmark | checkmark | checkmark | -Google SSO | checkmark | checkmark | checkmark | +Google SSO | checkmark | checkmark | checkmark | @@ -409,16 +409,16 @@ The following tables highlight the end user features of Mattermost and their sup -Localization for 22 languages | | | | | checkmark | checkmark | checkmark | +Localization for 22 languages | checkmark | checkmark | checkmark | -Custom user interface themes | | | | | checkmark | checkmark | checkmark +Custom user interface themes | checkmark | checkmark | checkmark -User profile settings | | | | | checkmark | checkmark | checkmark +User profile settings | checkmark | checkmark | checkmark -Channel notification settings | | | | | checkmark | checkmark | checkmark | +Channel notification settings | checkmark | checkmark | checkmark | diff --git a/docs/main/end-user-guide/access/log-out.mdx b/docs/main/end-user-guide/access/log-out.mdx index d494edb53409..6b7457b4ecc3 100644 --- a/docs/main/end-user-guide/access/log-out.mdx +++ b/docs/main/end-user-guide/access/log-out.mdx @@ -1,6 +1,7 @@ --- title: "Log out of Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -16,7 +17,7 @@ You can log out of Mattermost from your profile picture. Select **Log Out** to l
    -Log out of Mattermost from your profile picture. +Log out of Mattermost from your profile picture. diff --git a/docs/main/end-user-guide/collaborate/archive-unarchive-channels.mdx b/docs/main/end-user-guide/collaborate/archive-unarchive-channels.mdx index e23a9cdb04e8..7ab8fbe84ffd 100644 --- a/docs/main/end-user-guide/collaborate/archive-unarchive-channels.mdx +++ b/docs/main/end-user-guide/collaborate/archive-unarchive-channels.mdx @@ -1,6 +1,7 @@ --- title: "Archive and unarchive channels" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -30,7 +31,7 @@ To archive a channel: ![Select a channel that you want to edit.](/images/mobile-select-a-channel.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) @@ -52,7 +53,7 @@ To archive a channel: -- When a Mattermost user is deactivated in the system, your [direct message channel](/end-user-guide/collaborate/channel-types#direct-message-channels) with that user are archived and marked as read-only. An **Archived** icon Archived channels are identified with a File Box icon. displays next to archived channels. From Mattermost v11.5, archived private channels display a distinct **Archive Lock** icon to differentiate them from other archived channels. +- When a Mattermost user is deactivated in the system, your [direct message channel](/end-user-guide/collaborate/channel-types#direct-message-channels) with that user are archived and marked as read-only. An **Archived** icon Archived channels are identified with a File Box icon. displays next to archived channels. From Mattermost v11.5, archived private channels display a distinct **Archive Lock** icon to differentiate them from other archived channels. - [Group message channels](/end-user-guide/collaborate/channel-types#group-message-channels) can't be archived, but they can be closed to hide them from the channel sidebar. - The default **Town Square** channel can't be archived. - System admins can archive channels without needing to be a channel member by using the System Console. @@ -80,7 +81,7 @@ To unarchive a channel: ![Select a channel that you want to edit.](/images/mobile-select-a-channel.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/browse-channels.mdx b/docs/main/end-user-guide/collaborate/browse-channels.mdx index 29a9d15e81c3..191278c2e31a 100644 --- a/docs/main/end-user-guide/collaborate/browse-channels.mdx +++ b/docs/main/end-user-guide/collaborate/browse-channels.mdx @@ -1,6 +1,7 @@ --- title: "Browse channels" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -9,7 +10,7 @@ import TabItem from '@theme/TabItem'; -1. Select the **Plus** The Plus icon provides access to channel and direct message functionality. icon at the top of the channel sidebar to see all available public channels you can join that you're not already a member of. +1. Select the **Plus** The Plus icon provides access to channel and direct message functionality. icon at the top of the channel sidebar to see all available public channels you can join that you're not already a member of. 2. Select **Browse Channels**. 3. Search for channels by name or scroll through the list. 4. Select **Join** next to any channel to become a member of that channel. @@ -29,7 +30,7 @@ From Mattermost v11.8.0, if your organization uses membership policies, **Browse -1. Tap the **Plus** The Plus icon provides access to channel and direct message functionality. icon located in the top right corner of the app. +1. Tap the **Plus** The Plus icon provides access to channel and direct message functionality. icon located in the top right corner of the app. ![Tap the plus icon to view additional options.](/images/mobile-select-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/channel-header-purpose.mdx b/docs/main/end-user-guide/collaborate/channel-header-purpose.mdx index c774241efcaa..1785cfd872d7 100644 --- a/docs/main/end-user-guide/collaborate/channel-header-purpose.mdx +++ b/docs/main/end-user-guide/collaborate/channel-header-purpose.mdx @@ -1,6 +1,7 @@ --- title: "Communicate a channel's focus and scope" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -28,7 +29,7 @@ Looking to rename an existing channel? See the [rename channels](/end-user-guide You're prompted to provide an optional channel purpose description when [creating a channel](/end-user-guide/collaborate/create-channels) or [renaming a channel](/end-user-guide/collaborate/rename-channels). A channel purpose can be up to 250 characters in length, and is often used to help users decide whether to join that channel. -A channel's purpose is visible in the right pane when you select the **View Info** Use the Channel Info icon to access additional channel management options. icon for the channel. Any member of a channel can change a channel's purpose description, unless the system admin has [disabled the ability to do so](/administration-guide/onboard/advanced-permissions). +A channel's purpose is visible in the right pane when you select the **View Info** Use the Channel Info icon to access additional channel management options. icon for the channel. Any member of a channel can change a channel's purpose description, unless the system admin has [disabled the ability to do so](/administration-guide/onboard/advanced-permissions). @@ -46,7 +47,7 @@ A channel's purpose is visible in the right pane when you select the **View Info ![Select a channel that you want to edit.](/images/mobile-select-a-channel.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) @@ -87,7 +88,7 @@ A channel header can be up to 1024 characters in length, include Markdown format ![Select a channel that you want to edit.](/images/mobile-select-a-channel.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/channel-types.mdx b/docs/main/end-user-guide/collaborate/channel-types.mdx index a9f076b0d602..f0015ed96aaf 100644 --- a/docs/main/end-user-guide/collaborate/channel-types.mdx +++ b/docs/main/end-user-guide/collaborate/channel-types.mdx @@ -1,6 +1,8 @@ --- title: "Channel types" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Channels are used to organize conversations across different topics. The channels you're a member of display in the left pane. Learn how to create channels by visiting the [create channels](/end-user-guide/collaborate/create-channels) documentation. @@ -21,13 +23,13 @@ Enterprise customers can additionally configure [read-only](/administration-guid ## Public channels -Public channels are open to everyone on a team and are identified with a **Globe** Public channels are identified with a Globe icon. icon. New team members are automatically added to the **Town Square** channel. +Public channels are open to everyone on a team and are identified with a **Globe** Public channels are identified with a Globe icon. icon. New team members are automatically added to the **Town Square** channel. See the [Join and leave channels](/end-user-guide/collaborate/join-leave-channels) documentation for details on discovering, joining, and leaving other channels. ## Private channels -Private channels are channels for sensitive topics and are only visible to selected team members. Private channels are identified with a **Lock** Private channels are identified with a Lock icon. icon. Channel members can choose to leave private channels at any time. +Private channels are channels for sensitive topics and are only visible to selected team members. Private channels are identified with a **Lock** Private channels are identified with a Lock icon. icon. Channel members can choose to leave private channels at any time. @@ -47,7 +49,7 @@ Direct messages update the numbered badge count and trigger a notification unles - From Mattermost v10, when sending a direct message, Mattermost warns you that the recipient's availability is set to [Do Not Disturb](/end-user-guide/preferences/set-your-status-availability#set-your-availability), and when the recipient's local time is outside of regular business hours (between 10PM and 6AM). This warning displays directly above the message text field. -- When a Mattermost user is deactivated in the system, your [direct message channel](/end-user-guide/collaborate/channel-types#direct-message-channels) with that user are [archived](#archived-channels) and marked as read-only. An **Archived** icon Archived channels are identified with a File Box icon. displays next to archived channels. +- When a Mattermost user is deactivated in the system, your [direct message channel](/end-user-guide/collaborate/channel-types#direct-message-channels) with that user are [archived](#archived-channels) and marked as read-only. An **Archived** icon Archived channels are identified with a File Box icon. displays next to archived channels. @@ -67,6 +69,6 @@ Want to have a group conversation with more than 7 people? [Create a private cha ## Archived channels -Archived channels are deactivated public, private, direct message, or group message channels that are no longer used. Archived channels are identified with a **File Box** Archived channels are identified with a File Box icon. icon. From Mattermost v11.5, archived private channels are identified with a distinct **Archive Lock** icon to visually differentiate them from archived public channels. +Archived channels are deactivated public, private, direct message, or group message channels that are no longer used. Archived channels are identified with a **File Box** Archived channels are identified with a File Box icon. icon. From Mattermost v11.5, archived private channels are identified with a distinct **Archive Lock** icon to visually differentiate them from archived public channels. [Archiving a channel](/end-user-guide/collaborate/archive-unarchive-channels#archive-a-channel) marks it read-only to prevent new messages from being sent and preserve channel history. You can continue to access archived channels, unless your system admin has [disabled](/administration-guide/configure/site-configuration-settings#allow-users-to-view-archived-channels) your ability to do so. diff --git a/docs/main/end-user-guide/collaborate/convert-group-messages.mdx b/docs/main/end-user-guide/collaborate/convert-group-messages.mdx index 4f4c2a473cee..8d780931465c 100644 --- a/docs/main/end-user-guide/collaborate/convert-group-messages.mdx +++ b/docs/main/end-user-guide/collaborate/convert-group-messages.mdx @@ -1,6 +1,7 @@ --- title: "Convert group messages to private channels" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -31,7 +32,7 @@ From Mattermost v9.1, you can change the members of your group conversation by c ![Select a group that you want to convert.](/images/mobile-select-a-group-message.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the group.](/images/mobile-select-more-options-for-a-group.jpg) diff --git a/docs/main/end-user-guide/collaborate/convert-public-channels.mdx b/docs/main/end-user-guide/collaborate/convert-public-channels.mdx index c319b40e5562..7ccdfd258deb 100644 --- a/docs/main/end-user-guide/collaborate/convert-public-channels.mdx +++ b/docs/main/end-user-guide/collaborate/convert-public-channels.mdx @@ -1,6 +1,7 @@ --- title: "Convert public channels to private channels" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -30,7 +31,7 @@ To convert a public channel to a private channel: ![Select a channel that you want to rename.](/images/mobile-select-a-channel.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/create-channels.mdx b/docs/main/end-user-guide/collaborate/create-channels.mdx index 3abe03e5bc8e..4524a5bed714 100644 --- a/docs/main/end-user-guide/collaborate/create-channels.mdx +++ b/docs/main/end-user-guide/collaborate/create-channels.mdx @@ -1,6 +1,7 @@ --- title: "Create channels" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -13,9 +14,9 @@ Anyone can create public channels, private channels, direct messages, and group ## Create a public or private channel -1. Select the **Add channels** button in the channel sidebar, then select **Create New Channel**. Alternatively, you can select The Plus icon provides access to channel and direct message functionality. at the top of the channel sidebar, then select **Create New Channel**. +1. Select the **Add channels** button in the channel sidebar, then select **Create New Channel**. Alternatively, you can select The Plus icon provides access to channel and direct message functionality. at the top of the channel sidebar, then select **Create New Channel**. -> You can create a channel using the Add channels button +> You can create a channel using the Add channels button 2. Enter a channel name. 3. Choose whether this is a public or private channel. See the [channel types](/end-user-guide/collaborate/channel-types) documentation to learn more about public and private channels. @@ -24,7 +25,7 @@ Anyone can create public channels, private channels, direct messages, and group ## Start a direct or group message -1. Select the The Plus icon provides access to channel and direct message functionality. next to the **Direct Messages** category in the channel sidebar. +1. Select the The Plus icon provides access to channel and direct message functionality. next to the **Direct Messages** category in the channel sidebar. > ![Access recent direct messages and group messages.](/images/write-dm.png) @@ -32,7 +33,7 @@ Anyone can create public channels, private channels, direct messages, and group -- Alternatively, select The Plus icon provides access to channel and direct message functionality. at the top of the channel sidebar, then select **Open a Direct Message**. In the **Direct Messages** list, you'll see your most recent conversations. +- Alternatively, select The Plus icon provides access to channel and direct message functionality. at the top of the channel sidebar, then select **Open a Direct Message**. In the **Direct Messages** list, you'll see your most recent conversations. - To add more people to the conversation select the channel name, then select **Add Members**. Adding members to a group message creates a new channel and starts a new conversation. - You can't remove members of a group message; however, you can start a new group channel and conversation with different members. - If you want to add more than 7 users to a group message, create a private channel instead. @@ -44,7 +45,7 @@ Anyone can create public channels, private channels, direct messages, and group ## Create a public or private channel -Tap The Plus icon provides access to channel and direct message functionality. in the top right corner of the app, then select **Create New Channel**. Channels are created as public by default. If you want to create a private channel, tap the **Make Private** option. +Tap The Plus icon provides access to channel and direct message functionality. in the top right corner of the app, then select **Create New Channel**. Channels are created as public by default. If you want to create a private channel, tap the **Make Private** option. > ![You can create a new channel by tapping the plus in the top right corner.](/images/create-channel-or-open-direct-message-on-mobile.jpg) > @@ -52,7 +53,7 @@ Tap The Plus icon provides access to chan
 
 ## Start a direct or group message
 
-Tap <img src= in the top right corner of the app, then select **Open a Direct Message**. You can select one person for a direct message or up to seven people for a group message. If your organization uses [connected workspaces](/administration-guide/onboard/connected-workspaces), remote users from shared channels are also available to select. Tap **Start** to start the conversation. +Tap The Plus icon provides access to channel and direct message functionality. in the top right corner of the app, then select **Open a Direct Message**. You can select one person for a direct message or up to seven people for a group message. If your organization uses [connected workspaces](/administration-guide/onboard/connected-workspaces), remote users from shared channels are also available to select. Tap **Start** to start the conversation. > ![You can start a direct or group message by tapping the plus in the top right corner.](/images/create-channel-or-open-direct-message-on-mobile.jpg) > diff --git a/docs/main/end-user-guide/collaborate/favorite-channels.mdx b/docs/main/end-user-guide/collaborate/favorite-channels.mdx index 1e657de166ec..509cb1d73d5f 100644 --- a/docs/main/end-user-guide/collaborate/favorite-channels.mdx +++ b/docs/main/end-user-guide/collaborate/favorite-channels.mdx @@ -1,6 +1,7 @@ --- title: "Mark channels as favorites" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -18,13 +19,13 @@ To mark a channel as a **Favorite**: 1. Open a channel. 2. Select on the star icon next to the channel name. -At the top of the page, select the Use the Star icon to mark a channel as a favorite. icon next to the channel name. +At the top of the page, select the Use the Star icon to mark a channel as a favorite. icon next to the channel name. ![Mark a channel as a favorite.](/images/favorite-channel-desktop.png) -To remove a channel from your **Favorites** list, select the Use the Star icon to mark a channel as a favorite. icon again. +To remove a channel from your **Favorites** list, select the Use the Star icon to mark a channel as a favorite. icon again. -Alternatively to mark channels as favorites, select the channel name, select the **View Info** Use the Channel Info icon to access additional channel management options. icon, then select **Favorite** in the right pane. Select **Favorited** to remove the channel from your list of favorites. +Alternatively to mark channels as favorites, select the channel name, select the **View Info** Use the Channel Info icon to access additional channel management options. icon, then select **Favorite** in the right pane. Select **Favorited** to remove the channel from your list of favorites. @@ -33,7 +34,7 @@ Alternatively to mark channels as favorites, select the channel name, select the ![Select a channel that you want to mark as favorite.](/images/mobile-select-a-channel.jpg) -2. Tap the Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/flag-messages.mdx b/docs/main/end-user-guide/collaborate/flag-messages.mdx index c73e3b97f86e..6b608a07eea7 100644 --- a/docs/main/end-user-guide/collaborate/flag-messages.mdx +++ b/docs/main/end-user-guide/collaborate/flag-messages.mdx @@ -1,6 +1,8 @@ --- title: "Quarantine for Review" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Every Mattermost user contributes to data security. From Mattermost v11.1, you can help keep your workspace secure and prevent data spillage by quarantining messages that may contain sensitive or restricted information for review by authorized moderators. Your quick actions can prevent accidental leaks before they spread, and build a culture of shared responsibility for secure communication. @@ -9,7 +11,7 @@ Every Mattermost user contributes to data security. From Mattermost v11.1, you c For example, you notice a public post in a channel that contains internal project details that not all users should have access to. You can quarantine that message as **Sensitive data** to alert designated content reviewers right away. -1. Hover over the message, select the **More actions** Use the More icon to access additional message options. icon, and then select **Quarantine for Review**. +1. Hover over the message, select the **More actions** Use the More icon to access additional message options. icon, and then select **Quarantine for Review**. 2. Select a **reason** for quarantining the message, and add a comment explaining why you're quarantining it, when required. 3. Select **Submit**. diff --git a/docs/main/end-user-guide/collaborate/format-messages.mdx b/docs/main/end-user-guide/collaborate/format-messages.mdx index e780c6998000..f7b1bfab194f 100644 --- a/docs/main/end-user-guide/collaborate/format-messages.mdx +++ b/docs/main/end-user-guide/collaborate/format-messages.mdx @@ -1,6 +1,7 @@ --- title: "Format messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -51,19 +52,19 @@ The message formatting toolbar offers the following formatting options: numbered-icon | bullets-icon | quotes-icon | code-icon | -Add emojis or GIFs | emoji-icon | +Add emojis or GIFs | emoji-icon | -Set message priority | message-priority-icon +Set message priority | message-priority-icon -Review how your message formatting will look when the message is sent by selecting the **Show/Hide Preview** Review your message text formatting using the Show/Hide preview icon in the message formatting toolbar. icon. Return to your draft message by selecting the icon again. +Review how your message formatting will look when the message is sent by selecting the **Show/Hide Preview** Review your message text formatting using the Show/Hide preview icon in the message formatting toolbar. icon. Return to your draft message by selecting the icon again. -- Hide the formatting options by selecting the **Show/Hide Formatting** Hide formatting options in the message formatting toolbar using the Show/Hide Formatting icon. icon. Select the icon again to show the formatting options. +- Hide the formatting options by selecting the **Show/Hide Formatting** Hide formatting options in the message formatting toolbar using the Show/Hide Formatting icon. icon. Select the icon again to show the formatting options. - You can control whether post formatting is rendered within the message formatting editor. When disabled, raw text is shown. See the [Channels customization](/end-user-guide/preferences/manage-advanced-options) documentation for details. @@ -86,8 +87,8 @@ Common formatting keyboard shortcuts are supported. Bold text by pressing C - `*italics*` (or `_italics_`) renders as *italics* - `**bold**` renders as **bold** -- `***bold-italic***` renders as Bold Italics -- `~~strikethrough~~` renders as Strike Through +- `***bold-italic***` renders as Bold Italics +- `~~strikethrough~~` renders as Strike Through ### Links @@ -562,7 +563,7 @@ Example: An in-line image that's 50 pixels wide and 76 pixels high. Renders as: -> Mattermost +> Mattermost #### In-line image displayed with fixed width @@ -574,7 +575,7 @@ Example: An in-line image that's 50 pixels wide where the system adjusts the hei Renders as: -> Mattermost +> Mattermost ### Horizontal lines diff --git a/docs/main/end-user-guide/collaborate/forward-messages.mdx b/docs/main/end-user-guide/collaborate/forward-messages.mdx index a7ce14f379b4..8f59b4293e07 100644 --- a/docs/main/end-user-guide/collaborate/forward-messages.mdx +++ b/docs/main/end-user-guide/collaborate/forward-messages.mdx @@ -1,6 +1,8 @@ --- title: "Forward messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + From Mattermost v7.2, using a web browser or the desktop app, you can forward messages in public channels to other public channels. From Mattermost v7.5, you can also forward messages from bots and webhooks. @@ -13,7 +15,7 @@ Private channels, direct messages, and group messages intended for specific peop To forward a message: -1. Select the **More** Use the More icon to access additional message options. icon next to a message, then select **Forward**. +1. Select the **More** Use the More icon to access additional message options. icon next to a message, then select **Forward**. > ![You can forward messages to others using the More option.](/images/forward-message.png) diff --git a/docs/main/end-user-guide/collaborate/invite-people.mdx b/docs/main/end-user-guide/collaborate/invite-people.mdx index 429d4e7bc169..c5f567edcff5 100644 --- a/docs/main/end-user-guide/collaborate/invite-people.mdx +++ b/docs/main/end-user-guide/collaborate/invite-people.mdx @@ -1,6 +1,7 @@ --- title: "Invite people to your workspace" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -28,7 +29,7 @@ Anyone can invite people to Mattermost teams and channels, unless your system ad -1. Tap the The Plus icon provides access to channel and direct message functionality. icon in the top right corner of the screen and tap **Invite people to the team**. +1. Tap the The Plus icon provides access to channel and direct message functionality. icon in the top right corner of the screen and tap **Invite people to the team**. > ![When you select +, you can access more options from the popup window.](/images/mobile-invite-people-to-the-team.png) diff --git a/docs/main/end-user-guide/collaborate/join-leave-channels.mdx b/docs/main/end-user-guide/collaborate/join-leave-channels.mdx index a1b2c7bddfae..d78729540bcd 100644 --- a/docs/main/end-user-guide/collaborate/join-leave-channels.mdx +++ b/docs/main/end-user-guide/collaborate/join-leave-channels.mdx @@ -1,6 +1,7 @@ --- title: "Join and leave channels" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -10,8 +11,8 @@ import TabItem from '@theme/TabItem'; Channels are either **public** or **private**. -- **Public** channels are identified with a **Globe** Public channels are identified with a Globe icon. icon. Anyone on the team can join a public channel. -- **Private** channels are typically used for sensitive topics, and are identified with a **Lock** Private channels are identified with a Lock icon. icon. You must be invited to private channels by another channel member. +- **Public** channels are identified with a **Globe** Public channels are identified with a Globe icon. icon. Anyone on the team can join a public channel. +- **Private** channels are typically used for sensitive topics, and are identified with a **Lock** Private channels are identified with a Lock icon. icon. You must be invited to private channels by another channel member. @@ -26,9 +27,9 @@ To join a public channel: 1. Select the **Add channels** button in the channel sidebar, then select **Browse Channels**. -> You can browse channels using the Add channels button +> You can browse channels using the Add channels button > -> Alternatively, you can select The Plus icon provides access to channel and direct message functionality. at the top of the channel sidebar, then select **Browse Channels**. +> Alternatively, you can select The Plus icon provides access to channel and direct message functionality. at the top of the channel sidebar, then select **Browse Channels**. > > ![You can browse available channels to join using the + option at the top of the channel sidebar.](/images/browse-channels.png) @@ -39,7 +40,7 @@ To join a public channel: -1. Tap The Plus icon provides access to channel and direct message functionality. located in the top right corner the app. +1. Tap The Plus icon provides access to channel and direct message functionality. located in the top right corner the app. ![Tap the plus icon to view additional options.](/images/mobile-select-a-channel.jpg) @@ -91,7 +92,7 @@ Select the channel name at the top of the center pane to access the drop-down me ![Select the channel that you want to leave.](/images/mobile-select-a-channel.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the channel you want to leave.](/images/mobile-select-more-options-for-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/make-calls.mdx b/docs/main/end-user-guide/collaborate/make-calls.mdx index c88428dd381a..aa43db402fdd 100644 --- a/docs/main/end-user-guide/collaborate/make-calls.mdx +++ b/docs/main/end-user-guide/collaborate/make-calls.mdx @@ -1,6 +1,7 @@ --- title: "Make calls" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -69,7 +70,7 @@ On iOS, audio will automatically come through a connected device. You can overri From Mattermost v9.9, and Mattermost mobile v2.17, call host controls are available and include the ability to [transfer host duties](#transfer-host-duties), [remove call participants](#remove-call-participants), [stop a screen share](#stop-a-screen-share), [mute or unmute participants](#mute-participants), [lower raised hands](#lower-raised-hands), and [end the call for everyone](#end-the-call-for-everyone). -Host controls are available to call hosts and admins in both the call widget by selecting the **More** Use the More icon to access additional message options. icon next to a participant's name, and in the expanded the call window as hosts hover over a call participant in the list. +Host controls are available to call hosts and admins in both the call widget by selecting the **More** Use the More icon to access additional message options. icon next to a participant's name, and in the expanded the call window as hosts hover over a call participant in the list. ### Transfer host duties @@ -160,7 +161,7 @@ A chat thread is created automatically for every new call. -Open the chat thread in the widget by selecting the **Gear** Use the Settings icon to customize your Mattermost user experience. icon, then select **Show chat thread**. Alternatively, expand the call window using the arrows in the top-right of the call widget. From there, select the chat icon to access the chat thread. +Open the chat thread in the widget by selecting the **Gear** Use the Settings icon to customize your Mattermost user experience. icon, then select **Show chat thread**. Alternatively, expand the call window using the arrows in the top-right of the call widget. From there, select the chat icon to access the chat thread. @@ -218,7 +219,7 @@ Alternatively, expand the call window using the arrows in the top-right of the a -From Mattermost v9.7, and Mattermost mobile app v.2.16, all call participants can display real-time text captions by selecting the **More** Use the More icon to access additional message options. icon and **Show live captions** when the call is being recorded, and when [live captions are enabled](/administration-guide/configure/plugins-configuration-settings#enable-live-captions). Live captions can be helpful in cases where noise is preventing you from hearing the audio of participants clearly. +From Mattermost v9.7, and Mattermost mobile app v.2.16, all call participants can display real-time text captions by selecting the **More** Use the More icon to access additional message options. icon and **Show live captions** when the call is being recorded, and when [live captions are enabled](/administration-guide/configure/plugins-configuration-settings#enable-live-captions). Live captions can be helpful in cases where noise is preventing you from hearing the audio of participants clearly. By default, live captions display in English. Your Mattermost system admin can [specify a different language for live captions](/administration-guide/configure/plugins-configuration-settings#live-captions-language) in the System Console. @@ -274,7 +275,7 @@ The only external service used is Mattermost official STUN server (`stun.global. ### My audio doesn't work when I join a call -If you can hear the other participants in the call but they can't hear you, select the Gear icon Use the Settings icon to customize your Mattermost user experience. next to the call end button in the widget. From there, you can check and change your audio output and microphone settings. Select Use the Settings icon to customize your Mattermost user experience. again to close the menu. Alternatively, you can [manage your audio and microphone preferences](/end-user-guide/preferences/manage-your-plugin-preferences) in **Settings**. +If you can hear the other participants in the call but they can't hear you, select the Gear icon Use the Settings icon to customize your Mattermost user experience. next to the call end button in the widget. From there, you can check and change your audio output and microphone settings. Select Use the Settings icon to customize your Mattermost user experience. again to close the menu. Alternatively, you can [manage your audio and microphone preferences](/end-user-guide/preferences/manage-your-plugin-preferences) in **Settings**. ### My call is disconnected after a few seconds diff --git a/docs/main/end-user-guide/collaborate/manage-channel-bookmarks.mdx b/docs/main/end-user-guide/collaborate/manage-channel-bookmarks.mdx index 5ae3594336cf..218e37e20955 100644 --- a/docs/main/end-user-guide/collaborate/manage-channel-bookmarks.mdx +++ b/docs/main/end-user-guide/collaborate/manage-channel-bookmarks.mdx @@ -1,6 +1,7 @@ --- title: "Manage channel bookmarks" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -29,7 +30,7 @@ From Mattermost v10.11, bookmarks containing `mattermost://` links open directly The bookmarks bar is hidden when a channel has no bookmarks. -1. In a channel, select the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon. +1. In a channel, select the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon. ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) @@ -41,7 +42,7 @@ The bookmarks bar is hidden when a channel has no bookmarks. ![Tap on Add a bookmark to add the first bookmark.](/images/mobile-add-first-channel-bookmark.jpg) -For subsequent bookmarks, select the **Plus** The Plus icon provides access to channel and direct message functionality. icon in the bookmarks bar. +For subsequent bookmarks, select the **Plus** The Plus icon provides access to channel and direct message functionality. icon in the bookmarks bar. ![Tap on the Plus icon to add more bookmarks to the channel.](/images/mobile-add-subsequent-channel-bookmarks.jpg) @@ -80,7 +81,7 @@ You can make changes to the bookmark link or file, the bookmark title, or the op -Select the **More** Use the More icon to access additional message options. icon next to a bookmark and select **Edit**. +Select the **More** Use the More icon to access additional message options. icon next to a bookmark and select **Edit**. @@ -104,7 +105,7 @@ You can copy bookmark links when your system admin has [enabled your ability to -Select the **More** Use the More icon to access additional message options. icon next to a bookmark and select **Copy link**. +Select the **More** Use the More icon to access additional message options. icon next to a bookmark and select **Copy link**. @@ -124,7 +125,7 @@ Deleting a channel bookmark deletes it for all channel members. -Select the **More** Use the More icon to access additional message options. icon next to a bookmark and select **Delete**. +Select the **More** Use the More icon to access additional message options. icon next to a bookmark and select **Delete**. diff --git a/docs/main/end-user-guide/collaborate/manage-channel-members.mdx b/docs/main/end-user-guide/collaborate/manage-channel-members.mdx index e53b38ac2609..a3e67d4d27ed 100644 --- a/docs/main/end-user-guide/collaborate/manage-channel-members.mdx +++ b/docs/main/end-user-guide/collaborate/manage-channel-members.mdx @@ -1,6 +1,7 @@ --- title: "Manage channel members" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -35,7 +36,7 @@ To add members to a channel: - From Mattermost v7.8, people you've messaged directly are listed first, followed by all users in alphabetical order. - - Alternatively, to add members to a channel, select the channel name, select the **View Info** Use the Channel Info icon to access additional channel management options. icon, select **Members** in the right pane, and then select **Add**. If the channel has access control restrictions, you'll see details about required attributes at the top of the right pane. + - Alternatively, to add members to a channel, select the channel name, select the **View Info** Use the Channel Info icon to access additional channel management options. icon, select **Members** in the right pane, and then select **Add**. If the channel has access control restrictions, you'll see details about required attributes at the top of the right pane. @@ -76,7 +77,7 @@ Using a web browser or the desktop app, you can also add users to channels withi 1. Select a user's profile image. -2. Tap on Account plus outline icon used to add user to a channel. icon. +2. Tap on Account plus outline icon used to add user to a channel. icon. ![Use options on a user's profile pop-over to add a member to a channel.](/images/add-member-pop.jpg) @@ -96,7 +97,7 @@ Select the channel name at the top of the center pane to access the drop-down me -1. In a channel, tap Use the More icon in the top left corner to access Mattermost desktop apps customization settings. in the top right corner. +1. In a channel, tap Use the More icon in the top left corner to access Mattermost desktop apps customization settings. in the top right corner. ![Tap on More options to access available options for the channel you want to leave.](/images/mobile-select-more-options-for-a-channel.jpg) @@ -122,14 +123,14 @@ Any member of a channel can remove other members from a channel. You have two ways to remove members from a channel: - Select the channel name at the top of the center pane to access the drop-down menu, then select **Manage Members**. Select the member's [user role](/end-user-guide/collaborate/learn-about-roles), then select **Remove from Channel**. -- Select the channel's **View Info** Use the Channel Info icon to access additional channel management options. icon, and select **Members** in the right pane. From there, select **Manage**, select a user's role, then select **Remove from Channel**. +- Select the channel's **View Info** Use the Channel Info icon to access additional channel management options. icon, and select **Members** in the right pane. From there, select **Manage**, select a user's role, then select **Remove from Channel**. ![Use options available through the channel name to remove a member from a channel.](/images/remove-member-from-channel.png) -1. In a channel, tap Use the More icon in the top left corner to access Mattermost desktop apps customization settings. in the top right corner. +1. In a channel, tap Use the More icon in the top left corner to access Mattermost desktop apps customization settings. in the top right corner. ![Tap on More options to access available options for the channel you want to leave.](/images/mobile-select-more-options-for-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/mark-channels-unread.mdx b/docs/main/end-user-guide/collaborate/mark-channels-unread.mdx index 2c7c101af6e4..44c2c7031dd4 100644 --- a/docs/main/end-user-guide/collaborate/mark-channels-unread.mdx +++ b/docs/main/end-user-guide/collaborate/mark-channels-unread.mdx @@ -1,9 +1,11 @@ --- title: "Mark messages as unread" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -If you read messages in a channel, but don't have time to address them right away, you can mark that channel as unread. Hover over the channel name in the channel sidebar, select the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. option, then select **Mark as Unread**. +If you read messages in a channel, but don't have time to address them right away, you can mark that channel as unread. Hover over the channel name in the channel sidebar, select the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. option, then select **Mark as Unread**. ![When you hover over channels in the channel sidebar, you can access more message options from the More icon.](/images/channel-more.png) diff --git a/docs/main/end-user-guide/collaborate/mark-messages-unread.mdx b/docs/main/end-user-guide/collaborate/mark-messages-unread.mdx index b5002f41623c..e14a800158b5 100644 --- a/docs/main/end-user-guide/collaborate/mark-messages-unread.mdx +++ b/docs/main/end-user-guide/collaborate/mark-messages-unread.mdx @@ -1,6 +1,7 @@ --- title: "Mark messages as unread" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -11,7 +12,7 @@ If you read a message, but don't have time to address it right away, you can mar -Hover over the message, select the **More** Use the More icon to access additional message options. option, then select **Mark as Unread**. +Hover over the message, select the **More** Use the More icon to access additional message options. option, then select **Mark as Unread**. ![When you hover over messages, you can access more message options from the More icon.](/images/message-more.png) diff --git a/docs/main/end-user-guide/collaborate/message-priority.mdx b/docs/main/end-user-guide/collaborate/message-priority.mdx index 3b903ec8cc3a..b9127f334e22 100644 --- a/docs/main/end-user-guide/collaborate/message-priority.mdx +++ b/docs/main/end-user-guide/collaborate/message-priority.mdx @@ -1,15 +1,17 @@ --- title: "Set message priority" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + From Mattermost v7.7 and mobile v2.4, you can add a message priority label to root messages to make important messages requiring timely action or response more visible and less likely to be overlooked. -Ensure important and urgent messages stand out clearly by adding priority labels to root messages. +Ensure important and urgent messages stand out clearly by adding priority labels to root messages. To set the priority of a new root message: -1. Select the **Message Priority** Mark a message as important or urgent using the Priority Message icon. icon in the message formatting toolbar. Select from Standard, Important, or Urgent. +1. Select the **Message Priority** Mark a message as important or urgent using the Priority Message icon. icon in the message formatting toolbar. Select from Standard, Important, or Urgent. 2. Select the priority for the message. Messages have a standard priority by default. 3. Select **Apply** @@ -22,7 +24,7 @@ From Mattermost v8.0, messages marked as urgent with a priority label and contai To enable persistent notifications for a message: 1. Compose a root message with at least one @mention. -2. Select the **Message Priority** Mark a message as important or urgent using the Priority Message icon. icon in the message formatting toolbar. +2. Select the **Message Priority** Mark a message as important or urgent using the Priority Message icon. icon in the message formatting toolbar. 3. Select **Urgent**. 4. Select **Send persistent notifications**. 5. Select **Apply**. @@ -48,11 +50,11 @@ To stop receiving persistent notifications, you can reply to the thread, select You can additionally request that recipients actively acknowledge the message to track that messages have been seen and actioned. By default, marking a message as Urgent priority automatically requests an acknowledgement. -When you request acknowlegement of a message, an **Acknowledge** Select the Acknowledge button to indicate that you've read it and taken necessary action. button is added below the sent message. You can mark message as acknowledged by selecting the button, and you can hover over the **Acknowledged** Select the Acknowledge button to indicate that you've read it and taken necessary action. icon to review who has acknowledged the message. +When you request acknowledgement of a message, an **Acknowledge** Select the Acknowledge button to indicate that you've read it and taken necessary action. button is added below the sent message. You can mark the message as acknowledged by selecting the button, and you can hover over the **Acknowledged** Select the Acknowledge button to indicate that you've read it and taken necessary action. icon to review who has acknowledged the message. - When you have push notifications enabled on mobile, you'll be notified every five minutes until you acknowledge or reply to the message. -- After acknowledging a message, you have up to five minutes to change your mind. Select the **Acknowledged** Select the Acknowledge button to indicate that you've read it and taken necessary action. button again to remove your name from the list of acknowledged users. +- After acknowledging a message, you have up to five minutes to change your mind. Select the **Acknowledged** Select the Acknowledge button to indicate that you've read it and taken necessary action. button again to remove your name from the list of acknowledged users. diff --git a/docs/main/end-user-guide/collaborate/message-reminders.mdx b/docs/main/end-user-guide/collaborate/message-reminders.mdx index 3358c42b9a2a..7a8d20ff9c8d 100644 --- a/docs/main/end-user-guide/collaborate/message-reminders.mdx +++ b/docs/main/end-user-guide/collaborate/message-reminders.mdx @@ -1,11 +1,13 @@ --- title: "Set a reminder" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + From Mattermost v7.10, using Mattermost in a web browser or the desktop app, you can set 1 timed reminder on a post made in a channel, direct message, and group message. The ability to set up recurring reminders isn't supported. -Hover over the message you want to remember, select the **More** Use the More icon to access additional message options. option, then select **Remind**. Select a time period or enter a custom date and time. You'll receive a direct message at the time you've chosen, with the body of the message you wanted to be reminded about. +Hover over the message you want to remember, select the **More** Use the More icon to access additional message options. option, then select **Remind**. Select a time period or enter a custom date and time. You'll receive a direct message at the time you've chosen, with the body of the message you wanted to be reminded about. Once you've been reminded about a message, you won't receive another reminder unless you set one. diff --git a/docs/main/end-user-guide/collaborate/organize-conversations.mdx b/docs/main/end-user-guide/collaborate/organize-conversations.mdx index beaa475f8cff..f8701e21bab2 100644 --- a/docs/main/end-user-guide/collaborate/organize-conversations.mdx +++ b/docs/main/end-user-guide/collaborate/organize-conversations.mdx @@ -1,6 +1,7 @@ --- title: "Organize conversations using threaded discussions" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -23,7 +24,7 @@ Threaded discussions offers an enhanced experience for users communicating in th [Replies to messages](/end-user-guide/collaborate/reply-to-messages) are collapsed under the first message of a thread. Open a thread by selecting the message or reply count. -From Mattermost v11.2, when using Mattermost in a web browser, you can open threads in separate browser windows by selecting the **New Window** Open thread in a new browser window icon. icon in the thread header. This allows you to view and participate in multiple threads simultaneously without losing context. +From Mattermost v11.2, when using Mattermost in a web browser, you can open threads in separate browser windows by selecting the **New Window** Open thread in a new browser window icon. icon in the thread header. This allows you to view and participate in multiple threads simultaneously without losing context. ## Follow threads and messages @@ -34,13 +35,14 @@ You'll automatically follow every thread you participate or are mentioned in. Yo -Toggle the thread’s **Follow** option, or select **Follow thread** from the **More Actions** Use the More icon to access additional message options. icon. +Toggle the thread’s **Follow** option, or select **Follow thread** from the **More Actions** Use the More icon to access additional message options. icon. ![Unfollow threads from the More Actions icon.](/images/crt-following-thread.jpg) -\- Follow messages with no replies from the **More Actions** Use the More icon to access additional message options. icon to be notified if someone replies to the message later based on your notification preferences. - You can also use keyboard arrow keys to navigate threads in the **Threads** view. +- Follow messages with no replies from the **More Actions** Use the More icon to access additional message options. icon to be notified if someone replies to the message later based on your notification preferences. +- You can also use keyboard arrow keys to navigate threads in the **Threads** view. @@ -57,7 +59,7 @@ Alternatively, you can also tap on the **Follow** indicator below a message thre -Follow messages with no replies from the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon to be notified if someone replies to the message later based on your notification preferences. +Follow messages with no replies from the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon to be notified if someone replies to the message later based on your notification preferences. ![Tap and hold on a message with no replies to select Follow Message.](/images/mobile-follow-a-message-with-no-replies.gif) @@ -74,7 +76,7 @@ If you’re no longer interested in a or message thread, unfollow it to stop rec -Toggle the thread’s **Following** indicator, or select **Unfollow thread** from the **More Actions** Use the More icon to access additional message options. icon to unfollow it. +Toggle the thread’s **Following** indicator, or select **Unfollow thread** from the **More Actions** Use the More icon to access additional message options. icon to unfollow it. ![Unfollow threads from the More Actions icon.](/images/desktop-unfollow-message-thread.jpg) diff --git a/docs/main/end-user-guide/collaborate/organize-using-custom-user-groups.mdx b/docs/main/end-user-guide/collaborate/organize-using-custom-user-groups.mdx index 09513fc74b0f..12c76ff8dc5a 100644 --- a/docs/main/end-user-guide/collaborate/organize-using-custom-user-groups.mdx +++ b/docs/main/end-user-guide/collaborate/organize-using-custom-user-groups.mdx @@ -1,6 +1,8 @@ --- title: "Manage custom groups" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Custom groups reduce noise and improve focus by notifying the right people in a channel at the right time, while maintaining transparency for all members in that channel. Custom user groups let you notify up to 256 users at a time rather than notifying users individually. @@ -21,7 +23,7 @@ Once a custom user group has been created, you can mention that group the same w ## Create a custom group -1. Using Mattermost in a web browser or the desktop app, select The Plus icon provides access to channel and direct message functionality. at the top of the channel sidebar, then select **Create New User Group**. +1. Using Mattermost in a web browser or the desktop app, select The Plus icon provides access to channel and direct message functionality. at the top of the channel sidebar, then select **Create New User Group**. 2. Specify a name and mention. The mention is the handle you use to @mention a notification to the group. Group names must be unique across the Mattermost [workspace](/end-user-guide/end-user-guide-index). If a name is in use as a channel name, display name, or another custom group's name, it won't be available. 3. Search for and select members to add to the custom user group, then select **Create Group**. @@ -49,11 +51,11 @@ You can filter the list of groups to display only groups you're a member of, or ### Change name or mention -1. From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon to the right of any custom group, select **View Group**. +1. From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon to the right of any custom group, select **View Group**. > ![Access tools to manage your custom user groups.](/images/manage-user-groups.png) -2. From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, select **Edit Details**. +2. From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, select **Edit Details**. > ![Edit details of a custom user group.](/images/edit-custom-group.png) @@ -70,16 +72,16 @@ Hover over a member, then select the **Trash** icon to remove them from the grou ### Join a group -While viewing the members of a group, from the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, select **Join Group**. +While viewing the members of a group, from the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, select **Join Group**. ### Leave a group -From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, select **Leave Group**. +From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, select **Leave Group**. ### Archive group -From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, select **Archive Group**. When you archive a custom user group, you won’t be able to mention the group’s handle or view its members. However, the group isn't deleted from the list, and all members remain in the group unless they're manually removed. +From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, select **Archive Group**. When you archive a custom user group, you won’t be able to mention the group’s handle or view its members. However, the group isn't deleted from the list, and all members remain in the group unless they're manually removed. ### Unarchive group -From Mattermost v9.1, you can restore an archived group. From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, filter the list of groups to show only archived groups. Select an archived group view details about the group, if preferreed, and then select **Restore Group**. +From Mattermost v9.1, you can restore an archived group. From the **More Actions** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon, filter the list of groups to show only archived groups. Select an archived group to view details about the group, if preferred, and then select **Restore Group**. diff --git a/docs/main/end-user-guide/collaborate/react-with-emojis-gifs.mdx b/docs/main/end-user-guide/collaborate/react-with-emojis-gifs.mdx index 44c3241b9a4d..d5cae49480f0 100644 --- a/docs/main/end-user-guide/collaborate/react-with-emojis-gifs.mdx +++ b/docs/main/end-user-guide/collaborate/react-with-emojis-gifs.mdx @@ -1,6 +1,7 @@ --- title: "React with emojis and GIFs" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -41,7 +42,7 @@ Can't find the perfect emoji? [Upload your own custom emoji](#upload-custom-emoj -Select the **Smile** icon Use the Smile icon to add emojis to your message. inside the Mattermost message input box to open the emoji and GIF picker. +Select the **Smile** icon Use the Smile icon to add emojis to your message. inside the Mattermost message input box to open the emoji and GIF picker. Select an emoji from the **Emojis** tab, or switch to the **GIFs** tab to search for a GIF. @@ -52,7 +53,7 @@ You can also specify emojis based on their name. Type `:` followed by at least t -Select the Use the Smile icon to add emojis to your message. to add an emoji. Mattermost accesses the emojis and GIFs available on your mobile device. You can also specify emojis based on their name. Type at least two characters of the word describing the emoji. This opens an emoji autocomplete. +Select the Use the Smile icon to add emojis to your message. to add an emoji. Mattermost accesses the emojis and GIFs available on your mobile device. You can also specify emojis based on their name. Type at least two characters of the word describing the emoji. This opens an emoji autocomplete. ![Tap and hold on a message to access the recent emojis or even choose other ones.](/images/mobile-include-emojis-for-a-message-reaction.gif) diff --git a/docs/main/end-user-guide/collaborate/rename-channels.mdx b/docs/main/end-user-guide/collaborate/rename-channels.mdx index 83719e1a44cd..438757f180cc 100644 --- a/docs/main/end-user-guide/collaborate/rename-channels.mdx +++ b/docs/main/end-user-guide/collaborate/rename-channels.mdx @@ -1,6 +1,7 @@ --- title: "Rename channels" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -27,7 +28,7 @@ For example, a channel could be named `UX Design` and have a URL of `https://com > ![Select a channel that you want to rename.](/images/mobile-select-a-channel.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. > ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/reply-to-messages.mdx b/docs/main/end-user-guide/collaborate/reply-to-messages.mdx index 3685e7ac9e42..b34bc5bac1ce 100644 --- a/docs/main/end-user-guide/collaborate/reply-to-messages.mdx +++ b/docs/main/end-user-guide/collaborate/reply-to-messages.mdx @@ -1,6 +1,7 @@ --- title: "Reply to messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -9,7 +10,7 @@ import TabItem from '@theme/TabItem'; -Reply to messages by selecting the **Reply** Reply icon. icon next to the message text. +Reply to messages by selecting the **Reply** Reply icon. icon next to the message text. ![Reply to Mattermost messages](/images/reply-to-message.png) diff --git a/docs/main/end-user-guide/collaborate/save-pin-messages.mdx b/docs/main/end-user-guide/collaborate/save-pin-messages.mdx index 275efe97ca89..96f34db63249 100644 --- a/docs/main/end-user-guide/collaborate/save-pin-messages.mdx +++ b/docs/main/end-user-guide/collaborate/save-pin-messages.mdx @@ -1,6 +1,7 @@ --- title: "Save and pin messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -16,7 +17,7 @@ You have two ways to mark a post to make it easy to find later: -Save messages for later follow up by selecting the **Save** Save icon. icon next to a message. +Save messages for later follow up by selecting the **Save** Save icon. icon next to a message. ![Save messages for later follow up using the Save option.](/images/save-message.png) @@ -33,7 +34,7 @@ Long press a message, and then select **Save**. ![Tap and hold on a message in the channel to explore available options to save it.](/images/mobile-save-a-message.gif) -To see all of your saved messages, tap the **Save** Save icon. icon at the bottom of the app. +To see all of your saved messages, tap the **Save** Save icon. icon at the bottom of the app. ![Tap on Save icon at the bottom of the app to access the Saved Messages list.](/images/mobile-view-saved-messages.gif) @@ -41,7 +42,7 @@ Remove an item from your **Saved Messages** list by long pressing a message and ![Tap and hold on a message in the saved messages list to explore available options to unsave it.](/images/mobile-unsave-a-message-from-saved-messages.gif) -Alternatively, you can also tap on the saved message in a channel and then tap the Saved icon. icon below it to unsave. +Alternatively, you can also tap on the saved message in a channel and then tap the Saved icon. icon below it to unsave. ![Tap and hold on a saved message in the channel to explore available options to unsave it.](/images/mobile-unsave-a-message-from-the-channel.gif) @@ -51,12 +52,12 @@ Alternatively, you can also tap on the saved message in a channel and then tap t ## Pin messages -All members of a channel can pin important or useful messages to that channel. The list of pinned messages is visible to all channel members. There is no limit to the number of pinned posts in a channel. From Mattermost v10.2, the **Pinned** Pin icon used to indicate when there are pinned messages in a given channel. icon is hidden when no messages are pinned. +All members of a channel can pin important or useful messages to that channel. The list of pinned messages is visible to all channel members. There is no limit to the number of pinned posts in a channel. From Mattermost v10.2, the **Pinned** Pin icon used to indicate when there are pinned messages in a given channel. icon is hidden when no messages are pinned. -1. Hover over the message that you want to pin. The **More** Use the More icon to access additional message options. icon link appears. +1. Hover over the message that you want to pin. The **More** Use the More icon to access additional message options. icon link appears. 2. Select the **More** option, then select **Pin to channel**. ![You can pin messages to make them easy to return to later.](/images/pin-message-to-channel.png) @@ -75,7 +76,7 @@ The right-hand sidebar opens to show the list of pinned messages. For example: To unpin a message: -1. Mouse over the message that you want to unpin. The **More** Use the More icon to access additional message options. icon link appears. +1. Mouse over the message that you want to unpin. The **More** Use the More icon to access additional message options. icon link appears. 2. Select the **More** icon, then select **Unpin from channel** ![You can unpin messages from a channel when they're no longer needed or become outdated.](/images/unpin-message-from-channel.png) @@ -93,7 +94,7 @@ To see all of your pinned messages in a channel: ![Select a channel whose pinned messages you want to view.](/images/mobile-select-a-channel.jpg) -2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. +2. Tap the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon located in the top right corner of the app. ![Tap on More options to access available options for the channel.](/images/mobile-select-more-options-for-a-channel.jpg) diff --git a/docs/main/end-user-guide/collaborate/schedule-messages.mdx b/docs/main/end-user-guide/collaborate/schedule-messages.mdx index c87793b03079..23b525376f3c 100644 --- a/docs/main/end-user-guide/collaborate/schedule-messages.mdx +++ b/docs/main/end-user-guide/collaborate/schedule-messages.mdx @@ -1,6 +1,7 @@ --- title: "Schedule messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -36,7 +37,7 @@ You can manage scheduled messages with the following actions: - **Reschedule message**: Change when the message should be sent. - **Send now**: Confirm that you want to send the message immediately. -Once a message is scheduled, you can delete, edit, and reschedule it, copy the message text, or send it immediately. +Once a message is scheduled, you can delete, edit, and reschedule it, copy the message text, or send it immediately. @@ -55,10 +56,10 @@ Scheduled messages may fail for the following reasons: If a scheduled message fails to send, you'll be alerted 2 ways: -- A red badge displays a total scheduled post count in the left pane next to **Drafts**. Total count of scheduled messages. -- An alert banner dislays on the **Scheduled** tab +- A red badge displays a total scheduled post count in the left pane next to **Drafts**. Total count of scheduled messages. +- An alert banner displays on the **Scheduled** tab -If a scheduled draft message can't be sent, Mattermost provides context about why it can't be sent on the Scheduled tab under Drafts. +If a scheduled draft message can't be sent, Mattermost provides context about why it can't be sent on the Scheduled tab under Drafts. diff --git a/docs/main/end-user-guide/collaborate/search-for-messages.mdx b/docs/main/end-user-guide/collaborate/search-for-messages.mdx index 705627af57a1..94472608c893 100644 --- a/docs/main/end-user-guide/collaborate/search-for-messages.mdx +++ b/docs/main/end-user-guide/collaborate/search-for-messages.mdx @@ -1,6 +1,7 @@ --- title: "Search for messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -47,14 +48,14 @@ From Mattermost v10.8, you can also adjust your search results to show messages -When using Mattermost in a web browser or the desktop app, you can open your current search results in a separate popout window by selecting the **Open in new window** Open thread in a new browser window icon. icon in the search results header. +When using Mattermost in a web browser or the desktop app, you can open your current search results in a separate popout window by selecting the **Open in new window** Open thread in a new browser window icon. icon in the search results header. -1. Tap the **Search** Search for messages and files in Mattermost. icon at the bottom of the app to search for messages or files attached to messages. +1. Tap the **Search** Search for messages and files in Mattermost. icon at the bottom of the app to search for messages or files attached to messages. > ![Tap on the Search icon to search for messages.](/images/mobile-search-for-messages.jpg) @@ -116,11 +117,11 @@ You can access files recently shared in a channel: -Select the Use the Channel Files icon to search for files attached to messages in a given channel. icon to the right of the channel name to access files recently shared in that channel. +Select the Use the Channel Files icon to search for files attached to messages in a given channel. icon to the right of the channel name to access files recently shared in that channel. ![Use the Channel Files option to access recently shared files in the current channel.](/images/channel-files-icon.png) -Alternatively, you can select the channel name, select the **View Info** Use the Channel Info icon to access additional channel management options. icon, then select **Files** in the right pane. +Alternatively, you can select the channel name, select the **View Info** Use the Channel Info icon to access additional channel management options. icon, then select **Files** in the right pane. @@ -214,7 +215,7 @@ From Mattermost v11.6, when your system admin [enables searching public channels ## Technical notes about searching -By default, Mattermost uses full text search support included in PostgreSQL. Select the **product menu** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. then select **About Mattermost** to see which database you’re using. +By default, Mattermost uses full text search support included in PostgreSQL. Select the **product menu** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. then select **About Mattermost** to see which database you’re using. - Stop words are filtered out of search results. See [PostgreSQL](https://www.postgresql.org/docs/10/textsearch-dictionaries.html#TEXTSEARCH-STOPWORDS) database documentation for a full list of applicable stop words. - URLs don’t return results. diff --git a/docs/main/end-user-guide/collaborate/send-messages.mdx b/docs/main/end-user-guide/collaborate/send-messages.mdx index 53f250334cad..8f77103290e0 100644 --- a/docs/main/end-user-guide/collaborate/send-messages.mdx +++ b/docs/main/end-user-guide/collaborate/send-messages.mdx @@ -1,6 +1,7 @@ --- title: "Send messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -19,14 +20,14 @@ From Mattermost v11.5, you can access help resources for message formatting by s -Enter a message in the text field, then select **Send** Select the Send icon to post your message. to send the message. +Enter a message in the text field, then select **Send** Select the Send icon to post your message. to send the message. You can also use a keyboard to send messages: - Press Enter on Windows or Linux, or on Mac. -- You can configure Mattermost to require Shift Enter on Windows or Linux, or on Mac to send multi-line messages. Select the **gear** Use the Settings icon to customize your Mattermost user experience. icon to go to **Settings**, then select **Advanced \> Send messages on CTRL+ENTER**. +- You can configure Mattermost to require Shift Enter on Windows or Linux, or on Mac to send multi-line messages. Select the **gear** Use the Settings icon to customize your Mattermost user experience. icon to go to **Settings**, then select **Advanced \> Send messages on CTRL+ENTER**. @@ -37,7 +38,7 @@ You can also use a keyboard to send messages: ![Type a message in the text box at the bottom of the mobile app.](/images/mobile-type-a-message-in-a-channel.jpg) -2. Tap **Send** Select the Send icon to post your message. icon to send it in the channel. +2. Tap **Send** Select the Send icon to post your message. icon to send it in the channel. ![Tap on the send icon to send the message in the channel.](/images/mobile-sending-a-message.gif) @@ -51,12 +52,12 @@ You can use AI to enhance your messages before sending them. This feature helps From Mattermost v11.5, when you use AI Rewrite while composing a reply in a thread, the AI incorporates context from the thread to generate suggestions that better fit the ongoing conversation. -From Mattermost v11.7, Rewrite is accessed through the **AI Actions** AI Actions icon. menu, alongside any custom prompts your system admin has made available. +From Mattermost v11.7, Rewrite is accessed through the **AI Actions** AI Actions icon. menu, alongside any custom prompts your system admin has made available. On Web/Desktop or Mobile: > 1. Type your message in the message compose field. -> 2. Open the **AI Actions** AI Actions icon. menu from the message actions, then select **Rewrite**. +> 2. Open the **AI Actions** AI Actions icon. menu from the message actions, then select **Rewrite**. > 3. Select a bot from the list of available AI agents. > 4. Choose from available rewrite options: > - **Improve writing**: Enhance clarity and professionalism @@ -67,11 +68,11 @@ On Web/Desktop or Mobile: > - **Summarize**: Condense your message to key points > - **Custom prompt**: Specify your own transformation instructions > 5. Review the AI-generated suggestion. Select **Regenerate** to try again or **Discard** to return to your original message. -> 6. Select **Send** Select the Send icon to post your message. +> 6. Select **Send** Select the Send icon to post your message. -From Mattermost v11.7, system admins can publish custom prompts that appear alongside Rewrite in the **AI Actions** AI Actions icon. menu. If you don't see a custom prompt you expect, check with your system admin. +From Mattermost v11.7, system admins can publish custom prompts that appear alongside Rewrite in the **AI Actions** AI Actions icon. menu. If you don't see a custom prompt you expect, check with your system admin. @@ -91,8 +92,8 @@ From Mattermost v11.3, burn-on-read messages stay concealed until recipients rev 1. Compose your message. -2. Select the **Burn-on-read** Burn on Read icon. icon in the message toolbar. -3. Select **Send** Select the Send icon to post your message. +2. Select the **Burn-on-read** Burn on Read icon. icon in the message toolbar. +3. Select **Send** Select the Send icon to post your message. @@ -100,8 +101,8 @@ From Mattermost v11.3, burn-on-read messages stay concealed until recipients rev From Mattermost mobile v2.38.0, you can send burn-on-read messages from the mobile app. 1. Compose your message. -2. Tap the **Burn-on-read** Burn on Read icon. icon in the message toolbar. -3. Tap **Send** Select the Send icon to post your message. +2. Tap the **Burn-on-read** Burn on Read icon. icon in the message toolbar. +3. Tap **Send** Select the Send icon to post your message. @@ -109,7 +110,7 @@ From Mattermost mobile v2.38.0, you can send burn-on-read messages from the mobi Recipients see a concealed placeholder with **Reveal**. After revealing, a timer shows when the message will be deleted. -As the message sender, hover over the **Burn-on-read** Burn on Read icon. icon above the sent message to see how many recipients have read the message. You can also delete the burn-on-read message for all recipients before the timer expires by selecting the **Burn-on-read** Burn on Read icon. icon above the sent message. +As the message sender, hover over the **Burn-on-read** Burn on Read icon. icon above the sent message to see how many recipients have read the message. You can also delete the burn-on-read message for all recipients before the timer expires by selecting the **Burn-on-read** Burn on Read icon. icon above the sent message. ## Draft messages @@ -122,12 +123,12 @@ By default, message drafts are synchronized on the Mattermost server and are acc Draft messages are added to a **Drafts** view available at the top of the channel sidebar. -Global drafts makes it easy for you to find all messages in progress. +Global drafts makes it easy for you to find all messages in progress. -When composing a message, you can simply choose to complete it later. The partially composed message is kept in the text field and an **Edit** option Edit icon. displays next to the channel name. +When composing a message, you can simply choose to complete it later. The partially composed message is kept in the text field and an **Edit** option Edit icon. displays next to the channel name. From Mattermost v10.5, you'll find local draft messages under **Drafts**. Drafts synchronized to the Mattermost server will be listed under **Drafts** in a future mobile app release. @@ -144,7 +145,7 @@ All users can edit their own sent messages, unless the system admin has [restric -1. Using Mattermost in a web browser or the desktop app, select the **More** Use the More icon to access additional message options. icon next to a message that you've sent. +1. Using Mattermost in a web browser or the desktop app, select the **More** Use the More icon to access additional message options. icon next to a message that you've sent. > ![Select the More option to edit or delete a sent message.](/images/more-actions.png) @@ -191,7 +192,7 @@ Restoring a previous version of the message is available in the Mattermost deskt 1. Select the word **Edited** next to your message. 2. In the right pane, review all previous versions of the message. -3. Select the **Restore** Use the Restore icon to restore a previous version of an edited message. icon next to the version you want to restore. +3. Select the **Restore** Use the Restore icon to restore a previous version of an edited message. icon next to the version you want to restore. 4. Select **Confirm**. ![Select Edited next to an edited message, and then select the version you want to restore.](/images/restore-previous-edited-message.gif) @@ -203,7 +204,7 @@ Restoring a previous version of the message is available in the Mattermost deskt All users can delete their own sent messages, unless the system admin has [restricted the ability to do so](/administration-guide/onboard/advanced-permissions). -1. Using Mattermost in a web browser or the desktop app, select the **More** Use the More icon to access additional message options. icon next to a message that you want to delete. +1. Using Mattermost in a web browser or the desktop app, select the **More** Use the More icon to access additional message options. icon next to a message that you want to delete. 2. Select **Delete** to delete your own messages. Select **Delete** again to confirm. diff --git a/docs/main/end-user-guide/collaborate/share-files-in-messages.mdx b/docs/main/end-user-guide/collaborate/share-files-in-messages.mdx index afc290dbb990..6ed619bfed7b 100644 --- a/docs/main/end-user-guide/collaborate/share-files-in-messages.mdx +++ b/docs/main/end-user-guide/collaborate/share-files-in-messages.mdx @@ -1,6 +1,7 @@ --- title: "Share files in messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -14,7 +15,7 @@ With file attachments, you can share additional information that helps your team You can share files with other Mattermost users or entire channels by: - Dragging and dropping files into channels. -- Selecting the **Attachment** Add a message attachment using the Upload files icon in the message formatting toolbar. icon in the message input box. +- Selecting the **Attachment** Add a message attachment using the Upload files icon in the message formatting toolbar. icon in the message input box. - Pasting from the clipboard. ## Share public links @@ -29,22 +30,22 @@ If **Get Public Link** is not visible in the file previewer, ask your system adm ## Download files -You can download an attached file by selecting the **Download** Use the Download icon to download an attached file to your local system. icon next to the file thumbnail. +You can download an attached file by selecting the **Download** Use the Download icon to download an attached file to your local system. icon next to the file thumbnail. -From Mattermost desktop app v5.2, you can review download status, access downloads, and clear the list of downloads from a new **Downloads** Use the desktop app download icon to review download status, as well as access and clear the list of downloaded files. option located in the top-right corner of the desktop app window. +From Mattermost desktop app v5.2, you can review download status, access downloads, and clear the list of downloads from a new **Downloads** Use the desktop app download icon to review download status, as well as access and clear the list of downloaded files. option located in the top-right corner of the desktop app window. ## Access files -Access all files shared in a channel by selecting the **Channel files** Use the Channel Files icon to search for files attached to messages in a given channel. icon in the channel header. +Access all files shared in a channel by selecting the **Channel files** Use the Channel Files icon to search for files attached to messages in a given channel. icon in the channel header. -You can share files with other Mattermost users or entire channels by tapping the **Attachment** Add a message attachment using the Upload files icon in the message formatting toolbar. icon under the message input box when composing a message. +You can share files with other Mattermost users or entire channels by tapping the **Attachment** Add a message attachment using the Upload files icon in the message formatting toolbar. icon under the message input box when composing a message. From Mattermost v10.7 and mobile v2.27, you can play and download audio files directly from the message thread. @@ -64,7 +65,7 @@ From Mattermost v10.7 and mobile v2.27, you can play and download audio files di ![Tap on a file to download and open it.](/images/mobile-tap-a-file-name-to-download.jpg) -Or you can also click on Use the More icon to access additional message options. to download the file or open it in the channel. +Or you can also click on Use the More icon to access additional message options. to download the file or open it in the channel. ![You can also use more options to download ot view the file in the channel.](/images/mobile-more-options-to-download-or-view-a-file.jpg) diff --git a/docs/main/end-user-guide/collaborate/share-links.mdx b/docs/main/end-user-guide/collaborate/share-links.mdx index 82ffa2a7acbb..d85803b42a94 100644 --- a/docs/main/end-user-guide/collaborate/share-links.mdx +++ b/docs/main/end-user-guide/collaborate/share-links.mdx @@ -1,6 +1,7 @@ --- title: "Share links to channels and messages" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -14,7 +15,7 @@ Sharing channel links makes it easy for others to find and join channels. To sha -Alternatively, you can select the **View info** Use the Channel Info icon to access additional channel management options. icon in the top right corner of the screen to access additional channel management options, including a **Copy Link** option you can share with others. +Alternatively, you can select the **View info** Use the Channel Info icon to access additional channel management options. icon in the top right corner of the screen to access additional channel management options, including a **Copy Link** option you can share with others. @@ -23,7 +24,7 @@ Alternatively, you can select the **View info** -Sharing message links displays a preview of the message in the post. To share links to messages in Mattermost, select the **More** Use the More icon to access additional message options. icon next to a message, then select **Copy Link**. +Sharing message links displays a preview of the message in the post. To share links to messages in Mattermost, select the **More** Use the More icon to access additional message options. icon next to a message, then select **Copy Link**. ![When you hover over messages, you can access more message options from the More icon.](/images/message-more.png) @@ -35,7 +36,7 @@ Paste the link into a message to share the image link with others. Sharing links -- You can also hover over an image and select the Use the Copy Link icon to copy the public URL link for an image in a message. icon in the top right corner. +- You can also hover over an image and select the Use the Copy Link icon to copy the public URL link for an image in a message. icon in the top right corner. - The timestamp next to the username of any message is also a permanent link to that conversation. diff --git a/docs/main/end-user-guide/collaborate/team-settings.mdx b/docs/main/end-user-guide/collaborate/team-settings.mdx index d6f0ee133ef3..692005198566 100644 --- a/docs/main/end-user-guide/collaborate/team-settings.mdx +++ b/docs/main/end-user-guide/collaborate/team-settings.mdx @@ -1,6 +1,8 @@ --- title: "Team settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Team settings enable system and team administrators to adjust settings applied to a specific team. Using Mattermost in a web browser or the desktop app, select the team name to access **Team Settings**. @@ -77,7 +79,7 @@ System and team administrators can include the team in a list of teams to join f -When you enable this option, users looking for more teams to join will also see this team in the list when they select the The Plus icon provides access to channel and direct message functionality. icon in the team sidebar. +When you enable this option, users looking for more teams to join will also see this team in the list when they select the The Plus icon provides access to channel and direct message functionality. icon in the team sidebar. diff --git a/docs/main/end-user-guide/preferences/connect-multiple-workspaces.mdx b/docs/main/end-user-guide/preferences/connect-multiple-workspaces.mdx index b6b8448e0fd2..f0a79e960d37 100644 --- a/docs/main/end-user-guide/preferences/connect-multiple-workspaces.mdx +++ b/docs/main/end-user-guide/preferences/connect-multiple-workspaces.mdx @@ -1,6 +1,7 @@ --- title: "Connect to multiple Mattermost workspaces" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -46,7 +47,7 @@ If you're using the desktop app prior to release v5.0, individual servers displa -Tap the **Servers** Access server connection options using the Servers icon. icon located in the top left corner of the window to access all available servers and to add new servers. +Tap the **Servers** Access server connection options using the Servers icon. icon located in the top left corner of the window to access all available servers and to add new servers. 1. Tap **Add a server**. 2. Enter the server URL. Server URLs must begin with either `http://` or `https://`. @@ -60,7 +61,7 @@ Can't find your Mattermost server URL? Ask your company’s IT department or you 3. Enter the server's Display Name. 4. Optionally toggle the **Advanced Options** section to enter an **Authentication secret**. This is an additional security measure that some organizations use. Your system admin can provide you with the secret if required. -> Mobile app server setup screen showing the optional authentication secret field. +> Mobile app server setup screen showing the optional authentication secret field. 5. Tap **Done**. @@ -86,11 +87,11 @@ Can't find your Mattermost server URL? Ask your company’s IT department or you 1. Swipe left on an existing server entry to reveal additional options. Tap **Edit**. -> In the Mattermost mobile app, swipe left on an existing server connection entry to edit the connection. +> In the Mattermost mobile app, swipe left on an existing server connection entry to edit the connection. 2. Modify the server's display name or authentication secret, and then tap **Save**. -> Mobile app edit server screen showing display name fields. +> Mobile app edit server screen showing display name fields. > > To view or update the authentication secret, expand the **Advanced Options** section. If a secret is currently configured, it will be pre-filled in the field. @@ -114,11 +115,11 @@ Removing a server from your desktop app doesn't delete its data. You can add the -Tap the **Servers** Access server connection options using the Servers icon. icon located in the top left corner of the window to access all available servers and to add new servers. +Tap the **Servers** Access server connection options using the Servers icon. icon located in the top left corner of the window to access all available servers and to add new servers. Swipe left on an existing server entry to reveal additional options. Tap **Remove**. -In the Mattermost mobile app, swipe left on an existing server connection entry to delete the connection. +In the Mattermost mobile app, swipe left on an existing server connection entry to delete the connection. @@ -148,7 +149,7 @@ Granting a system permission sets it to **Accept**, and revoking it sets it to * From desktop v6.0, you can keep multiple workspaces open at the same time and work across them without constant switching to improve situational awareness and operational efficiency. This capability is especially useful for organizations that operate in distributed or multi-domain environments, as it enhances cross-system interoperability and command-level situational awareness. -Select the **New tab** The Plus icon provides access to channel and direct message functionality. icon at the top of the desktop app to open a new tab for the current workspace. You can drag and drop to reorder the tabs in the main desktop window. +Select the **New tab** The Plus icon provides access to channel and direct message functionality. icon at the top of the desktop app to open a new tab for the current workspace. You can drag and drop to reorder the tabs in the main desktop window. Open internal Mattermost links in a new tab or window by right-clicking on the link and selecting **Open in new tab** or **Open in new window**. diff --git a/docs/main/end-user-guide/preferences/customize-desktop-app-experience.mdx b/docs/main/end-user-guide/preferences/customize-desktop-app-experience.mdx index 362bbb00af5e..eee27fcd5e12 100644 --- a/docs/main/end-user-guide/preferences/customize-desktop-app-experience.mdx +++ b/docs/main/end-user-guide/preferences/customize-desktop-app-experience.mdx @@ -1,6 +1,7 @@ --- title: "Customize your Desktop App experience" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -51,7 +52,7 @@ With the Mattermost desktop app in focus, select **Mattermost \> Settings...** -With the Mattermost desktop app in focus, select the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon in the top left of the menu bar and select **File \> Settings...** +With the Mattermost desktop app in focus, select the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon in the top left of the menu bar and select **File \> Settings...** ![Access Desktop App customization settings by selecting More in the top left corner, then selecting File \> Settings.](/images/desktop-app-settings.jpg) diff --git a/docs/main/end-user-guide/preferences/customize-your-channel-sidebar.mdx b/docs/main/end-user-guide/preferences/customize-your-channel-sidebar.mdx index 9d688c8071a4..b9f158535480 100644 --- a/docs/main/end-user-guide/preferences/customize-your-channel-sidebar.mdx +++ b/docs/main/end-user-guide/preferences/customize-your-channel-sidebar.mdx @@ -1,6 +1,8 @@ --- title: "Customize your channel sidebar" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Conversations in Mattermost are crucial to company productivity and success. Keeping conversations organized in the sidebar creates an efficient workplace. Using a web browser or the desktop app, you can customize your own channel sidebar based on how you prefer to use Mattermost. Customizations you make are only visible to you, are visible when using the mobile app, and won't affect what your teammates see in their sidebars. @@ -29,7 +31,7 @@ Using Mattermost in a web browser or the desktop app, you can customize your sid Create custom categories to group channels together for quicker and easier navigation. For example, you can create a category called "Design" or "Marketing". -To create categories, select the **+** symbol at the top of the sidebar. Or, select the **More options** Use the More icon to access additional message options. icon in the sidebar on any category header, then select **Create New Category**. +To create categories, select the **+** symbol at the top of the sidebar. Or, select the **More options** Use the More icon to access additional message options. icon in the sidebar on any category header, then select **Create New Category**. diff --git a/docs/main/end-user-guide/preferences/customize-your-theme.mdx b/docs/main/end-user-guide/preferences/customize-your-theme.mdx index da0a0c207a6a..b66400c5b874 100644 --- a/docs/main/end-user-guide/preferences/customize-your-theme.mdx +++ b/docs/main/end-user-guide/preferences/customize-your-theme.mdx @@ -1,6 +1,7 @@ --- title: "Customize your Mattermost theme" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -11,7 +12,7 @@ The colors of the Mattermost user interface are customizable. You can choose fro -Select the **Settings** Use the Settings icon to customize your Mattermost user experience. icon, then go to **Display \> Theme**. Select **Theme Colors** to choose from five standard themes designed by the Mattermost team. +Select the **Settings** Use the Settings icon to customize your Mattermost user experience. icon, then go to **Display \> Theme**. Select **Theme Colors** to choose from five standard themes designed by the Mattermost team. You can customize a standard theme further to truly make it your own. After selecting a standard theme, select **Custom Theme** and modify your color choices based on your preferences. See the [custom themes](#custom-themes) documentation to learn what's configurable, and see the [custom theme examples](#custom-theme-examples) documentation for inspiration. diff --git a/docs/main/end-user-guide/preferences/manage-advanced-options.mdx b/docs/main/end-user-guide/preferences/manage-advanced-options.mdx index b502b1951e03..36830458296c 100644 --- a/docs/main/end-user-guide/preferences/manage-advanced-options.mdx +++ b/docs/main/end-user-guide/preferences/manage-advanced-options.mdx @@ -1,16 +1,17 @@ --- title: "Manage advanced options" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -Using Mattermost in a web browser or the desktop app, you can customize advanced Mattermost options based on your preferences. Select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then select **Advanced**. +Using Mattermost in a web browser or the desktop app, you can customize advanced Mattermost options based on your preferences. Select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then select **Advanced**. ## Send messages on CTRL/⌘+ENTER -By default, you send messages in Mattermost by composing a message in the message text box at the bottom of the Mattermost screen and selecting the **Send** Select the Send icon to post your message. icon or by pressing Enter on Windows or Linux, or on Mac. +By default, you send messages in Mattermost by composing a message in the message text box at the bottom of the Mattermost screen and selecting the **Send** Select the Send icon to post your message. icon or by pressing Enter on Windows or Linux, or on Mac. And you enter new text lines by pressing Shift Enter on Windows or Linux, or on Mac before sending the message. diff --git a/docs/main/end-user-guide/preferences/manage-your-channel-specific-notifications.mdx b/docs/main/end-user-guide/preferences/manage-your-channel-specific-notifications.mdx index af782f2e00a5..0a5241496244 100644 --- a/docs/main/end-user-guide/preferences/manage-your-channel-specific-notifications.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-channel-specific-notifications.mdx @@ -1,6 +1,7 @@ --- title: "Manage your channel-specific notifications" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ You have 2 ways to manage notification preferences per channel: ![Select the channel name dropdown to access channel-specific notification preferences.](/images/channel-notification-settings.gif) -2. Alternatively, select the channel's **View Info** Use the Channel Info icon to access additional channel management options. icon, and then select **Notification Preferences** in the right pane. +2. Alternatively, select the channel's **View Info** Use the Channel Info icon to access additional channel management options. icon, and then select **Notification Preferences** in the right pane. @@ -64,7 +65,7 @@ By default, you don’t automatically follow new conversation threads in any cha When using Mattermost on your mobile device, you can configure Mattermost to automatically follow every thread in a channel. -1. In a channel, tap the **More** icon Use the More icon to access additional message options. to the right of the channel name. +1. In a channel, tap the **More** icon Use the More icon to access additional message options. to the right of the channel name. 2. Tap **View info**. 3. Tap **Follow all threads**. diff --git a/docs/main/end-user-guide/preferences/manage-your-desktop-notifications.mdx b/docs/main/end-user-guide/preferences/manage-your-desktop-notifications.mdx index 195a73a4f441..91f52d9bab10 100644 --- a/docs/main/end-user-guide/preferences/manage-your-desktop-notifications.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-desktop-notifications.mdx @@ -1,6 +1,8 @@ --- title: "Manage your desktop notifications" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + ## Enable notifications @@ -23,8 +25,8 @@ You may also need to enable notifications in Windows, macOS, or Linux for Matter Mattermost desktop app icons display the following types of badges: -- A numbered badge for unread [direct](/end-user-guide/collaborate/channel-types#direct-message-channels) [group](/end-user-guide/collaborate/channel-types#group-message-channels) messages, [@mentions](/end-user-guide/preferences/manage-your-mentions-keywords-notifications), and [keywords](/end-user-guide/preferences/manage-your-mentions-keywords-notifications) you're actively watching. A numbered badge means you have at least 1 unread message, @mention, or one of your keywords has triggered a notification. -- A dot badge for unread activity. A dot on the badge means you have unread activity in at least one channel you're a member of. +- A numbered badge for unread [direct](/end-user-guide/collaborate/channel-types#direct-message-channels) [group](/end-user-guide/collaborate/channel-types#group-message-channels) messages, [@mentions](/end-user-guide/preferences/manage-your-mentions-keywords-notifications), and [keywords](/end-user-guide/preferences/manage-your-mentions-keywords-notifications) you're actively watching. A numbered badge means you have at least 1 unread message, @mention, or one of your keywords has triggered a notification. +- A dot badge for unread activity. A dot on the badge means you have unread activity in at least one channel you're a member of. ## Banner alerts diff --git a/docs/main/end-user-guide/preferences/manage-your-display-options.mdx b/docs/main/end-user-guide/preferences/manage-your-display-options.mdx index abb2cb35d64e..12ee89d5bda2 100644 --- a/docs/main/end-user-guide/preferences/manage-your-display-options.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-display-options.mdx @@ -1,6 +1,7 @@ --- title: "Manage your display options" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -8,7 +9,7 @@ import TabItem from '@theme/TabItem'; You can customize Mattermost display options based on your preferences. -- Using Mattermost in a web browser or the desktop app, select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then go to **Display**. +- Using Mattermost in a web browser or the desktop app, select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then go to **Display**. - On the Mattermost mobile app, tap your profile picture, and then tap **Settings \> Display**. ## Theme diff --git a/docs/main/end-user-guide/preferences/manage-your-mobile-notifications.mdx b/docs/main/end-user-guide/preferences/manage-your-mobile-notifications.mdx index 16455f1ef5b7..828b4223355f 100644 --- a/docs/main/end-user-guide/preferences/manage-your-mobile-notifications.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-mobile-notifications.mdx @@ -1,6 +1,7 @@ --- title: "Manage your mobile notifications" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -24,7 +25,7 @@ You may also need to enable notifications in iOS or Android for Mattermost by ch Mattermost mobile app icons display numbered badges for unread [direct](/end-user-guide/collaborate/channel-types#direct-message-channels) and [group](/end-user-guide/collaborate/channel-types#group-message-channels) messages, and [@mentions](/end-user-guide/preferences/manage-your-mentions-keywords-notifications), [keywords](/end-user-guide/preferences/manage-your-mentions-keywords-notifications) you're actively watching. -A numbered badge means you have at least 1 unread message, @mention, or one of your keywords has triggered a notification. +A numbered badge means you have at least 1 unread message, @mention, or one of your keywords has triggered a notification. @@ -47,7 +48,7 @@ You can manage your mobile notifications in both the desktop app and the mobile -In the desktop app, manage your mobile notification preferences by selecting the **Settings** Use the Settings icon to customize your Mattermost user experience. icon located in the top right corner of the screen, and select **Notifications \> Desktop and mobile notifications**. +In the desktop app, manage your mobile notification preferences by selecting the **Settings** Use the Settings icon to customize your Mattermost user experience. icon located in the top right corner of the screen, and select **Notifications \> Desktop and mobile notifications**. By default, you receive mobile notifications for @mentions, direct messages, and group messages when your Mattermost availability is [Online, Away, or Offline](/end-user-guide/preferences/set-your-status-availability#set-your-availability). You won't receive Mattermost notifications on your device if you're actively using Mattermost in a web browser. diff --git a/docs/main/end-user-guide/preferences/manage-your-notifications.mdx b/docs/main/end-user-guide/preferences/manage-your-notifications.mdx index 0e9d5dfc41cb..dfd164309dab 100644 --- a/docs/main/end-user-guide/preferences/manage-your-notifications.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-notifications.mdx @@ -1,6 +1,8 @@ --- title: "Manage your notifications" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Mattermost notifies you of new activity you're directly involved in. How you're notified depends on what Mattermost client you're using, the type of Mattermost activity you're being notified about, and how you prefer to be notified. @@ -19,7 +21,7 @@ Mattermost notifies you of new activity you're directly involved in. How you're You are in control of how, when, and where you're notified of activity that matters to you based on how you prefer to work and collaborate. To access notification preferences: -- In a web browser or the desktop app, select the **Settings** Use the Settings icon to customize your Mattermost user experience. icon located in the top right corner of the screen to manage your notification preferences. +- In a web browser or the desktop app, select the **Settings** Use the Settings icon to customize your Mattermost user experience. icon located in the top right corner of the screen to manage your notification preferences. - On mobile, tap your profile picture, then tap **Settings \> Notifications**. See the [Default notifications](#default-notifications) table below for details on customizing your notification experience based on your preferred Mattermost client. @@ -42,31 +44,36 @@ The table below lists the types of notifications you can expect to see and hear - + -

    Notification Type

    =======================

    Icon badge (dot)

    A dot on the badge means you have unread activity in at least one channel you're a member of.

    -

    What it Means

    ===================================================

    You have unread activity in at least 1 channel you're a member of

    -

    Which Mattermost Clients? |

    ==================================================================================+

    Web, Desktop |

    +Notification Type +What it Means +Which Mattermost Clients? + + +

    Icon badge (dot)

    A dot on the badge means you have unread activity in at least one channel you're a member of.

    +You have unread activity in at least 1 channel you're a member of +Web, Desktop -

    Icon badge (number)

    A numbered badge means you have at least 1 unread message, @mention, or one of your keywords has triggered a notification.

    +

    Icon badge (number)

    A numbered badge means you have at least 1 unread message, @mention, or one of your keywords has triggered a notification.

    You have at least 1 unread message with an @mention, or a match to a keyword you're watching -Web & Desktop & Mobile +Web & Desktop & Mobile Banner alert popups -Web & Desktop +Web & Desktop Push notifications -
    Mobile
    +Mobile Alert sounds You have at least 1 unread message with an @mention, a match to a keyword you're watching, or replies to a thread you're following -Web, Desktop, & Mobile +Web, Desktop, & Mobile diff --git a/docs/main/end-user-guide/preferences/manage-your-plugin-preferences.mdx b/docs/main/end-user-guide/preferences/manage-your-plugin-preferences.mdx index 292796e5a45a..acfdbc80b66e 100644 --- a/docs/main/end-user-guide/preferences/manage-your-plugin-preferences.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-plugin-preferences.mdx @@ -1,7 +1,9 @@ --- title: "Manage your plugin preferences" --- -Using Mattermost in a web browser or the desktop app, you can customize Mattermost plugin preferences for Microsoft Teams and Calls by selecting **Settings** Use the Settings icon to customize your Mattermost user experience. next to your profile picture. +import useBaseUrl from '@docusaurus/useBaseUrl'; + +Using Mattermost in a web browser or the desktop app, you can customize Mattermost plugin preferences for Microsoft Teams and Calls by selecting **Settings** Use the Settings icon to customize your Mattermost user experience. next to your profile picture. ## Microsoft Teams plugin preferences diff --git a/docs/main/end-user-guide/preferences/manage-your-profile.mdx b/docs/main/end-user-guide/preferences/manage-your-profile.mdx index 608f884b5265..07fdea74a132 100644 --- a/docs/main/end-user-guide/preferences/manage-your-profile.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-profile.mdx @@ -31,7 +31,7 @@ Your system admin may also manage profile fields for accounts that sign in with Nickname -(Optional) Nicknames appear in the direct messages member list and team management modal. | Your nickname can be up to 64 characters long. | | You won't be notified when someone types your nickname unless you add your nickname to the list | of Keywords that Trigger Notifications as a notification preference |. | From Mattermost v10.8, nicknames display in | threaded discussions when available. | +(Optional) Nicknames appear in the direct messages member list and team management modal. | Your nickname can be up to 64 characters long. | | You won't be notified when someone types your nickname unless you add your nickname to the list | of Keywords that Trigger Notifications as a notification preference |. | From Mattermost v10.8, nicknames display in | threaded discussions when available. | Position diff --git a/docs/main/end-user-guide/preferences/manage-your-security-preferences.mdx b/docs/main/end-user-guide/preferences/manage-your-security-preferences.mdx index 6fcbe960ec52..3d27d00961ee 100644 --- a/docs/main/end-user-guide/preferences/manage-your-security-preferences.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-security-preferences.mdx @@ -1,42 +1,43 @@ --- title: "Manage your security preferences" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Select your profile picture, select **Profile**, and then select **Security** to configure your password, view access history, and to view or logout of active sessions. ---++ - + - - - + + + + - + + - + - + - -

    Security setting

    ======================

    Password

    Description

    ============================================================================================================

    You may change your password if you've logged in by email using Mattermost in a web browser or using the desktop app.

    • If you sign in to Mattermost using a single sign-on service, you must update your password through your SSO service account.
    • Password Security Enhancement: From v11.0, Mattermost uses PBKDF2 password hashing for improved security. When you log in after your server upgrades to v11.0+, your password will be automatically migrated to the more secure format. If your server is later downgraded to a version prior to v11.0, you may be unable to log in and will need to contact your system administrator for a password reset.
    Security settingDescription
    Password

    You may change your password if you've logged in by email using Mattermost in a web browser or using the desktop app.

    • If you sign in to Mattermost using a single sign-on service, you must update your password through your SSO service account.
    • Password Security Enhancement: From v11.0, Mattermost uses PBKDF2 password hashing for improved security. When you log in after your server upgrades to v11.0+, your password will be automatically migrated to the more secure format. If your server is later downgraded to a version prior to v11.0, you may be unable to log in and will need to contact your system administrator for a password reset.
    Multi-factor authentication (MFA)If your system admin has enabled multi-factor authentication | (MFA), you can require a passcode in addition to your password to log-in to your Mattermost account. | | You'll need to download a MFA passcode generation app, such as Google Authenticator or a similar app, | and then set-up MFA in your Mattermost account. | | Download a passcode generation app | | - Download Google Authenticator for an Apple device from | iTunes | - Download Google Authenticator for an Android device from | Google Play | | Enable MFA in Mattermost | | 1. Open Mattermost in a web browser or the desktop app. | 2. In Mattermost, from your profile picture, select Profile > Security. | 3. Under Multi-factor Authentication, select Edit. | | .. image:: ../../images/multi-factor-authentication.png | :alt: Enable multi-factor authentication through your Mattermost user profile. | | 4. Select Add MFA to Account. | | .. image:: ../../images/add-mfa-to-account.png | :alt: Add multi-factor authentication to your Mattermost user profile. | | 5. Scan the QR code or enter the Secret provided by Mattermost into the authenticator app. | 6. In Mattermost, enter the MFA Code generated by the authenticator app. | 7. Select Save. |

    If your system admin has enabled multi-factor authentication (MFA), you can require a passcode in addition to your password to log-in to your Mattermost account.

    You'll need to download a MFA passcode generation app, such as Google Authenticator or a similar app, and then set-up MFA in your Mattermost account.

    Download a passcode generation app

    • Download Google Authenticator for an Apple device from iTunes
    • Download Google Authenticator for an Android device from Google Play

    Enable MFA in Mattermost

    1. Open Mattermost in a web browser or the desktop app.
    2. In Mattermost, from your profile picture, select Profile > Security.
    3. Under Multi-factor Authentication, select Edit.

      Enable multi-factor authentication through your Mattermost user profile.

    4. Select Add MFA to Account.

      Add multi-factor authentication to your Mattermost user profile.

    5. Scan the QR code or enter the Secret provided by Mattermost into the authenticator app.
    6. In Mattermost, enter the MFA Code generated by the authenticator app.
    7. Select Save.
    Sign-in methodThis option allows you to switch your login method between using email/username and password and | single sign-on credentials. | | You can configure this setting using Mattermost in a web browser or using the desktop app. | | .. note:: | | While you can choose to log in with either set of credentials, you can only enable one login method | at a time. For example, if AD/LDAP single sign-on is enabled, you can select | Switch to using AD/LDAP, and enter your AD/LDAP credentials to switch login over to AD/LDAP. | You'll need to enter the password for your email account to verify your existing credentials. | Following the change, you'll receive an email to confirm the action. |

    This option allows you to switch your login method between using email/username and password and single sign-on credentials.

    You can configure this setting using Mattermost in a web browser or using the desktop app.

    While you can choose to log in with either set of credentials, you can only enable one login method at a time. For example, if AD/LDAP single sign-on is enabled, you can select Switch to using AD/LDAP, and enter your AD/LDAP credentials to switch login over to AD/LDAP. You'll need to enter the password for your email account to verify your existing credentials. Following the change, you'll receive an email to confirm the action.

    View access history

    Using Mattermost in a browser or using the desktop app, you can access a chronological list of the last 20 login and logout attempts, channel creations and deletions, account settings changes, or channel setting modifications made with your account.

    The details of the Session ID, which is a unique identifier for each Mattermost browser session, and IP Address of the action is recorded for audit log purposes.

    View and log out of active sessions

    Sessions are created when you log in with your credentials a new browser on a device. Sessions let you use Mattermost for up to 30 days without having to log in again.

    Using Mattermost in a browser or using the desktop app:

    • Select Logout during an active session if you want to revoke automatic login privileges for a specific browser or device.
    • Select More Info to view browser and system details.
    diff --git a/docs/main/end-user-guide/preferences/manage-your-sidebar-options.mdx b/docs/main/end-user-guide/preferences/manage-your-sidebar-options.mdx index 05fe602e22eb..3a063c97cda2 100644 --- a/docs/main/end-user-guide/preferences/manage-your-sidebar-options.mdx +++ b/docs/main/end-user-guide/preferences/manage-your-sidebar-options.mdx @@ -1,9 +1,11 @@ --- title: "Manage your sidebar options" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + -Using Mattermost in a web browser or the desktop app, you can customize your Mattermost sidebar based on your preferences. Select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then select **Sidebar**. +Using Mattermost in a web browser or the desktop app, you can customize your Mattermost sidebar based on your preferences. Select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then select **Sidebar**. Your channel sidebar includes [enhanced sidebar features](/end-user-guide/preferences/customize-your-channel-sidebar), including custom, collapsible channel categories, drag and drop, unread filtering, channel sorting options, and more. diff --git a/docs/main/end-user-guide/preferences/troubleshoot-notifications.mdx b/docs/main/end-user-guide/preferences/troubleshoot-notifications.mdx index 5793034a10e6..c40b8785d6e2 100644 --- a/docs/main/end-user-guide/preferences/troubleshoot-notifications.mdx +++ b/docs/main/end-user-guide/preferences/troubleshoot-notifications.mdx @@ -1,6 +1,7 @@ --- title: "Troubleshoot notifications" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -10,7 +11,7 @@ The Mattermost notifications you receive depend on your [Mattermost preferences] ## Send yourself a test notification -From Mattermost v10.3, you can send yourself a test notification by selecting **Settings** Use the Settings icon to customize your Mattermost user experience., and going to the **Notifications** options. +From Mattermost v10.3, you can send yourself a test notification by selecting **Settings** Use the Settings icon to customize your Mattermost user experience., and going to the **Notifications** options. Under **Troubleshooting notifications** select the **Send a test notification** option. If notifications are working, you'll receive a system-bot direct message in Mattermost confirming that notifications are working. @@ -23,7 +24,7 @@ Start by ensuring that your Mattermost preferences have notifications enabled. -1. Select **Settings** Use the Settings icon to customize your Mattermost user experience. in the top right corner of Mattermost. +1. Select **Settings** Use the Settings icon to customize your Mattermost user experience. in the top right corner of Mattermost. 2. Select **Desktop and mobile notifications**. If **Send notifications for** is set to **Nothing**, then Mattermost notifications are currently disabled. Select either the **All new messages** or **Mentions, direct messages, and group messages** option instead, and save your changes. @@ -33,7 +34,7 @@ If **Send notifications for** is set to **Nothing**, then Mattermost notificatio -1. Select **Settings** Use the Settings icon to customize your Mattermost user experience. in the top right corner of Mattermost. +1. Select **Settings** Use the Settings icon to customize your Mattermost user experience. in the top right corner of Mattermost. 2. Select **Desktop and mobile notifications**. If **Send notifications for** is set to **Nothing**, then Mattermost notifications are currently disabled. Select either the **All new messages** or **Mentions, direct messages, and group messages** option instead. @@ -42,7 +43,7 @@ If **Send notifications for** is set to **Nothing**, then Mattermost notificatio 1. Tap on your profile picture in the bottom right corner of Mattermost. -2. Tap **Settings** Use the Settings icon to customize your Mattermost user experience.. +2. Tap **Settings** Use the Settings icon to customize your Mattermost user experience.. 3. Tap **Notifications**. 4. Tap **Push Notifications**. 5. Ensure that **All new messages** or **Mentions, direct messages, and group messages** option is selected. @@ -204,19 +205,19 @@ Also ensure that macOS’ **Focus mode** is turned off. See the Apple Support [F Desktop notifications are triggered under to following conditions. Click to expand the flow chart. -A flow diagram shows how Mattermost Desktop App notifications are triggered when a message is posted. +A flow diagram shows how Mattermost Desktop App notifications are triggered when a message is posted. ### What determines if an email notification should be triggered? Email notifications are triggered under to following conditions. Click to expand the flow chart. -A flow diagram shows how Mattermost email notifications are triggered when a message is posted. +A flow diagram shows how Mattermost email notifications are triggered when a message is posted. ### What determines if a mobile push notification should be triggered? Mobile push notifications are triggered under to following conditions. Click to expand the flow chart. -A flow diagram shows how Mattermost mobile push notifications are triggered when a message is posted. +A flow diagram shows how Mattermost mobile push notifications are triggered when a message is posted. ### Are mobile push notifications free? diff --git a/docs/main/end-user-guide/project-management/boards-settings.mdx b/docs/main/end-user-guide/project-management/boards-settings.mdx index 64b45a1463ce..77254cb4e2c8 100644 --- a/docs/main/end-user-guide/project-management/boards-settings.mdx +++ b/docs/main/end-user-guide/project-management/boards-settings.mdx @@ -1,16 +1,18 @@ --- title: "Settings" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + ## Set language -In a board, set your preferred language by selecting the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then go to **Set language** to apply your language settings. Language settings in Boards are independent from language settings in Channels. +In a board, set your preferred language by selecting the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then go to **Set language** to apply your language settings. Language settings in Boards are independent from language settings in Channels. ## Random emoji icons -To enable or disable random emoji icons for your board and cards, select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then toggle **Random icons on or off**. +To enable or disable random emoji icons for your board and cards, select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then toggle **Random icons on or off**. ## Product tour -If you skipped the product tour or want a refresher on Boards, you can restart the product tour by going to the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture and selecting **Product tour**. This will add a new **Welcome to Boards** template to your sidebar and kick-off the guided onboarding tour. +If you skipped the product tour or want a refresher on Boards, you can restart the product tour by going to the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture and selecting **Product tour**. This will add a new **Welcome to Boards** template to your sidebar and kick-off the guided onboarding tour. diff --git a/docs/main/end-user-guide/project-management/migrate-to-boards.mdx b/docs/main/end-user-guide/project-management/migrate-to-boards.mdx index 76b37af41a5f..c6a6490d1fd0 100644 --- a/docs/main/end-user-guide/project-management/migrate-to-boards.mdx +++ b/docs/main/end-user-guide/project-management/migrate-to-boards.mdx @@ -1,19 +1,21 @@ --- title: "Import, export, and migrate" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + ## Import and export a board archive If you’d like to back up your board or re-use it on another team or channel workspace, you can export it as an archive file, and then import the archive file in the team or channel workspace of your choosing. Exported and imported board archives include all card content such as properties, comments, descriptions, and image attachments. -To do this, select the options menu Use the More icon to access additional message options. to the left of the **New** button at the top of the board. Then select **Export board archive**. Download the archive file. Navigate to the team or channel workspace where you’d like to add the exported board. Select the Gear icon next to your profile picture, then choose **Import archive**. The board you exported will be added to this team or channel workspace. +To do this, select the options menu Use the More icon to access additional message options. to the left of the **New** button at the top of the board. Then select **Export board archive**. Download the archive file. Navigate to the team or channel workspace where you’d like to add the exported board. Select the Gear icon next to your profile picture, then choose **Import archive**. The board you exported will be added to this team or channel workspace. The **Import archive** option will import the board to your current team. Use [board permissions](/end-user-guide/project-management/share-and-collaborate#board-permissions) to control access to your imported board. The previous `.focalboard` format will be deprecated in a future release, but will support importing until then. Currently, the import dialog looks for `.boardarchive`. Use **Select all files** to select `.focalboard` files to import. ## Export to CSV -To export a board into a CSV file, select the options menu Use the More icon to access additional message options. to the left of the **New** button at the top of the board. Then select **Export to CSV**. +To export a board into a CSV file, select the options menu Use the More icon to access additional message options. to the left of the **New** button at the top of the board. Then select **Export to CSV**. ## Import and export from other applications diff --git a/docs/main/end-user-guide/project-management/navigate-boards.mdx b/docs/main/end-user-guide/project-management/navigate-boards.mdx index 27e2224aac05..021c965c8273 100644 --- a/docs/main/end-user-guide/project-management/navigate-boards.mdx +++ b/docs/main/end-user-guide/project-management/navigate-boards.mdx @@ -1,11 +1,13 @@ --- title: "Navigate boards" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + ## Access boards -To access Mattermost Boards, select the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu in the top left corner of Mattermost, and then select **Boards** to view all the boards for your team. +To access Mattermost Boards, select the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. menu in the top left corner of Mattermost, and then select **Boards** to view all the boards for your team. To access boards linked to a channel, select the **Toggle Linked Boards** icon to the far right. @@ -29,13 +31,13 @@ All the boards previously associated with the workspace will automatically appea ## Unlink a board from a channel -If you're a board admin and want to unlink a board from a channel you're in, open the Boards Apps Bar, select the options Use the More icon to access additional message options. menu and select **Unlink**. Alternatively, you can open the **Share** dialog on the board, open the **Role** drop-down menu next to the channel's name and select **Unlink**. +If you're a board admin and want to unlink a board from a channel you're in, open the Boards Apps Bar, select the options Use the More icon to access additional message options. menu and select **Unlink**. Alternatively, you can open the **Share** dialog on the board, open the **Role** drop-down menu next to the channel's name and select **Unlink**. ## Sidebar categories -You can organize your boards in the left-hand sidebar using custom categories. By default, all boards will appear under the **Boards** category. To manage your categories, open the Use the More icon to access additional message options. menu next to the category to create, delete, or rename a category. With the exception to the default **Boards** category, all other categories can be renamed or deleted. +You can organize your boards in the left-hand sidebar using custom categories. By default, all boards will appear under the **Boards** category. To manage your categories, open the Use the More icon to access additional message options. menu next to the category to create, delete, or rename a category. With the exception to the default **Boards** category, all other categories can be renamed or deleted. -After creating categories, you can move your boards to those categories by opening the more Use the More icon to access additional message options. menu next to the board and selecting **Move To…** to select the category where you want the board to be moved. +After creating categories, you can move your boards to those categories by opening the more Use the More icon to access additional message options. menu next to the board and selecting **Move To…** to select the category where you want the board to be moved. If you delete a category with boards in it, then those boards will return to the default **Boards** category. @@ -62,7 +64,7 @@ To do this, select and hold the cursor over the category or board name. Then mov ## Manage boards on the sidebar -In addition to moving boards to other categories, from the Use the More icon to access additional message options. menu next to each board name you can perform the following actions: +In addition to moving boards to other categories, from the Use the More icon to access additional message options. menu next to each board name you can perform the following actions: - **Delete board**: If you're an admin of the board, you will see an option to delete the board. Deleting the board permanently removes the board from the sidebar of all board members. - **Duplicate board**: Creates a copy of the board and all the cards on the board. The duplicated board will appear under the same category as the original board. Board members and comments from the original board aren't migrated to the new board. diff --git a/docs/main/end-user-guide/project-management/work-with-boards.mdx b/docs/main/end-user-guide/project-management/work-with-boards.mdx index d01afe499e4c..eab413d217a7 100644 --- a/docs/main/end-user-guide/project-management/work-with-boards.mdx +++ b/docs/main/end-user-guide/project-management/work-with-boards.mdx @@ -1,6 +1,7 @@ --- title: "Work with boards" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -10,7 +11,7 @@ Start by selecting the type of board you want to use. A board contains cards, wh ## Add new boards -To add a new board, select the plus icon The Plus icon provides access to channel and direct message functionality. at the top of the sidebar, then select **Create New Board** to open the template picker and select a template or blank board. +To add a new board, select the plus icon The Plus icon provides access to channel and direct message functionality. at the top of the sidebar, then select **Create New Board** to open the template picker and select a template or blank board. ### Board details @@ -49,9 +50,9 @@ If none of the available templates suit your requirements, you can create a blan ### Create a new template -To create a new board template select the plus icon The Plus icon provides access to channel and direct message functionality. at the top of the sidebar to open the template picker, select **Create New Board** and then select **+ New template**. +To create a new board template select the plus icon The Plus icon provides access to channel and direct message functionality. at the top of the sidebar to open the template picker, select **Create New Board** and then select **+ New template**. -To turn an existing board into a template, hover over the board title in the sidebar. Select the options menu Use the More icon to access additional message options., then select **New template from board**. +To turn an existing board into a template, hover over the board title in the sidebar. Select the options menu Use the More icon to access additional message options., then select **New template from board**. ### Share a custom board template @@ -71,7 +72,7 @@ The admin of the template can also grant specific team members elevated permissi Boards and templates are channel-specific so whichever channel you create your board or template in, is where you’ll find it. If you’d like to re-use a board as a template on another channel workspace, you can export it and then import the archive file in the channel of your choosing. -To do this, select the options menu Use the More icon to access additional message options. in the toolbar at the top of the board. Then select **Export** board archive. Download the archive file. Navigate to the channel where you’d like to add the exported board. Select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then choose **Import archive**. The board you created will be added to this channel. +To do this, select the options menu Use the More icon to access additional message options. in the toolbar at the top of the board. Then select **Export** board archive. Download the archive file. Navigate to the channel where you’d like to add the exported board. Select the gear icon Use the Settings icon to customize your Mattermost user experience. next to your profile picture, then choose **Import archive**. The board you created will be added to this channel. diff --git a/docs/main/end-user-guide/project-management/work-with-cards.mdx b/docs/main/end-user-guide/project-management/work-with-cards.mdx index 16aea40a72b4..4c52a99f3d4e 100644 --- a/docs/main/end-user-guide/project-management/work-with-cards.mdx +++ b/docs/main/end-user-guide/project-management/work-with-cards.mdx @@ -1,6 +1,8 @@ --- title: "Work with cards" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + A card consists of: @@ -26,7 +28,7 @@ To add a new content block in the description section, hover over the section an - **Divider**: Adds a divider content block below the previous block. - **Checkbox**: Adds a checkbox content block. Press Enter/Return after typing in content for your checkbox to add another checkbox within the same block. Please note, Markdown formatting isn't supported within the **Checkbox** content block. -To manage the description content blocks on a card, hover over any existing block and select the options menu Use the More icon to access additional message options. to move the block up or down, insert a new block above, or delete the current block. Alternatively, you can hover over any existing block, then select and hold the grid button to drag and drop it to a new position within the description section. +To manage the description content blocks on a card, hover over any existing block and select the options menu Use the More icon to access additional message options. to move the block up or down, insert a new block above, or delete the current block. Alternatively, you can hover over any existing block, then select and hold the grid button to drag and drop it to a new position within the description section. ## Card properties @@ -94,7 +96,7 @@ You can attach files to your cards that other board members can download. There To upload a file to a card, select **Attach** in the top-right corner of the card. Then select the file you'd like to upload. When your file has been uploaded, you can find it in the **Attachments** section of the card. Select the **+** sign to add additional files to your card. -To delete a file, hover over it and select the Use the More icon in the top left corner to access Mattermost desktop apps customization settings. menu. Then select **Delete**. To download the file, select the download icon. +To delete a file, hover over it and select the Use the More icon in the top left corner to access Mattermost desktop apps customization settings. menu. Then select **Delete**. To download the file, select the download icon. ## Card badges @@ -140,7 +142,7 @@ Card templates can help reduce repetitive manual input for similar types of work Alternatively, you can turn any existing card into a template: 1. Open the card you want to use as a template. -2. Select the options menu Use the More icon to access additional message options. in the top-right corner of the card. +2. Select the options menu Use the More icon to access additional message options. in the top-right corner of the card. 3. Select **New template from card**. 4. Edit the card as needed, including a helpful name. 5. Close the card using the **X** in the top left corner. @@ -149,7 +151,7 @@ Alternatively, you can turn any existing card into a template: To set a default card template for all new cards created on the board: 1. Select the drop-down arrow next to **New**. -2. Open the options menu Use the More icon to access additional message options. next to the card template of your choosing. +2. Open the options menu Use the More icon to access additional message options. next to the card template of your choosing. 3. Select **Set as default**. diff --git a/docs/main/end-user-guide/workflow-automation/notifications-and-updates.mdx b/docs/main/end-user-guide/workflow-automation/notifications-and-updates.mdx index 86e7fb9fbda3..6a9c2d0ca1bd 100644 --- a/docs/main/end-user-guide/workflow-automation/notifications-and-updates.mdx +++ b/docs/main/end-user-guide/workflow-automation/notifications-and-updates.mdx @@ -1,6 +1,7 @@ --- title: "Notifications and updates" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -56,7 +57,7 @@ The most recent status post alsos displays in the right-hand sidebar of the run ## Request an update -To request a status update, access the **Playbooks** tab in Mattermost. Select the run you want an update for. In the run details page, select the Use the More icon in the top left corner to access Mattermost desktop apps customization settings. menu next to **Post update** and select **Request update**. +To request a status update, access the **Playbooks** tab in Mattermost. Select the run you want an update for. In the run details page, select the Use the More icon in the top left corner to access Mattermost desktop apps customization settings. menu next to **Post update** and select **Request update**. diff --git a/docs/main/end-user-guide/workflow-automation/share-and-collaborate.mdx b/docs/main/end-user-guide/workflow-automation/share-and-collaborate.mdx index 0a923e48fed3..8129ebe2671c 100644 --- a/docs/main/end-user-guide/workflow-automation/share-and-collaborate.mdx +++ b/docs/main/end-user-guide/workflow-automation/share-and-collaborate.mdx @@ -1,6 +1,8 @@ --- title: "Share and collaborate" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + There are different ways for teams to access and interact with collaborative playbooks. This is managed in the System Console using permissions. Permissions can be granted in a variety of ways, to allow for different combinations of access and visibility. @@ -105,7 +107,7 @@ To archive a playbook, you must be a member of the playbook or playbook admin an To archive a playbook: -1. Go to the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and select **Playbooks**. +1. Go to the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and select **Playbooks**. 2. Select **View all...** under the **Playbooks** section in the left menu. 3. Select the **...** in the **Actions** column for the playbook you would like to archive. 4. Select the **Archive** menu option then the **Archive** button to confirm you would like to archive the playbook. @@ -122,7 +124,7 @@ To restore an archived playbook, you must have applicable **Manage Playbook Conf To restore an archived playbook: -1. Go to the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and select **Playbooks**. +1. Go to the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and select **Playbooks**. 2. Select **View all...** under the **Playbooks** section in the left menu. 3. Verify the **With archived** checkbox next to the playbook search bar is selected. 4. Select the **...** in the **Actions** column for the playbook you would like to restore. diff --git a/docs/main/end-user-guide/workflow-automation/work-with-playbooks.mdx b/docs/main/end-user-guide/workflow-automation/work-with-playbooks.mdx index 1a0d39c105ae..c612555a868d 100644 --- a/docs/main/end-user-guide/workflow-automation/work-with-playbooks.mdx +++ b/docs/main/end-user-guide/workflow-automation/work-with-playbooks.mdx @@ -1,6 +1,8 @@ --- title: "Work with collaborative playbooks" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + A collaborative playbook is a checklist of the tasks that make up your processes. Collaborative playbooks allow you to take codified knowledge and processes and make them accessible and editable by your organization and team. When you're setting up your playbook, you'll be able to break tasks down, and assign actions to them - such as using a slash command to start a Zoom call. You can also decide whether to use the same channel every time your playbook is run, or a new one. @@ -148,7 +150,7 @@ When viewing and editing playbook run attributes on mobile devices, color format To configure attributes: -1. Go to the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and select **Playbooks**. +1. Go to the **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and select **Playbooks**. 2. Select the playbook you want to define attributes for. diff --git a/docs/main/end-user-guide/workflow-automation/work-with-tasks.mdx b/docs/main/end-user-guide/workflow-automation/work-with-tasks.mdx index e447922e4a0f..42111d494b32 100644 --- a/docs/main/end-user-guide/workflow-automation/work-with-tasks.mdx +++ b/docs/main/end-user-guide/workflow-automation/work-with-tasks.mdx @@ -1,6 +1,8 @@ --- title: "Work with tasks" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + ## Tasks and due dates @@ -42,7 +44,7 @@ From Mattermost v11.1, using Mattermost in a web browser or the desktop app, tas To set up conditional behavior in a playbook: -1. Go to **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and select **Playbooks**. +1. Go to **Product** Navigate between Channels, collaborative playbooks, and boards using the product menu icon. icon and select **Playbooks**. 2. Select the playbook or run you want to add conditions to. @@ -50,7 +52,7 @@ To set up conditional behavior in a playbook: 4. Under **Tasks**, identify a task you want to make conditional. -5. From the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon next to the task, select **Add condition**. +5. From the **More** Use the More icon in the top left corner to access Mattermost desktop apps customization settings. icon next to the task, select **Add condition**. ![An example of a playbook condition being added.](/images/playbook-conditions-add.png) diff --git a/docs/main/for/air-gapped-operator.mdx b/docs/main/for/air-gapped-operator.mdx index 78dd5d749ed5..0903d9c3d0b2 100644 --- a/docs/main/for/air-gapped-operator.mdx +++ b/docs/main/for/air-gapped-operator.mdx @@ -11,24 +11,22 @@ hide_table_of_contents: true You deploy and operate Mattermost in network-isolated enclaves — air-gapped classified networks, sovereign-cloud enclaves, DoD IL4/IL5 environments, or tactical edges with DDIL connectivity. This page is a curated entry point — every link goes to the canonical guide. -:::important No internet egress +:::important[No internet egress] Every page linked from here works without internet access. Stage artifacts on an operator workstation, transfer across your approved boundary, and operate offline. ::: ## Start here ## Common tasks diff --git a/docs/main/for/sre.mdx b/docs/main/for/sre.mdx index 946b3e36ed9a..0d83203c465e 100644 --- a/docs/main/for/sre.mdx +++ b/docs/main/for/sre.mdx @@ -24,7 +24,7 @@ You own Mattermost's deployment, scaling, and operations. This page is a curated located in the top right corner of that page. +The fastest way to get started with a documentation contribution is to find something you want to change in the documentation. This might be a typo or broken link, or something more extensive like revising or expanding content. Once you've found a page you want to update, select the edit option Contribute to Mattermost documentation by selecting the Edit option located in the top right corner of any documentation page. located in the top right corner of that page. ## First-time contributor? diff --git a/docs/main/integrations-guide/github.mdx b/docs/main/integrations-guide/github.mdx index 574646d995f6..021feda8bda6 100644 --- a/docs/main/integrations-guide/github.mdx +++ b/docs/main/integrations-guide/github.mdx @@ -1,6 +1,7 @@ --- title: "Connect GitHub to Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -16,7 +17,7 @@ A Mattermost system admin must perform the following steps to deploy the GitHub ### Install the integration -1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 2. Search for or scroll to GitHub, and select **Install**. ### Set up the integration diff --git a/docs/main/integrations-guide/gitlab.mdx b/docs/main/integrations-guide/gitlab.mdx index 9cf12922f40b..ad4799758d0e 100644 --- a/docs/main/integrations-guide/gitlab.mdx +++ b/docs/main/integrations-guide/gitlab.mdx @@ -1,6 +1,7 @@ --- title: "Connect GitLab to Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -18,7 +19,7 @@ A Mattermost system admin must perform the following steps to deploy the GitLab ### Install the integration -1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 2. Search for or scroll to GitLab, and select **Install**. ### Set up the integration diff --git a/docs/main/integrations-guide/incoming-webhooks.mdx b/docs/main/integrations-guide/incoming-webhooks.mdx index 428567272651..7c59d2a72f26 100644 --- a/docs/main/integrations-guide/incoming-webhooks.mdx +++ b/docs/main/integrations-guide/incoming-webhooks.mdx @@ -1,6 +1,8 @@ --- title: "Incoming Webhooks" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + **Technical complexity:** [No-code](./faq#no-code) @@ -63,15 +65,15 @@ For compatibility with Slack incoming webhooks, if no `Content-Type` header is s Here are some examples of simple messages posted using incoming webhooks: -Example of a GitHub notification posted to Mattermost using an incoming webhook. +Example of a GitHub notification posted to Mattermost using an incoming webhook. -Example of a Jira notification posted to Mattermost using an incoming webhook. +Example of a Jira notification posted to Mattermost using an incoming webhook. -Example of a Mattermost notification posted to Mattermost using an incoming webhook. +Example of a Mattermost notification posted to Mattermost using an incoming webhook. -Example of a Fastlane notification posted to Mattermost using an incoming webhook. +Example of a Fastlane notification posted to Mattermost using an incoming webhook. -Example of a Weblate notification posted to Mattermost using an incoming webhook. +Example of a Weblate notification posted to Mattermost using an incoming webhook. ## Parameters @@ -94,7 +96,7 @@ The JSON payload can contain the following parameters: text Yes (if attachments is not set) -Markdown-formatted message. Use @<username>, @channel, and @here for notifications. +Markdown-formatted message. Use @<username>, @channel, and @here for notifications. channel @@ -104,17 +106,17 @@ The JSON payload can contain the following parameters: username No -Overrides the default username. The Enable integrations to override usernames setting must be enabled. +Overrides the default username. The Enable integrations to override usernames setting must be enabled. icon_url No -Overrides the default profile picture URL. The Enable integrations to override profile picture icons setting must be enabled. +Overrides the default profile picture URL. The Enable integrations to override profile picture icons setting must be enabled. icon_emoji No -Overrides the icon_url with an emoji. Use the emoji name (e.g., :tada:). The Enable integrations to override profile picture icons setting must be enabled. +Overrides the icon_url with an emoji. Use the emoji name (e.g., :tada:). The Enable integrations to override profile picture icons setting must be enabled. attachments @@ -152,7 +154,7 @@ The JSON payload can contain the following parameters: This renders as: -Example of a webhook post with a custom username, icon, and formatted text. +Example of a webhook post with a custom username, icon, and formatted text. ### Example with Card Prop diff --git a/docs/main/integrations-guide/integrations-guide-index.mdx b/docs/main/integrations-guide/integrations-guide-index.mdx index a3d055ba8c03..8878d54a073f 100644 --- a/docs/main/integrations-guide/integrations-guide-index.mdx +++ b/docs/main/integrations-guide/integrations-guide-index.mdx @@ -1,6 +1,8 @@ --- title: "Integrations Guide" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Mattermost provides a variety of methods to integrate with your favorite tools, automate critical workflows, and extend the capabilities of the platform. This guide provides a high-level overview of integration options and the level of technical skills required [(no-code, low-code, or pro-code)](/integrations-guide/faq#what-is-meant-by-no-code-low-code-and-pro-code), and links to detailed documentation for each. ## Choose Your Path @@ -20,7 +22,7 @@ Mattermost provides a variety of methods to integrate with your favorite tools, -No-code +No-code -Low-code +Low-code -Pro-code +Pro-code
    • REST API
    • Custom plugins
    • @@ -71,7 +73,7 @@ Learn more about [Mattermost plugins](/integrations-guide/plugins). Mattermost provides a set of [pre-built plugins](/integrations-guide/popular-integrations) that require no coding to install, configure, and use. These plugins are installed and managed entirely through the System Console, where you can enable, configure, and customize settings without any development work. -Pre-built plugins available for no-code integration +Pre-built plugins available for no-code integration #### Custom-Built Plugins diff --git a/docs/main/integrations-guide/jira.mdx b/docs/main/integrations-guide/jira.mdx index b88b5f9affc5..4aa5c522534d 100644 --- a/docs/main/integrations-guide/jira.mdx +++ b/docs/main/integrations-guide/jira.mdx @@ -1,6 +1,8 @@ --- title: "Connect Jira to Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Minimize distractions, reduce context switching between your project management tool and your communication platform by integrating Jira with Mattermost. You control which events trigger notifications including issue creation, field-specific issue updates, reopened, resolved, or deleted issues, as well as new, updated, or deleted issue comments. Create Jira issues directly from Mattermost conversations, attach messages to Jira issues, transition and assign Jira issues, and follow up on action items in real-time, directly from Mattermost channel subscriptions. @@ -27,7 +29,7 @@ A Mattermost system admin must perform the following steps in Mattermost. 1. Install the Jira integration from the in-product App Marketplace: -> 1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +> 1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. > 2. Search for or scroll to Jira, and select **Install**. > 3. Once installed, select **Configure**. You're taken to the System Console. > 4. On the Jira configuration page, enable and configure Jira interoperability as follows, and then select **Save**: diff --git a/docs/main/integrations-guide/microsoft-calendar.mdx b/docs/main/integrations-guide/microsoft-calendar.mdx index 4e546e8a5982..594f2d659697 100644 --- a/docs/main/integrations-guide/microsoft-calendar.mdx +++ b/docs/main/integrations-guide/microsoft-calendar.mdx @@ -1,6 +1,8 @@ --- title: "Connect Microsoft Calendar to Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Connect your Microsoft M365 Calendar to your Mattermost instance to receive daily summaries of calendar events, synchronize your M365 status in Mattermost, and accept or decline calendar invites from Mattermost. @@ -65,7 +67,7 @@ You're all set for configuration in the Azure portal. ### Install the Microsoft Calendar Integration 1. Log in to your Mattermost [workspace](/end-user-guide/end-user-guide-index) as a system admin. -2. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +2. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 3. Search for or scroll to Microsoft Calendar, and select **Install**. 4. Once installed, select **Configure**. You're taken to the System Console, directly to the **Microsoft Calendar** integration page, under **Plugins**. diff --git a/docs/main/integrations-guide/microsoft-teams-meetings.mdx b/docs/main/integrations-guide/microsoft-teams-meetings.mdx index 5218afffec03..391ca804a30f 100644 --- a/docs/main/integrations-guide/microsoft-teams-meetings.mdx +++ b/docs/main/integrations-guide/microsoft-teams-meetings.mdx @@ -1,6 +1,8 @@ --- title: "Connect Microsoft Teams Meetings to Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Start and join voice calls, video calls, and use screen sharing with your team members in Microsoft Teams without leaving Mattermost. @@ -54,7 +56,7 @@ You're all set for configuration inside of the Azure portal. ### Install the Microsoft Teams Meetings integration 1. Log in to your Mattermost [workspace](/end-user-guide/end-user-guide-index) as a system admin. -2. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +2. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 3. Search for or scroll to MS Teams Meetings, and select **Install**. 4. Once installed, select **Configure**. You're taken to the System Console, directly to the **MS Teams Meetings** integration page, under **Plugins**. diff --git a/docs/main/integrations-guide/microsoft-teams-sync.mdx b/docs/main/integrations-guide/microsoft-teams-sync.mdx index e1beea1c577e..f304e1ce557a 100644 --- a/docs/main/integrations-guide/microsoft-teams-sync.mdx +++ b/docs/main/integrations-guide/microsoft-teams-sync.mdx @@ -1,6 +1,8 @@ --- title: "Connect Microsoft Teams to Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Break through siloes in a mixed Mattermost and Microsoft Teams environment by forwarding real-time chat notifications from Microsoft Teams to Mattermost. @@ -81,7 +83,7 @@ These installation instructions assume you already have a Mattermost instance ru 1. Log in to your Mattermost [workspace](/end-user-guide/end-user-guide-index) as a system admin. -2. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +2. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 3. Search for or scroll to MS Teams, and select **Install**. 4. Once installed, select **Configure**. You're taken to the System Console. 5. Configure the **Tenant ID**, **Client ID**, and **Client Secret** with the values obtained from setting up the OAuth App in Azure above. diff --git a/docs/main/integrations-guide/outgoing-webhooks.mdx b/docs/main/integrations-guide/outgoing-webhooks.mdx index 25015fc573ed..efa778708560 100644 --- a/docs/main/integrations-guide/outgoing-webhooks.mdx +++ b/docs/main/integrations-guide/outgoing-webhooks.mdx @@ -1,6 +1,8 @@ --- title: "Outgoing Webhooks" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + **Technical complexity:** [Low-code](./faq#low-code) @@ -166,7 +168,7 @@ The JSON response can contain the following parameters: text -(Required if attachments is not set) Markdown-formatted message. +(Required if attachments is not set) Markdown-formatted message. response_type @@ -174,11 +176,11 @@ The JSON response can contain the following parameters: username -Overrides the default username. Requires Enable integrations to override usernames to be enabled. +Overrides the default username. Requires Enable integrations to override usernames to be enabled. icon_url -Overrides the default profile picture. Requires Enable integrations to override profile picture icons to be enabled. +Overrides the default profile picture. Requires Enable integrations to override profile picture icons to be enabled. attachments @@ -219,7 +221,7 @@ The JSON response can contain the following parameters: This response would produce a threaded reply to the original message that triggered the webhook. -Example of a full response from an outgoing webhook. +Example of a full response from an outgoing webhook. You can also include [message attachments](https://developers.mattermost.com/integrate/reference/message-attachments/) and [interactive messages](https://developers.mattermost.com/integrate/plugins/interactive-messages/) in your response to create more advanced workflows. diff --git a/docs/main/integrations-guide/popular-integrations.mdx b/docs/main/integrations-guide/popular-integrations.mdx index da671371a1c6..5680180b5c90 100644 --- a/docs/main/integrations-guide/popular-integrations.mdx +++ b/docs/main/integrations-guide/popular-integrations.mdx @@ -19,18 +19,18 @@ Designed for teams that need reliability, auditability, and ownership of their c
      ================================================================================================+===================================================================+============================================================================================================+
      -

      Mattermost Channel Export | product-list > App Marketplace | Exports channel history and data for compliance purposes.

      +

      Mattermost Channel Export | product-list > App Marketplace | Exports channel history and data for compliance purposes.

      -Mattermost Legal Hold | Manual Upload | Keeps a copy of messages and files so they cannot be deleted for legal or compliance needs. | +Mattermost Legal Hold | Manual Upload | Keeps a copy of messages and files so they cannot be deleted for legal or compliance needs. | -Mattermost Metrics | product-list > App Marketplace | Shows numbers about system performance when people use Mattermost. +Mattermost Metrics | product-list > App Marketplace | Shows numbers about system performance when people use Mattermost. -Mattermost User Survey | product-list > App Marketplace | Collects feedback by asking questions directly in Mattermost channels. +Mattermost User Survey | product-list > App Marketplace | Collects feedback by asking questions directly in Mattermost channels. @@ -51,18 +51,18 @@ If your organization relies on Microsoft tools, Mattermost offers deep integrati
      ==================================================================================+======================================+===============================================================================================+
      -

      Mattermost Embedded for M365, Teams, and | Manual Upload | Embed Mattermost in Microsoft apps. | Outlook | | Use Outlook and Teams together with Mattermost for secure backup and extra features. |

      +

      Mattermost Embedded for M365, Teams, and | Manual Upload | Embed Mattermost in Microsoft apps. | Outlook | | Use Outlook and Teams together with Mattermost for secure backup and extra features. |

      -Microsoft Calendar | product-list > App Marketplace | Sends your Microsoft Calendar reminders into Mattermost so you don’t miss events. +Microsoft Calendar | product-list > App Marketplace | Sends your Microsoft Calendar reminders into Mattermost so you don’t miss events. -Microsoft Teams Meetings | product-list > App Marketplace | Lets you start or join Microsoft Teams meetings directly from Mattermost. +Microsoft Teams Meetings | product-list > App Marketplace | Lets you start or join Microsoft Teams meetings directly from Mattermost. -Microsoft Teams Sync | product-list > App Marketplace | Copies messages from Microsoft Teams into Mattermost (one-way) to keep conversations in sync. +Microsoft Teams Sync | product-list > App Marketplace | Copies messages from Microsoft Teams into Mattermost (one-way) to keep conversations in sync. @@ -84,15 +84,15 @@ The following integrations bring key external tools (DevOps, ITSM, monitoring, a
      =========================================================================+===================================================================+=========================================================================================================================+
      -

      GitHub | product-list > App Marketplace | Shows GitHub updates, like new pull requests, commits, or issues, in Mattermost channels.

      +

      GitHub | product-list > App Marketplace | Shows GitHub updates, like new pull requests, commits, or issues, in Mattermost channels.

      -GitLab | product-list > App Marketplace | Sends GitLab activity (code pushes, merge requests, CI/CD pipeline updates) into Mattermost channels. +GitLab | product-list > App Marketplace | Sends GitLab activity (code pushes, merge requests, CI/CD pipeline updates) into Mattermost channels. -Jira | product-list > App Marketplace | Lets you see, create, and update Jira issues inside Mattermost. +Jira | product-list > App Marketplace | Lets you see, create, and update Jira issues inside Mattermost. Pexip @@ -101,7 +101,7 @@ The following integrations bring key external tools (DevOps, ITSM, monitoring, a -ServiceNow | product-list > App Marketplace | Sends ServiceNow updates (like tickets or incidents) into Mattermost and lets you take action from chat. +ServiceNow | product-list > App Marketplace | Sends ServiceNow updates (like tickets or incidents) into Mattermost and lets you take action from chat. Splunk @@ -110,7 +110,7 @@ The following integrations bring key external tools (DevOps, ITSM, monitoring, a -Zoom | product-list > App Marketplace | Lets you start and join Zoom meetings from inside Mattermost. +Zoom | product-list > App Marketplace | Lets you start and join Zoom meetings from inside Mattermost. diff --git a/docs/main/integrations-guide/servicenow.mdx b/docs/main/integrations-guide/servicenow.mdx index 7da1c0ee913b..73b60f6366a5 100644 --- a/docs/main/integrations-guide/servicenow.mdx +++ b/docs/main/integrations-guide/servicenow.mdx @@ -1,6 +1,8 @@ --- title: "Connect ServiceNow to Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Minimize distractions and reduce context switching by bridging the gap between IT service management (ITSM) and team communication. Create and manage incident reports, change requests, and service tickets, as well as manage event-driven notification subscriptions for ServiceNow record changes, in real-time, and automate routine tasks to decrease response times without leaving Mattermost. @@ -92,7 +94,7 @@ We recommend making a copy of your webhook and encryption secret, as it will onl -1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 2. Search for or scroll to ServiceNow, and select **Install**. 3. Once installed, select **Configure**. You're taken to the System Console. 4. On the ServiceNow configuration page, enable and configure ServiceNow interoperability as follows, and then select **Save**: diff --git a/docs/main/integrations-guide/zoom.mdx b/docs/main/integrations-guide/zoom.mdx index 1a7f9d44d1ab..20a61e9c35ce 100644 --- a/docs/main/integrations-guide/zoom.mdx +++ b/docs/main/integrations-guide/zoom.mdx @@ -1,6 +1,7 @@ --- title: "Connect Zoom to Mattermost" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -83,7 +84,7 @@ We recommend making a copy of your webhook secret and encryption key, as it will -1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. +1. In Mattermost, from the Product menu Navigate between Channels, collaborative playbooks, and boards using the product menu icon., select **App Marketplace**. 2. Search for or scroll to Zoom, and select **Install**. 3. Once installed, select **Configure**. You'll be taken to the System Console. 4. On the Zoom configuration page, enable and configure Zoom interoperability as follows, and then select **Save**. diff --git a/docs/main/product-overview/cloud-subscriptions.mdx b/docs/main/product-overview/cloud-subscriptions.mdx index 2f93ed777eb6..ce284c46e89f 100644 --- a/docs/main/product-overview/cloud-subscriptions.mdx +++ b/docs/main/product-overview/cloud-subscriptions.mdx @@ -1,6 +1,8 @@ --- title: "Cloud" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; + Mattermost offers secure, cloud-based collaboration for fast moving enterprises that’s private, scaleable, and low maintenance. Cloud-native architecture supports organizations of any size for a deployment that scales with your team, without any resource planning. Enterprises can choose between dedicated and shared infrastructure based on your organizations’ size, budget, technical requirements, and level of control and customization needed: @@ -23,57 +25,57 @@ Enterprises can choose between dedicated and shared infrastructure based on your Mattermost High Availability cluster-based deployment - Included - Included + Included + Included Network policy - Included - Included + Included + Included Namespace - Included - Included + Included + Included Network - Included + Included Kubernetes High Availability - Included + Included Database High Availability - Included + Included Object storage - Included + Included Encryption keys - Included + Included Custom backup schedule - Included + Included IP Filtering - Included - Included + Included + Included Bring your own key - Included + Included diff --git a/docs/main/product-overview/faq-license.mdx b/docs/main/product-overview/faq-license.mdx index 96eef4720702..a35ab17deced 100644 --- a/docs/main/product-overview/faq-license.mdx +++ b/docs/main/product-overview/faq-license.mdx @@ -17,7 +17,7 @@ The following outlines the licensing, terms of use and privacy policies across M

      Software

      ====================================================

      Mattermost Team Edition (Open Source)

      -

      License | Terms and Conditions | Privacy Policy |

      ============================================================================================================================+===============================================================================================================================+=============================================================================================+
      Open Source MIT License. | Mattermost Trademark Policy | Mattermost Server Privacy Policy |
                                                                                                                                    | with GDPR Data Processing Addendum. |

      Open Source Add-ons available under Apache v2 and other licenses. | Mattermost Terms of Use |

      ----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ |
      Commercial Enterprise Edition License. | No subscription terms apply when operating without a subscription | |
                                                                                                                                    | |

      You are welcome to use the Enterprise Edition of Mattermost free of charge in perpetuity when the subscription feature | | | are not enabled by a license key. +-------------------------------------------------------------------------------------------------------------------------------+ | | Self Managed Subscription Terms | | If you choose to purchase a subscription for paid features, terms and conditions are offered | | | as part of the subscription purchase (see “Terms”). | Enterprise Edition Subscription Terms for Purchase by Resale | | | | | | Cloud Subscription Agreement | |

      +

      License | Terms and Conditions | Privacy Policy |

      ============================================================================================================================+===============================================================================================================================+=============================================================================================+
      Open Source MIT License. | Mattermost Trademark Policy | Mattermost Server Privacy Policy |
                                                                                                                                    | with GDPR Data Processing Addendum. |

      Open Source Add-ons available under Apache v2 and other licenses. | Mattermost Terms of Use |

      ----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ |
      Commercial Enterprise Edition License. | No subscription terms apply when operating without a subscription | |
                                                                                                                                    | |

      You are welcome to use the Enterprise Edition of Mattermost free of charge in perpetuity when the subscription feature | | | are not enabled by a license key. +-------------------------------------------------------------------------------------------------------------------------------+ | | Self Managed Subscription Terms | | If you choose to purchase a subscription for paid features, terms and conditions are offered | | | as part of the subscription purchase (see “Terms”). | Enterprise Edition Subscription Terms for Purchase by Resale | | | | | | Cloud Subscription Agreement | |

      diff --git a/docs/main/product-overview/plans.mdx b/docs/main/product-overview/plans.mdx index 51b47313a09a..2187770a948f 100644 --- a/docs/main/product-overview/plans.mdx +++ b/docs/main/product-overview/plans.mdx @@ -1,9 +1,12 @@ --- title: "Mattermost Plans" --- +import useBaseUrl from '@docusaurus/useBaseUrl'; +