さまざまな Firebase サービスを使用して、アクションの機能を設定、実行、拡張します。
Cloud Functions for Firebase
アクションの機能と会話の要素はフルフィルメントで定義します。アクションが外部の API とやり取りする場合や複雑なロジックを必要とする場合、また、データベースに読み込んで保存する必要がある場合は、フルフィルメントが必要になります。Cloud Functions for Firebase では、アクションのフルフィルメントが HTTP ウェブサービスとしてホストされるため、デプロイとメンテナンスをすばやく簡単に行うことができます。
Actions on Google のフルフィルメントには任意の HTTP ウェブサービスを使用できますが、Cloud Functions for Firebase はアクションのフルフィルメントを定義する最も簡単な方法の一つです。
- CLI の構成や追加ライブラリのインポートにかかる時間を最小限にし、エンドポイントを迅速かつシームレスにデプロイできます。
- Cloud Firestore など、他の Firebase クラウド サービスと簡単に統合できます。
- コンピューティング リソースがアクションの使用状況に応じて自動的に調整されるため、サーバーのメンテナンスについて心配する必要はありません。
- クレジット カードや請求情報を入力せずにフルフィルメントを設定できます。
開始するには、Cloud Functions for Firebase のドキュメントをご覧ください。
Firebase Hosting
ユーザー エクスペリエンスを向上させるため、多くのアクションは会話でリッチメディア コンテンツを使用しています。また、このようなコンテンツを使うべきです。テキストだけでなく画像やサウンド クリップを使用するアプリは、見栄えもよく印象に残ります。その結果、ユーザーとのエンゲージメントが強化され、ユーザー維持につながります。
Firebase Hosting を使用すると、アクションで使用する静的なリッチメディア ファイルを簡単にホストできます。詳しくは、Firebase Hosting スタートガイドをご覧ください。
すでに Firebase を利用している場合は、ホストしているアセットをモバイルアプリやウェブアプリで簡単に再利用できます。
Firebase Hosting を使用したこちらのサンプルをご確認ください。アクション ファイルをホストする方法について詳しくは、Firebase Hosting のドキュメントをご覧ください。
Cloud Storage for Firebase
アクションでユーザー固有のファイルが生成される場合は、Cloud Storage for Firebase にそのファイルを保存する場所が表示されます。アクションのレスポンスのログが記録されたテキスト ファイルか、また画像ファイルかは関係なく、ユーザーは自分のコンテンツにどこからでもアクセスできます。
これは、ユーザーのデータが異なるプラットフォームでも利用できることを意味します。たとえば、ウェブアプリがユーザー用の画像を生成するとします。Storage を使用することにより、ユーザーはアクションを介して同じ画像にアクセスすることができるようにになります。モバイルアプリを使用している場合、接続性に問題があるとユーザー ファイルのダウンロードは一時停止しますが、接続が復旧するとダウンロードが再開します。
詳細については、Cloud Storage for Firebase のドキュメントをご覧ください。
Cloud Firestore
アクションで簡単なデータを保存するバックエンドが必要になることがあります。Cloud Firestore は、データの保存と同期を行うクラウドホスト型ソリューションです。
Cloud Firestore は Cloud Functions など、他の Firebase プロダクトや Google Cloud Platform プロダクトとシームレスに統合できるため、Actions on Google と併用するのに最適です。
詳しくは、Cloud Firestore のドキュメントをご覧ください。