質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Q&A

解決済

1回答

4823閲覧

NodeREDで外部機器からきた連続するレスポンスを配列にする方法

nakachon

総合スコア11

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

0グッド

1クリップ

投稿2017/06/22 00:07

編集2017/06/22 00:08

Node-REDを使って照明器具のゲートウェイとつなげています。

Node-RED側から、照明の状態確認のコマンドをおくるとレスポンスが返ってくるので、それをTemplateに渡し、htmlで表示したいとおもっています。

レスポンスが1個であれば、templateに渡した後、http responseを送れるので問題ないのですが、コマンドの種類によっては下図のように連続してレスポンスが帰ってきます。

イメージ説明

そうすると、最初のレスポンスがきてhttp responseを送ってしまいます。

この連続するレスポンスを全部受けとり、配列にしてTemplateに渡したいのですが、その方法がわからず悩んでいます。

どうか、よろしくおねがいします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

一年経っておりますが後に続く誰かのために回答。
joinノードを使います、下記サンプルでは最後のメッセージから500ミリ秒(0.5秒)待ちます。

Node

1[{"id":"8ce72eee.06934","type":"join","z":"5262cfb.5d6fa3","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\n","joinerType":"str","accumulate":false,"timeout":"0.5","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":930,"y":180,"wires":[["1627e20d.28372e"]]},{"id":"1627e20d.28372e","type":"debug","z":"5262cfb.5d6fa3","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1080,"y":180,"wires":[]},{"id":"b8ee96ab.d9d978","type":"inject","z":"5262cfb.5d6fa3","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":780,"y":180,"wires":[["8ce72eee.06934"]]}]

投稿2018/06/14 12:15

shinobu_osaka

総合スコア456

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nakachon

2018/06/15 04:21

ありがとうございます!まさに求めていた答えでした。
shinobu_osaka

2018/06/15 05:37

お役に立てましたようで何よりです。 またなにかあればいつでもどうぞ。 Node-RedはタグがないのでタイトルにNode-Redを含めるのをお忘れなく。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問