- 印刷する
Tulipからメッセージを送信するには(アプリ内トリガーやオートメーションなど)、Connectorを使用します。これは、すべてのTulip Edge DevicesにConnector Hostをインストールすることで最も簡単に実行できます。
Tulipエッジデバイス
以下のフローは、TulipトリガーからTulipエッジデバイス上で動作するNode-REDにメッセージを送信するために使用されます:
完了したら、Tulipアプリまたはオートメーションで新しく作成したコネクタを使用して、デバイスコマンドやフロー入力などのメッセージをNode-REDに送信します。
Tulipでコネクタとコネクタホストの設定
注:Tulipのコネクタホストとコネクタ機能に精通していない場合は、こちらの記事をご覧ください。
- TulipインスタンスのConnectorsページから新しいコネクタを作成します。
- 表示されるモーダルで、以下の情報を入力します:
名前:コネクタホストの名前を選択します**:コネクタホストの名前を選択します:** HTTPを選択
- 保存」をクリックします。
- Connector Hostの詳細を指定するには、左側のproduction & testing & developmentボタンをクリックします。表示されるモーダルで、以下の情報を入力します:
Running On:対象のEdge Deviceのコネクタホストを選択します。*注:Edge Deviceのコネクタホストが見つからない場合は、Edge Deviceのポータルに移動し、"Connector Host "が有効になっていることを確認してください。*ホスト:localhost を入力 ポート: 1880 を入力(これは Node-RED が実行しているポートです) TLS: No を入力 ヘッダーや証明書を追加する必要はありません。
- Testをクリックし、接続がパスすることを確認します。最後に [Save] をクリックします。
このコネクタはターゲットエッジデバイスの Node-RED と通信できるようになりました。
Node-RED でHTTP IN ノードの設定
注意:このセクションは Node-RED に精通していることを前提としています。
デバイス上のコネクタホストからメッセージを受信するために、HTTP IN ノードを使用します。
- クリックしてドラッグし、Node-RED エディタの左側にあるパレットから HTTP IN ノードをフローに追加します:
以下の情報を入力します:
以下の情報を入力します:POSTURL :/nodeREDや
/myMachine/0013など
、ユーザーが定義した任意のパス。この URL は Node-RED 内で再利用されるため、認識しやすく覚えやすいものである必要があります。 以下の例では、/test
として URL を設定しています:
- Done "をクリックして変更を保存します。
HTTPリクエストは、サーバー(この場合はTulip)にResponseが返されないと失敗します。
1.HTTP Responseノードをドラッグします。
2.HTTP RequestノードをHTTP Responseノードに接続します。HTTPResponseノードをダブルクリックし、ステータスコードとして200を入力します。完了をクリックします。
{をクリックします。)
:::(Info) (HTTP レスポンスと高度なフィードバック)ステータス コードを変更したり、HTTP レスポンスノードの**+add**ボタンを使用して Connector のレスポンスを変更または追加します。これらのデータ(多くの場合、フローによって生成されたシステムまたはデバイス出力)は、コネクタのレスポンスに表示されます。こちらのガイドを参照して、コネクタ出力を構成してください!これは正しい表現ですか?
- 最後に、パレットからDebugノードをドラッグします。msg.ドロップダウンを使用して「Complete Message Object」を出力するように、このノードを設定します:{height="" width=""}.
このNode-REDフローはTulipからメッセージを受信し、Node-REDデバッグログに表示します。
完成したフローは以下のように表示されます:
右上のDeployをクリックして、すべての変更をコミットします。
Tulipでコネクタ機能の設定とテスト
Node-REDフローの設定が完了したら、Tulipのコネクタに戻ります。
1.新しいConnector Functionを作成する。
2.Connector FunctionをGETからPOSTに変更する。
3.URL に Node-RED で設定したパス(この例では/test
)を入力します。
4.(オプション)コネクタにコンテンツ(メッセージやコマンドなど)を追加するには、コネクタに Input を追加します。
5.(オプション)最初にContent TypeをJSONに変更し、rootに
項目を追加して、InputをRequest Bodyに追加します。
以下のスクリーンショットは、上記で指定した/test
エンドポイントに構成され、testValue
という入力が含まれる Connector を示しています:
Run」をクリックして Connector Function をテストします。成功の 2 つのインジケータが表示されます:
1.Connector Function は、(該当する場合)を含む200 OK
応答を受信する:
1.Connector に設定されたすべての入力 2.Node-RED のHTTP レスポンスノードで設定された追加出力 2.Node-RED のデバッグログに Connector メッセージが表示されます。注:Node-RED の現在のバージョンによって、Connector リクエストボディは、a.msg.payload
または b.msg.req.body
にあります。
両方の成功状態を以下に示します:
コネクタの成功:
Node-RED成功: