Slack自動エクスポートツール※メッセージをスプレッドシートに定期保存
ツールの概要
多くの組織で導入されているコミュニケーションツール「Slack」。
2022年9月1日より、無料プランのメッセージ履歴は過去90日間のみ閲覧できる仕様へと変更になります。従って、90日よりも前の過去のメッセージを閲覧するためには、有料プランに切り替える必要があります。
しかし、有料プランである「プロプラン」についても、2022年9月1日から値上げとなっており、毎月の支払額は「1,050円」となっています。
※参考:Slack公式サイト「プロプランの料金改定とフリープランの最新情報」
できれば無料プランでSlackを利用し続けながらも過去のメッセージにもアクセスできる状態を作りたいと思っている方も多いはず...
そこで、今回Slackのメッセージをエクスポート(バックアップ)するツールを開発しました。
バックアップしたメッセージはGoogleスプレッドシートに保存していきます。
定期実行を設定することも可能で、お好みの頻度でバックアップの処理を自動で実行させることも可能です。
Slackを無料プランで利用されている方におすすめのツールです。
本ツールを利用する上で、プログラミングの知識は必要ありません。多くの方に利用いただけるよう、エクセルやスプレッドシートを利用した経験が少しでもある方であれば、簡単に操作することができる仕様にしております。
Slack自動エクスポートツールの3つのPOINT
POINT1:Slackのメッセージをスプレッドシートに一括バックアップ
- Slackの取得可能なメッセージ(無料プランの上限1万メッセージ)を全件取得し、スプレッドシートにバックアップします。
- チャネルごとにバックアップするかを選択可能です。
- チャネルごとに出力先のファイル・シートを指定することもできます。
- メッセージに対するスレッドも取得することができます。
※参考:スプレッドシートへの出力イメージ
POINT2:定期実行を設定すれば、自動でバックアップ可能
- 定期実行(トリガー)を設定することで、定期的にバックアップを自動化することができます。
- 定期実行の間隔は月単位、週単位、日単位などお好きな間隔で設定することできます。
POINT3:入力とクリックのみ!初心者でも安心の簡単操作
- 操作は入力とクリックのみで、専門的な知識は必要ありません。
- エクセルやスプレッドシートを利用した経験が少しでもある方であれば、簡単に操作することができます。
*Slack自動エクスポートツールのご利用イメージ*
STEP1:ご購入されたGoogleスプレッドシートをコピー
購入されたGoogleスプレッドシートは安全のため、閲覧権限のみに制限しています。
スプレッドシートのツールバーにあります「ファイル」→「コピーを作成」で編集権限のあるコピーシートが作成されます。
コピーシートにはプログラムも一緒にコピーされますので、コードを編集する必要性は全くありませんので、ご安心ください。
STEP2:Slackの「Botトークン」を取得し、設定シートに入力
本ツールをご利用いただくためには、SlackのWebサイトにて「Botトークン」を取得する必要がございます。
Botトークンを取得しましたら、設定シートのBotトークン貼り付け箇所に入力します。
※「Botトークン」の取得方法につきましては、本ツールの「設定シート」にて、スクリーンショット画像と共に具体的に解説しておりますので、そちらをご確認いただきながら取得いただければ幸いです。
STEP3:ツールバーの「メニュー」より「チャネルを更新」をクリック
ツールバーに本ツール独自の「メニュー」が用意されています。「メニュー」より「チャネルを更新」をクリックしてください。
「チャネルを更新」をクリックしましたら、「チャネル一覧シート」にご自身のSlackの情報(チャネルID、チャネル名)が出力されます。
STEP4:「チャネル一覧シート」で各種設定情報を入力
「チャネル一覧シート」にて各種設定情報を入力します。
「出力対象」の項目については、必須の内容になりますので、ご注意ください。
<チャネル一覧シートで入力する情報>
- 出力対象(必須):バックアップをしたいチャネルである場合は「YES」を入力します。
- 出力先スプレッドシートURL(任意項目):バックアップデータの出力先スプレッドシートを指定することができます。URLを入力して下さい。※出力先スプレッドシートを指定しない場合、専用のスプレッドシートが自動生成されます。
- 出力シート(任意項目):出力先スプレッドシートURLを指定した場合、出力先シート名を指定します。※出力先スプレッドシートを指定しない場合、シートが自動で指定されます。
STEP5:出力対象に「YES」を選択したチャネルにアプリを追加
出力対象に「YES」を選択したチャネルには、Slack上にてアプリを追加します。
追加するアプリは「STEP2:Botトークンの取得」にて作成したアプリです。作成したアプリをチャネルに追加することで、バックアップ処理ができるようになります。
Slackにてチャネルにアプリを追加する具体的な手順については下記の手順をご覧ください。
<Slackのチャネルにアプリを追加する手順>
1:出力対象に「YES」を選択したチャネルを開きます。
2:左上のチャネル名をクリックします。
3:表示されたポップアップウインドウのメニューのうち「インテグレーション」をクリックします。
4:Appの「アプリを追加する」をクリックします。
5:「STEP2:Botトークンの取得」にて作成したアプリの「追加」をクリックします
6:チャネルに以下のような内容が表示されれば完了です。
STEP6:ツールバーの「メニュー」より「Slackをエクスポート」をクリック
STEP3同様、「メニュー」より「slackをエクスポート」をクリックしてください。
「slackをエクスポート」を実行すると、「出力対象」を「YES」に設定したチャネルのメッセージのバックアップ処理が実行され、出力先ファイルに出力されていきます。
無事、出力が成功したら「最新出力日時」が更新されます。
出力された内容については、出力先スプレッドシートURLをクリックしてご確認ください。
※参考:スプレッドシートへのメッセージ出力例
【TIPS】自動でバックアップ処理を実行する「トリガー」の設定方法
本ツールのデフォルトでは、メニューの「Slackをエクスポート」を実行しない限り、Slackのバックアップ処理が実行されません。しかし、定期実行を可能にする「トリガー」を設定することで、お好みの間隔(月次、週次、日次など)にて定期的なバックアップ処理が自動で実行されるようになります。
STEP1:ツールバーの「拡張機能」から「Apps Script」をクリック
STEP2:Apps Scriptの左側メニューから「トリガー」をクリック
STEP3:画面右下の「トリガーを追加」をクリック
STEP4:トリガー追加画面にて下記を設定&右下の「保存」をクリック
- 実行する関数を選択:exportSlackを選択
- 実行するデプロイを選択:Head
- イベントのソースを選択:時間主導型
- 時間ベースのトリガーのタイプを選択:お好みのタイミングを設定
- ※おすすめは月一回程度がおすすめです。
ご利用上の注意点
- 本ツールを利用するためには、GoogleアカウントおよびSlackのアカウントが必要になります。
- 本ツールでバックアップできるものは、チャネルのメッセージ情報のみです。
- 出力対象に「YES」を選択したチャネルにアプリを追加せず、「slackをエクスポート」を実行した場合、エラーとなります。ご注意ください。
- 本ツールでは、定期実行を設定された場合、前回との差分となる新しいメッセージが追記される仕様となっています。
- 出力されたメッセージが大量になった場合、スプレッドシートの上限セル数に達する可能性もございます。スプレッドシートの上限に至った場合、出力先ファイルを変更するなどして対応して下さい。
- 本ツールは外部と連携した形で情報を取得しております。場合によっては、一時的に情報が取得できない場合や、情報を取得できなくなるリスクもございます。このリスクについては、予めご了承ください。
- 本ツールを利用することで発生した問題の責任は負いかねます。事前に使い方をテスト、理解した上で、ご利用ください。
- 本ツールは初回利用時、トリガー設定時に「認証・許可プロセス」が発生します。認証・許可を下記の記事を参考に進めて下さい。
- ツールおよびプログラムの著作はGASラボにあります。無断での転載・配布やソースコードのコピーは禁止しております。
- 本ツールは処理時間に上限があります(約6分)。そのため、チャネルや取得するメッセージが大量である場合には、処理を完了できない可能性もあります。必要に応じて、チャネル一覧シートの「出力対象」を絞り込んで、ご利用ください。