このページでは、Google Apps Script を使用して Google Chat で動作する Google Workspace アドオンをビルドする方法について説明します。
Chat アプリでは、ユーザーがアプリに直接メッセージを送信すると、アプリがメッセージをエコーバックして応答します。
次の図は、アーキテクチャとメッセージング パターンを示しています。
上の図では、Apps Script Chat アプリを操作するユーザーの情報フローは次のようになります。
- ユーザーが、ダイレクト メッセージまたは Chat スペースで Chat アプリにメッセージを送信します。
- Google Cloud にある Apps Script で実装された Chat アプリのロジックが、メッセージを受信して処理します。
- 必要に応じて、Chat アプリのロジックを Google Workspace サービス(カレンダーやスプレッドシートなど)や、Google サービス(Google マップや YouTube など)と統合できます。
- Chat アプリのロジックが、Chat の Chat アプリ サービスに応答を返します。
- 応答がユーザーに配信されます。
目標
- 環境をセットアップする。
- スクリプトをセットアップする。
- Chat アプリを構成する。
- Chat アプリをテストする。
前提条件
- Google Chat にアクセスできる Business または Enterprise の Google Workspace アカウント。
- Google Cloud プロジェクト。作成するには、 Google Cloud プロジェクトを作成するをご覧ください。
環境をセットアップする
Google Cloud コンソールでクラウド プロジェクトを開く
まだ開いていない場合は、このサンプルで使用するクラウド プロジェクトを開きます。
- Google Cloud コンソールで、[プロジェクトを選択] ページに移動します。
- 使用する Google Cloud プロジェクトを選択します。または、[プロジェクトを作成] をクリックし、画面の指示に従います。Google Cloud プロジェクトを作成する場合は、プロジェクトの課金を有効にする必要がある場合があります。
Chat API を有効にする
Google API を使用する前に、Google Cloud プロジェクトで API を有効にする必要があります。1 つの Google Cloud プロジェクトで 1 つ以上の API を有効にできます。Google Cloud コンソールで、Google Chat API を有効にします。
OAuth 同意画面を構成する
OAuth 2.0 を使用するすべてのアプリには、同意画面の構成が必要です。アプリの OAuth 同意画面を構成すると、ユーザーとアプリの審査担当者に表示される内容が定義され、後で公開できるようにアプリが登録されます。
- Google API Console で、メニュー > [Google Auth Platform] > [ブランディング] に移動します。
- Google Auth Platform をすでに構成している場合は、[ブランディング]、[対象]、[データアクセス] で次の OAuth 同意画面の設定を構成できます。[**Google Auth Platform はまだ構成されていません**] というメッセージが表示されたら、[**スタートガイド**] をクリックします。
- [アプリ情報] の [アプリ名] に、アプリの名前を入力します。
- [**ユーザー サポートメール**] で、ユーザーが同意について問い合わせる際に使用するサポートのメールアドレスを選択します。
- [続行] をクリックします。
- [対象] で [内部] を選択します。
- [続行] をクリックします。
- [連絡先情報] で、プロジェクトに対する変更の通知を受け取る [メールアドレス] を入力します。
- [続行] をクリックします。
- [完了] で、Google API サービスのユーザーデータに関するポリシーを確認し、同意する場合は [Google API サービス: ユーザーデータに関するポリシーに同意します] を選択します。
- [続行] をクリックします。
- [作成] をクリックします。
- 現時点では、スコープの追加はスキップできます。 今後、 Google Workspace 組織外で使用するアプリを作成する場合は、[ユーザータイプ] を [外部] に変更する必要があります。次に、アプリに必要な承認スコープを追加します。詳細については、OAuth 同意画面を構成するの完全なガイドをご覧ください。 OAuth 同意画面を構成するの完全なガイドをご覧ください。
スクリプトをセットアップする
スクリプトをセットアップするには、Apps Script の [**スタートガイド**] ページの Chat アプリ テンプレートを使用します 。
Apps Script プロジェクトを作成する
Apps Script の [**スタートガイド**] ページで、 [**Google Workspace アドオンのスターター**] に移動し、[**Chat アプリ**] テンプレートをクリックします。
開いた新しい Apps Script プロジェクトに名前を付けます。
[無題のプロジェクト] をクリックします。
[プロジェクトのタイトル] に
Add-on Chat appと入力します。[名前を変更] をクリックします。
今後、特定の Google API を使用する場合やアプリを公開する場合は、クラウド プロジェクトを Apps Script プロジェクトに関連付ける必要があります。このガイドでは、その必要はありません。詳細については、Google Cloud プロジェクト ガイドをご覧ください。
テスト デプロイを作成する
この Apps Script プロジェクトにはデプロイ ID が必要です。次のステップで使用します。
ヘッド デプロイ ID を取得するには、次の操作を行います。
- Chat アプリの Apps Script プロジェクトで、 [デプロイ] > [デプロイをテスト] をクリックします。
- 後のステップで使用するために [ヘッド デプロイ ID] をコピーし、[完了] をクリックします。
Chat アプリを構成する
Google Chat アプリを構成する手順は次のとおりです。
-
[API Console] で
Google Chat APIを検索し、 [Google Chat API] をクリックします。 - [管理] をクリックします。
[構成] をクリックして、Chat アプリを設定します。
- [アプリ名] フィールドに
Add-on Chat appと入力します。 - [アバターの URL] フィールドに「
https://developers.google.com/workspace/add-ons/images/quickstart-app-avatar.png」と入力します。 - [説明] フィールドに
Add-on Chat appと入力します。 - [機能] で、[スペースとグループの会話に参加する] を選択します。
- [接続設定] で [Apps Script プロジェクト] を選択します。
- [デプロイ ID] フィールドに、先ほどコピーしたヘッド デプロイ ID を貼り付けます。
- [可視性] で、[**ドメイン内の特定のユーザーとグループ**] を選択し、メールアドレスを入力します。
- [アプリ名] フィールドに
[保存] をクリックします。
Chat アプリはメッセージに応答する準備ができました。
Chat アプリをテストする
Chat アプリをテストするには、Chat アプリとのダイレクト メッセージ スペースを開いてメッセージを送信します。
信頼できるテスターとして追加したときに指定した Google Workspace アカウントを使用して Google Chat を開きます。
- [**チャットを新規作成**] をクリックします。
- [1 人以上のユーザーを追加] フィールドに、Chat アプリの名前を入力します。
結果から Chat アプリを選択します。ダイレクト メッセージが開きます。
そのアプリの新しいダイレクト メッセージに、「
Hello」と入力してenterを押します。Chat アプリが追加されたことへの感謝とメッセージのエコーバックを行います。
信頼できるテスターを追加する方法と、インタラクティブ機能のテストの詳細については、 Google Chat アプリのインタラクティブ機能をテストするをご覧ください。
トラブルシューティング
Google Chat アプリまたは カードがエラーを返すと、 Chat インターフェースに「問題が発生しました」というメッセージが表示されます。 または「リクエストを処理できませんでした」Chat UI にエラー メッセージが表示されない場合でも、Chat アプリまたはカードが予期しない結果を生成することがあります。たとえば、カード メッセージが表示されないことがあります。
Chat UI にエラー メッセージが表示されない場合でも、 エラーの修正に役立つ説明的なエラー メッセージとログデータを利用できます Chat アプリのエラー ロギングが有効になっている場合は、。エラーの表示、デバッグ、修正については、Google Chat のエラーのトラブルシューティングと修正をご覧ください。
クリーンアップ
このチュートリアルで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、Cloud プロジェクトを削除することをおすすめします。
- Google API Console で、[リソースの管理] ページに移動します。[メニュー] menu > [IAM と管理] > [リソースの管理] をクリックします。
- プロジェクト リストで、削除するプロジェクトを選択し、 [Delete] . をクリックします。
- ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。