LoginSignup
0
3

More than 5 years have passed since last update.

python3でslackbotの作成(その3:リプライ編)

Last updated at Posted at 2017-10-28

前回

その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を実行している状態でメンションを送ってみましょう。
スクリーンショット 2017-10-28 18.56.47.png
botの名前が変わっているのは気にしないでください。∑d(・ω・*)

リファレンスを見るとmessageには以下の関数があるようです。

関数名 内容
message.reply() 引数をリプライ内容として返信
message.send() 引数をチャンネルに発言
message.react() 引数リアクションをコメントに行う

今回はここまで

次回はチャンネルで発言した際、botが発言してくれる(message.send())を使って行きます。
なるべく早く次の記事に取り掛かります。ε≡≡ヘ( ゚Д゚)ノ急げー!

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3