初心者がPythonでSlackbotを作ってみた！1 〜Slack初期設定編〜


:::note warn
この記事はプログラミングを始めて5ヶ月の初心者が書いています。間違い等あるかもしれません:bow_tone1:
:::
#目的
Slackで動くBotを作成するためにSlackでの初期設定を行う。

#対象読者
とりあえずSlackで動くBotを作ってみたい人。
今回は、Slackの初期設定のみです。Botの中身の制作は[次回以降](https://qiita.com/hayahaya2/items/d952455ff5fb20808262)！

#方法
###・ Slackのワークスペースを作成する（すでに作成してある場合は不要）。
 1. [こちら](https://slack.com/get-started#/createnew)のページを開き、メールアドレスを入力し、続行するをクリックする。
 1. 「Slackワークスペースを新規作成」で「ワークスペースを作成する」をクリックする。（Slackに関するお知らせをメールで受け取る。のチェックはお好きな方を選択してください。）
 ![slack2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/3ad822af-3cce-a00a-f9dd-6026ebe34159.png)
 1. 「手順1/3 社名またはチーム名を入力してください。」でお好きな名前を入力してください（見本では、「SlackBot制作用」と入力）。
 ![slack3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/d34d3e38-ccb1-3992-2178-d243b448d4b5.png)
 1. 「手順2/3 チームで今取り組んでいることは何ですか？」でお好きな内容を入力してください（見本では、「Botの制作」と入力）。
 ![slack4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/1854c354-89ba-6e0d-4bde-53326f52c8a5.png)
 1. 「botの制作についてメールを1番送信する相手は誰ですか？」でこの手順をスキップするをクリックする（※共同制作したい人がいる場合はメアドを入力し、チームメンバーを追加してください。）。
 ![slack5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/78b7f754-baad-e29e-f130-8664e90f8daf.png)

###・ 作成したワークスペースにSlackアプリ（Bot）を作成する。
 1. [こちら](https://api.slack.com/apps/new)のページを開き、「Your Apps」の「Create New App」をクリックする。
 ![slack6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/e53027fb-9085-a1e3-ae93-6063873bd17e.png)

 1. 「Create an app」の「From scratch」をクリックする。
 ![slack7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/0aa804bb-dc98-0c67-c883-78701d7c8727.png)

 1. 「Name app &choose workspace」の「App Name」にアプリ（Bot）の名前を入力し、「Pick a workspace to develop your app in」にアプリ（Bot）を導入したいワークスペースを選択します（見本ではそれぞれ「はやはや」、「SlackBot制作用」と入力）。

 ![slack8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/863eed4e-3d98-3aec-5e79-372dc04e61f0.png)
 
###・ Slackアプリ（Bot）の設定を行う。
 1. 左サイドメニューバーの「Basic Information」をクリックし、「Add features and functionality」の「Bots」をクリックする。もしくは、左サイドメニューバーの「App Home」をクリックする。
 ![slack9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/cb450f8a-e510-1c66-9595-d0aaaf28e9ed.png)
 1. 「Your App's Presence in Slack」の「App Display Name」の「Edit」をクリックする。
 ![slack10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/154179ed-369c-9e92-6535-e59fa50f52e7.png)
 1. 「Display Name(Bot Name)」にBotの名前を入力し、「Default username」に半角英数字でデフォルトの名前を入力し、「Add」をクリックする（見本では、それぞれ「はやはや」、「hayahaya」と入力）。
 ![slack11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/e9dcd1a2-eeb3-f388-ce7a-8e77ad2275d9.png)
 1. 左サイドメニューバーの「OAuth & Permissions」の「Scopes」の「Bot Token Scopes」の「Add an OAuth Scope」をクリックし、`chat:write`を選択する。
 ![slack13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/797d4e84-69ae-0e21-5e66-ec84438c6ffc.png)
 1. 左サイドメニューバーの「Install App」の「Install App to Your Team」の「Install to Workspace」をクリックし、「許可する」をクリックする。
 ![slack14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/3ac90f97-e701-d5be-d4c7-f36927a4c81d.png)
![slack15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/e8930d90-9109-695a-5b9c-4d86febde9fd.png)
 1. あとでBotをPythonで操作するときに使用するので、「Bot User OAuth Token」をCopyしておく。
 ![slack16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/cfeb9f02-e650-2559-38aa-4fad23473329.png)
 1. 左サイドメニューバーの「Basic Information」の「App-Level Tokens」の「Generate Token and Scopes」にクリックし、「Token Name」にお好きな名前を入力し、「Add Scope」をクリックし、`connections:write` を選択する。    
 ![slack17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/62f5bca9-14e3-2c15-719d-0ac4720cc700.png)
![slack19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/234d1744-0111-2497-5954-f5f523331ba7.png)
 1. あとでBotをPythonで操作するときに使用するので、「Token」をCopyしておく。  
![slack20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/76a3d771-b229-b25c-2f26-012c07ed78e9.png)
 1. 左サイドメニューバーの「Socket Mode」をクリックし、「Enable Socket Mode」をONにする。
 
#最後に
お疲れ様でした！以上で、Bot制作のためのSlackの初期設定は完了です:grin:
次回は、Slackbotを起動させる方法についてを説明していきます:sunglasses:

#参考
https://slack.dev/bolt-python/ja-jp/tutorial/getting-started

#関連
https://qiita.com/hayahaya2/items/d952455ff5fb20808262