Node-Redを使用してシェルコマンドを実行する方法

説明

Node-RED は、ハードウェアデバイス、API、オンラインサービスを新しく興味深い方法で配線するためのプログラミングツールです。ブラウザベースのエディタにより、パレットにある幅広いノードを使用して、ワンクリックで実行環境に展開できるフローを簡単に配線することができます。この記事では、node-red でシェルコマンドを実行する方法について説明します。

要件

node-red が組み込まれた Milesight デバイスであれば、どれでも使用できます。ここでは、UG65 ゲートウェイを例として使用します。

設定

1. フローキャンバスを作成し、3 つのノード(inject ノード、exec ノード、debug ノード)をドラッグアンドドロップします。画像のように、3 つのノードを相互に接続します。

2. 各ノードのパラメータを個別に設定します。
inject node:このプラグインは、フローの開始点をマークします。このデモでは、node-red システムの起動から 3 秒後にフローがトリガーされます。関連する設定は、画像に示されています。

exec node:このプラグインは、シェルコマンドを実行するための鍵となります。このプラグインには、実行する必要のある特定のシェルコマンドを入力し、実際の要件に応じて設定してください。

ここで実行するコマンドは、次のとおりです。

source /etc/profile && /usr/sbin/iptables -I INPUT -p tcp –dport 10889 -j ACCEPT

debug node: これはデバッグ専用で、デバッグログを確認するために使用されます。

3. デバッグと実行
すべてのノードを設定後、画像に示すように inject ノード前のボタンをクリックして手動で inject ノードをトリガーし、全体の流れを開始できます。

1 回クリックすると、図のようなポップアップウィンドウが表示され、右側にデバッグログの出力が表示されます。エラーメッセージが表示されなければ、コマンドは正常に実行されています。次に、実際のニーズに応じて検証を進めることができます。たとえば、ポートの有効化または無効化の場合は、ping ツールを使用してテストすることができます。詳細については、ここでは説明しません。

関連記事

Node-REDとプロトコルの統合

ソリューション / IoT サポート


製品選び・導入ガイド

最近の記事

ページ上部へ戻る