2018-01-01 14:41:46 +01:00
|
|
|
# Import data from Slack
|
2017-01-31 09:17:05 +01:00
|
|
|
|
2018-04-04 19:31:04 +02:00
|
|
|
{!follow-steps.md!} import data from Slack to Zulip. We support
|
|
|
|
importing data from Slack, including users, channels, messages,
|
|
|
|
attachments, avatars, custom emoji, and emoji reactions.
|
2017-01-31 09:17:05 +01:00
|
|
|
|
|
|
|
!!! warn ""
|
2018-04-04 19:31:04 +02:00
|
|
|
**Note:** You need administrative rights to the Slack workspace to export data from Slack.
|
2017-01-31 09:17:05 +01:00
|
|
|
|
2018-04-04 16:30:53 +02:00
|
|
|
{!go-to-the.md!} [Slack's export page](https://my.slack.com/services/export) to get your
|
|
|
|
team's zipped data file.
|
|
|
|
|
|
|
|
2. Generate a Slack API legacy token using Slack's
|
|
|
|
[token generator](https://api.slack.com/custom-integrations/legacy-tokens)
|
|
|
|
to import all of the necessary data. We use this as current Slack exports don't
|
|
|
|
include user's email data, however, we still get that data from Slack's older
|
|
|
|
method of legacy tokens.
|
|
|
|
**Note:** Once Slack starts including user emails in the exports,
|
|
|
|
this extra step of using legacy tokens to get user data would no longer be
|
|
|
|
necessary.
|
|
|
|
|
|
|
|
3. Convert the zip file to Zulip export format using the command
|
|
|
|
`./manage.py convert_slack_data <zip_file> <organization_name> --token
|
|
|
|
<token> --output <output_dir>`. This would generate a data file
|
|
|
|
`output_dir` in Zulip's standard data import format.
|
|
|
|
|
|
|
|
4. Import the converted data into a Zulip using the command
|
|
|
|
`./manage.py import --import-into-nonempty <output_dir>`
|
|
|
|
|
2018-04-04 19:31:04 +02:00
|
|
|
!!! tip ""
|
|
|
|
These instructions require shell access to the Zulip server.
|
|
|
|
If you'd like to import a Slack organization into the hosted
|
|
|
|
zulipchat.com service, contact support@zulipchat.com.
|
2018-01-21 06:45:38 +01:00
|
|
|
|
2018-04-04 19:31:04 +02:00
|
|
|
## Slack data elements that are not directly translated
|
2018-01-21 06:45:38 +01:00
|
|
|
|
2018-04-04 19:31:04 +02:00
|
|
|
- Slack's data exports only include public channels and messages to
|
|
|
|
public channels unless you pay for their Plus plan or contact Slack
|
|
|
|
support. See
|
|
|
|
[Slack documentation](https://get.slack.help/hc/en-us/articles/204897248-Guide-to-Slack-import-and-export-tools)
|
|
|
|
for more details.
|
|
|
|
- The Slack->Zulip converter does not yet support private channels and
|
|
|
|
private messages. We expect to address this in a future revision.
|
|
|
|
- Message edit history. Slack only exports the latest revision of edited messages.
|
2018-01-21 06:45:38 +01:00
|
|
|
- Permission hierarchy. They are mapped as follows
|
2018-04-04 19:31:04 +02:00
|
|
|
* Slack's **Primary Owner**, **Workspace Owner**, and **Workspace
|
|
|
|
Admin** users are mapped to Zulip organization administrators.
|
|
|
|
* Slack's **Member**, **Multi-Channel Guest**, and
|
|
|
|
**Single-Channel Guest** users are mapped to regular Zulip users.
|
|
|
|
* Slack's **Channel Creators** have no special permission in Zulip.
|
2018-02-05 23:52:41 +01:00
|
|
|
- Zulip's "default streams" work slightly differently from Slack's
|
|
|
|
"Default channels" -- new users are automatically subscribed, but
|
|
|
|
users can still unsusbcribe from them.
|
2018-04-04 19:31:04 +02:00
|
|
|
- Slack's phone number and skype username fields are not transferred
|
|
|
|
to Zulip. We expect in a future version to convert these to custom
|
|
|
|
profile fields.
|
|
|
|
- Zulip doesn't have an analog of Slack's "pinned attachments" feature.
|
|
|
|
- Simultaneous bold and italic formatting of a word. This is not yet supported
|
|
|
|
by Zulip's backend markdown.
|
|
|
|
- Slack's "joined #channel_name" notifications are intentionally not
|
|
|
|
transferred because they are spammy.
|
|
|
|
- Slack's data export tools don't contain details about
|
|
|
|
organization-level settings, so you'll need to configure the Zulip
|
|
|
|
organization settings manually.
|