Google Chat と ChatGPT を連携させる #2

前回の記事[「Google Chat と ChatGPT を連携させる #1」](https://qiita.com/norifumiishii/items/cfe1439906627dcf2bd9)の続きです。
前回はChatGPT API が動くところまで作成しましたので、次はGASでbot化していきます。
# GCPの設定
[「Google Apps Script を使用して Google Chat アプリを作成する」](https://developers.google.com/workspace/chat/quickstart/apps-script-app?hl=ja)を参考にGCPのほうを設定していきます。
## プロジェクトの作成
任意のプロジェクト名でプロジェクトを作成します。
組織は社内で使用しますので、会社のドメインを選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/18bef430-b835-3dbe-8cd7-85e22e7fed2d.png)
## Google Chat API を有効にする
「APIとサービス」でGoogle chat API を検索し、有効にします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/e76a5062-111d-dc59-8003-ff1266de921c.png)
## OAuth 同意画面を構成する
User Type は「内部」を選択し、作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/42f91003-0f9b-f32c-ba95-da6c92373cc7.png)
## アプリ登録の編集
アプリ名は任意で、ユーザーサポートメールは、いったん自分のものでよいでしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/38557cbc-b551-ed84-5b7b-9758e7be27f2.png)

デベロッパーの連絡先情報も、いったん自分のものでよいかと。「保存して次へ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/88826a5f-74a1-803c-7e1f-8c215574ea17.png)

次のスコープの画面では、[参考サイト](https://developers.google.com/workspace/chat/quickstart/apps-script-app?hl=ja)に従い、現時点では特になにもせずに「保存して次へ」をクリックします。
概要が出ますので問題なければ「ダッシュボードに戻る」をクリックして戻ります。

## プロジェクト番号の取得
GCPのメニューから「IAMと管理」を選択しさらに左のメニューから「設定」を選択します。

このページのプロジェクト番号をコピーして控えておきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/cd659d99-8260-1237-8b23-e86330605c34.png)

# GASの設定
## プロジェクトの設定
前回作成しデプロイしたbotにGCPのプロジェクトを紐づけます。
Apps Scriptのプロジェクトの設定を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/04cb4c99-d3f6-6f19-2048-2d951d03b623.png)

中段にある「Google Cloud Platform（GCP）プロジェクト」の「GCPのプロジェクト番号」にさきほどのプロジェクト番号をペーストし、「プロジェクトを設定」をクリックして設定します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/88f1fcf9-ac6e-550b-7131-b9fa1494ebfc.png)
## ヘッドデプロイIDの取得
右上の「デプロイ」から「デプロイをテスト」をクリックし、表示された「ヘッドデプロイID」をコピーします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/c063acc1-9d57-5681-8d48-a96b4d6af50d.png)
# 再びGCPの設定
## Google Chat API の構成
GCPに戻って「APIとサービス」から「Google Chat API」を検索して表示させ「管理」をクリックします。
「構成」タブをクリックして表示させます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/0cce96a4-5f12-f282-d592-ccc2e3c8a1cc.png)

インタラクティブ機能で「スペースとグループの会話に参加する」をチェックし、接続設定は「App Script プロジェクト」を選択。デプロイIDに先ほど取得した「ヘッドデプロイID」を記入します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/a8bf5c1b-3cec-dd92-789d-f5a95f0db836.png)

[公開設定] で [組織内の特定のユーザーとグループ ドメイン] を選択し、メールアドレスを入力します。
「保存」をクリックして保存します。

# ボットをテストする
## テスト用のスペースを開設
Google Chat にテスト用のスペースを開設します。
## botアプリを追加
スペース名をクリックして「アプリと統合」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/d6071413-5a82-4ef3-267e-280ab0ed8925.png)

GCPで登録したアプリ名で検索して、botを追加します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/3025eec7-e0a0-bb6f-4cd0-0ecdd029fb3c.png)
# デバッグへ
さて、これでbotがテストできる状態になったので、つぶやいてみます。
あれ？返答がない。
DMも送ってみますが応答がありません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3840360/c8cd57da-29ab-dc39-3cf3-ac7357f8a72d.png)

ということで次回はデバッグしていきたいと思います。