Google Chat API のアップデートは、デベロッパー プレビュー版です。この API を使いたいデベロッパーは、Google Workspace デベロッパー プレビュー プログラムからアクセスを申請できます。
Google Chat API がリリースされたことで、デベロッパーがチャットアプリを拡張し、ユーザーが Google Chat と他のシステムとの間でメッセージング データを送受信できるようになりました。このリアルタイム コラボレーションは、チャットアプリの重要な要素であり、インシデント管理、ヘルプデスク サポート、ワークフロー自動化などに使われています。
チャットアプリのリアルタイム コラボレーション機能をさらに強化するため、Google Workspace デベロッパー プレビュー プログラムで提供される Google Chat API をチャットアプリから利用し、アプリケーション ID を使ってスペースやメンバーを作成できるようになったことを発表します。
これまでも、チャットアプリが、ユーザーに代わって、スペースやメンバーを作成することは可能でした。今回より、チャットアプリが独自のアプリケーション ID を使って、スペースやメンバーを作成できるようになります。ユーザーが介入する必要がなくなるため、洗練された自律的なチャットアプリを実現できます。
たとえば、インシデント管理のシナリオでは、チャットアプリがインシデントやサービスの無応答を検出したときに、メンバーのいないスペースを即座に作成できます。チャットアプリは問題の診断やトラブルシューティングを続けて、Chat スペースにメッセージを書き込むことができます。さらに、適切なチームが決定された段階で、インシデント コマンダー、サイト信頼性エンジニア、サポートチームなど、問題の解決に必要な人を追加できます。
この機能は、新しいチャットアプリに固有な OAuth スコープを使って実現します。これらのアプリケーション スコープを使うと、チャットアプリがスペースの作成、メッセージの作成、アプリで作ったスペースの削除などを行うことができます。
新しいチャット アプリケーションのスコープを使うコードスニペットと、アプリケーション ID を使った Chat スペースの作成方法は以下のとおりです。
const auth = new chat.auth.GoogleAuth({
keyFilename: 'credentials.json',
scopes: [
'https://www.googleapis.com/auth/chat.app.spaces.create',
'https://www.googleapis.com/auth/chat.app.spaces',
'https://www.googleapis.com/auth/chat.app.delete',
'https://www.googleapis.com/auth/chat.app.memberships'
]
});
const authClient = await auth.getClient();
chatClient await chat.chat({
version: 'v1',
auth: authClient
});
space = await chatClient.spaces.create({
requestBody: {
spaceType: 'SPACE',
displayName: 'Incident Management space',
customer: 'customers/my_customer'
}
});
以下の方法で使ってみることができます。