Actions on Google で作ったテストアプリを他のユーザからもGoogle Home使用する方法


背景

我が家では家族でGoogle Homeを利用している。
IFTTT連携でもいろいろできるけど、もっと柔軟に使うためにActions on Google使いたいよねってことで試しに自分のアカウントでテストアプリを作成した。
さっそくGoogle Homeで試してみたところ、自分の声では操作できるけど妻の声では操作できない・・・
調べてみたところ、どうやらテストバージョンだと以下の条件でないと使えないらしい
https://qiita.com/doki_k/items/5caff84c03946150aef7

  • セットアップしたアカウントと開発するアカウントが同じ
  • テストアプリを試す人がアカウントリンクをしていない

この条件だと妻のアカウントのアカウントリンクを削除する必要があり、そうするとアカウントに紐付いた情報(カレンダーとか)が取得できない。
なんとかアカウントリンクした状態でもできないか試した結果、方法がみつかった

手順

Action on Googleの細かい設定については他記事を参照
(https://qiita.com/marchin_1989/items/6567c5a62b7a470cfe21)

Google Home⇔Action on Google⇔Dialogflow
を使ってアプリを実装している。

Action on Googleの画面の右上の
「3つの点」→「Manage User Access」を押下
GCPのIAMの画面に遷移するのでそこで必要なユーザ(今回は妻のアカウント)を追加
追加したユーザでログインした状態のまま、Action on Googleのテストを実行する。
問題なくテストが動作すれば成功。これでGoogle Homeからも利用できるようになった

注意点

今回、Google Home⇔Action on Google⇔Dialogflowの連携で試したので他アプリでも問題なく動作するかは不明
GCPのIAM権限についてはGCPのリソースをいじれてしまうので気をつけてください