見出し画像

Make(旧Integromat)で Nature Remoの環境センサー情報をAutodesk Tandemに送信してみる

前回は、Postmanで仮想の環境センサー情報をAutodesk TandemにPOSTしてみましたが、今回はNature Remoが内部に持つ環境センサー情報をCloud APIで取得し、Tandemに送信してみます。

環境センサー情報を定期的に取得し、Tandemに送信するためには何らかの仕組みが必要になりますが、私はNature Remoの環境センサーから取得した情報をGoogle SheetsにAction Scriptで記録(下図)しています。

GASで環境センサー情報をグラフ化

そのため、最初はこれを流用しようと思ったのですが、Google Action ScriptからTandemにPOSTすると、どうやっても403エラーが返ってきて認証で弾かれてしまいます。

それで、以前、Google Homeで複数の家電製品を操作するために利用していたIntegromat(現Make)で試してみたところ、特にエラーもなくTandemにPOSTできたので、下記のWebサイトを参考に、Makeで簡単なワークフローを作ってみました。

Makeで作成したワークフロー(シナリオ)の全体像です。「Nature Remo
から環境センサー情報(温度・湿度・照度の値)をGET → センサー情報の加工 → Tandemに環境センサー情報をPOST」しています。

ワークフロー(シナリオ)の全体像

まず初めに、定期的(今回は1時間毎)にNature RemoのCloud APIから環境センサー情報をGETするよう、スケジュールを設定します。

Schedule Setting
HTTP(Make a request)

次に、取得したJSON形式の環境センサー情報を、Tandemに送信用のデータ構造に組み替えます。

Aggregate to JSON

最後は、組み替えたJSON形式のデータを、TandemにBasic認証でPOSTします。この時、POST先のURLは「https://tandem.autodesk.com/api/v1/timeseries/models/{FACILITY_ID}/streams/{STREAMS_KEY}」、CredentialsはPasswordのみ「{STREAM_SECRET}」を設定しておくと良いようです。

HTTP(Make a Basic Auth request)

これで、定期的(今回は1時間毎)にNature RemoのCloud APIから環境センサー情報をGETし、Tandemで作成したFacilityのConnectionにPOSTできるようになりました。

ワークフロー(シナリオ)の実行履歴

今回のワークフロー(シナリオ)は操作数3ですが、Makeの無料版は操作数が月間1,000までに制限されているので、1時間ごとに実行すると13日程で制限に達してしまいます。

本格的に使用するなら有料版にプラン変更するか、別の方法を考える必要がありますね。

この記事が気に入ったらサポートをしてみませんか?