Google Chat で開発する

このページでは、Google Chat API と Google Chat アプリの概要について説明します。

Google Chat API の概要

Chat API は、スペース、スペース メンバー、メッセージ、メッセージのリアクション、メッセージの添付ファイル、スペース イベント、ユーザーの既読状態など、Chat へのアクセスを許可する gRPC サービスまたは REST リソースとメソッドで構成されています。

コンセプト

次のセクションでは、Chat API のサービス、リソース、メソッドを定義します。

スペース

スペースは、ユーザーやアプリが会話したり、ファイルを共有したりできる場所です。スペースにはいくつかの種類があります。ダイレクト メッセージ(DM)は、2 人のユーザー間、またはユーザーと Chat 用アプリ間の 1 対 1 の会話です。グループ チャットは、3 人以上のユーザーと Chat 用アプリ間の会話です。名前付きスペースは、ユーザーがメッセージの送信、ファイルの共有、共同作業を行う永続的な場所です。

リソースのリファレンス:

使用例については、以下をご覧ください。

メンバー

メンバーは、スペースに参加しているユーザーと Chat 用アプリ、またはスペースに招待されているユーザーと Chat 用アプリです。

リソースのリファレンス:

使用例については、以下をご覧ください。

メッセージ

メッセージには、スペースに投稿されたテキストカードのコミュニケーションが含まれます。メッセージにはファイルを添付できます。メッセージに絵文字を追加して、メッセージにリアクションできます。

リソースのリファレンス:

使用例については、以下をご覧ください。

リアクション

リアクションは、メッセージに対するリアクションとしてユーザーが使用する絵文字(👍、🚲、🌞 など)を表します。

リソースのリファレンス:

使用例については、以下をご覧ください。

カスタム絵文字

カスタム絵文字は、Google Chat で組織内で作成および共有されたカスタム絵文字を表します。カスタム絵文字は、メッセージのコンテンツに含めることも、メッセージへのリアクションとして使用することもできます。

リソースのリファレンス:

メディアと添付ファイル

Media は、Google Chat にアップロードされたファイル(画像、動画、ドキュメントなど)を表します。

メディア リソース リファレンス(RPC では使用できません):

添付ファイルは、メッセージに添付されたメディア(ファイル)のインスタンスです。

リソースのリファレンス:

使用例については、以下をご覧ください。

Space イベント

スペース イベントは、スペースまたはその子リソース(メンバー、メッセージ、リアクションなど)に対する変更を表します。

リソースのリファレンス:

使用例については、以下をご覧ください。

ユーザーの既読状態

ユーザーの既読状態は、Google Chat スペースまたはメッセージ スレッドで指定されたユーザーが最後に読んだメッセージに関する詳細を表すシングルトン リソースです。

Space の読み取り状態リソースのリファレンス:

スレッドの読み取り状態のリソース リファレンス:

使用例については、以下をご覧ください。

ユーザーのスペースの通知設定

ユーザー スペースの通知設定は、Google Chat スペースで指定されたユーザーの通知設定を表すシングルトン リソースです。

リソースのリファレンス:

認証

Chat API を呼び出すには認証が必要です。Chat API の各メソッドには、ユーザー認証(ユーザーの代わりにアクションを実行したりデータにアクセスしたりする場合)またはアプリ認証(Chat 用アプリとしてアクションを実行したりデータにアクセスしたりする場合)のいずれかが必要です。一部のメソッドは、ユーザー認証とアプリ認証の両方をサポートしています。

Chat での認証の詳細については、認証の概要をご覧ください。

クライアント ライブラリ

ほとんどの開発者が Google Chat API を呼び出すには、Python、Java、Node.js などの任意の言語用に公式にサポートされている Cloud クライアント ライブラリを使用することをおすすめします。

Google Apps Script でコーディングする場合は、クライアント ライブラリをインストールする代わりに、高度な Chat サービスを使用します。

Chat 用アプリを構築する

Chat API を使用すると、サービスやリソースを Google Chat に取り込む Google Chat 用アプリを構築できます。Chat 用アプリを構築して、次の操作を行うことができます。

  • ユーザーが入力した構造化クエリまたはフリーテキスト クエリに基づいて情報を取得します。
  • ユーザーから提供された情報を使用して、インシデント レポートやその他のアーティファクトを生成します。
  • 「チームの記憶」の提供やリソースのスケジューリングなど、チームのコラボレーションを強化します。

Chat 用アプリは、次のようなさまざまなアーキテクチャ スタイルを使用して設計できます。

  • インタラクティブ アプリ: ユーザーの操作(名前リンクやスラッシュ コマンドなど)に応答し、カードやダイアログを使用して情報を表示したり、ワークフローを案内したりします。
  • コマンドライン アプリまたは Webhook: 別のシステムからスペースにアラームや通知などのプロアクティブなメッセージを送信します。ユーザーはこのタイプのアプリを直接操作することはできません。
  • イベント ドリブン アプリ: 新しいメンバーの参加など、Chat スペースのアクティビティを登録して対応します。イベントに応答して、アプリはメッセージを送信したり、他のアクションを実行したりできます。

Chat 用アプリの設計について詳しくは、Google Chat 用アプリのアーキテクチャを選択するをご覧ください。

Google Chat API の動作を確認したい場合は、
Google Workspace デベロッパー チャンネルでは、ヒント、テクニック、最新機能に関する動画を公開しています。