Stream DeckからNature Remo APIを実行する
前回試したNature Remo APIをStream Deckから実行してみます。
普段からPCの作業でStream Deckを使っていたので、 自室の家電もこれで制御できると便利だなと思っていたところでした。
調べてみるとStream DeckのプラグインにHTTPリクエストを投げられるものがあったので、 Nature Remo APIを叩いて自室の照明をON/OFFするボタンを作ってみました。
環境
- macOS Monterey (Ver 12.3.1)
- Stream Deck (ver5.2.1)
Stream Deckとは
様々なショートカットを各ボタンに割り当てることができるデバイスです。 ボタンの数は6個、15個、32個のものがありますが、ページを切り替えたりフォルダで階層を作ったりと物理的なボタンの数以上の機能を割り当てられるのでかなり便利です。
使い方の例
- よく使うアプリケーションを起動する
- スクリーンショットを撮る
- 頻繁に入力するテキストをボタンで呼び出す
- 動画の再生・停止
- 音量調整・ミュート
Web Requestsのインストール
Stream Deckのプラグインとして、Web Requests
をインストールします。
このプラグインを使えば、キーを押した時にあらかじめ設定しておいたURLにHTTPリクエストを投げることができます。
Stream Deckのストアにアクセスし、
プラグイン
> 開発ツール
にあるWeb Requests
をインストールします。
照明を制御するAPIの確認
照明をON/OFFするために以下のNature Remo APIを使います。
https://swagger.nature.global/#/default/post_1_appliances__appliance__light
https://api.nature.global/1/appliances/{appliance}/light
{appliance}には制御する機器のIDを指定します。
IDの確認方法
Nature Remoのスマホアプリで操作する機器の名称(nickname)を確認します。
今回の場合は「照明」という名称(nickname)です。
次に下記エンドポイントにGETリクエストを送信します。
https://api.nature.global/1/appliances/
JSONでレスポンスが返ってきます。操作したい機器のnicknameが含まれているIDが{appliance}に指定する値です。
Stream Deckにボタンを作成する
機器のIDがわかったら、Stream Deckのアプリを起動して
Web Requests
を実行するボタンを作成します。
照明ONボタンの作成
まず、照明をONにするボタンを作成します。
URLのbutton
パラメータの値としてon
を指定します。
トークンはHeaders
に指定します。Authorization: Bearer
を忘れないように記述してください。
項目名 | 値 |
---|---|
タイトル | 照明ON |
URL | https://api.nature.global/1/appliances/{appliance}/light?button=on |
Method | POST |
Headers | Authorization: Bearer {TOKEN} |
照明OFFボタンの作成
次に照明をOFFにするボタンも作成します。
今度はbutton
パラメータにoff
を指定します。
項目名 | 値 |
---|---|
タイトル | 電気のOFF |
URL | https://api.nature.global/1/appliances/{appliance}/light?button=off |
Method | POST |
Headers | Authorization: Bearer {TOKEN} |
アイコンは好きなものを選びます。 ボタンが作成できたら、実際にボタンを押下して動作確認します。
まとめ
Nature Remo APIをStream Deckから実行してみました。ボタンを押して実際に部屋の電気を点けたり消したりできた時は感動しますね。
これでPCの操作だけでなく、自室の家電制御もStream Deckからできるようになったので万能感があって良いです。