Определить и указать пользователей Google Chat,Определить и указать пользователей Google Chat
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
На этой странице объясняется, как приложения Google Chat могут идентифицировать или указывать пользователей Chat.
Чтобы выполнить любое из следующих действий, приложение Chat должно указать пользователя:
Как Chat идентифицирует пользователей
API Google Chat создает ресурс User
для каждого человека, использующего чат. Ниже приведены два важных поля User
:
-
name
— это имя ресурса в формате users/{user}
, где {user}
представляет собой уникальный и стабильный идентификатор. users/app
можно использовать в качестве псевдонима для вызывающего приложения чата. -
type
— тип пользователя. Этот тип сообщает Chat, является ли пользователь приложением Chat или человеком. Для приложений чата значением является BOT
. Для людей ценностью является HUMAN
.
Укажите пользователя при вызове API Google Chat
Чтобы указать пользователя, используйте следующие значения для значения {user}
:
Для пользователей в вашей организации Google Workspace используйте один из следующих подходов:
-
name
ресурса User
в API чата, например users/123456789
. -
{person_id}
для имени ресурса Person
в API People, где resourceName
— people/{person_id}
— например, users/123456789
в API чата представляют того же человека, что и people/123456789
в API People. -
id
ресурса User
в API каталога — например, users/123456789
в API чата представляют того же человека, что и users/123456789
в API каталога.
Для пользователя во внешней организации Google Workspace или пользователя, использующего учетную запись Google, используйте псевдоним электронной почты, например users/ EMAIL_USERNAME @ WORKSPACE_DOMAIN .com
или users/ EMAIL_USERNAME @gmail.com
.
Идентификация пользователя по событию взаимодействия
Каждый раз, когда пользователь взаимодействует с приложением Chat, Chat отправляет событие взаимодействия с информацией о взаимодействии и пользователе. Например, когда пользователь упоминает приложение Chat в сообщении, приложение Chat получает информацию о взаимодействии, в том числе о том, что говорится в сообщении и кто его отправил. Приложения чата ссылаются на пользователей при получении информации о ресурсах чата.
Чтобы идентифицировать пользователя, который взаимодействовал с приложением чата, получите значение свойства name
ресурса User
, которое можно получить из Event.user.name
.
В следующем примере JSON показан ожидаемый формат удостоверения пользователя при взаимодействии с приложением чата:
{
...,
"user": {
"name": "users/12345678901234567890",
"displayName": "Sasha",
"avatarUrl": "https://lh3.googleusercontent.com/.../photo.jpg",
"email": "sasha@example.com"
}
}
Сообщение — это особый тип взаимодействия. Чтобы идентифицировать пользователя, отправившего сообщение в приложение чата, получите значение свойства name
ресурса User
, используя одно из следующих действий:
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2024-12-17 UTC.
[null,null,["Последнее обновление: 2024-12-17 UTC."],[[["\u003cp\u003eGoogle Chat apps can identify users through a unique \u003ccode\u003eUser\u003c/code\u003e resource with a \u003ccode\u003ename\u003c/code\u003e and \u003ccode\u003etype\u003c/code\u003e field to distinguish between bots and humans.\u003c/p\u003e\n"],["\u003cp\u003eYou can specify a user in API calls using their resource name, Person resource ID, Directory API ID, or email alias depending on their location and account type.\u003c/p\u003e\n"],["\u003cp\u003eChat apps receive user information during interactions through the \u003ccode\u003eUser\u003c/code\u003e resource within the event data, allowing identification and actions based on user details.\u003c/p\u003e\n"],["\u003cp\u003eUser identification enables features like mentioning users in messages, adding them to spaces, managing memberships, sending private messages, and subscribing to events.\u003c/p\u003e\n"],["\u003cp\u003eResources such as the \u003ccode\u003eUser\u003c/code\u003e and \u003ccode\u003ePerson\u003c/code\u003e objects, along with API guides, are available for further understanding and implementing user management in Chat apps.\u003c/p\u003e\n"]]],["Google Chat apps specify users to perform actions like @-mentioning, adding users to spaces, finding direct messages, retrieving membership details, sending private messages, and subscribing for membership change events. Users are identified via a `User` resource, with a unique `name` (e.g., `users/123456789`) and `type` (`BOT` or `HUMAN`). External users are specified using email aliases. Interactions with the Chat app include the user's `name` in the `Event.user.name` property.\n"],null,["# Identify and specify Google Chat users\n\nThis page explains the ways Google Chat apps can identify or specify\nChat users.\n\nTo do any of the following, a Chat app\nmust specify a user:\n\n- Create a message that [@ mentions a user](/workspace/chat/format-messages#messages-@mention).\n- Invite or add a user to an [existing space](/workspace/chat/create-members), or add a user to a [new space](/workspace/chat/set-up-spaces).\n- [Find direct messages](/workspace/chat/find-direct-message-in-spaces) between the Chat app and a specified user, or between two users.\n- [Get a user's membership details in a space](/workspace/chat/get-members).\n- [Send a private message](/workspace/chat/private-messages) to a user.\n- [Subscribe to a user](/workspace/chat/events-overview) using the Google Workspace Events API to get events about their membership changes.\n\nHow Chat identifies users\n-------------------------\n\nThe Google Chat API generates a\n[`User` resource](/workspace/chat/api/reference/rest/v1/User)\nfor each person that uses Chat. The following are two important\n`User` fields:\n\n- `name` is the resource name for the resource, formatted as `users/{user}`, where `{user}` represents a unique and stable identifier. `users/app` can be used as an alias for the calling Chat app.\n- `type` is the type of user. This type tells Chat whether the user is a Chat app or a person. For Chat apps, the value is `BOT`. For people, the value is `HUMAN`.\n\nSpecify a user in a call to the Google Chat API\n-----------------------------------------------\n\nTo specify a user, use the following values for the `{user}` value:\n\n- For users in your Google Workspace organization, use one of the\n following approaches:\n\n - The `name` of the [`User` resource](/workspace/chat/api/reference/rest/v1/User) in the Chat API, such as `users/123456789`.\n - The `{person_id}` for the name of a [`Person` resource](/people/api/rest/v1/people) in the People API, where the `resourceName` is `people/{person_id}`---for example, `users/123456789` in the Chat API represents the same person as `people/123456789` in the People API.\n - The `id` for a `User` resource in the Directory API---for example, `users/123456789` in the Chat API represents the same person as `users/123456789` in the Directory API.\n- For a user in an external Google Workspace organization, or a user\n who uses a Google Account, use an email alias---for example,\n `users/`\u003cvar translate=\"no\"\u003eEMAIL_USERNAME\u003c/var\u003e`@`\u003cvar translate=\"no\"\u003eWORKSPACE_DOMAIN\u003c/var\u003e`.com`\n or `users/`\u003cvar translate=\"no\"\u003eEMAIL_USERNAME\u003c/var\u003e`@gmail.com`.\n\nIdentify a user from an interaction event\n-----------------------------------------\n\nEvery time a user interacts with a Chat app,\nChat sends an\n[interaction event](/workspace/chat/receive-respond-interactions) with information about the\ninteraction and the user. For example, when a\nuser mentions a Chat app in a message, the\nChat app receives information about the interaction,\nincluding what the message says, and who sent it. Chat apps\nreference users when retrieving information about Chat resources.\n\nTo identify the user who interacted with a Chat app,\nget the value of the `name` property on the\n[`User` resource](/workspace/chat/api/reference/rest/v1/User),\nwhich you can get from\n[`Event.user.name`](/workspace/chat/api/reference/rest/v1/Event).\n\nThe following JSON example shows the expected format of the user identity in an\ninteraction with a Chat app: \n\n {\n ...,\n \"user\": {\n \"name\": \"users/12345678901234567890\",\n \"displayName\": \"Sasha\",\n \"avatarUrl\": \"https://lh3.googleusercontent.com/.../photo.jpg\",\n \"email\": \"sasha@example.com\"\n }\n }\n\nA message is a specific type of interaction. To identify a user who sent\na message to a Chat app,\nget the value of the `name` property on the\n[`User` resource](/workspace/chat/api/reference/rest/v1/User), using either of the\nfollowing:\n\n- [`spaces.messages.sender.name`](/workspace/chat/api/reference/rest/v1/spaces.messages)\n- [`Event.user.name`](/workspace/chat/api/reference/rest/v1/Event)\n\nRelated topics\n--------------\n\n- [Add a user to a space](/workspace/chat/api/guides/v1/members/create-members).\n- [Manage members in a space](/workspace/chat/list-members).\n- [@ mention a user in a message](/workspace/chat/format-messages#messages-@mention)."]]