Edited at

語尾にゲスをつけて返すslack bot(enebular + Firebase)


出オチ

22.PNG

うわああああああ・・・・・


という夢だったとさ

enebularを使って、語尾にゲスをつけて返すbotを作ってみました。

正規表現が甘くて言葉遣いが甘いところも可愛いところ。

24.PNG


つくりかた

フローの全体像はこのようになっています。

23.PNG


Slack関連ノード


Slack Bot In

Bot API Tokenが必要であったため、

以下を参考にしてレガシートークンを取得しました。

Slack APIのTokenの取得・場所

https://qiita.com/ykhirao/items/0d6b9f4a0cc626884dbb


Slack

こちらはWebhook用のURLを取得して投入しています。

SlackのWebhook URL取得手順

https://qiita.com/vmmhypervisor/items/18c99624a84df8b31008


firebase関連ノード

firebaseの初期設定はこちらのブログを参考にしました。

M5StackとFirebaseを使ってenebularとつないでみよう

https://blog.enebular.com/firebase/m5stack-firebase-enebular-collaboration/


firebase modify

Child Pathは任意です。次の、firebase.onと合わせます。

26.PNG


firebase.on()

Child Pathは先ほどのfirebase modifyと合わせる形で。

event typeはchild_addにします。

27.PNG


その他ノード


Switchノード

冒頭の無限ループを回避するためにつけたノードです。

すでにゲス化したメッセージはスルーしてdebugノードに放り投げます。

28.PNG


Changeノード

文字列をゲス化するためのノードです。

29.PNG


debugノード

そのまま繋げるだけで機能します。


そんなこんなで

enebularはライトにNode-REDで遊べていいですね。

ちなみに、冒頭のゲスループは、

投稿を拾ってゲス化して投稿⇒botのその投稿を拾ってさらにゲス化⇒botのその投稿を拾って・・・

のループにより起きました。

slack botを作るときは無限ループにご注意ください。