node.js
過去にNodeJS express製アプリのPOSTアクションを受け付ける処理を実装しました。 久しぶりに引っ張り出して動かしたところ……なぜかformからの内容がundefinedと空になって受け付けない事態に。 nodeJSなんて選択肢が無い時に使うもんで全く勉強が追いついて…
実際のところ config.json { "connectionString": "Your Primary Connection String Here", "interval": 2000 } index.js(node.js版) 新しいライブラリとしてonoffを導入します $ npm install onoffこの状態で const fs = require('fs'); const device = req…
実際のところ shuzo-kino.hateblo.jp でデバイス登録とRasPiにIoT Hub用のnodeJs環境が構築されている状態を想定します。 config.json { "connectionString": "Your Primary Connection String Here", "interval": 2000 } index.js(node.js版) const fs = re…
実際のところ 前提環境 AWS LightSail certbot for apache まずはcertbotを導入。 $ sudo apt install certbotLightsailのnode.js版はデフォではapacheが動いています。 なのでapache用の拡張ソフトを導入します。 $ sudo apt install python3-certbot-apach…
実際のところ もっとスマートな方法はいくらかあったのでしょうが、とりあえず動くものを。ホスト名は"picam"としますまず画像の保存先にてシンプルなサーバーを起動 $ python3 -m http.server 8080 --directory /home/pi/ この状態で [ { "id": "7f2b6b5c.6…
実際のところ ローカルファイルはWEB鯖経由で配信し、それを受け取る様式にします。 画像の配信(http.serverをつかって) 画像の入ったディレクトリで $ python3 -m http.server 8000 node-red側 手前でJSONを以下のように吐き出します [ { "title": "ONE",…
実際のところ データはJSONで出す [{"title":"<b>Apple</b>","description":"This is description of <font color=\"red\"><b>Apple</b></b>.","icon":"https://upload.wikimedia.org/wikipedia/commons/thumb/1/15/Red_Apple.jpg/500px-Red_Apple.jpg"},{"title":"<b>Banana</b>","description":"This is …
これまでjavascriptで時刻文字列を生成するときはgetHours他で必要な情報をとり文字列に結合していました。 Javascript書く時は横着してリファレンスをあまり見ないのですが、ちゃんと読んでみたら……ありましたピッタリなのが。 実際のところ Node-Redで時刻…
shuzo-kino.hateblo.jp の続き 実際のところ <svg x="0" y="0" height="300" viewBox="0 0 100 100" width="300" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> </svg>
これはNode-RedというよりSVGの仕様ですが……SVGにはIMAGEタグにbase64埋込でラスター画像を表示できます。 実際のところ <svg x="0" y="0" height="300" viewBox="0 0 100 100" width="300" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> </svg>
SVGにはviewboxというオプションがあります。 名前の通りで見え方を決めるオプションで 実際のところ 参考もと Manipulate the viewbox · bartbutenaers/node-red-contrib-ui-svg Wiki · GitHub viewBox - SVG: Scalable Vector Graphics | MDN
shuzo-kino.hateblo.jp の続きで、イベント 実際のところ イベントのわりあて 実際にマウスオーバーするとこんな感じでメッセージが表示されます 前回と同様に作っていればスライダーで半径が変わりますが、 ゼロの場合には読みだされないので、使いどころ次…
shuzo-kino.hateblo.jp の続き。 前回のでは直接記述でしたが、今回はこれに変数経由でパラメータを送り込むように作ってみます。 実際のところ 他のノードと同様、変数は"{{msg.payload}}"のような感じで与えます。
ベクター画像であるSVG形式をNode RedのUIでも活用できる「node-red-contrib-ui-svg」を見つけたのでメモ 実際のところ パッケージ「node-red-contrib-ui-svg」を追加するとUIのところに新しいアイコン ノードを開くと、こんな感じの画面が デカデカと出…
Node-redにはfilterノードというのもあり、一定の範囲内では値を読み捨てたり、逆に急激な変化を無視したりできます 実際のところ UIのスライダーとグラフを用いて超簡易フィルターとして使ってみますこの程度だと旨みがないですが、外付けカメラから得られ…
Raspberry Pi 4b でnode redのUIからUSBカメラの内容を表示してみたのですがDockerだとUSBデバイス周りの取り回しが苦労したので本体に直接焼く事にしました。 実際のところ 導入 node-red-contrib-usbcamera を導入 なぜかRasPiの方にアイコンが追加される …
公式の説明にもある通り、Node-Redはデフォでは安全ではありません。例としてwebcamのような接続デバイスを使うパッケージだと、そもそも稼働しない事も。 実際にパッケージ公式の説明にも Browser Support This node will work in all modern browsers, but…
ある程度が大きくなってくると、流石にデータの保存が問題になってきます。 幸い、NodeRedのパッケージにはSQLite3との接続パッケージがあります。 実際のところ node-red-node-sqlite 初期状態ではDBもないので、「新規にsqlitedbを追加」をクリック ローカ…
外部のarduino デバイスとMQTTで通信する 実際のところ MQTT送受信のノードはデフォを使う ただしサーバー自体は引っ張ってくる必要あり実績の多い(らしい)node-red-contrib-aedesを導入。 aedesを設定 ノードをつなぐと、こんな塩梅。 出口が二つあるので…
Injectのオプションで指定できます 実際のところ ループ動作を入れると、こういうマークがつく 使える 秒 日時 日付
shuzo-kino.hateblo.jp で使ったダッシュボードに対し、node-red-node-ui-webcamという拡張を使うと接続元のカメラを使った撮影を利用する事が可能 遠隔地の機体でカメラを使う場合はfswebcamを使う別のノードを利用すること(後述) 実際のところ WEB UIと…
node-REDには他ユーザーの作ったノードを利用できる拡張機能があります。 公式提供のwidgetはちょっとしたダッシュボードを作るのに便利です。 実際のところ パッケージの導入 設定に飛び 「パレット」 ~> 「ノードを追加」で「node-red-dashboard」と入力し…
実際のところ これをUbuntu 20.04LTS on Dockerのnetcatでうけると…… $ netcat -u -l 9999 Thu Oct 06 2022 15:10:13 GMT+0000 (Coordinated Universal Time) 参考もと
実際のところ <html> <head></head> <body> <h1>Time: {{ timestamp }}</h1> </body> </html> Inspectは毎回自分で実行する必要はありますが……。 http://localhost:1880/helloにアクセスすると 参考もと Create an HTTP Endpoint : Node-RED Include data captured in another flow : Node-RED
実際のところ // Create a Date object from the payload var date = new Date(msg.payload); // Change the payload to be a formatted Date string msg.payload = date.toString(); // Return the message so it can be sent on return msg; 参考もと node…
観測範囲では主に自宅IoTまわりの人が使っている(ように思える)node-redを少し弄ってみました node-redは名前の通りnode環境です ちょっと前ならnode.jsな時点で敬遠していたでしょうが、ある程度ツールも作成できるようになったので、まぁええかなと 実際…
nodejsを書いていて、mapだのlistめいた挙動をやりたい……と何となく感じていましたが、世のなか同じ発想の人は多かったようです underscore.jsはEnumbleなデータをガリガリ弄るのに適したライブラリです。 実際のところ ライブラリを読んで使うわけですが、"…
実際のところ 送り手 var net = require('net'); var HOST = 'localhost'; var PORT = 9999; var client = new net.Socket(); client.setEncoding('utf-8'); client.setTimeout(1000); client.connect(PORT, HOST, function() { console.log('CONNECTED TO: …
実際のところ トークンの生成 前回と同様、drive.fileのスコープにしないと使えないので注意 スクリプト function downloadFile(auth) { var fileId = 'XXX'; var dest = fs.createWriteStream('/images/photo.jpg'); drive.files.get({ fileId: fileId, alt…
実際のところ トークンの生成 前回のサンプルと異なり、Scopeを変更しないといけません ファイルにアクセスするのは"https://www.googleapis.com/auth/drive.file" 具体的にはこんな感じで書き換わるはず const SCOPES = ['https://www.googleapis.com/auth/…