このページでは、Google Chat アプリで実行される Google Chat イベントに Google Workspace Events API で登録できますどちらを使用するかを決定したら 作成する場合は、 受け取り Google Chat で管理できます。
イベントへの登録に加え、 やり取りできます。Chat API を呼び出すと、 定期的にイベントを取得するか、 サービスの停止が原因でサブスクリプションから逃した可能性のあるイベントを学習内容 Chat のイベントを受信して返信する方法については、 Google Chat で Google Chat からの予定 Chat のドキュメントをご覧ください。
サポートされている Chat イベント
Google Workspace サブスクリプションでは、 Chat では次のような変更が行われました。
- 新規、更新、削除されたメッセージ できます。
- リアクションの追加または削除 追加できます。
- 新規、更新、削除されたメンバー できます。
- Space に対する変更 登録しているスペースの情報も更新されます。
イベントをモニタリングできるリソース
イベントを受信するには、モニタリングする Chat リソースを指定し、 これはサブスクリプションのターゲット リソースと呼ばれます。
Google Workspace Events API がサポートしているターゲット リソース Chat の場合:
ターゲット リソース | 形式 | 制限事項 |
---|---|---|
スペース |
ここで、SPACE はファイルの ID です。
<ph type="x-smartling-placeholder"></ph>
Chat API リソースの |
サブスクリプションを承認する Chat ユーザーは、 Google Workspace または Google Chat を通じてスペースのメンバーになる アカウント。 |
1 ユーザーのすべてのスペース |
|
サブスクリプションは、ユーザーが参加しているスペースのイベントのみを受信します。 Google Workspace または Google アカウントからメンバーに登録できます。 |
ユーザー |
ここで、USER はファイルの ID です。
<ph type="x-smartling-placeholder"></ph>
Chat API リソースの |
サブスクリプションが受信するのは、 サブスクリプションを承認しました。ユーザーは次の場所で定期購入を承認できません: 委任することもできます。 |
サブスクリプションを作成するためのイベントタイプ
サブスクリプションを作成するときには、
eventTypes[]
フィールドを使用して、受信するイベントの種類を指定します。イベントタイプは
CloudEvents 仕様に従って書式設定されます。
google.workspace.APPLICATION.RESOURCE.VERSION.ACTION
。
たとえば、ユーザーが Chat に参加したことに関するイベントを受信し、
スペースをターゲット リソースとして指定し、イベントタイプを
google.workspace.chat.membership.v1.created
。特定のイベントに関する
ユーザーが任意のスペースに参加する場合は、そのユーザーをターゲット リソースとして指定し、
イベントタイプとして google.workspace.chat.membership.v1.created
を指定します。詳細情報
イベントの仕組みについては、Google Workspace の構造
できます。
次の表に、サブスクリプションでサポートされているイベントタイプを示します。 ユーザーとサブスクリプションを管理できます。例外について詳しくは、 イベントをトリガーするものについては、制限事項をご覧ください。
イベントの種類 | 形式 | リソースデータ | ||
---|---|---|---|---|
スペースのサブスクリプション | ||||
メッセージが投稿されます。 |
|
|
||
メッセージが更新されました。 |
|
|
||
メッセージが削除された。 |
|
|
||
リアクションが作成されます。 |
|
|
||
リアクションが削除されました。 |
|
|
||
スペースにメンバーが追加された。 |
|
|
||
スペースでメンバーが更新されました。 |
|
|
||
スペースからメンバーが削除された。 |
|
|
||
スペースが更新されます。 |
|
|
||
スペースが削除されます。 |
|
|
||
ユーザーへの定期購入 | ||||
ユーザーがスペースのメンバーになります。
すべての新しいメンバーがイベントをトリガーするわけではありません。詳細については、制限事項をご覧ください。 |
|
|
||
ユーザーのスペースのメンバーシップが更新されます。 |
|
|
||
ユーザーがスペースの直接のメンバーから削除されます。 |
|
|
バッチ イベントタイプ(出力のみ)
登録したイベントタイプを受け取るだけでなく、 Chat アプリはバッチイベントを受信することもあります。バッチイベント 短期間に発生した同じタイプの多数のイベントを表すイベント 表示されます。バッチイベントのペイロードには、変更されたすべてのイベント 説明します。
たとえば、あるユーザーが同時にスペースに 20 人のユーザーを追加した場合、
Chat アプリがバッチイベントを受信することがある
(google.workspace.chat.membership.v1.batchCreated
)。イベント ペイロードに含まれるもの
ユーザーの作成時に作成されたすべての新しい Membership
リソースのリスト
スペースにメンバーを追加しました。
登録するイベントタイプのバッチイベントを受信するため、
サブスクリプションの作成時にバッチ イベントを指定する必要はありません。対象
たとえば、ユーザーが Google Chat で
(google.workspace.chat.reaction.v1.created
)、お客様の
Chat アプリは、バッチ リクエストを受け取るように自動的に構成されます。
リアクション イベント数(google.workspace.chat.reaction.v1.batchCreated
)。
次の表に、サブスクリプションで発生する可能性のあるバッチイベントを示します。
バッチイベントタイプ | 形式 |
---|---|
複数のメッセージが投稿されています。 |
|
複数のメッセージが更新されました。 |
|
複数のメールが削除されました。 |
|
複数のリアクションが作成されます。 |
|
複数のリアクションが削除されました。 |
|
サブスクライブしたスペースに複数のメンバーが追加されたか、サブスクライブしたユーザーが複数のスペースに追加されています。 |
|
サブスクライブしたスペース、またはサブスクライブしたユーザーの複数のメンバーシップが更新される。 |
|
登録したスペースから複数のメンバーが削除された、または登録したユーザーが複数のスペースから削除された。 |
|
スペースに複数の更新があります。 |
|
イベントデータ
このセクションでは、 チャット。
ご利用の Google Workspace サブスクリプションが
Chat では、
data
フィールドにはイベントのペイロードが含まれます。このペイロードには、インスタンスに関する情報と、
変更された Google Workspace リソース。たとえば、
スペースでグループ化すると、そのイベントのペイロードには
概要
spaces.membership
リソースです。
イベント ペイロード内のリソースデータ
サブスクリプションを作成するときに、ペイロードを リソースの詳細、またはリソースの名前のみを含めることができます。対象 たとえば、Chat でメンバーに関するイベントを受け取る場合は、 スペースでは、メンバーシップ リソースのどのフィールドを 指定することもできます。
次の表に、サブスクリプションの JSON ペイロードの例
Chat スペース spaces/AAAABBBBBB
。イベントごとに、
サブスクリプションが受信すると、ペイロードはイベントの data
フィールドに表示されます。
例 | イベントの種類 | JSON ペイロード |
---|---|---|
ユーザーがスペースに「Hello world」というメッセージを投稿します。 |
|
リソースデータが含まれます
{ "message": { "name": "spaces/AAAABBBBBB/messages/CCCCCCCCC.DDDDDDDDD", "sender": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "2023-09-07T21:37:36.260127Z", "text": "Hello world", "thread": { "name": "spaces/AAAABBBBBB/threads/EEEEEEEEEEEE" }, "space": { "name": "spaces/AAAABBBBBB" }, "argumentText": "Hello world" } } リソースデータは除外されます
{ "message": { "name": "spaces/AAAABBBBBB/messages/CCCCCCCCC.DDDDDDDDD" } } |
ユーザーがスペースの管理者になります。 |
|
リソースデータが含まれます
{ "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321", "state": "JOINED", "member": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MANAGER" } } リソースデータは除外されます
{ "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321" } } |
ユーザーがスペースの説明を「Cymbal Labs のセールスチーム」に更新します。 | google.workspace.chat.space.v1.updated |
リソースデータが含まれます
{ "space": { "name": "spaces/AAAABBBBBB", "displayName": "Cymbal Sales", "spaceThreadingState": "THREADED_MESSAGES", "spaceType": "SPACE", "spaceDetails": { "description": "Sales team for Cymbal Labs." }, "spaceHistoryState": "HISTORY_ON" } } リソースデータは除外されます
{ "space": { "name": "spaces/AAAABBBBBB" } } |
同時に 2 人の Chat ユーザーがスペースに追加されている。 | google.workspace.chat.membership.v1.batchCreated |
リソースデータが含まれます
{ "memberships": [ { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321", "state": "JOINED", "member": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MEMBER" } }, { "membership": { "name": "spaces/AAAABBBBBB/members/987654321234567890", "state": "JOINED", "member": { "name": "users/987654321234567890", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MEMBER" } } ] } リソースデータは除外されます
{ "memberships": [ { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321" } }, { "membership": { "name": "spaces/AAAABBBBBB/members/98765432123456789019" } } ] } |
ユーザーがメッセージに 😊? の絵文字でリアクションしました。 | google.workspace.chat.reaction.v1.created |
リソースデータが含まれます
{ "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222", "user": { "name": "users/1234567890987654321", "type": "HUMAN" }, "emoji": { "unicode": "😊" } } } リソースデータが省略されます
{ "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222" } } |
ユーザーはメッセージに 😊? 絵文字と ✱ 絵文字でリアクションします。 | google.workspace.chat.reaction.v1.batchCreated |
リソースデータが含まれます
{ "reactions": [ { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222", "user": { "name": "users/1234567890987654321", "type": "HUMAN" }, "emoji": { "unicode": "😊" } } }, { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/3333333333333333.444444444444444", "user": { "name": "users/98765431234564321", "type": "HUMAN" }, "emoji": { "unicode": "😸" } } } ] } リソースデータが省略されます
{ "reactions": [ { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222" }, "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/3333333333333333.444444444444444", } } ] } |
制限事項
-
ユーザーの登録、ダイレクト メッセージまたは名前のないグループ チャットの新規メンバーに関するイベント(
google.workspace.chat.membership.v1.created
) 最初のメッセージが投稿された後にのみトリガーされます。 - メンバーシップ イベントを受け取るには、スペースに直接参加しているメンバーである必要があります。ユーザーを追加すると Google グループを通じてスペースへの間接的な更新、削除された場合、サブスクリプションは イベントを受け取りますGoogle グループ メンバーの仕組みについては、以下をご覧ください。 スペースに Google グループを追加する
関連トピック
- Google Workspace のイベントの構造
- OAuth スコープを選択する
- サブスクリプションを作成し、 Chat イベントを受信します。