経緯
Google Homeからhomebrideを扱うにはhomebridge-gshをインストールする必要があります。githubにあるhomebridge-gshのREADMEを見てみるとhomebridge-config-ui-x(以下ui-x)を介してgoogleまたはgithubのアカウントと紐づけているようです。しかし、現在私はRaspberryPiZeroを使ってスマートホームを構築しており、ui-xを使うには少し非力な気がしています。どうにかui-xを使わずにアカウントを紐づける方法を見つけたのでここに書こうと思います。
#必要なもの
・ウェブ開発者ツールのネットワークモニター(この記事ではFireFoxのものを使用しています)
・homebridge
・homebridge-gsh
・Googleアカウント
#Step 1 (Googleアカウントとの紐付け)
まずはアカウント紐づけに必要なトークンを知る必要があるので、アカウント紐づけを行うページへアクセスします。ウェブ開発者ツールのネットワークモニターを開いたまま、Googleアカウントでログインしてください。ログインし終わったら、ここまでの通信の中にhttps://homebridge-gsh.iot.oz.nu/token
とのトランザクションがあるはずです。そのトランザクションの応答(json形式)のtoken
キーの値(文字列)が目的のデータなので、どこかに保管しておいてください。(Step2で使います)
token:"xxxxxxxxxx"
#Step2 (homebridgeの設定)
Homebridgeのconfig.jsonを書き換えます。場所は環境によって異なると思いますが私の環境では~/.homebride/config.json
でした。
homebridge-gshはプラットフォームを追加するプラグインなのでplatformsの中に書いていきます。plarforms
がなければ自分で書き足してください。
token
の xxxxxxxxxx
の部分はStep1で取得したものを貼り付けます。
platformsはbridgeと同じ階層に書くようにしてください
{
"bridge": {
"name": "Homebridge",
"username": "hogehoge",
"port": 0000,
"username": "hogehoge",
"pin": "000-00-000",
"advertiser": "ciao"
},
"description": "<DESCRIPTION>",
"platforms": [
{
"platform": "google-smarthome",
"name": "google home",
"token": "xxxxxxxxxx",
"notice": "hoge",
}
]
}
各キーの意味について
キー | 型 | 説明 |
---|---|---|
platform | String | 値は固定で"google-smarthome"です。 |
name | String | 任意の文字列です。 |
token | String | Step1で取得したものを入力します。 |
notice | String | 任意の文字列でtokenを漏らさないようユーザーに伝える注意書きです。 |
これらのキーは必須です。必ず追加するようにしてください。
#Step3 (実行)
以下のコマンドを入力して実行します。
homebridge -I
ログに [google home] Connected
と出れば紐づけは成功です
オプションの-Iを忘れずにつけてください。こうすることでhomebridge-gshがhomebridgeに追加されているデバイスにアクセスすることができるようになります。
#Step4 (完了)
あとはgoogle homeアプリをインストールしてGoogleと連携ボタンからhomebridgeを選択すれば快適なスマートホーム生活が待っています。(外出先からも操作できて結構便利です)