3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Bot開発を簡単にしたい

社内で使っているチャットサービス(SlackやTeamsなど)で何かしらのBotを開発する方へ向けて

Botを開発する際にお勧めのツールがあります!!

Node-RED

Node-REDとは?

簡単に説明すると、ローコードのフレームワークです。
線と線を繋いでプログラミングをしていけます。

よく使われている分野として、IoT などをよく聞きますが、
自分はBot開発にも向いていると思っています。

おうむ返しBotを爆速で作る。

長々と説明するより作った方がわかりやすいと思います。( 百聞は一見になんたらですね )
今回は例として、Slack向けにおうむ返しBotを作成します!!

まず、Slack上にアプリを作成します。

Slashコマンドにおうむ返しコマンドを作成します。
スクリーンショット 2020-12-01 13.34.44.png

ngrok 等を使うとlocalで開発をして実際に試すことが可能です。

スクリーンショット 2020-12-01 13.36.41.png

Node-REDでコードを書きます。( 後述で簡単さがわかります!! )

実際に動作を見ます。
/repeat testと入力すると以下のように帰ってきます。

スクリーンショット 2020-12-01 13.39.28.png

どの程度簡単か。。

まず、Node-RED上でのコードを見てみましょう。

スクリーンショット 2020-12-01 13.41.14.png

はい。Node-RED上には、3つのフローしかありません。。これが全てです。
[post]/repeatは、slackからのrequestを受ける部分。
slackへ返却は、おうむ返しするためのコーディング部分。
httpは、前工程で設定した内容をslackへ返しています。

slackへ返却は、おうむ返しするためのコーディング部分。

ここでは本当に簡単なコーディングをしています。

ここの中身は以下です。
スクリーンショット 2020-12-01 13.44.33.png

はい。これだけです。。
変数に一旦データを置くなどしなければ実際3行でかけてしまいます。。

簡単ですよねww

最後に

実際にBotを開発する際にはslackへ返却の部分でもっとゴニョゴニョすれば目的のBotが作成可能です。
今回は、簡単さを見せるために省略してますが、
Slackには、requestを受けてから3秒以内に返却できない場合Messaging APIで返す必要があったり、request時にsignatureの検証などが必要です。
また、当然Slack以外のTeamsやその他APIがあるチャットツールだと同様にbot作成できます。

Node-REDを使用することでとても簡単にBotを開発出来ることが雰囲気だけでも伝われば幸いですw

3
1
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
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?