LANG SELRCT

コードを書く場所

2020年8月2日日曜日

Slackに投稿された内容をキャッチして外部サービスに飛ばしたい


MISSION 
Slackの特定のチャンネルに投稿した内容をキャッチしてGoogleドライブに飛ばす


KEY 
Outgoing Webhooks


PROCESS 
Googleドライブに受信用のフォルダを作っておく
Googleドライブにファイルを保存するアプリを作る(Google Apps Script)
SlackのOutgoing Webhooksでアプリを作る


というのを、ステップに分けて作っていきます。


STEPS 

STEP1
① Slackでワークスペースのメニューを開きます
② Settings & administrationをクリックします
③ Customize WORKSPACE名をクリックします


STEP2
Configure appsをクリックします。


STEP3
検索ボックスに「outgoing webhook」と入力して検索します。


STEP4
Outgoing Webhooksをクリックします。


STEP5
Add to Slackをクリックします。


STEP6
Add Outgoing Webhooks integrationをクリックします。


STEP7
① 対象のChannelを選択します。
② 送信先のURLを入れます。(今回はGoogle Apps ScriptのWebアプリのURL)


STEP8
Save Settingsをクリックします。


STEP9
対象のチャンネルにメッセージを送ります。


STEP10
コード.gsで指定したフォルダにファイルが作成されます。


STEP11
ファイルを開くとJSONデータを確認できます。


関連記事


Google Apps Scriptのコード
これをWebアプリにしてURLをSTEP7の②に入れます。

コード.gs 
function doPost(eventObj) {
  const json = JSON.stringify(eventObj, null, 2);
  create_file(json);
}

function create_file(json) {
  const content_type = "application/json";
  const file_name = "Slack Message";
  const blob = Utilities.newBlob("", content_type, file_name);
  const file = blob.setDataFromString(json, "UTF-8");
  const folder = DriveApp.getFolderById("FOLDER_ID");
  folder.createFile(file);
}


FOLDER_IDはGoogleドライブのご自身のフォルダを指定します。



最新の投稿

SlackのOutgoing WebhooksでJIRAに課題を作りたい

MISSION SlackのOutgoing Webhooksを利用して、ブログの新規投稿をJIRA課題として作成する。 KEY SlackのRSS設定 Outgoing Webhooksの設定 JIRA API Blogger PROCESS SlackでブログのR...