Slackのユーザー同士の関係性を表すcsvファイルを出力するツール。出力したcsvファイルをdraw.ioにインポートするとグラフにできる
- 設定したトークンで見る権限のあるチャンネルの一覧を取得する
- 対象ユーザーとしてSlack有料プランの対象ユーザーの一覧を取得する
- 取得した全てのチャンネルから1週間分のメッセージを取得する
- 取得したメッセージを元に関係性csvを書き出す
- メンションしていた場合はメンション元→メンション先 -スレッド内のメッセージの場合はメッセージ送信者→そのスレッド内のそのメッセージより古いメッセージの送信者全員
- 相対的なメッセージ数の多さによって関係性の強さを5段階で算出する
inputフォルダ内にslackApiToken.txtを作成する。内容はメッセージ取得に使うSlackAPIのトークン。 ユーザートークンを指定するとそのユーザーが見られる全てのメッセージを参照するので効果的。
.NETのコンソールアプリとして動作する。 パス指定の都合上、ビルドしてから出来たexeファイルのディレクトリに移動してそこでexeを実行する必要がある。 具体的なコマンドは以下。
- dotnet build
- cd bin/Debug/net6.0
- SlackUserRelationshipVisualizer.exe
- ビルドして出来たexeを実行する
- output/relation_forDrawIo.csvが生成されればOK
- Googleドライブのファイル置き場を開く
- 最新の.drawioファイルを複製する
- 複製したファイルの名前を直近1週間を表すものに変更する
- 複製したファイルをダブルクリックで開く
- 左上の日付オブジェクトのテキストを直近1週間の日付に変更する
- 上部のメニューバーから「配置」>「挿入」>「高度な設定」>「CSV」を選ぶ
- output/relation_forDrawIo.csvの中身をインポートする
- 日付オブジェクトがグラフに被らない様に位置を調整する
- png形式でエクスポートする
- エクスポートした画像をファイル置き場に保存し、Slackに投稿する