Skip to main content

Watcher to Node-RED クイックスタート

Node-REDは、ハードウェアデバイス、API、オンラインサービスを新しく興味深い方法で接続するためのプログラミングツールです。

パレット内の幅広いノードを使用してフローを簡単に接続できるブラウザベースのエディタを提供し、ワンクリックでランタイムにデプロイできます。

ユーザーがWatcherからのデータをさまざまなPaaSプラットフォームに接続して、より詳細なデータ処理を行うことを容易にするため、例えばWatcherからIFTTT、Telegram、Twilioなどへの接続において、Watcher & Node-REDのチュートリアルシリーズを提供します。

このチュートリアルは、シリーズの最初のもので、Node-redのインストールと使用方法、およびWatcher APIを呼び出してNode-REDに接続する方法について説明します。

パート1. Node.js®のインストール

Node-REDをローカルにインストールするには、サポートされているバージョンのNode.jsが必要です。

公式のNode.jsホームページから最新の14.x LTSバージョンのNode.jsをダウンロードしてください。お使いのシステムに最適なバージョンが提供されます。

note

ダウンロードしたMSIファイルを実行してください。Node.jsのインストールにはローカル管理者権限が必要です。ローカル管理者でない場合は、インストール時に管理者パスワードの入力を求められます。インストール時はデフォルトを受け入れてください。インストール完了後、開いているコマンドプロンプトを閉じて再度開き、新しい環境変数が確実に読み込まれるようにしてください。

Node.jsをインストールする際、プログラミング環境がインストールされていないコンピュータを使用している場合は、Node.jsのインストール中に必要なツールをインストールするチェックボックスをオンにすることをお勧めします。これにより、多くの必要なトラブルを回避できます。

Node-REDをインストールする最も簡単な方法は、Nodeのパッケージ管理ツールであるnpmを使用することです。ただし、npm 1.xでNode-REDをインストールすることはお勧めしません。代わりに最新のnpm 2.xバージョンにアップグレードすることをお勧めします。

note

Windows(Windows 10以上が必要)では、Win+Rショートカットを使用し、ポップアップウィンドウでcmdと入力してターミナルを起動し、以下のコマンドを実行してください。

MacOSまたはLinuxを使用している場合は、ターミナルで以下のコマンドを実行し、非rootユーザーの場合はコマンドの前にsudoを追加してください。

npm install -g [email protected]

インストールが完了したら、コマンドプロンプトを開いて以下のコマンドを実行し、Node.jsとnpmが正しくインストールされていることを確認してください。

node --version && npm --version

以下のような出力が返されるはずです:

> v16.17.0
> 2.15.12

パート2. Node-REDのインストール

Node-REDをグローバルモジュールとしてインストールすると、システムパスにnode-redコマンドが追加されます。コマンドプロンプトで以下を実行してください:

npm install -g --unsafe-perm node-red

Node-REDがグローバルnpmパッケージとしてインストールされている場合は、node-redコマンドを直接実行します:

node-red

これによりNode-REDのログがターミナルに出力されます。Node-REDを実行し続けるためには、ターミナルを開いたままにしておく必要があります。

これにより、http://localhost:1880 でNode-REDエディターを表示できるようになります。

パート3. Watcherでタスクを実行する

Watcherに何を手伝ってもらいたいかを伝えます。入力ボックスにいくつかのコマンドを入力するだけです。例えば、人を検出したら通知して火災があったら教えてなどです。詳細を知りたい場合は、こちらをご覧ください

Watcherは火災を検出すると、SenseCraft APPを通じて通知し、音声アラートと点滅するRGBライトでお知らせします。

パート4. WatcherからNode-REDにメッセージを送信する

WatcherからNode-REDにメッセージを送信する方法として、SenseCAP NodeとHTTPプロトコルの2つの方法を提供しています。お好みの方法を選択できます。

方法1: SenseCAP nodeを使用する

ステップ1. Watcher APIキーを取得する

SenseCraft APPを開き、以下の手順に従ってOrganization IDAPI Keyを取得してください。これらは後で使用します。

ページ1ページ2ページ3
ページ4ページ5ページ6

ステップ 2. SenseCAP ノードをインストール

三本線のアイコンをクリックし、Manage palette オプションをクリックします。

Install オプションをクリックし、sensecap を入力して検索し、install します。

OpenStreamdebug モジュールをワークスペースエリアにドラッグし、線で接続します。

OpenStream モジュールをダブルクリックすると、サイドウィンドウが開きます。名前を付けて新しいアカウントを作成します。

アカウントに名前を付け、先ほど取得した Organization IDAPI key を入力します。

Done ボタンをクリックしてプラットフォームからすべてのメッセージを取得するか、受信したい特定のメッセージを選択できます。例えば、Watcher のメッセージのみを受信したい場合は、デバイスの Setting -> About Device または Step 6 のメッセージで確認できる EUI コードを入力できます。

Deploy ボタンをクリックします。このボタンはコンパイルと実行ボタンのようなものです。何かを変更した場合は、このボタンをクリックする必要があります。

その後、接続サインが表示され、期待通りに動作していることを意味します。Watcher がメッセージを送信すると、Node-RED でそれらを受信できます。

方法 2: HTTP プロトコルを使用

ステップ 1. HTTP ブロック機能を開く

タスクを実行する際、Detail Configs ボタンをクリックし、HTTP Push Notification を開いて Go Setup をクリックします。コンピューターの IP アドレスNode-RED アクセスポート(デフォルトポートは 1880)を入力する必要があります。その後、Update NowRun Task をクリックします。

ページ 1ページ 2ページ 3ページ 4

ステップ 2. Node-RED での設定

まず、Node-RED にワークフローをインポートする必要があります。

以下のコードを貼り付けて、Import ボタンをクリックします。

[
{
"id": "99b783856e77b41f",
"type": "tab",
"label": "Flow 2",
"disabled": false,
"info": "",
"env": []
},
{
"id": "2791b077ca7367c9",
"type": "http in",
"z": "99b783856e77b41f",
"name": "",
"url": "/v1/notification/event",
"method": "post",
"upload": false,
"swaggerDoc": "",
"x": 450,
"y": 460,
"wires": [
[
"5de4e51231d87d00"
]
]
},
{
"id": "61c50a0666f83a50",
"type": "http response",
"z": "99b783856e77b41f",
"name": "",
"statusCode": "200",
"headers": {},
"x": 830,
"y": 460,
"wires": []
},
{
"id": "5de4e51231d87d00",
"type": "function",
"z": "99b783856e77b41f",
"name": "",
"func": "// here to process data\n// for example, extract alarm info \n// msg.payload = {\n// alertMsg: msg.payload.events.text\n// }\n msg.payload = {\n code: 200,\n msg:\"ok\",\n data: msg.payload\n}\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 660,
"y": 460,
"wires": [
[
"61c50a0666f83a50",
"852490a1c300cd94"
]
]
},
{
"id": "852490a1c300cd94",
"type": "debug",
"z": "99b783856e77b41f",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 840,
"y": 520,
"wires": []
}
]

これで、watcherが人を検出すると、自動的にNode-REDにメッセージを送信します~

パート5. 画像のプレビュー

Watcherからの画像をプレビューしたい場合は、Node-REDにライブラリをインストールする必要があります。

不要な場合は、この部分をスキップできます。

インストール後、出力部分で見つけることができます。画像をプレビューしたい場所にドラッグして接続してください。

このステップは非常に重要です。画像プレビューノードをダブルクリックし、このノードにbase64 urlを入力する必要があります。右上角のDoneとDeployボタンをクリックすることを忘れないでください。その後、Watcherメッセージが再び来たときに画像をプレビューできます~

おめでとうございます!これでWatcherからNode-REDへのデータ送信が成功しました。次のwikiでは、Watcherから他のプラットフォームへのデータ送信方法をご案内しますので、ぜひお試しください~

技術サポート & 製品ディスカッション

弊社製品をお選びいただき、ありがとうございます!弊社製品での体験が可能な限りスムーズになるよう、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、複数のコミュニケーションチャンネルを用意しています。

Loading Comments...