手順② HTTPリクエスト・Switchbotコマンドの記述方法

さて、続きましてはHttpの解説です。


まずは動かしたい端末のデバイスIDを

調べる必要があるので

「HTTP リクエスト」タスクで

「HTTP Get」を行います。


先ほどのjavaスクリプトを動かしたことにより

「%SBHeader」という変数が

作成されているはずなので

これをヘッダーとして使用します。

(一度作成したら2~3分間は使い回せる)


で、これを変数「%SwitchBot」に設定し

タスクを走らせます。



さて、これで変数「%SwitchBot」に

デバイスIDが入ったはずなので

Taskerの「変数」で内容を確認、コピーし

メモ帳か何かに張りつけてみます。


成功していれば、SwitchBotに

ログインしてある端末の

デバイスID・名前(Name)・種類(Type)が

列記されているはずです。



で、次はこのデバイスIDをつかって

「HTTP リクエスト」タスクで

「HTTP Post」を行います。


使用するURLは

https://api.switch-bot.com/v1.1/devices/◇◇◇◇◇◇/commands

(この「◇◇◇◇◇◇」に動かしたいデバイスのIDを代入します)


本文(Body)にコマンドを書くことで

switchbotが動きます。



で、肝心のコマンド(本文)の書き方ですが

こちらのサイトからデバイスの種類を確認して

https://github.com/OpenWonderLabs/SwitchBotAPI#send-device-control-commands

それに倣って書くわけです。


たとえば、Switchbotプラグをオンにする

コマンドを書きたい時は、

Plug Mini (JP) の項目を参照し


「{

"command": "turnOn",

"parameter": "default",

"commandType": "command"

}」


と書くわけですね。

({}も含みます)



・・・で、ここで前述したとおり

Hub Miniから外部赤外線リモコンの

コマンドも発行できるわけですが

これがちょっと特殊でして。


というのも、コマンドに

「Hub Miniで名付けたボタンの名前」

を使わなきゃいけないわけですね。


たとえば、加湿器の電源ボタンのコマンドを

Hub Miniでコピーして

これに「On/Off」と名付けたとしましょう。


となると、この「On/Off」を発行するには

次のようなコマンドになるわけです。


「{

"command": "On/Off",

"parameter": "default",

"commandType": "command"

}」


…とまあ、こんな感じで動いてくれます。


ちなみにこの記述、もちろん

Taskerの変数でも記述できるので

ぼくはHTTP Postをこのように組んでます。


─────────────────

A1: HTTP リクエスト / Request

方式: POST

URL: https://api.switch-bot.com/v1.1/devices/◇◇◇◇◇◇/commands

ヘッダー: %SBHeader

本文: {

"command": "%Cmd",

"parameter": "default",

"commandType": "command"

}

タイムアウト (秒): 10

全ての証明書も信頼する: オン

自動でリダイレクトに従う: オン

クッキーを使う: オン

構造を出力 (JSONなど): オン

エラーが発生しても継続:オン

──────────────────


これで%Cmdの値を「turnOn」に設定してやれば

普通に動いてくれます。変数が使えるということは

IF文が使えるわけで、ということは条件式が組めるわけですね。

なんと…なんと素晴らしい…!!


あ、繰り返しになりますが、◇のところはデバイスIDなので

HTTP GETで調べてきてください。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る