コンテンツにスキップ

ファイル保存とメール送信

ファイルノードを利用しファイルを保存、保存したファイルをメールで送信するサンプルとなります。

サンプルフロー(ファイル保存とメール送信)


[{"id":"74fd2d6d.0835d4","type":"rs-file in","z":"3aa0455f.fee6aa","name":"csv読み込み","filename":"jsontocsv.csv","format":"","chunk":false,"sendError":false,"encoding":"none","x":410,"y":4720,"wires":[["9a54ca4b.be9268"]]},{"id":"1c02f267.95fcde","type":"debug","z":"3aa0455f.fee6aa","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":990,"y":4660,"wires":[]},{"id":"485353b.8e834ac","type":"function","z":"3aa0455f.fee6aa","name":"jsonデータ作成","func":"msg.payload=[\n    { a: \"a1\", b: \"b1\", c: \"c1\"},\n    { a: \"a2\", b: \"b2\", c: \"c2\"},\n    { a: \"a3\", b: \"b3\", c: \"c3\"},\n];\n\n\nreturn msg;","outputs":1,"noerr":0,"x":380,"y":4660,"wires":[["55d78625.7ec198"]]},{"id":"9d9ed12.1b54b3","type":"rs-file","z":"3aa0455f.fee6aa","name":"CSVファイル保存","filename":"jsontocsv.csv","appendNewline":true,"overwriteFile":"true","encoding":"none","x":770,"y":4660,"wires":[["1c02f267.95fcde"]]},{"id":"a7d6f89d.210a68","type":"inject","z":"3aa0455f.fee6aa","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":160,"y":4660,"wires":[["485353b.8e834ac"]]},{"id":"55d78625.7ec198","type":"csv","z":"3aa0455f.fee6aa","name":"","sep":",","hdrin":true,"hdrout":true,"multi":"one","ret":"\\n","temp":"a,b,c","skip":"0","x":570,"y":4660,"wires":[["9d9ed12.1b54b3"]]},{"id":"ea2f6030.729fd","type":"e-mail","z":"3aa0455f.fee6aa","server":"smtp.gmail.com","port":"465","secure":true,"tls":true,"name":"","dname":"メール送信","x":930,"y":4720,"wires":[]},{"id":"9a54ca4b.be9268","type":"function","z":"3aa0455f.fee6aa","name":"メールデータ作成","func":"msg.to=\"\";\nmsg.topic = 'robosteinからメール送信テストです。';\nmsg.description = \"本文内容\";\nmsg.filename = \"jsontocsv.csv\"\n\nreturn msg;","outputs":1,"noerr":0,"x":670,"y":4720,"wires":[["ea2f6030.729fd"]]},{"id":"edbfc73b.9aeae8","type":"inject","z":"3aa0455f.fee6aa","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":160,"y":4720,"wires":[["74fd2d6d.0835d4"]]}]

上記を設置すると以下のようなフローが新規に作成されます。

ファイル保存とメール送信サンプルフロー

設置後の設定

このままでは動作しませんので各フローについて以下の設定をおこなってください。

  • メールデータ作成への送信
項目名 説明
msg.to 宛先のメールアドレスを設定します。
msg.topic メールの件名を設定します。
msg.description メール本文を設定します。
msg.filename 添付ファイルのファイル名を設定します。
  • メール送信
    メール送信先を設定します。
    フローエディター画面の「メール送信」ノードのプロパティ画面にある「宛先」「サーバ」「ユーザーID」「パスワード」の変更が必要です。

メール送信の設定について

メール送信ノードで設定する送信先のメールアドレスの設定に関してですが、対象のメールサーバやその設定次第では外からのメール送信を受け付けない場合もありますのでご注意ください。(例えばGsuiteを利用している場合通常Gsuiteのメールアドレスでは送信がおこなえません。) サンプルとしてすぐに動作を確認したい。という事でしたら無料のGmailを新規で作成し、そのアドレスの設定をして頂くとメール送信の確認をおこなえます。

解説

1段目のフローではCSVファイルを作成し、ファイル保存ノードを使いrobostein上に保存しています。
2段目のフローでは、ファイル読み込みノードで作成したCSVファイルをバイナリバッファとして読み込み、CSVファイルをメールに添付して送信します。

これを使って

このサンプルフローを参考にし、

  • 一時的にrobostein上にファイルを保存する。
  • 保存したファイルを定時に送信する。

など、パーツとしての利用やフロー作成の参考にしてください。