Ресурс: AgentMessage
Сообщение, отправленное агентом пользователю.
JSON-представление |
---|
{ "name": string, "sendTime": string, "contentMessage": { object ( |
Поля | |
---|---|
name | Это поле задаётся платформой RBM. Не включайте его при создании сообщения агента. Поле преобразуется в "phones/{E.164}/agentMessages/{messageId}", где {E.164} — номер телефона пользователя в формате E.164, а {messageId} — назначенный агентом идентификатор сообщения агента. |
sendTime | Это поле задаётся платформой RBM. Не включайте его при создании сообщения агента. Поле определяет время отправки сообщения пользователю. Использует RFC 3339, согласно которому сгенерированный вывод всегда будет нормализован по оси Z и содержать 0, 3, 6 или 9 знаков после запятой. Также допускаются смещения, отличные от «Z». Примеры: |
contentMessage | Содержание сообщения агента. |
messageTrafficType | Тип трафика сообщений. |
| |
expireTime | Необязательно. Временная метка в формате UTC, когда ресурс считается истёкшим. Это значение указывается на выходе, если оно установлено или если задано поле TTL. Использует RFC 3339, согласно которому сгенерированный вывод всегда будет нормализован по оси Z и содержать 0, 3, 6 или 9 знаков после запятой. Также допускаются смещения, отличные от «Z». Примеры: |
ttl | Необязательно. Только ввод. Укажите, как долго сообщение будет храниться до его автоматического отзыва. Длительность в секундах, содержащая до девяти знаков после запятой, заканчивается на « |
AgentContentMessage
Содержание сообщения, отправленного агентом пользователю.
JSON-представление |
---|
{ "suggestions": [ { object ( |
Поля | |
---|---|
suggestions[] | Список предлагаемых ответов и действий, отображаемый в виде фишек предложений после соответствующего сообщения агента. Максимум 11 предложений. Чипы отображаются только в том случае, если соответствующее сообщение агента является самым последним в разговоре (включая сообщения как агента, так и пользователя). Пользователь может нажать на предложенный ответ, чтобы отправить текстовый ответ агенту, или нажать на предложенное действие, чтобы инициировать нативное действие на устройстве. Максимальное количество предложений: 11. |
content поля объединения. content сообщения агента может быть только одним из следующих: | |
text | Текст в кодировке UTF-8. Максимум 3072 символа. |
fileName | Уникальное имя файла. Платформа RBM возвращает имя файла, когда агент загружает файл. Устарело в пользу uploadedRbmFile (см. ниже). |
uploadedRbmFile | Содержит идентификаторы файла и миниатюры, которые были загружены и обслуживаются сервером RBM. |
richCard | Отдельная расширенная карта. |
contentInfo | Информация о файле, включая URL-адрес файла и URL-адрес миниатюры файла. Платформа RBM обслуживает контент из кэша, но агент может заставить платформу RBM загрузить новую версию контента и обновить кэш. |
ЗагруженныйRbmFile
Сообщение, содержащее информацию о файле и миниатюре
JSON-представление |
---|
{ "fileName": string, "thumbnailName": string } |
Поля | |
---|---|
fileName | Имя файла, возвращаемое платформой RBM при загрузке файла. |
thumbnailName | Имя миниатюры, возвращаемое платформой RBM при загрузке миниатюры. |
RichCard
Отдельная расширенная карта или карусель расширенных карт, отправляемых агентом пользователю.
JSON-представление |
---|
{ // Union field |
Поля | |
---|---|
card поля Союза. Отдельная карта или набор карт. card может быть только одной из следующих: | |
carouselCard | Карусель карт. |
standaloneCard | Отдельная карта. |
КарусельКарта
Карусель карт.
JSON-представление |
---|
{ "cardWidth": enum ( |
Поля | |
---|---|
cardWidth | Ширина карточек в карусели. |
cardContents[] | Список содержимого каждой карточки в карусели. В карусели может быть минимум 2 карточки и максимум 10. |
CarouselCard.CardWidth
Ширина карточек в карусели.
Перечисления | |
---|---|
CARD_WIDTH_UNSPECIFIED | Не указан. |
SMALL | 120 DP. Обратите внимание, что высокие носители использовать нельзя. |
MEDIUM | 232 ДП. |
CardContent
Содержание карты
JSON-представление |
---|
{ "title": string, "description": string, "media": { object ( |
Поля | |
---|---|
title | (Необязательно) Название карты. Максимум 200 символов. |
description | (Необязательно) Описание карты. Максимум 2000 символов. |
media | (Необязательно) Медиафайлы (изображение, GIF, видео, PDF-файл) для включения в открытку. |
suggestions[] | (Необязательно) Список предложений для включения в карточку. Максимум 4 предложения. |
СМИ
Медиа-файл в расширенной карточке.
JSON-представление |
---|
{ "height": enum ( |
Поля | |
---|---|
height | Высота медиа-контента в карточке с вертикальным макетом. Для отдельной карточки с горизонтальным макетом высота не настраивается, и это поле игнорируется. |
content поля Union. Медиа- content может быть только одним из следующих: | |
fileName | Уникальное имя файла, возвращаемое платформой RBM при загрузке файла. Устарело в пользу uploadedRbmFile (см. ниже). |
uploadedRbmFile | Содержит идентификаторы файла и миниатюры, которые были загружены и обслуживаются сервером RBM. |
contentInfo | Информация о файле, включая URL-адрес файла и URL-адрес миниатюры файла. Платформа RBM обслуживает контент из кэша, но агент может заставить платформу RBM загрузить новую версию контента и обновить кэш. |
ContentInfo
Сообщение, содержащее информацию о содержании.
JSON-представление |
---|
{ "fileUrl": string, "thumbnailUrl": string, "forceRefresh": boolean } |
Поля | |
---|---|
fileUrl | Публично доступный URL-адрес файла. Платформа RBM определяет MIME-тип файла по полю content-type в HTTP-заголовках при загрузке файла. Поле content-type должно присутствовать и быть точным в HTTP-ответе от URL-адреса. Рекомендуемый максимальный размер файла — 100 МБ. Примечание: перенаправления в URL-адресах файлов не поддерживаются. Если перенаправление необходимо, используйте CreateFileRequest. |
thumbnailUrl | (Необязательно, только для изображений, аудио- и видеофайлов.) Публично доступный URL-адрес миниатюры. Максимальный размер — 100 КБ. Если вы не предоставите URL-адрес миниатюры, платформа RBM будет отображать пустую миниатюру до тех пор, пока устройство пользователя не загрузит файл. В зависимости от настроек пользователя, файл может не загружаться автоматически и может потребовать от пользователя нажатия кнопки загрузки. Примечание: перенаправления в URL-адресах файлов не поддерживаются. Если перенаправление необходимо, используйте CreateFileRequest. |
forceRefresh | Если установлено, платформа RBM извлекает файл и миниатюру из указанных URL-адресов, даже если платформа кэширует копии файла (и/или миниатюры). |
Медиа.Высота
Высота носителя
Перечисления | |
---|---|
HEIGHT_UNSPECIFIED | Не указан. |
SHORT | 112 ДП. |
MEDIUM | 168 ДП. |
TALL | 264 DP. Недоступно для каруселей с расширенными карточками, если задана малая ширина карточки. |
Предположение
Предлагаемый ответ или предлагаемое действие, включенные в расширенную карточку или в список фишек предложений.
JSON-представление |
---|
{ // Union field |
Поля | |
---|---|
option поля «Объединение». Предлагаемый ответ или option действия может быть только одним из следующих: | |
reply | Пользователи могут нажать на предложенный ответ, чтобы отправить текстовый ответ агенту. |
action | Пользователи могут нажать на предлагаемое действие, чтобы инициировать соответствующее собственное действие на устройстве. |
ПредложенныйОтвет
При нажатии отправляет текстовый ответ обратно агенту.
JSON-представление |
---|
{ "text": string, "postbackData": string } |
Поля | |
---|---|
text | Текст, который отображается в предлагаемом ответе и отправляется агенту при нажатии пользователем. Максимум 25 символов. |
postbackData | Полезные данные в кодировке base64, которые агент получает в пользовательском событии, когда пользователь нажимает на предлагаемый ответ. |
Предлагаемое действие
При нажатии инициирует соответствующее собственное действие на устройстве.
JSON-представление |
---|
{ "text": string, "postbackData": string, "fallbackUrl": string, // Union field |
Поля | |
---|---|
text | Текст, отображаемый в предлагаемом действии. Максимум 25 символов. |
postbackData | Полезная нагрузка (в кодировке Base64), которая будет отправлена агенту в пользовательском событии, возникающем при нажатии пользователем предлагаемого действия. Максимум 2048 символов. |
fallbackUrl | (Необязательно) Резервный URL-адрес, который будет использоваться, если клиент не поддерживает предлагаемое действие. Резервные URL-адреса открываются в новых окнах браузера. Должен быть допустимым URI, как определено в RFC 3986. Максимальная длина — 2048 символов. |
action поля «Union». Собственное действие, инициируемое на устройстве при нажатии пользователем предлагаемого action может быть только одним из следующих: | |
dialAction | Открывает приложение для набора номера по умолчанию для пользователя с заполненным номером телефона, указанным агентом. |
viewLocationAction | Открывает приложение карты пользователя по умолчанию и выбирает указанное агентом местоположение или выполняет поиск в районе местоположения пользователя с учетом указанного агентом запроса. |
createCalendarEventAction | Открывает приложение календаря пользователя по умолчанию и запускает новый поток событий календаря с предварительно заполненными данными о событиях, указанными агентом. |
openUrlAction | Открывает веб-браузер пользователя по умолчанию для указанного URL-адреса. Если у пользователя установлено приложение, зарегистрированное как обработчик по умолчанию для этого URL-адреса, то будет открыто это приложение, а его значок будет использован в интерфейсе предлагаемых действий. |
shareLocationAction | Открывает средство выбора местоположения в приложении RCS, чтобы пользователь мог выбрать местоположение для отправки агенту. |
DialAction
Открывает приложение для набора номера по умолчанию для пользователя с заполненным номером телефона, указанным агентом.
JSON-представление |
---|
{ "phoneNumber": string } |
Поля | |
---|---|
phoneNumber | Номер телефона в формате E.164, например, +12223334444. |
ВидМестоположениеДействие
Открывает приложение карты пользователя по умолчанию и выбирает указанное агентом местоположение или выполняет поиск в районе местоположения пользователя с учетом указанного агентом запроса.
JSON-представление |
---|
{
"latLong": {
object ( |
Поля | |
---|---|
latLong | (Необязательно) Широта и долгота указанного местоположения. |
label | (Необязательно) Метка булавки, установленной в точке latLong. |
query | (Необязательно, поддерживается только в клиентах Android Messages) Вместо указания координат latLong (и, при необходимости, метки) агент может указать строку запроса. В приложениях карт по умолчанию, поддерживающих функцию поиска (включая Google Maps), нажатие этого предлагаемого действия приводит к поиску местоположения, сосредоточенному вокруг текущего местоположения пользователя. Если запрос достаточно конкретен, агенты могут использовать его для выбора любого местоположения в мире. Например, если указать в строке запроса «Growing Tree Bank», будут показаны все филиалы Growing Tree Bank поблизости от пользователя. Если указать в строке запроса «1600 Amphitheatre Parkway, Mountain View, CA 94043», будет выбран конкретный адрес, независимо от местоположения пользователя. |
Широта и долгота
Объект, представляющий пару широта/долгота. Выражается в виде пары чисел двойной точности, представляющих градусы широты и долготы. Если не указано иное, этот объект должен соответствовать стандарту WGS84 . Значения должны находиться в нормализованных диапазонах.
JSON-представление |
---|
{ "latitude": number, "longitude": number } |
Поля | |
---|---|
latitude | Широта в градусах. Должна быть в диапазоне [-90,0, +90,0]. |
longitude | Долгота в градусах. Должна быть в диапазоне [-180,0, +180,0]. |
CreateCalendarEventAction
Открывает приложение календаря пользователя по умолчанию и запускает новый поток событий календаря с предварительно заполненными данными о событиях, указанными агентом.
JSON-представление |
---|
{ "startTime": string, "endTime": string, "title": string, "description": string } |
Поля | |
---|---|
startTime | Время начала мероприятия. Использует RFC 3339, согласно которому сгенерированный вывод всегда будет нормализован по оси Z и содержать 0, 3, 6 или 9 знаков после запятой. Также допускаются смещения, отличные от «Z». Примеры: |
endTime | Время окончания мероприятия. Использует RFC 3339, согласно которому сгенерированный вывод всегда будет нормализован по оси Z и содержать 0, 3, 6 или 9 знаков после запятой. Также допускаются смещения, отличные от «Z». Примеры: |
title | Название мероприятия. Максимум 100 символов. |
description | Описание события. Максимум 500 символов. |
OpenUrlAction
Открывает веб-браузер пользователя по умолчанию для указанного URL-адреса. Если у пользователя установлено приложение, зарегистрированное как обработчик по умолчанию для этого URL-адреса, то будет открыто это приложение, а его значок будет использован в интерфейсе предлагаемых действий.
JSON-представление |
---|
{ "url": string, "application": enum ( |
Поля | |
---|---|
url | URL-адрес для открытия. С 1 ноября 2025 года схема URL должна быть https:// или http://. API-запросы, использующие любые другие схемы (например, tel:, mailto:, sms:) после этой даты будут отклоняться с ошибкой 400 Bad Request. URL-адрес должен быть допустимым URI, как определено в RFC 3986. Максимальная длина — 2048 символов. |
application | URL-адрес для открытия приложения, браузера или веб-просмотра. Чтобы проверить, поддерживает ли устройство пользователя режим веб-просмотра, сначала запустите проверку возможностей. Подробности см. в документации: https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities . |
webviewViewMode | Режим просмотра для веб-просмотра |
description | Описание доступности для веб-просмотра. |
OpenUrlApplication
Тип URL открытого приложения
Перечисления | |
---|---|
OPEN_URL_APPLICATION_UNSPECIFIED | Не указано, для открытия будет использоваться браузер. |
BROWSER | Используйте браузер для открытия URL. |
WEBVIEW | Открыть URL в интегрированном окне веб-просмотра |
WebviewViewMode
Тип режима просмотра веб-просмотра.
Перечисления | |
---|---|
WEBVIEW_VIEW_MODE_UNSPECIFIED | Не указано. Для использования WebView необходимо указать режим просмотра. |
FULL | Требуется полноэкранное наложение с пометкой беседы чат-бота в строке состояния. |
HALF | Требуется наложение на половину экрана. |
TALL | Требуется наложение на три четверти экрана. |
Автономная карта
Отдельная карта
JSON-представление |
---|
{ "cardOrientation": enum ( |
Поля | |
---|---|
cardOrientation | Ориентация карты. |
thumbnailImageAlignment | Выравнивание предварительного просмотра изображений для отдельных карточек с горизонтальным макетом. |
cardContent | Содержание карты. |
StandaloneCard.CardOrientation
Ориентация карты.
Перечисления | |
---|---|
CARD_ORIENTATION_UNSPECIFIED | Не указан. |
HORIZONTAL | Горизонтальная компоновка. Если |
VERTICAL | Вертикальная компоновка. |
StandaloneCard.ThumbnailImageAlignment
Выравнивание предварительного просмотра изображений для отдельных карточек с горизонтальным макетом.
Перечисления | |
---|---|
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED | Не указан. |
LEFT | Предварительный просмотр файла выравнивается по левому краю. |
RIGHT | Предварительный просмотр файла выравнивается по правому краю. |
MessageTrafficType
Поддерживаемые типы трафика сообщений. Перечисление будет расширено для поддержки дополнительных типов трафика.
Перечисления | |
---|---|
MESSAGE_TRAFFIC_TYPE_UNSPECIFIED | Поведение по умолчанию: тип трафика сообщений определяется вариантом использования агента. Обновляйте тип трафика по мере необходимости в зависимости от содержания сообщения. Для многоцелевых агентов значение по умолчанию не предусмотрено. Тип трафика необходимо задать вручную (например, ТРАНЗАКЦИЯ, АКЦИЯ). |
AUTHENTICATION | Для сообщений аутентификации в сценарии использования агента OTP. |
TRANSACTION | Для транзакционных сообщений в случаях использования транзакционного или многоцелевого агента. |
PROMOTION | Для рекламных сообщений в рекламных или многоцелевых случаях использования агента. |
SERVICEREQUEST | Для сообщений об услугах, на получение которых пользователь дал согласие. Используется в одноразовых, транзакционных, рекламных или многоцелевых агентах. |
ACKNOWLEDGEMENT | Для сообщений, подтверждающих запрос пользователя на отмену подписки. Используется в одноразовых, транзакционных, рекламных или многоцелевых агентах. |
Методы | |
---|---|
| Отправляет сообщение от агента пользователю. |
| Отменяет сообщение агента, которое было отправлено, но еще не доставлено. |