Nature remo APIを使って家に誰かいるか確認するショートカットを作成してみた。
どうも!
みなさんNature remo 使ってますか?
我が家では結構活躍してます。
便利なので持っておくといろいろ捗るかもしれませんよ。
今回は、Nature remoに付いている人感センサーを使って家に誰かいるか確認することができないかと思って色々調べました。
そこでお手軽なのがいいので手元のiPhoneのショートカットアプリを使って実現しました。
実際に稼働させると以下のように教えてくれます。
文字列は好きに変更可能ですし、通知センターでの通知も可能ですよ。
用意するもの
必要なデバイスは以下のみ。
- Nature remo(miniではダメです)
- iPhone
準備すること
下準備としてNature remo APIを使用する準備をします。
- https://home.nature.global/ へアクセスしてNature remoのアカウントでログインします。ニコちゃんが出てきてメール認証とかすると入れます。
- ページ内最下部の"Generate Access Token"からトークンを発行します。発行したトークンはあとで使うので無くさないようにメモっておいてください(流出も厳禁です)
これで準備完了です。
概要
Nature remo APIから自宅のRemoのセンサー情報を取ってきて、その中から動体検知センサーが働いた時刻情報を利用して現時刻から何分前に部屋で誰かが動いたということを確認することができるものです。
ショートカットを作成方法
iPhoneのショートカットアプリを使って自分専用のショートカットを作っていきます。
使用するアクションは以下の通り。
これらのアクションを上から順に追加していってください。
- URL
- URLの内容を取得
- リストから項目を取得
- 辞書の値を取得 ×3
- 日付を調整
- 日付間の時間を取得
- 変数に追加
- 結果を表示
では上から順に、
- [URLアクション]に 「https://api.nature.global/1/devices」と入力
- [URLの内容を取得アクション]にマジック変数「URL」をセットし、方法に「GET」を選択、ヘッダを追加して、キーに「Authorization」、テキストに「Bearer あなたのトークン」と入力(「あなたのトークン」の部分に下準備したトークンを入力してください)、もう一つヘッダを追加して、キーに「accept」、テキストに「application/json」と入力してください。
- こんな感じになっていると思います。
- [リストから項目を取得アクション]のリストにマジック変数「URLの内容」をセットし、「項目のインデックス」の「1」を取得するようにします。
- [辞書の値を取得アクション]の辞書にマジック変数「リストからの項目」をセットし、キーに「newest_events」と入力します。
- こんな感じになってると思います。ここまではおまじないみたいなものなので何も考えずにセットしていってください。
- [辞書の値を取得アクション]の辞書にマジック変数「辞書の値」をセットし、キーに「mo」と入力します。
- [辞書の値を取得アクション]の辞書にマジック変数「辞書の値」をセットし、キーに「created_at」と入力します。
- [日付を調整アクション]のマジック変数「辞書の値」をセットし、「0」「時間」を「加算」とセットします。
- [日付間の時間を取得アクション]の最初の日付にマジック変数「調整済みの日付」、2番目の日付に「現在の日付」をセットし、「分」で取得にします。
- こんな感じになっていると思います。
- [変数に追加アクション]の入力にマジック変数「日付間の時間」、変数に「[感知時]」とセットします。
- [結果を表示アクション]の結果に「最終生体反応は 変数[感知時] 分前です。」と文字と変数をセットします。
以上で完成です。
全体はこんな感じになっていると思います。
動かしてみる
では、右下の▶︎を押して実際に動かしてみましょう。
こんな感じになれば成功です。
ちなみにショートカットアプリはSiriからも操作できるので、Siriに尋ねてもこんな感じで教えてくれます。
ショートカットの名前を変えれば実行フレーズも好きに変更できます。
おわりに
Nature remoとiPhoneがあればこんな感じに簡単にプログラミングっぽいことが可能なんですね。
Javascript やPythonなんか勉強すればもっと色々できるんでしょうけど、入門としてはこのショートカットアプリでもいいんじゃないでしょうか。
最後の結果を表示するところを[通知を表示アクション]にしてやれば画面の上から通知が降りてくるようにもできますし、他にも自分の好きなように変更可能ですので皆さんも自分なりに改良してみてはいかがでしょうか。
APIって触ってみたいと思ってたけどまさかこんなに簡単に動かせるものだったとは。
JSONも13日の金曜日の人かと思ってたけどめっちゃ使いやすいなと思いました。
もっと勉強してみます。
また便利そうなのができたら書いてみようと思います。
おわり。