Actions on Googleでapi.aiを使ってGoogle Homeに何か言わせてみる

2017年11月22日追記:
この記事を公開したちょっとあとくらいにapi.aiはDialogflowに変わっていますが、名前以外は大きく変わった点は無いはずなので、適宜読み替えてください :bow:


はじめに

2017年10月6日、ついに日本でGoogle Homeが発売されました。
というわけで、早速買ってapi.aiのGoogle Assistant Integrationを使ってGoogle Homeに色々と言わせてみたので、簡単にやり方を紹介します。

Actions on Google

まずはじめに、次のURLからActions on Googleにアクセスしてプロジェクトを作成します。
https://console.actions.google.com/?pli=1

プロジェクトを作成

Add/import projectをクリックしてプロジェクトをインポートまたは新規作成します。
もしGoogle API Consoleで既に別のプロジェクトがある場合は、それを選択することも可能ですが、無い場合は入力した名前で新たにプロジェクトが作成されます。
入力が終わったらCREATE PROJECTを押しましょう。

作成が完了すれば、次のような画面が表示されます。

もし正常に作成されなかった場合、次のようなメッセージが表示されます。

この場合、作成が完了したっぽメールも届きますが成功していないので、もう一回CREATE PROJECTを押してみてください。

すると、今度は成功するはずです。

api.aiを使えるようにする

Actions on Googleの画面から、API.AIの右下にあるBUILDをクリックします。

すると、次のような画面が表示されるので、CREATE ACTIONS ON API.AIをクリックします。

ウィンドウが出てきたら、Google Homeでログインしているアカウントを選択します。

アクセスを許可します。

また別の権限を求められるので右下の「AUTHORIZE」をクリックします。

これもGoogle Homeでログインしているのと同じアカウントを選択します。

アクセスを許可します。

次のような画面が出てくるので、説明や言語設定を変えて右上の「SAVE」をクリックします。

これでapi.aiを使う準備ができました。

api.aiにIntentを追加する

api.aiの画面のIntentsの少し左にある「+」ボタンを押すと、次のようにIntentを追加する画面が出てきます。
User saysの部分に何を言ったら反応するかを入力し、Text responseの部分に返す言葉を入力します。

Text responseに複数入力すれば、その中からランダムに1つを選んで言葉を返してくれます。
入力が終わったら、右上のSAVEボタンを押しましょう。

Google AssistantのIntegrationを設定する

左のメニューからIntegrationsをクリックし、出てきた画面のGoogle AssistantをオンにしてSETTINGSを押します。

設定ダイアログが出てくるので、右下のAUTHORIZEを押します。

アカウントを選択します。

許可します。

右下がUPDATE DRAFTに変わりました。
この画面から、Google AssistantにIntentを設定します。

Welcome IntentGoogle Assistant Integrationを起動したときに最初に動作するIntentです。
デフォルトであれば、「こんにちは」と言います。
先ほど作成したIntentを追加する場合は、Additional triggering intentsの下にあるSelect intentから作成したIntentを選んで追加します。

設定が終わったらUPDATE DRAFTを押して設定を更新します。
更新が完了すると、次のような画面になるので、VISIT CONSOLEを押してコンソール画面に遷移します。

Integrationをテストする

Simulatorの場合

Actions on Googleのコンソール画面の左側にあるSimulatorを押します。
これがGoogle Assistantのシミュレーターです。

先ほど作成したIntegrationを使うには、自分が作成したアプリに繋がなければいけません。
デフォルトでは、「テスト用アプリにつないで」と言うと、起動できます。
まずは「テスト用アプリにつないで」とチャットしてみましょう。

Welcome intentが動作したのがわかります。
では、先ほど自分が作成したintentを動作させてみましょう。

意図したとおりの結果が返ってきましたね。成功です!

Google Homeの実機の場合

Google Homeの実機で、Integrationを作成したGoogleアカウントと同じアカウントでログインされていれば、Simulatorと同じようにテスト用アプリを起動できます。
デモ動画にしてみましたので、よろしければご覧ください(画像をクリックするとYouTubeに飛びます)。


実機でも、意図したとおりの結果が返ってきました!

公開したい場合

もし作成したActionを公開したい場合、Actions on Googleの左側にあるOverviewを押し、アプリの情報を入力して右下のSUBMIT DRAFT FOR REVIEWを押せばGoogleの審査の後、問題なければ公開できると思われます。

詳しくはこちらをどうぞ。
https://developers.google.com/actions/console/publishing

おわりに

今回は、api.aiを利用したGoogle Assistant Integrationの簡単な作り方を紹介しました。
他にもさまざまなことをさせることができるので、ぜひ色々試してみてください!