目次
Slackbotアカウントを作成する
まずはbotアカウントを作成しましょう。
前提として自分のSlackアカウント・botを動かしたいワークスペースは作成済みとします。
・こちらのリンクより、Slackの「Your Apps」に移動する
・右上の「Create New App」ボタンから新しいアプリを作成する
アプリの名前と使用するワークスペースを入力し、Create Appをクリック!
・作成したアプリを選択
・左のメニューから「App Home」を選択
・「Your App’s Presence in Slack」からBotの名前を設定
一応Always Show My Bot as Online(常にオンラインにする)もオンにしておきます。
・左のメニューから「Basic Information」をクリック
下の方にスクロールしていき、Display Informationでアイコンを設定
正方形の画像しか受け入れてもらえないので注意!
・左のメニューから「OAuth & Permissions」を選択
「Bot User OAuth Token」に表示されるトークンをメモしておく。
これでボット作成完了&準備ができました!
次はPythonのプログラムを書いていきます。
PythonでBotを作る
Pythonのバージョンは3系を使用します
$ python -V
Python 3.8.8
デフォルトでユニコードを扱えるので、文字を多く使うであろうBot作成には重宝するようです。
slackbotというライブラリを導入します。
$ sudo apt-get install python3-pip
$ sudo pip3 install slackbot
コマンドを使用し、任意の場所にディレクトリを作成。
$ mkdir bossan
$ cd bossan/
$ touch slackbot_settings.py
$ touch run.py
slackbot_settings.pyには設定を記述します。
さきほどメモったトークンと、Botに喋らせたい言葉を入力しましょう
API_TOKEN = "xxxx-xxxxxxxxxxxxx-xxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx"
# デフォルトの応答文字列
DEFAULT_REPLY = "ばぶばぶ"
run.pyにはBotを起動するコードを記述します。
from slackbot.bot import Bot
def main():
bot = Bot()
bot.run()
if __name__ == "__main__":
print('start slackbot')
main()
一旦これで準備はオーケーです!
Bot起動!のハズが…
ついにBotの起動!
$ python run.py
よろしくお願いしまあああああああす!!!
……あれ?
start slackbot
Traceback (most recent call last):
File "run.py", line 8, in <module>
main()
File "run.py", line 3, in main
bot = Bot()
~~~~~~中略(ファイルパスが表示されているので)~~~~~
slacker.Error: invalid_auth
なんかめっちゃ怒られています。
試しにSlackでボットチャンに話しかけてみましたが反応なし……
次回に続く
調べてみたところ、同じエラー文に苦しむ方々を発見しました。
どうやらトークンが間違っているようですが、すぐには解決できず…
現在まだ調査中です。
解決次第追記します(泣)
解決情報もお待ちしております。
SlackBotへの挑戦は次回につづく…!!