SwitchBot을 Hub를 통해 API에서 조작

SwitchBot을 API에서 조작하는 방법을 정리해 둡니다.
SwitchBot은 SwitchBot Hub를 통해 인터넷에 연결되어 있다고 가정합니다.

인증 토큰 얻기



우선, API 인증용의 토큰을 취득합니다.
SwitchBot 앱의 設定 > 開発者向けオプション에서 확인할 수 있습니다.開発者向けオプション는 설정 화면에서 アプリバージョン를 10번 정도 누르면 표시됩니다.





SwitchBot 설정



API에서 작업하려면 SwitchBot의 '클라우드 서비스'를 켭니다.


API에서 작업



이 API 문서을 확인하면서 진행합니다.

deviceId 얻기



먼저 SwitchBot deviceId을 얻습니다.Authorization는 처음에 얻은 인증 토큰을 지정합니다.
curl --request GET 'https://api.switch-bot.com/v1.0/devices' \
  --header 'Authorization: 認証用トークン' \
  --header 'Content-Type: application/json; charset=utf8'

아래와 같은 응답이 돌아오므로, SwitchBot의 deviceId를 확인해 주세요.
{
    "statusCode": 100,
    "body": {
        "deviceList": [
            {
                "deviceId": "HubのdeviceId",
                "deviceName": "Hub Plus 2F",
                "deviceType": "Hub Plus",
                "enableCloudService": false,
                "hubDeviceId": "000000000000"
            },
            {
                "deviceId": "SwitchBotのdeviceId",
                "deviceName": "Bot EC",
                "deviceType": "Bot",
                "enableCloudService": true,
                "hubDeviceId": "hogehoge"
            }
        ],
        "infraredRemoteList": []
    },
    "message": "success"
}

SwitchBot 작업


deviceId를 확인한 후 아래 요청을 보냅니다.
URL에 SwitchBot deviceId을 지정하십시오.
curl --request POST 'https://api.switch-bot.com/v1.0/devices/SwitchBotのdeviceId/commands' \
  --header 'Authorization: 認証用トークン' \
  --header 'Content-Type: application/json; charset=utf8' \
  --data-raw '{
    "command": "press",
    "parameter": "default",
    "commandType": "command"
  }'

간단하네요!
그 외의 조작도 문서에 기재되어 있으므로, 여러가지 할 수 있을 것 같습니다.

좋은 웹페이지 즐겨찾기