見出し画像

スマートプラグ(バルブ)をAPIで制御する

色々な方がスマートプラグの制御について書いていますがMacroDroidのHTTPリクエストだけで完結する簡単な方法がありますので説明したいと思います。

制御に使うのはSmartThings APIなので、SmartThings対応の製品を選んでください。私が試した事があるのはプラグではGosund WP6やSwitchBotプラグミニ、バルブではSwitchBotスマート電球やYEELIGHTスマートLEDライトです。

これらのSwitchBot製品はハブが不要です、またSwitchBot API v1.1を使用する場合はPython環境が必要になりますので、SmartThings APIから制御した方が簡単です。

これらの製品を製品のアプリで認識させた後にSmartThingsアプリのデバイスを追加でSmartThingsから制御出来る状態にしてください。

次にSmartThings APIのPersonal Access Tokenをこちらで取得します。Generate Tokenでトークンを作成後、トークンをコピーしておきます。(トークンが漏洩しないように取り扱いに注意してください)

次にこちらからマクロをダウンロードしてインポートしてください。
※2024/11/08 MediaFireからDropboxにリンクを差し替えました。

ローカル変数のauthorizationに先程取得したトークンを設定してください。設定後にGet Device infomationのアクションをタップしてアクションを試すで実行してください。

成功するとローカル変数のdevice_infoに文字列が取得されますので、その中から制御したい製品のdeviceIdを探します。deviceIdが複数ある場合は、deviceIdの直後にlabelがありますのでそれを使用して区別します。(MacroDroidだと細かい文字列を探すのが大変なのでテキストエディタを使うとわかりやすいです)

制御したい製品のdeviceIdがわかったらローカル変数のdevice_idに設定します。設定後にTurn a switch onやTurn a switch offのアクションをアクションを試すで実行すると製品のON/OFFが制御できるはずです。

公開している記事についてのご意見・ご質問はMacroDroid Discord Japanで承りますので何かありましたらDiscordサーバーにお越しください。

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