Skip to content
This repository has been archived by the owner on Jan 15, 2024. It is now read-only.
/ msd-cli Public archive
forked from tainakanchu/mds-cli

CLI to migrate from Slack to Discord

Notifications You must be signed in to change notification settings

tsukuba-neu/msd-cli

 
 

Repository files navigation

MSD CLI (α)

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にアップロードできる最大ファイルアップロードサイズを解放するために、サーバーのブーストを検討してください

License

MIT

About

CLI to migrate from Slack to Discord

Resources

Stars

Watchers

Forks

Languages

  • TypeScript 100.0%