Чтобы предотвратить переключение контекста, когда пользователи делятся ссылкой в Google Chat, ваше приложение Chat может предварительно просмотреть ссылку, прикрепив к их сообщению карточку , которая дает дополнительную информацию и позволяет людям совершать действия прямо из Google Chat.
Например, представьте себе пространство Google Chat, включающее всех агентов по обслуживанию клиентов компании, а также приложение Chat под названием Case-y. Агенты часто делятся ссылками на обращения в службу поддержки клиентов в чате, и каждый раз, когда они это делают, их коллегам приходится открывать ссылку на обращение, чтобы просмотреть такие подробности, как правопреемник, статус и тема. Аналогично, если кто-то хочет взять на себя ответственность за обращение или изменить его статус, ему необходимо открыть ссылку.
Предварительный просмотр ссылки позволяет резидентному приложению чата пространства Case-y прикреплять карточку с указанием правопреемника, статуса и темы всякий раз, когда кто-то делится ссылкой на обращение. Кнопки на карточке позволяют агентам взять на себя ответственность за обращение и изменить статус прямо из потока чата.
Как работает предварительный просмотр ссылок
Когда кто-то добавляет ссылку в свое сообщение, появляется метка, сообщающая ему, что приложение чата может просмотреть ссылку.
После отправки сообщения ссылка отправляется в приложение «Чат», которое затем генерирует и прикрепляет карточку к сообщению пользователя.
Помимо ссылки, карточка предоставляет дополнительную информацию о ссылке, включая интерактивные элементы, такие как кнопки. Ваше приложение Chat может обновлять прикрепленную карточку в ответ на действия пользователя, например нажатия кнопок.
Если кто-то не хочет, чтобы приложение Chat просматривало его ссылку, прикрепив карточку к сообщению, он может запретить предварительный просмотр, нажав кнопку
на чипе предварительного просмотра. Пользователи могут удалить прикрепленную карту в любое время, нажав «Удалить предварительный просмотр» .Предварительные условия
Node.js
Приложение Google Chat с интерактивными функциями. Чтобы создать интерактивное приложение чата с использованием службы HTTP, выполните это краткое руководство .Питон
Приложение Google Chat с интерактивными функциями. Чтобы создать интерактивное приложение чата с использованием службы HTTP, выполните это краткое руководство .Ява
Приложение Google Chat с интерактивными функциями. Чтобы создать интерактивное приложение чата с использованием службы HTTP, выполните это краткое руководство .Скрипт приложений
Приложение Google Chat с интерактивными функциями. Чтобы создать интерактивное приложение чата с помощью Apps Script, выполните это краткое руководство .Настройка предварительного просмотра ссылок
Зарегистрируйте определенные ссылки, такие как example.com
, support.example.com
и support.example.com/cases/
, в качестве шаблонов URL-адресов на странице конфигурации вашего приложения Chat в консоли Google Cloud, чтобы ваше приложение Chat могло их просмотреть.
- Откройте консоль Google Cloud .
- Рядом с надписью «Google Cloud» нажмите стрелку и откройте проект приложения Chat.
- В поле поиска введите
Google Chat API
и нажмите Google Chat API . - Нажмите «Управление» > «Конфигурация» .
- В разделе «Предварительный просмотр ссылок» добавьте или измените шаблон URL-адреса.
- Чтобы настроить предварительный просмотр ссылок для нового шаблона URL-адреса, нажмите «Добавить шаблон URL-адреса» .
- Чтобы изменить конфигурацию существующего шаблона URL-адреса, нажмите стрелку вниз .
В поле Шаблон хоста введите домен шаблона URL-адреса. Приложение Chat будет просматривать ссылки на этот домен.
Чтобы иметь ссылки предварительного просмотра приложения Chat для определенного субдомена, например
subdomain.example.com
, включите субдомен.Чтобы иметь ссылки на предварительный просмотр приложения Chat для всего домена, укажите в качестве поддомена подстановочный знак со звездочкой (*). Например,
*.example.com
соответствуетsubdomain.example.com
иany.number.of.subdomains.example.com
.В поле Префикс пути введите путь для добавления к домену шаблона хоста.
Чтобы сопоставить все URL-адреса в домене шаблона узла, оставьте префикс пути пустым.
Например, если шаблон хоста —
support.example.com
, чтобы сопоставить URL-адреса обращений, размещенных по адресуsupport.example.com/cases/
, введитеcases/
.Нажмите Готово .
Нажмите Сохранить .
Теперь, когда кто-то добавляет ссылку, соответствующую шаблону URL-адреса предварительного просмотра ссылки, на сообщение в пространстве чата, которое включает ваше приложение Chat, ваше приложение просматривает ссылку.
Предварительный просмотр ссылки
После того как вы настроите предварительный просмотр для конкретной ссылки, ваше приложение Chat сможет распознать и просмотреть ссылку, прикрепив к ней дополнительную информацию.
Если в пространствах чата, включающих ваше приложение Chat, чье-либо сообщение содержит ссылку, соответствующую шаблону URL-адреса предварительного просмотра ссылки, ваше приложение Chat получает событие взаимодействия MESSAGE
. Полезная нагрузка JSON для события взаимодействия содержит поле matchedUrl
:
JSON
message: {
matchedUrl: {
url: "https://support.example.com/cases/case123"
},
... // other message attributes redacted
}
Проверив наличие поля matchedUrl
в полезных данных события MESSAGE
, ваше приложение чата может добавить информацию в сообщение с предварительно просмотренной ссылкой. Ваше приложение чата может либо ответить обычным текстовым сообщением, либо прикрепить карточку.
Ответить текстовым сообщением
Для базовых ответов ваше приложение чата может предварительно просмотреть ссылку, ответив простым текстовым сообщением на ссылку. В этом примере прикрепляется сообщение, повторяющее URL-адрес ссылки, соответствующий шаблону URL-адреса предварительного просмотра ссылки.
Node.js
Питон
Ява
Скрипт приложений
Прикрепите карточку с предварительным просмотром ссылки
Чтобы прикрепить карточку к предварительно просматриваемой ссылке, верните ActionResponse
типа UPDATE_USER_MESSAGE_CARDS
. В этом примере прикрепляется базовая карта.
Node.js
Питон
Ява
Скрипт приложений
В этом примере отправляется карточное сообщение, возвращая card JSON . Вы также можете воспользоваться карточной службой Apps Script .
Обновить карточку предварительного просмотра ссылки
Ваше приложение Chat может обновлять карточку предварительного просмотра ссылки, когда пользователи взаимодействуют с ней, например нажимают кнопку на карточке.
Чтобы обновить карточку, ваше приложение чата должно обработать событие взаимодействия CARD_CLICKED
и вернуть actionResponse
в зависимости от того, кто отправил сообщение, содержащее предварительный просмотр ссылки:
- Если сообщение отправил пользователь, установите для
actionResponse.type
значениеUPDATE_USER_MESSAGE_CARDS
. - Если приложение Chat отправило сообщение, установите для
actionResponse.type
значениеUPDATE_MESSAGE
.
Чтобы определить, кто отправил сообщение, вы можете использовать поле message.sender.type
события взаимодействия, чтобы узнать, был ли отправитель пользователем HUMAN
или BOT
.
В следующем примере показано, как приложение чата обновляет предварительный просмотр ссылки всякий раз, когда пользователь нажимает кнопку «Назначить мне» , обновляя поле «Назначенный» карты и отключая кнопку.
Node.js
Питон
Ява
Скрипт приложений
В этом примере отправляется карточное сообщение, возвращая card JSON . Вы также можете использовать сервис карточек Apps Script .
Ограничения и соображения
При настройке предварительного просмотра ссылок для приложения Chat обратите внимание на следующие ограничения и рекомендации:
- Каждое приложение чата поддерживает предварительный просмотр ссылок до 5 шаблонов URL-адресов.
- Приложения чата просматривают одну ссылку на каждое сообщение. Если в одном сообщении присутствует несколько доступных для предварительного просмотра ссылок, отображается только первая доступная для предварительного просмотра ссылка.
- Приложения чата просматривают только ссылки, начинающиеся с
https://
, поэтомуhttps://support.example.com/cases/
являются предварительным просмотром, аsupport.example.com/cases/
нет. - Если сообщение не содержит другую информацию, которая отправляется в приложение Chat, например косую черту , в приложение Chat посредством предварительного просмотра ссылки отправляется только URL-адрес ссылки.
- Если пользователь публикует ссылку, приложение Chat может обновить карточку предварительного просмотра ссылки только в том случае, если пользователи взаимодействуют с карточкой, например при нажатии кнопки. Вы не можете вызвать метод
update()
API Chat для ресурсаMessage
, чтобы асинхронно обновить сообщение пользователя. - Приложения чата должны просматривать ссылки для всех в пространстве, поэтому в сообщении должно быть опущено поле
privateMessageViewer
.
Предварительный просмотр ссылок отладки
При реализации предварительного просмотра ссылок вам может потребоваться отладка приложения Chat, прочитав журналы приложения. Чтобы прочитать журналы, посетите Logs Explorer в консоли Google Cloud.