Обновление настроек уведомлений в чат-группе пользователя
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
В этом руководстве объясняется, как использовать метод patch() в ресурсе SpaceNotificationSetting API Google Chat для обновления настроек уведомлений о пространстве пользователя.
Ресурс SpaceNotificationSetting — это одноэлементный ресурс, который представляет сведения о настройках уведомлений пространства указанного пользователя.
Создайте учётные данные OAuth-клиента для настольного приложения. Чтобы запустить пример из этого руководства, сохраните учётные данные в виде JSON-файла с именем credentials.json в локальном каталоге.
Для получения руководства выполните шаги по настройке вашей среды, описанные в этом кратком руководстве .
Обновите настройки уведомлений о пространстве вызывающего пользователя
Чтобы обновить настройки уведомлений о пространстве пользователя, включите в свой запрос следующее:
Укажите область авторизации chat.users.spacesettings .
Вызовите метод UpdateSpaceNotificationSetting() , передав запрос UpdateSpaceNotificationSetting для сохранения изменений в настройках уведомлений. Запрос включает в себя:
spaceNotificationSetting со следующими свойствами:
Свойство name определяет, какие настройки уведомлений пространства необходимо обновить, включая идентификатор пользователя или псевдоним, а также идентификатор пространства. Обновление настроек уведомлений пространства поддерживает обновление только настроек уведомлений вызывающего пользователя, что можно сделать, установив один из следующих параметров:
Псевдоним me . Например, users/me/spaces/ SPACE /spaceNotificationSetting .
Адрес электронной почты вызывающего пользователя Workspace. Например, users/user@example.com/spaces/ SPACE /spaceNotificationSetting .
Идентификатор вызывающего пользователя. Например, users/ USER /spaces/ SPACE /spaceNotificationSetting .
notificationSetting : устанавливает уровень уведомлений, например ALL , OFF .
Параметр muteSetting : включает или выключает звук, значения могут быть MUTED или UNMUTED .
updateMask : задает поля обновления, может включать в себя notification_setting , mute_setting .
В следующем примере обновляются настройки уведомлений о пространстве вызывающего пользователя:
import{createClientWithUserCredentials}from'./authentication-utils.js';constUSER_AUTH_OAUTH_SCOPES=['https://www.googleapis.com/auth/chat.users.spacesettings'];// This sample shows how to update the space notification setting for the calling userasyncfunctionmain(){// Create a clientconstchatClient=awaitcreateClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);// Initialize request argument(s), replace the SPACE_NAME with an actual space name.constrequest={spaceNotificationSetting:{name:'users/me/spaces/SPACE_NAME/spaceNotificationSetting',notificationSetting:'ALL',muteSetting:'UNMUTED'},updateMask:{paths:['notification_setting','mute_setting']}};// Make the requestconstresponse=awaitchatClient.updateSpaceNotificationSetting(request);// Handle the responseconsole.log(response);}main().catch(console.error);
Чтобы запустить этот пример, замените SPACE_NAME на идентификатор из name пространства. Идентификатор можно получить, вызвав метод ListSpaces() или указав URL пространства.
API Google Chat обновляет указанные настройки уведомлений пространства и возвращает экземпляр SpaceNotificationSetting .
[null,null,["Последнее обновление: 2025-08-04 UTC."],[],[],null,["# Update a user's space notification settings\n\nThis guide explains how to use the\n[`patch()`](/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.ChatService.UpdateSpaceNotificationSetting)\nmethod on the `SpaceNotificationSetting` resource of the Google Chat API to update\na user's space notification settings.\n\nThe\n[`SpaceNotificationSetting` resource](/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.SpaceNotificationSetting)\nis a singleton resource that represents details about a specified user's space\nnotification settings.\n\nPrerequisites\n-------------\n\n\n### Node.js\n\n- A Business or Enterprise [Google Workspace](https://support.google.com/a/answer/6043576) account with access to [Google Chat](https://workspace.google.com/products/chat/).\n\n\u003c!-- --\u003e\n\n- Set up your environment:\n - [Create a Google Cloud project](/workspace/guides/create-project).\n - [Configure the OAuth consent screen](/workspace/guides/configure-oauth-consent).\n - [Enable and configure the Google Chat API](/workspace/chat/configure-chat-api) with a name, icon, and description for your Chat app.\n - Install the Node.js [Cloud Client Library](/workspace/chat/libraries?tab=nodejs#cloud-client-libraries).\n - [Create OAuth client ID credentials](/workspace/chat/authenticate-authorize-chat-user#step-2:) for a desktop application. To run the sample in this guide, save the credentials as a JSON file named `credentials.json` to your local directory.\n\n For guidance, complete the steps for setting up your environment in this [quickstart](/workspace/chat/api/guides/quickstart/nodejs\n #set-up-environment).\n- [Choose an authorization scope](/workspace/chat/authenticate-authorize#asynchronous-chat-calls) that supports user authentication.\n\n\n| The code samples in this page use the gRPC API interface with the Google Cloud client libraries. Alternatively, you can use the REST API interface. For more information about the gRPC and REST interfaces, see [Google Chat API overview](/workspace/chat/api/reference).\n\n\u003cbr /\u003e\n\nUpdate the calling user's space notification settings\n-----------------------------------------------------\n\nTo update a user's space notification setting, include the following\nin your request:\n\n- Specify the `chat.users.spacesettings` authorization scope.\n- Call the [`UpdateSpaceNotificationSetting()`](/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.ChatService.UpdateSpaceNotificationSetting) method, passing `UpdateSpaceNotificationSetting` request to contain the changes to the notification settings. The request includes:\n - `spaceNotificationSetting` with the following properties:\n - The `name` property specifies which space notification settings to update which includes a user ID or alias and a space ID. Updating space notification settings only supports updating the notification settings of the calling user, which can be specified by setting one of the following:\n - The `me` alias. For example, `users/me/spaces/`\u003cvar translate=\"no\"\u003eSPACE\u003c/var\u003e`/spaceNotificationSetting`.\n - The calling user's Workspace email address. For example, `users/user@example.com/spaces/`\u003cvar translate=\"no\"\u003eSPACE\u003c/var\u003e`/spaceNotificationSetting`.\n - The calling user's user ID. For example, `users/`\u003cvar translate=\"no\"\u003eUSER\u003c/var\u003e`/spaces/`\u003cvar translate=\"no\"\u003eSPACE\u003c/var\u003e`/spaceNotificationSetting`.\n - The `notificationSetting`: sets the notification level, such as `ALL`, `OFF`.\n - The `muteSetting`: sets the mute on or off, values can be `MUTED` or `UNMUTED`.\n - `updateMask`: sets the update fields, it can include `notification_setting`, `mute_setting`.\n\nThe following example updates the calling user's space notification setting: \n\n### Node.js\n\nchat/client-libraries/cloud/update-space-notification-setting-user-cred.js \n[View on GitHub](https://github.com/googleworkspace/node-samples/blob/main/chat/client-libraries/cloud/update-space-notification-setting-user-cred.js) \n\n```javascript\nimport {createClientWithUserCredentials} from './authentication-utils.js';\n\nconst USER_AUTH_OAUTH_SCOPES = ['https://www.googleapis.com/auth/chat.users.spacesettings'];\n\n// This sample shows how to update the space notification setting for the calling user\nasync function main() {\n // Create a client\n const chatClient = await createClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);\n\n // Initialize request argument(s), replace the SPACE_NAME with an actual space name.\n const request = {\n spaceNotificationSetting : {\n \tname : 'users/me/spaces/SPACE_NAME/spaceNotificationSetting',\n \tnotificationSetting : 'ALL',\n \tmuteSetting : 'UNMUTED'\n },\n updateMask : { paths: ['notification_setting','mute_setting']}\n };\n\n // Make the request\n const response = await chatClient.updateSpaceNotificationSetting(request);\n\n // Handle the response\n console.log(response);\n}\n\nmain().catch(console.error);\n```\n\nTo run this sample, replace \u003cvar translate=\"no\"\u003eSPACE_NAME\u003c/var\u003e with the ID from\nthe space's\n[`name`](/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.Space.FIELDS.string.google.chat.v1.Space.name).\nYou can obtain the ID by calling the\n[`ListSpaces()`](/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.ChatService.ListSpaces)\nmethod or from the space's URL.\n\nThe Google Chat API updates the specified space notification settings and returns\nan instance of\n[`SpaceNotificationSetting`](/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.SpaceNotificationSetting).\n\nRelated topics\n--------------\n\n- [Get the calling user's space notification setting](/workspace/chat/get-space-notification-setting)."]]