【GAS × Slack】GASでSlack Botを作成しよう！(前半)

### 概要

今回は、Slackにて指定のコマンドを入力すると自分のGoogleカレンダーの予定を取得し、紐付けたSlackチャンネルへ自動投稿することができるBotを作成します！
記事の内容も盛りだくさんになりますので、前半・後半に分けて記事を作成する予定です。

今回紹介する内容で、別の活用方法としては下記のようなこともできるので、ぜひ参考にしてみてください！
- 毎朝◯時に、その日の作業予定をGoogleカレンダーから取得し、Slackに自動投稿する
- 予定の開始時間10分前にSlackへ自動投稿する

※ 前提として、**Slack・Googleアカウントは取得済み**のものとして話を進めます。

### 作業内容

先に、Slack Botを作成するための設定を行なっていきます。

:::note warn
⚠️ Legacy token を使用するのはSlack的に非推奨なため注意してください。
詳細ページは[こちら](https://api.slack.com/legacy/custom-integrations/legacy-tokens)をご覧ください。
:::


#### 1. Slack Botを作成する
- こちらのURL([https://api.slack.com/apps/](https://api.slack.com/apps/))からSlack Botを作成するためのページへ移動する。
- 遷移後、画面右上にある「Create New App」 をクリックする。
<img width="400" alt="image_01" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/b15d9419-73c9-b728-2510-2be4331bc5e2.png">

- 次に、「From scratch」を選択。
<img width="600" alt="image_02" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/b6e75bfd-ef7f-194f-cdef-5cd72f2e0449.png">

- App Name : Slack Botのアプリ名を入力
- Pick a workspace to develop your app in : どのワークスペースにアプリを入れたいか選択する
設定できたら、右下の「Create App」をクリックする。
<img width="600" alt="image_03" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/6358f70c-fd50-a066-97ce-2427f19c4351.png">


#### 2. Slash Commandsを設定する
- 左の欄にある「Slash Commands」をクリック。
<img width="600" alt="image_04" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/994daf61-ebf8-3c37-2c6b-760f79a28547.png">

- Slash Commandsの画面が表示されたら、「Create New Commands」をクリック。
<img width="600" alt="image_05" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/0fcea2d2-7fe3-65ea-81c0-05690805ec35.png">

- するとコマンドやそのコマンドの説明文などを入力できる画面になるので、適宜入力する。
    - Command : Slackで入力するコマンド
    - Request URL : コマンドの実行時にPOSTリクエストを送るURL
        ※ 既にPOST先のURLがある場合は入力、ない場合は後ほど生成したのを入力するので一旦空白で問題ありません。
    - Short Description : コマンドの簡単な説明文
    - Usage Hint : コマンドの使い方のヒント
- それぞれの項目に入力ができたら、右下の「Save」をクリックする。
<img width="600" alt="image_06" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/1b4905aa-8651-2178-55fe-7a577b74c192.png">


#### 3. Slack Botの設定をする
- 次に、左の欄にある「App Home」をクリック。
<img width="600" alt="image_07" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/75a9e236-b4b5-5939-146c-fad54c822e10.png">

- 赤四角で囲っている箇所の「Edit」をクリックし、各項目を入力する。
    - Display Name (Bot Name) : Botの表示名
    - Default username : デフォルトのユーザー名
- 項目の入力ができたら、右下の「Save」をクリックする。
<img width="600" alt="image_08" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/cbc87cdf-bad2-8e52-bd9c-ab77d6c4b2ac.png">
<img width="400" alt="image_09" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/d3b88f05-8b0c-bc21-2ac9-eebf384d7d17.png">

- 次に、左の欄にある「Basic Information」をクリック。
<img width="600" alt="image_10" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/91e06806-ca31-fa06-a75c-932e7bccb169.png">

- 画面の下の方に行き「Display Information」のBot名や説明文の項目を入力する。
<img width="600" alt="image_11" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2669177/39e2d2b5-45a4-485e-9049-8037af90070a.png">



これで、一旦Slack側の設定が完了しました！
思ったより手順はシンプルだったのではないのでしょうか？

後半の記事では、Slack Botの中身部分であるGASのプログラムについて紹介しようと思います。お楽しみに！