/slackLogViewer

Slack log viewer

Primary LanguagePHPMIT LicenseMIT

Slack Log Viewer

Slackからエクスポートした会話データを閲覧するビューアーです。

How To Use?

SQLiteの場合

  1. Slackから会話データをエクスポートする。
  2. slackJsonToCsvでエクスポートしたデータをSQLiteファイルに変換する。
    json2csv4slack OUTPUT_JSON.zip other sqlite
  3. slackLogViewerをWEBサーバのドキュメントルートにアップロードする。
  4. WEBサーバ内にDBファイル保管ディレクトリを作成し、SQLiteファイルをアップロードする。
    ※DBファイル保管ディレクトリはHTTPでアクセスできない場所にする。
  5. config/env.php.sampleを元にconfig/env.phpを作成する。
    $dbFilePath$defaultChannelCodeは利用する環境に合わせて設定する。
  6. https://WEBサーバのURL/viewer_channel.phpにアクセスする。

MySQLの場合

  1. Slackから会話データをエクスポートする。
  2. slackJsonToCsvでエクスポートしたデータをMySQLのsqlファイルに変換する。
    json2csv4slack OUTPUT_JSON.zip other mysql
  3. slackLogViewerをWEBサーバのドキュメントルートにアップロードする。
  4. DBサーバ内にsqlを流し込む
  5. config/env.php.sampleを元にconfig/env.phpを作成する。
# 設定例(config/env.php)
define('DB_MODE','MySQL');
$filesDirPath = 'files';
$defaultChannelCode = 'XXXXXXXXXXX';

// DB_MODEがMySQLの場合に適用
define('DB_HOST',     'mysql.example.co.jp');    // データベースのホスト名,IPアドレス,Dockerサービス名
define('DB_NAME',     'sample_slack_log');       // データベース名
define('DB_USERNAME', 'sample_user');            // データベースのユーザー名
define('DB_PASSWORD', 'sample_password');        // データベースのパスワード
  1. https://WEBサーバのURL/viewer_channel.phpにアクセスする。

TIPS

  • 本家Slackと同じユーザアイコンを使用する場合はimg/user_icon/[users.jsonの"id"].jpgを配置する。

    • 利用ツール:getSlackUsersIcon
      getUsersIcon xoxp-XXXXXXXXXXXXX-XXXXXXXXXXXXX-XXXXXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    • 例)
         document_root
            └- img
               └- user_icon
                  ├- /U06UA6TBJ2C.jpg
                  ├- /U06SUUX9UU8.jpg
                  └- /U06S8KEN95L.jpg
      
  • メッセージの添付ファイルを使用する場合は[添付ファイルを保存するディレクトリのパス]/[msgid]_[ファイル名].[拡張子]を配置する。

    • 利用ツール:getSlackAttachmentFiles
      getSlackAttachmentFiles xoxp-XXXXXXXXXXXXX-XXXXXXXXXXXXX-XXXXXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    • config/env.php.sampleを元にconfig/env.phpを作成する。
         <?php
         ...(略)...
         // 添付ファイルを保存するディレクトリのパス(ドキュメントルートから見た相対パス)
         $filesDirPath = 'files';
         ...(略)...
         ?>
    • 例)
         document_root
            └- files
               ├- fcd7ae2e-b469-5784-99c9-92c2ab866175_image.png
               ├- c1c611b2-6c20-5d36-9cf4-151530d9e65e_IMG_0001.jpeg
               └- 8816fe88-63e8-5c48-92d4-05bbd5a1fec3_sample.docx