この記事は、ちゅらデータAdvent Calendarの24日目です。
結論
Google Chatの構成は、必ずお客様に最初に保存してもらおう!
はじめに
プロジェクトで、お客様に対してGCP上で構築したバックエンドで応答するGoogle ChatのBotを作ったことがありました。
Google Chatは、GCPコンソール上でAPIを有効にし、その上でGoogle Chatの構成情報を作成することで、Gmail経由で利用することができます。
その際に、GCPの特殊性で詰まったことがあったので共有をば。
Google Chatの構成について
※ここでいう構成は、汎用的な用語としての構成ではなく、Google Chatでは所謂設定のことを構成と表記しているので、それに準拠しています。
Google Chatでは、構成情報として
- 名前
- icon
- 説明
- バックエンド設定
- 公開情報
あたりを設定することで利用できるようになるのですが、この公開情報を設定することで、Google Workspace内の特定のユーザーに共有することができるようになっています。
しかしながら、この公開情報には落とし穴が2つありました。
1. Google Cloud Consoleにログインしているユーザーのドメインしか保存できない
例えば、ちゅらデータ社のユーザーである私が構成情報を見ると、その構成情報には「権限のある ちゅらデータ のメンバーが...」というような表記になります。
ただし、今回のようにお客様用に構築する場合には注意が必要で、ログインしているユーザーと異なるWorkspaceのドメインを登録することはできないようになっています。
そのため、自社とお客様とでドメインが異なる場合は、同時に両方のメールアドレスを登録することはできないようになっています。
2. 最初に構成を保存したドメインのグループしか利用ができない
こちらの方が厄介で、Google Chatの構成情報は、プロジェクトに対して1つまでしか設定をすることはできないようになっているため、システム全体を構築した後にこのことに気づいてももう遅いということが十分にあり得ますので、細心の注意を払ってもらいたいところであります。
お客様に用意してもらったGCPプロジェクトにおいて、Google Chatの最初の構成保存を自社でやってしまうと、その構成は自社ドメインで保存した扱いとなり、自社のGoogle Workspaceのグループしか登録ができないようになります。
厳密には、登録自体はできるのですが、GmailでBotを検索することはできても、Chatを開始することができないというような問題に当たってしまいます。
しかも、一度保存した構成情報は、APIを無効化しても保持されるため、一度構成情報を作成してしまうと、リセットすることはできません。
こうなると、対策として
- Googleのサポートを契約して、構成情報を一度削除してもらう
- Google Chatの構成情報のみのプロジェクトを作成してもらう
- グループではなく、全てのユーザーのメールアドレスを列挙する
ということしか手段がとれなくなってしまいます。
場合によってはそこそこ取り返しのつかない事態になりかねないので、最初の構成情報は必ずお客様ドメインで保存してもらうようにしましょう。
終わりに
思わぬ落とし穴がある部分で、焦りました。
皆さんも同じ轍を踏まぬよう、お気をつけください。