本页介绍了 Google Chat 应用可以识别或指定 Chat 用户的方式。
如需执行以下任何操作,Chat 应用都必须指定用户:
- 创建@ 提及用户的消息。
- 邀请或添加用户加入现有聊天室,或将用户添加到新聊天室。
- 查找 Chat 应用与指定用户或两名用户之间的私信。
- 获取用户在聊天室中的成员资格详细信息。
- 向用户发送私信。
- 使用 Google Workspace Events API 订阅用户,以获取与其成员资格变更相关的事件。
Chat 如何识别用户
Google Chat API 会为每个使用 Chat 的用户生成一个 User
资源。以下是两个重要的 User
字段:
name
是资源的资源名称,格式为users/{user}
,其中{user}
表示唯一且稳定的标识符。users/app
可用作发起调用的 Chat 应用的别名。type
是用户类型。此类型用于告知 Chat 用户是 Chat 应用还是个人。对于聊天应用,该值为BOT
。对于人员,该值为HUMAN
。
在调用 Google Chat API 时指定用户
如需指定用户,请为 {user}
值使用以下值:
对于贵组织中的 Google Workspace 用户,请使用以下方法之一:
对于外部 Google Workspace 组织中的用户或使用 Google 账号的用户,请使用电子邮件别名,例如
users/EMAIL_USERNAME@WORKSPACE_DOMAIN.com
或users/EMAIL_USERNAME@gmail.com
。
从互动事件中识别用户
每当用户与 Chat 应用互动时,Chat 都会发送包含互动和用户相关信息的互动事件。例如,当用户在消息中提及 Chat 应用时,Chat 应用会收到与该互动相关的信息,包括消息内容以及发件人。Chat 应用在检索 Chat 资源的相关信息时会引用用户。
如需识别与 Chat 应用互动的用户,请获取 User
资源上的 name
属性的值,您可以从 Event.user.name
获取该值。
以下 JSON 示例展示了与 Chat 应用互动时用户身份的预期格式:
{
...,
"user": {
"name": "users/12345678901234567890",
"displayName": "Sasha",
"avatarUrl": "https://lh3.googleusercontent.com/.../photo.jpg",
"email": "sasha@example.com"
}
}
消息是一种特定类型的互动。如需识别向 Chat 应用发送消息的用户,请使用以下任一方法获取 User
资源上的 name
属性的值: