В этом руководстве объясняется, как использовать метод update()
ресурса SpaceReadState
API Google Chat, чтобы отмечать пространства как прочитанные или непрочитанные.
Ресурс SpaceReadState
— это одноэлементный ресурс, который представляет сведения о последнем прочитанном сообщении указанного пользователя в пространстве Google Chat.
Предпосылки
Node.js
- Учетная запись Google Workspace Business или Enterprise с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения Chat.
- Установите облачную клиентскую библиотеку Node.js.
- Создайте учётные данные OAuth-клиента для настольного приложения. Чтобы запустить пример из этого руководства, сохраните учётные данные в виде JSON-файла с именем
credentials.json
в локальном каталоге.
- Выберите область авторизации , поддерживающую аутентификацию пользователя.
Обновить состояние чтения пространства вызывающего пользователя
Чтобы обновить состояние чтения пользователя в пространстве, включите в свой запрос следующее:
- Укажите область авторизации
chat.users.readstate
. - Вызовите метод
UpdateSpaceReadState()
. - Передайте
updateMask
со значениемlastReadTime
. - Передайте
spaceReadState
как экземплярSpaceReadState
со следующим:- Поле
name
, в котором указано состояние чтения пространства для обновления, включает идентификатор пользователя или псевдоним и идентификатор пространства. Обновление состояния чтения пространства поддерживает только обновление состояния чтения вызывающего пользователя, которое можно указать одним из следующих способов:- Псевдоним
me
. Например,users/me/spaces/ SPACE /spaceReadState
. - Адрес электронной почты вызывающего пользователя Workspace. Например,
users/user@example.com/spaces/ SPACE /spaceReadState
. - Идентификатор вызывающего пользователя. Например,
users/ USER /spaces/ SPACE /spaceReadState
.
- Псевдоним
- Поле
lastReadTime
содержит обновлённое значение времени обновления состояния чтения спейса пользователя. Обычно это соответствует либо временной метке последнего прочитанного сообщения, либо временной метке, указанной пользователем для обозначения последней позиции прочтения в спейсе. ЕслиlastReadTime
предшествует времени создания последнего сообщения, спейс отображается в пользовательском интерфейсе как непрочитанный. Чтобы отметить спейс как прочитанный, установите дляlastReadTime
любое значение позже (больше) времени создания последнего сообщения. ЗначениеlastReadTime
принудительно устанавливается в соответствии со временем создания последнего сообщения. Обратите внимание, что состояние чтения спейса влияет только на состояние прочтения сообщений, которые отображаются в цепочке сообщений верхнего уровня спейса. Ответы в потоках не подвержены влиянию этой временной метки и зависят от состояния чтения потока.
- Поле
В следующем примере обновляется состояние чтения пространства вызывающего пользователя:
Node.js
Чтобы запустить этот пример, замените SPACE_NAME
на идентификатор из name
пространства. Идентификатор можно получить, вызвав метод ListSpaces()
или указав URL пространства.
API Google Chat обновляет указанное состояние чтения пространства и возвращает экземпляр SpaceReadState
.
Похожие темы
- Получить состояние чтения пространства вызывающего пользователя .
- Получить состояние чтения потока вызывающего пользователя .