夏が近づくと気になるのが熱中症です。そんな中、SORACOM IoT レシピに「IoT で熱中症リスクを多言語でお知らせ」という、まさにタイムリーなレシピが公開されているのを見つけました。

夏へ少しづつ近づいており、熱中症のリスクが高まっていく中、このようなレシピはとても需要があると思います。難易度も★1で初心者向けとなっており、GPSマルチユニット SORACOM Editionがあればできるようです。ただ、RS-LTECO2用の処理や多言語対応など、普段私が使う範囲では不要な機能があったので、少しアレンジして作ってみました。
作成板SORACOM Fluxの全体像

SORACOM Flux上で変更した点は3点です。
- センサーの種類を「GPSマルチユニット SORACOM Edition」だけに絞りました。
- お知らせの言語は日本語のみに。
- 通知方法をGoogle Chatからメールに変更。
具体的にどんなところを変更したのか、そしてレシピ通りに進めていて「おっと?」と少し手が止まってしまった点と合わせてご紹介します。
SIMグループの「バイナリパーサー」の設定
レシピには、「RS-LTECO2」向けのバイナリパーサー設定値が載っていました。
co2:0:uint:16 temp:2:int:16:/10 humid:4:uint:16:/10 interval:6:uint:8
これを「GPSマルチユニット SORACOM Edition」で使っているSIMグループに設定してみたんですが、SORACOM Fluxでエラーが出たり、うんともすんとも言わなくなっちゃいました。
レシピの手順書には「他の温湿度センサーを利用するには ( 例:GPS マルチユニット など )」という記述はあったものの、具体的にどうすれば良いのか最初はちょっと戸惑いました。
いろいろ試行錯誤した結果、最終的にSIMグループのバイナリパーサーには、以下を設定しました。
@gpsmultiunit
これを設定したら、SORACOM Fluxの処理が無事に進むようになりました。
湿温度センサー入力のアクションを1つに変更
元のレシピでは、「RS-LTECO2」向けと「GPSマルチユニット SORACOM Edition」向けで処理が分岐していました。
今回は「GPSマルチユニット SORACOM Edition」しか使わないので、レシピ内の「RS-LTECO2 センサーのデータの前処理」は行わず、「GPSマルチユニットのデータの前処理」だけを実行するようにしました。
具体的には、RS-LTECO2向けに用意されていた下記のような設定は、まるっと省略しています。
[CONDITION] 入力エリアの “アクションの実行条件”
payload.temp != null && payload.humid != null
[CONFIG] 入力エリアの “データを変換する”
{
"temp": ${payload.temp},
"humi": ${payload.humid},
"co2": ${payload.co2},
"interval": ${payload.interval}
}
こうすることで、SORACOM Flux上の処理フローから分岐がなくなって、見た目もスッキリ!設定もわかりやすくなりました。


通知をメールに変更
レシピでは通知先にGoogle Chatを使っていましたが、今回はメール通知に変更してみました。
「多言語アナウンス文の出力」アクションの後に「+アクションを追加」を選んで、「Email通知」を選択するだけです。


[CONDITION] アクションの実行条件: 特に指定なし
[CONFIG]:
- 宛先(To): 通知を受け取りたい自分のメールアドレス
- 件名(Subject): お好みでOK!例えば「熱中症アラート!」など
- 本文(Body): レシピを参考にしつつ、日本語だけになるように調整してみました。
Flux アプリからの通知です!
${payload.output.title.ja}
${payload.output.message.ja}
${payload.output.footer.ja}

これで、GPSマルチユニット SORACOM Editionからの熱中症アラートをメールで受け取れるようになりました。

まとめ
今回は、「RS-LTECO2」を持っていなかったので、「GPSマルチユニット SORACOM Edition」だけでレシピを試してみよう!とチャレンジしました。途中、バイナリパーサーの設定で少し手こずりましたが、それもまた良い経験です。この記事が、同じようにGPSマルチユニットだけで試してみたい方の参考になれば嬉しいです。
実際に作ってみて改めて感じたのは、SORACOM Fluxを使うと、本当に手軽にIoTの仕組みを構築できるんだなということ。アイデア次第で色々なものが作れそうです。
コメント