本記事では、PythonでSlackbotに絵文字でリアクションさせる方法について紹介します。
Slackbotは会話だけでなく以下のように絵文字でリアクションをさせることも可能です。
簡単なコード実装で実装するので本記事を参考にして作ってみてください。
PythonでのSlackbot作成の基本については「SlackbotをPythonで作成しよう」をお読みください。
◆関連記事
JavaScriptでSlackbotにリアクションをさせよう
目次
Slackのリアクション機能とは?
Slackのリアクションは自分や他の人に投稿したコメントに対してマークをつけることができる機能です。
リアクションのマークをつけることで相手に同意や反対の意思を示すことができます。
下記のように1つのコメントに対して複数のリアクションをすることもできます。
【Python】Slackbotに絵文字でリアクションさせる方法
Slackbotにメッセージで応答させる場合は、「reply」のメソッドを使用していました。
◆Botの応答の記述
def question_1(message):
message.reply('元気です!')
Slackbotにリアクションさせる処理を加える場合は「reply」メソッドを「react」に置き換えるだけでOKです。
◆Botのリアクションの記述
def question_1(message):
message.react('smile')
「react」の引数にはSlack絵文字の代替文字を指定します。
代替文字は以下の画面の下に表示されている「::」で囲まれている文字です。
Slack内から打つ場合は、「:スマイル:」など日本語での記述も可能ですが、Botにリアクションさせる場合はNGです。
◆この記述はエラーとなる
def question_1(message):
# 日本語はNG
message.react('スマイル')
Slackbotのリアクションのバリエーション
Slackbotのリアクションのバリエーションについて紹介します。
複数のリアクションする
応答の処理を並べることで複数のリアクションをすることも可能です。
◆記述方法
def question_2(message):
message.react('bangbang')
message.react('thinking_face')
message.react('woman-gesturing-no')
聞いた言葉によってリアクションを変える
判定文を追加することで聞いた言葉によってリアクションを変えることもできます。
◆記述方法
def question_4(message, group):
if group == 'ラーメン':
message.react('ok_hand')
else:
message.react('bangbang')
message.react('thinking_face')
message.react('woman-gesturing-no')
以上、Botのリアクションについてでした。
SlackbotまとめTOP>>Slackbotの作り方マニュアル〜Python編〜