Node-REDからline-messaging-apiのBroadcast機能を使って送信

1. 概要

PDHからアラーム情報の送信に使用していたLINE Nofityのサービスが、2025年3月末で終了します。後継のサービスとして、LINE Message APIの仕様が推奨されています。注意が必要なのは、Message APIは使用数に制限がある点です。月間200通までなら無料で使用できます(ただし、1回で5人に送ると5通とカウントされます)。

一方で、Node-REDには、Message APIのノード(node-red-contrib-line-message-api)があり、簡単に使用が出来るようになっています(Message APIのインストールに関してはこちらを参照ください)。
ここでは、Line Message APIのブロードキャストメッセージ:1対多(すべての友だち)を使用して、Line Notifyの代わりとして使用する方法を説明します。

2.手順

Node-REDからメッセージを送信するまでの手順を以下に示します。Lineの公式アカウントを作成して、Line Business IDを取得する必要があります。その後にMessage APIを設定し、送信に必要なUser IDやChannel SecretやChannel Access Tokenを取得します。それらをline-messaging-apiに設定することでメッセージを送信することができます。

1) Line Official Account Managerで「Line公式アカウント」を作成します(動画)。
  1-1) Line Business IDの登録
  1-2) お店やサービス情報登録(「Line公式アカウント」の作成)
2) Message APIの設定
3) LINE Developersで、Message APIの情報の確認
  3-1) User ID
  3-2) Channel Secret
  3-3) Channel Access Token
4) Node-REDからメッセージを送信

以下、順に説明していきます。

3. Line Official Account Managerで「Line Business ID」を作成

動画を確認して、Line Business IDを作成してください。

4. Line Official Account Managerで「Line公式アカウント」を作成

① Line Official Account Manager(https://manager.line.biz/)に、Line Business IDでログインします。
② 「作成」ボタンを押します。

③ 記入画面が現れますので、必要事項を記入して、確認ボタンを押します。
④ 確認画面が現れますので、完了ボタンを押します。
⑤ 「Line Official Account Managerへ」を押します。
⑥ いくつか同意画面が出てきます。その後、「ホーム画面」に移動します。

5. Message APIの設定

①右上の「設定」を押します。

②左の「Message API」を選びます。

③ 「Message APIを利用する」をクリックします。

④ 「プロバイダを選択」画面が出てきます。新たに「プロバイダを作成」もしくは、表示されたものから選びます。最後に「同意する」を押します。

⑤ 「プライバシーポリシーと利用規約」の設定画面が出てきますが、何も入れずに、「OK」を押します。

⑥ 設定が完了しました。「OK」を押します。

⑦ Messaging APIの情報が表示されます。次に、LINE Developersに移動します。

6. LINE Developersで、Message APIの情報の確認

① 右上の「コンソール」を押す

② 該当するプロバイダの「admin」ボタンを押す。

③ 該当するチャンネルの「admin」ボタンを押す。

④ チャンネル基本設定の画面が表示されます。下にスクロールすると、チャンネルシークレットとユーザーID情報が表示されます。

  チャンネルシークレットは、Node-REDで使用しますので、コピーしておきます(文字の右にコピーボタンがあります) 。

 ⑤ Message APIの設定のタブをクリックし、下にスクロールすると、チャンネルアクセストークン(長期)が表示されます。表示が無い場合は、「発行」を押します。

  チャンネルアクセストークンは、Node-REDで使用しますので、コピーしておきます(文字の右にコピーボタンがあります)。

7. Node-REDからメッセージを送信

前ページまでで、Message APIを使ったブロードキャストに必要な、チャンネルシークレットとチェンネルトークンを取得しました。
次に、Node-REDのノードを使ってメッセージを送信します。

① Nodeのインストール
Node-REDのフローエディタの画面を開き、パレット管理を使って、 node-red-contrib-line-messaging-apiを検索し、インストールします。インストールに関しては、こちら(3-11. line-messaging-apiノードの追加)を参照ください。


② Broadcastのノードを配置します。

③ Broadcastの設定
  チェンネルシークレットとチェンネルアクセストークンを入力します。

④ Injectノードの設定
  Broadcastノードは、msg.payloadを送信します。インジェクトノードのmsg.payloadに送信するメッセージをセットします。

⑤ 送信テスト
  デプロイして、インジェクトボタンを押します。
  友達登録したアカウントにメッセージが送られます。