Slack からインポートする

ワークスペースを Zulip にインポートする

他のチャットツールからデータを移行して、Zulip で会話を続けられます。

インポート手順の概要

Slack の組織を Zulip にインポートするには、次の手順を行います。詳細は以下で説明します:

Slack から Zulip に組織をインポートする

Slack のデータをエクスポートする

Slack の data export service を使うと、Slack プラン上で検索できなくなっている古いメッセージも含めて、すべての公開チャンネルメッセージをエクスポートできます。

ただし、Slack では Business+ または Enterprise Grid プランのワークスペースでのみ、プライベートチャンネルとダイレクトメッセージのエクスポートが許可されています。このポリシーは 2022 年 8 月時点で Slack のサポートにより確認されています。

Business+ または Enterprise Grid ワークスペースのオーナーは、ダイレクトメッセージデータをエクスポートするために特別アクセスを申請できます。

  1. 自分が Slack ワークスペースのオーナーまたは管理者であることを確認します。該当する場合、Slack の Web アプリではプロフィール内のアバター下部を覆うバナーにその旨が表示されます。

  2. Slack のメッセージ履歴をエクスポートします。エクスポート処理を開始してから数分後に、データを含む zip ファイルをダウンロードできるはずです。

  3. ワークスペースのユーザーデータとカスタム絵文字もエクスポートする必要があります。そのために、まず 新しい Slack アプリを作成します。作成オプションでは "From scratch" を選択してください。

  4. ボットユーザーを作成し、手順に従って次の OAuth スコープをボットに追加します:

    • emoji:read
    • users:read
    • users:read.email
    • team:read
  5. 新しいアプリをインストールして、Slack ワークスペースに追加します。

  6. すぐに Bot User OAuth Token が表示されます。これは xoxb- で始まる長い英数字の文字列です。このトークンをコピーしてください。Slack ワークスペースからユーザーデータと絵文字データをダウンロードする際に使用します。

xoxe- で始まるトークンを見かけることもありますが、このトークンは Slack エクスポート処理には使用できません。

データを Zulip にインポートする

データを Zulip にインポートする

Zulip では、対応している各種サービスからデータを取り込めます。

Zulip Cloud 組織へのインポートは、サポートチームがご案内します。

  1. Slack の Bot User OAuth Token。これは xoxb- で始まる長い英数字の文字列です。

Zulip Cloud へのインポートでは、作業前にサポートとの調整が必要です。

セルフホスト版 Zulip サーバーへデータをインポートする場合は、サーバー管理者による作業が必要です。

  1. Zulip インストールのルートドメイン (EXTERNAL_HOST) でホストされている組織にインポートするには、<token> を Slack の Bot User OAuth Token に置き換えて、次のコマンドを実行します。

    セルフホスト環境へインポートする際は、事前にバックアップと十分な空き容量を確認してください。

    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-server

    カスタムサブドメインにインポートする場合は、次を実行します:

    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
  2. 新しい Zulip サーバーのインストールガイドの step 4 に従ってください。

インポートの詳細

Zulip Cloud を利用する場合でも、セルフホスト版 Zulip を利用する場合でも、インポート処理について次の点に注意してください:

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 のスレッドは、"2023-05-30 Slack thread 1" のような名前のトピックとしてインポートされます。

  • メッセージ編集履歴と @user joined #channel_name メッセージはインポートされません。

Slack エクスポート後の後片付け

組織の Zulip へのインポートが正常に完了したら、Slack データをエクスポートするために作成した Slack アプリ を削除してください。これにより、その OAuth トークンが今後 Slack ワークスペースへのアクセスに使われるのを防げます。

Zulip で組織の利用を開始する

インポートが完了したら、組織をスムーズに使い始めるための準備を進めましょう。

Zulip の Slack 互換 incoming webhook を使うと、連携機能の移行を簡単に進められます。

ユーザーのログイン方法を決める

ユーザーがどの方法でログインするかを、インポート前に確認しておきましょう。

関連記事