前回
その2:python実行編
前回の投稿から時間が空いてしまいました。人( ̄ω ̄;) スマヌ
前回はbotがとりあえず返信できるところまで行いました。
今回は特定のワードで指定された文言を返すようにしましょう。
ディレクトリの構成
slack_bot/
├─ plugins/ NEW!
│ ├─ __init__.py
│ ├─ bot_listen.py
│ └─ bot_mention.py
├─ run.py
└─ slackbot_settings.py
pluginsのフォルダに上記のように3つのファイルを作成しましょう。
__init__.pyはプラグインを読み込ませるだけなので空のファイルで大丈夫です。
プラグインの追加
slackbot_setting.py
# -*- coding:utf-8 -*-
API_TOKEN = 'xxxxxxxxxxxxxxxxxxxxx'
default_reply = 'ナニイッテルカワワケワカラン'
PLUGINS = [
'plugins',
]
slackbot_setting.pyにPLUGINSを追記しましょう
メンションを送ってみる
bot_mention.py
from slackbot.bot import respond_to
@respond_to('こんにちは')
def hello(message):
message.reply('どうもこんにちは!')
"こんにちは"というメンションが送られてきたら"どうもこんにちは!"と返信するようにになっています。非常に簡単ですね。
python3 run.py
くどいようですがrun.pyを実行している状態でメンションを送ってみましょう。
botの名前が変わっているのは気にしないでください。∑d(・ω・*)
リファレンスを見るとmessageには以下の関数があるようです。
関数名 | 内容 |
---|---|
message.reply() | 引数をリプライ内容として返信 |
message.send() | 引数をチャンネルに発言 |
message.react() | 引数リアクションをコメントに行う |
今回はここまで
次回はチャンネルで発言した際、botが発言してくれる(message.send())を使って行きます。
なるべく早く次の記事に取り掛かります。ε≡≡ヘ( ゚Д゚)ノ急げー!