SlackからDiscordに移行するためのnode.js製のCLI
MSDは「Migrate from Slack to Discord」の略称
Warning
Privateチャンネルの移行はできません
このCLIはまだ十分なテストがされていません、動作の保証ができないので、利用する際は自己責任でお願いします
将来的にSlackやDiscordのAPIの仕様変更によって、使用できなくなる可能性があります
SlackのエクスポートデータをDiscordに出力できるデータに変換し、DiscordBot経由でチャンネルの作成とメッセージの出力を行うことで移行を実現します
初回設定を完了後、下記のコマンドを実行することで移行します
クライアント作成時に処理が止まる場合があります、その際には止まった箇所のコマンドを再実行してください
npm run deploy
# or
npm run init
npm run migrate:channel
npm run deploy:channel
npm run migrate:user
npm run deploy:user
npm run migrate:message
npm run deploy:message
移行完了後は、#msd-file
チャンネルは不要になるので削除しても問題ありません
移行をリセットしたい場合は、下記のコマンドを実行することでリセットできます
npm run destroy
# or
npm run destroy:message
npm run destroy:channel
現在はDBにSQLiteを利用しているため、同時書き込みができない制限があります
そのため直列処理でデプロイをしており、デプロイ速度が遅いです
DBを変更し、並列処理でデプロイをできるようにしたいと考えています
Slackにアップロードできる最大ファイルサイズは最大1GBですが、Discordにアップロードできる最大ファイルサイズは最大100MB(※サーバーのブースト最大時)です
そのため、Slackのメッセージの添付ファイルのサイズによっては、Discordにアップロードできない可能性があります
現在、最大ファイルアップロードサイズを超えるファイルはアップロードをスキップする暫定仕様となっています
別ストレージサービスへのアップロードなどのオプション機能は現在ありません
より多くの添付ファイルを移行したい場合は、Discordにアップロードできる最大ファイルアップロードサイズを解放するために、サーバーのブーストを検討してください