The indentation in the original files was fine for the current help center, but when converting the files to MDX, the indentation made the includes and the code blocks look like they were on the same level as the list item and not part of it. I did a manual check of code blocks with indentation in help/ and how they looked when converted to the new help center and the rest of the cases looked fine.
6.7 KiB
Import from Slack
{!import-workspace-to-zulip.md!}
Import process overview
To import your Slack organization into Zulip, you will need to take the following steps, which are described in more detail below:
{start_tabs}
-
Clean up after the Slack export.
{end_tabs}
Import your organization from Slack into Zulip
Export your Slack data
Slack's data export service allows you to export all public channel messages, including older messages that may no longer be searchable under your Slack plan.
Unfortunately, Slack only allows workspaces that are on the Business+ or Enterprise Grid plans to export private channels and direct messages. Slack's support has confirmed this policy as of August 2022.
Owners of Business+ or Enterprise Grid workspaces can request special access in order to export direct message data.
Export message history
{start_tabs}
-
Make sure that you are an owner or admin of your Slack workspace. If you are one, the Slack web application will display that in your profile, in a banner covering the bottom of your avatar.
-
Export your Slack message history. You should be able to download a
zipfile with your data a few minutes after you start the export process.
{end_tabs}
Export user data and custom emoji
{start_tabs}
-
Make sure that you are an owner or admin of your Slack workspace. If you are one, the Slack web application will display that in your profile, in a banner covering the bottom of your avatar.
-
Create a new Slack app. Choose the "From scratch" creation option.
-
Create a bot user, following the instructions to add the following OAuth scopes to your bot:
emoji:readusers:readusers:read.emailteam:read
-
Install your new app to your Slack workspace.
-
You will immediately see a Bot User OAuth Token, which is a long string of numbers and characters starting with
xoxb-. Copy this token. It grants access to download user and emoji data from your Slack workspace.
!!! warn ""
You may also come across a token starting with `xoxe-`. This token cannot
be used for the Slack export process.
{end_tabs}
Import your data into Zulip
{!import-your-data-into-zulip.md!}
{start_tabs}
{tab|zulip-cloud}
{!import-into-a-zulip-cloud-organization.md!}
- Your Slack Bot User OAuth Token, which will be a long
string of numbers and characters starting with
xoxb-.
{!import-zulip-cloud-organization-warning.md!}
{tab|self-hosting}
{!import-into-a-self-hosted-server-description.md!}
{!import-into-a-self-hosted-server-instructions.md!}
-
To import into an organization hosted on the root domain (
EXTERNAL_HOST) of the Zulip installation, run the following commands, replacing<token>with your Slack Bot User OAuth Token.{!import-self-hosted-server-tips.md!}
cd /home/zulip/deployments/current ./scripts/stop-server ./manage.py convert_slack_data /tmp/slack_data.zip --token <token> --output /tmp/converted_slack_data ./manage.py import '' /tmp/converted_slack_data ./scripts/start-serverAlternatively, to import into a custom subdomain, run:
cd /home/zulip/deployments/current ./scripts/stop-server ./manage.py convert_slack_data /tmp/slack_data.zip --token <token> --output /tmp/converted_slack_data ./manage.py import <subdomain> /tmp/converted_slack_data ./scripts/start-server -
Follow step 4 of the guide for installing a new Zulip server.
{end_tabs}
Import details
Whether you are using Zulip Cloud or self-hosting Zulip, here are few notes to keep in mind about the import process:
-
Slack does not export workspace settings, so you will need to configure the settings for your Zulip organization. This includes settings like email visibility, message editing permissions, and how users can join your organization.
-
Slack does not export user settings, so users in your organization may want to customize their account settings.
-
Slack's user roles are mapped to Zulip's user roles in the following way:
Slack role Zulip role Workspace Primary Owner Owner Workspace Owner Owner Workspace Admin Administrator Member Member Single Channel Guest Guest Multi Channel Guest Guest Channel creator none -
Slack threads are imported as topics with names that include snippets of the original message, such as "2023-05-30 Hi, can anyone reply if you're o…".
-
Message edit history and
@user joined #channel_namemessages are not imported.
Clean up after the Slack export
Once your organization has been successfully imported in to Zulip, you should delete the Slack app that you created in order to export your Slack data. This will prevent the OAuth token from being used to access your Slack workspace in the future.
Get your organization started with Zulip
{!import-get-your-organization-started.md!}
!!! tip ""
Zulip's [Slack-compatible incoming webhook](/integrations/doc/slack_incoming)
makes it easy to migrate integrations.
Decide how users will log in
{!import-how-users-will-log-in.md!}