Node-REDを使ってノーコーディングでLINE botを作ってみよう!! (03_Node-REDからbotユーザーにメッセージを送信しよう)

#はじめに
Node-REDを使ってLINE botを作る記事は調べればでてきますが、最初から最後までノーコーディングで作成している記事はなかったのでここで解説していこうと思います。

データの内容からなるべく詳細に記載しようと思うので、必要な部分のみ参考にして下さい。

当該記事はNode-REDを使ってLINE botを友達登録しているユーザーにメッセージを送信する方法のみになります。
以下目次のリンクより必要記事にアクセスして下さい。

#目次
[01_環境構築編](https://qiita.com/VulpeS404/items/da196c87541b6af9214c)
[02_基礎編～LINE bot作成におけるNode-REDのデータの流れ～](https://qiita.com/VulpeS404/items/ee9e719f37ae535571fd)
[03_Node-REDからbotユーザーにメッセージを送信しよう](https://qiita.com/VulpeS404/items/c2e0db947db1b4c6229c)
[04_オウム返しbotをつくろう](https://qiita.com/VulpeS404/items/640b075b0a9eaaad249f)
[05_LINEから受信したデータの詳細を見てみよう](https://qiita.com/VulpeS404/items/554119209a4469130b98)
[06_ユーザーから送られたメッセージを判定して返事を返そう](https://qiita.com/VulpeS404/items/308f599660a79d2c457e)
[07_Node-REDとCloudantDBを連携させよう](https://qiita.com/VulpeS404/items/0d73963177d5829bc5a9)
08_ユーザーとやりとりできるbotをつくろう
09_おすすめの〇〇を紹介するbotをつくろう
[99_各nodeの解説まとめ](https://qiita.com/VulpeS404/items/0ce3057451d18f4d87ec)

#3. Node-REDからbotユーザーにメッセージを送信しよう概要
今回は第3回目にしてようやく第1回でやった環境構築がうまくいっているかの確認をしていきます。
取り上げる題材としてはタイトルの通りNode-REDを使ってLINE botを友達登録しているユーザーにメッセージを送信していこうと思います。

LINE botを友達登録しているユーザーにメッセージを送信すること自体についてはLINE botチャネルのページからメッセージを一斉送信することもできますが、今回はあくまでNode-REDでbotを作るというテーマなのでNode-REDでやります。

本記事は以下の順番で解説していこうと思います。
1．Node-REDの設定最終形
2．各ノードの説明
3．実行してみよう

#3-1. Node-REDの設定最終形
Node-REDを使ってLINE botを友達登録しているユーザーにメッセージを送信するためのNode-RED設定の最終は以下のような形になります。
ノード2個のシンプルな形になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/32576f7f-438d-f20a-2030-bbdda77546d1.png)

#3-2. 各ノードの説明
次に上記ノードの設定等詳細を説明させて頂きます。

###1. injectノード
左にあるパレットの共通に配置されているinjectノードについて解説します。
このノードは、ノード内に設定されているものを後続ノードに流すものになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/4975150a-879a-7f83-6034-c5540733b984.png)

実際にドラッグして配置してみると以下のようになります。
デプロイ後左の□ボタンを押すことでinjectが起動します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/70dd34ce-daee-abcc-004a-7bb31665a084.png)

ノードをダブルクリックして中をみてみましょう。
名前を設定するとノードに書かれている名称（画像ではタイムスタンプ）が変更されます。
その下にあるのがinjectを起動した時、どんなデータを後続に流すか設定するものになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/f8d44373-3090-de59-e3e4-7d4def33bd88.png)

以下のように設定してみましょう。
2行目は不要なので削除し、1行目のmsg.payloadを文字列に設定し、botユーザーに送信したいテキストを入力します。
今回は「テストだよ」と送信しようと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/da2f09f0-c2fa-4be8-c19f-86a7b81b579e.png)

###2. Pushノード
次にパレットLINEに格納されているPushノードを使います。
次回以降の記事ではReplyノードを使いますが、Pushは友達登録しているユーザー全員にメッセージを送信するノードに対し、Replyはメッセージを送信したユーザーにのみメッセージを送信するノードになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/519f8cc3-997e-2893-b582-ed65d82e21f0.png)

ノードをダブルクリックしてみましょう。
ここで設定が必須なのは以下の3つです。
・Secret
・AccessToken
・User Id or Group ID

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/1afe9806-1180-916c-5e70-8abf28202c04.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/442ea63a-a73e-84bd-06ac-50d8fe8d8e43.png)

[環境構築編](https://qiita.com/VulpeS404/items/da196c87541b6af9214c)でも書いていたチャンネルアクセストークンとチャネルシークレットを入力します。
"User Id or Group ID"についてはbotのチャネル基本設定タブの一番下の方にある"あなたのユーザーID"を入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/d1e4c8ae-6145-bec8-dc5b-d2227f07d61a.png)

以下のように設定し完了を押します。（ユーザーIDは見えなくなってるだけです）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/a83b2b00-3521-bbd8-571a-d3762f2d37ad.png)

#3-3. 実行してみよう
各ノードの設定が完了したら2つのノードを繋ぎ合わせ、右上の"デプロイ"ボタンをクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/d463f746-9b7f-97a8-0bb8-a7dc92fcdc4b.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/c889e0cd-3ead-818e-a05c-9996f08cd37a.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/a3028707-7dc3-5bf7-82ca-c83ad3da46d4.png)

以下のようなポップアップがでれば完了です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/e1f47525-eb3c-91eb-dddb-964b5a81ba18.png)

それではinjectノード左にある□ボタンをクリックし実行しましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/0cf5b6bd-15bd-b7c2-8085-449a1582adb6.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/296399ad-b55b-7a9c-ca67-dfaabffaffde.png)

実行すると以下のようにbotからメッセージが届きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395385/a5cc0b7a-f1a9-6c90-af3f-adfc3f5993ca.png)

#おわりに
以上がNode-REDからbotユーザーへメッセージを送信する方法でした。
次回はオウム返しbotを作っていきます。