REST Resource: phones.agentMessages

Ресурс: AgentMessage

Сообщение, отправленное агентом пользователю.

JSON-представление
{
  "name": string,
  "sendTime": string,
  "contentMessage": {
    object (AgentContentMessage)
  },

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
}
Поля
name

string

Это поле задается платформой RBM. Не включайте его при создании сообщения агента. Поле разрешает "phones/{E.164}/agentMessages/{messageId}", где {E.164} — это номер телефона пользователя в формате E.164, а {messageId} — это назначенный агентом идентификатор сообщения агента.

sendTime

string ( Timestamp format)

Это поле задается платформой RBM. Не включайте его при создании сообщения агента. Поле определяет время отправки сообщения пользователю.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

contentMessage

object ( AgentContentMessage )

Содержимое сообщения агента.

expiration поля объединения .

expiration может быть только одним из следующих:

expireTime

string ( Timestamp format)

Необязательный. Временная метка в формате UTC, когда срок действия этого ресурса считается истекшим. Это значение предоставляется на выходе, если оно установлено или установлено поле TTL.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

ttl

string ( Duration format)

Необязательный. Только ввод. Только ввод. Как долго сообщение будет жить, прежде чем оно будет автоматически отозвано.

Длительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « s ». Пример: "3.5s" .

АгентСодержимоеСообщение

Содержимое сообщения, отправленного агентом пользователю.

JSON-представление
{
  "suggestions": [
    {
      object (Suggestion)
    }
  ],

  // Union field content can be only one of the following:
  "text": string,
  "fileName": string,
  "uploadedRbmFile": {
    object (UploadedRbmFile)
  },
  "richCard": {
    object (RichCard)
  },
  "contentInfo": {
    object (ContentInfo)
  }
  // End of list of possible types for union field content.
}
Поля
suggestions[]

object ( Suggestion )

Список предлагаемых ответов и предлагаемых действий, которые отображаются в виде списка фишек предложений после соответствующего сообщения агента. Максимум 11 предложений.

Чипы отображаются только в том случае, если соответствующее сообщение агента является самым последним сообщением в разговоре (включая сообщения как агента, так и пользователя). Пользователь может нажать предложенный ответ, чтобы отправить текстовый ответ обратно агенту, или нажать предлагаемое действие, чтобы инициировать собственное действие на устройстве.

content поля объединения. content сообщения агента может быть только одним из следующих:
text

string

Текст в кодировке UTF-8.

fileName
(deprecated)

string

Уникальное имя файла. Платформа RBM возвращает имя файла, когда агент загружает файл. Устарело в пользу загруженного RbmFile ниже.

uploadedRbmFile

object ( UploadedRbmFile )

Содержит идентификаторы файла и миниатюры, которые были загружены на сервер RBM и обслуживаются им.

richCard

object ( RichCard )

Отдельная расширенная карта.

contentInfo

object ( ContentInfo )

Информация о файле, включая URL-адрес файла и URL-адрес миниатюры файла.

Платформа RBM обслуживает контент из кэша, но агент может заставить платформу RBM получить новую версию контента и обновить кэш.

ЗагруженныйRbmFile

Сообщение, содержащее информацию о файле и миниатюре

JSON-представление
{
  "fileName": string,
  "thumbnailName": string
}
Поля
fileName

string

Имя файла, возвращаемое платформой RBM при загрузке файла.

thumbnailName

string

Имя миниатюры, возвращаемое платформой RBM при загрузке миниатюры.

РичКард

Отдельная расширенная карточка или карусель расширенных карточек, отправляемых агентом пользователю.

JSON-представление
{

  // Union field card can be only one of the following:
  "carouselCard": {
    object (CarouselCard)
  },
  "standaloneCard": {
    object (StandaloneCard)
  }
  // End of list of possible types for union field card.
}
Поля
Полевая card Союза. Отдельная карточка или карусель карточек. card может быть только одной из следующих:
carouselCard

object ( CarouselCard )

Карусель карт.

standaloneCard

object ( StandaloneCard )

Автономная карта.

КарусельКарточка

Карусель карт.

JSON-представление
{
  "cardWidth": enum (CarouselCard.CardWidth),
  "cardContents": [
    {
      object (CardContent)
    }
  ]
}
Поля
cardWidth

enum ( CarouselCard.CardWidth )

Ширина карточек в карусели.

cardContents[]

object ( CardContent )

Список содержимого каждой карточки в карусели. В карусели может быть минимум 2 и максимум 10 карточек.

CarouselCard.CardWidth

Ширина карточек в карусели.

Перечисления
CARD_WIDTH_UNSPECIFIED Не указан.
SMALL 120 ДП. Обратите внимание, что нельзя использовать высокие носители.
MEDIUM 232 ДП.

Содержание карты

Содержание карты

JSON-представление
{
  "title": string,
  "description": string,
  "media": {
    object (Media)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
Поля
title

string

(Необязательно) Название карты. Максимум 200 символов.

description

string

(Необязательно) Описание карты. Максимум 2000 символов.

media

object ( Media )

(Необязательно) Медиафайлы (изображение, GIF, видео), которые нужно включить в карточку.

suggestions[]

object ( Suggestion )

(Необязательно) Список предложений для включения в карточку. Максимум 4 предложения.

СМИ

Медиа-файл внутри расширенной карты.

JSON-представление
{
  "height": enum (Media.Height),

  // Union field content can be only one of the following:
  "fileName": string,
  "uploadedRbmFile": {
    object (UploadedRbmFile)
  },
  "contentInfo": {
    object (ContentInfo)
  }
  // End of list of possible types for union field content.
}
Поля
height

enum ( Media.Height )

Высота носителя в насыщенной карточке с вертикальной компоновкой. Для отдельной карточки с горизонтальным расположением высота не настраивается, и это поле игнорируется.

content поля объединения. content медиаконтента может быть только одним из следующих:
fileName
(deprecated)

string

Уникальное имя файла, возвращаемое платформой RBM при загрузке файла. Устарело в пользу загруженного RbmFile ниже.

uploadedRbmFile

object ( UploadedRbmFile )

Содержит идентификаторы файла и миниатюры, которые были загружены на сервер RBM и обслуживаются им.

contentInfo

object ( ContentInfo )

Информация о файле, включая URL-адрес файла и URL-адрес миниатюры файла.

Платформа RBM обслуживает контент из кэша, но агент может заставить платформу RBM получить новую версию контента и обновить кэш.

СодержаниеИнформация

Сообщение, содержащее информацию о содержимом.

JSON-представление
{
  "fileUrl": string,
  "thumbnailUrl": string,
  "forceRefresh": boolean
}
Поля
fileUrl

string

Общедоступный URL-адрес файла. Платформа RBM определяет MIME-тип файла из поля типа контента в заголовках HTTP, когда платформа извлекает файл. Поле типа контента должно присутствовать и быть точным в HTTP-ответе от URL-адреса. Рекомендуемый максимальный размер файла 100 МБ.

thumbnailUrl

string

(Необязательно, только для файлов изображений и видео) Общедоступный URL-адрес миниатюры. Максимальный размер 100 КБ.

Если вы не укажете URL-адрес миниатюры, платформа RBM будет отображать пустую миниатюру-заполнитель до тех пор, пока устройство пользователя не загрузит файл. В зависимости от настроек пользователя файл может не загружаться автоматически, и пользователю может потребоваться нажать кнопку загрузки.

forceRefresh

boolean

Если этот параметр установлен, платформа RBM извлекает файл и миниатюру из указанных URL-адресов, даже если платформа имеет кэшированные копии файла (и/или миниатюры).

Медиа.Высота

Высота носителя

Перечисления
HEIGHT_UNSPECIFIED Не указан.
SHORT 112 ДП.
MEDIUM 168 ДП.
TALL 264 ДП. Недоступно для каруселей с насыщенными карточками, если ширина карточки мала.

Предположение

Предлагаемый ответ или предлагаемое действие включены в расширенную карточку или в список чипов предложений.

JSON-представление
{

  // Union field option can be only one of the following:
  "reply": {
    object (SuggestedReply)
  },
  "action": {
    object (SuggestedAction)
  }
  // End of list of possible types for union field option.
}
Поля
option поля объединения. Предлагаемый ответ или предлагаемый option действия может быть только одним из следующих:
reply

object ( SuggestedReply )

Пользователи могут нажать на предложенный ответ, чтобы отправить текстовый ответ обратно агенту.

action

object ( SuggestedAction )

Пользователи могут нажать предложенное действие, чтобы инициировать соответствующее собственное действие на устройстве.

Предлагаемый ответ

При нажатии отправляет текстовый ответ обратно агенту.

JSON-представление
{
  "text": string,
  "postbackData": string
}
Поля
text

string

Текст, который отображается в предлагаемом ответе и отправляется обратно агенту, когда пользователь нажимает на него. Максимум 25 символов.

postbackData

string

Полезные данные в кодировке Base64, которые агент получает в пользовательском событии, когда пользователь нажимает на предложенный ответ.

Предлагаемое действие

При касании инициирует соответствующее собственное действие на устройстве.

JSON-представление
{
  "text": string,
  "postbackData": string,
  "fallbackUrl": string,

  // Union field action can be only one of the following:
  "dialAction": {
    object (DialAction)
  },
  "viewLocationAction": {
    object (ViewLocationAction)
  },
  "createCalendarEventAction": {
    object (CreateCalendarEventAction)
  },
  "openUrlAction": {
    object (OpenUrlAction)
  },
  "shareLocationAction": {
    object (ShareLocationAction)
  }
  // End of list of possible types for union field action.
}
Поля
text

string

Текст, который отображается в предлагаемом действии. Максимум 25 символов.

postbackData

string

Полезная нагрузка (в кодировке Base64), которая будет отправлена ​​агенту в пользовательском событии, которое возникает, когда пользователь нажимает предложенное действие.

fallbackUrl

string

(Необязательно) Резервный URL-адрес, который будет использоваться, если клиент не поддерживает предлагаемое действие. Резервные URL-адреса открываются в новых окнах браузера.

Полевые action Союза. Собственное действие, инициируемое на устройстве, когда пользователь нажимает предложенное action , может быть только одним из следующих:
dialAction

object ( DialAction )

Открывает приложение набора номера пользователя по умолчанию, в котором указан номер телефона, указанный агентом.

viewLocationAction

object ( ViewLocationAction )

Открывает картографическое приложение пользователя по умолчанию и выбирает местоположение, указанное агентом, или выполняет поиск по местоположению пользователя по заданному агентом запросу.

createCalendarEventAction

object ( CreateCalendarEventAction )

Открывает приложение календаря пользователя по умолчанию и запускает новый поток событий календаря с предварительно заполненными данными о событиях, заданными агентом.

openUrlAction

object ( OpenUrlAction )

Открывает приложение веб-браузера пользователя по умолчанию по указанному URL-адресу. Если у пользователя установлено приложение, зарегистрированное в качестве обработчика по умолчанию для URL-адреса, то вместо этого будет открыто это приложение, и его значок будет использоваться в пользовательском интерфейсе предлагаемых действий.

shareLocationAction

object ( ShareLocationAction )

Открывает средство выбора местоположения в приложении RCS, чтобы пользователь мог выбрать местоположение для отправки агенту.

DialAction

Открывает приложение набора номера пользователя по умолчанию, в котором указан номер телефона, указанный агентом.

JSON-представление
{
  "phoneNumber": string
}
Поля
phoneNumber

string

Номер телефона в формате E.164, например +12223334444.

ПросмотрМестоположениеДействие

Открывает картографическое приложение пользователя по умолчанию и выбирает местоположение, указанное агентом, или выполняет поиск по местоположению пользователя по заданному агентом запросу.

JSON-представление
{
  "latLong": {
    object (LatLng)
  },
  "label": string,
  "query": string
}
Поля
latLong

object ( LatLng )

(Необязательно) Широта и долгота указанного местоположения.

label

string

(Необязательно) Метка булавки расположена на координате latLong.

query

string

(Необязательно, поддерживается только в клиентах Android Messages.) Вместо указания latLong (и, при необходимости, метки) агент может указать строку запроса. Для картографических приложений по умолчанию, которые поддерживают функции поиска (включая Карты Google), нажатие на это предлагаемое действие приводит к поиску местоположения, сосредоточенному вокруг текущего местоположения пользователя. Если запрос достаточно конкретен, то агенты могут использовать его для выбора любого места в мире.

Например, установка строки запроса «Банк растущих деревьев» покажет все местоположения Банка растущих деревьев поблизости от пользователя. Установка строки запроса «1600 Amphitheatre Parkway, Mountain View, CA 94043» позволит выбрать этот конкретный адрес независимо от местоположения пользователя.

ШиротаДлительность

Объект, представляющий пару широты и долготы. Это выражается в виде пары двойных чисел, обозначающих градусы широты и градусы долготы. Если не указано иное, этот объект должен соответствовать стандарту WGS84 . Значения должны находиться в пределах нормализованных диапазонов.

JSON-представление
{
  "latitude": number,
  "longitude": number
}
Поля
latitude

number

Широта в градусах. Оно должно находиться в диапазоне [-90,0, +90,0].

longitude

number

Долгота в градусах. Оно должно находиться в диапазоне [-180,0, +180,0].

CreateCalendarEventAction

Открывает приложение календаря пользователя по умолчанию и запускает новый поток событий календаря с предварительно заполненными данными о событиях, заданными агентом.

JSON-представление
{
  "startTime": string,
  "endTime": string,
  "title": string,
  "description": string
}
Поля
startTime

string ( Timestamp format)

Время начала мероприятия.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

endTime

string ( Timestamp format)

Время окончания мероприятия.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

title

string

Название мероприятия.

description

string

Описание события.

Опенурлэкшн

Открывает приложение веб-браузера пользователя по умолчанию по указанному URL-адресу. Если у пользователя установлено приложение, зарегистрированное в качестве обработчика по умолчанию для URL-адреса, то вместо этого будет открыто это приложение, и его значок будет использоваться в пользовательском интерфейсе предлагаемых действий.

JSON-представление
{
  "url": string
}
Поля
url

string

URL-адрес

ПоделитьсяМестоположениеДействие

Этот тип не имеет полей.

Открывает средство выбора местоположения в приложении RCS, чтобы пользователь мог выбрать местоположение для отправки обратно агенту.

АвтономнаяКарта

Автономная карта

JSON-представление
{
  "cardOrientation": enum (StandaloneCard.CardOrientation),
  "thumbnailImageAlignment": enum (StandaloneCard.ThumbnailImageAlignment),
  "cardContent": {
    object (CardContent)
  }
}
Поля
cardOrientation

enum ( StandaloneCard.CardOrientation )

Ориентация карты.

thumbnailImageAlignment

enum ( StandaloneCard.ThumbnailImageAlignment )

Выравнивание предварительного просмотра изображений для отдельных карточек с горизонтальным расположением.

cardContent

object ( CardContent )

Содержание карты.

StandaloneCard.CardOrientation

Ориентация карты.

Перечисления
CARD_ORIENTATION_UNSPECIFIED Не указан.
HORIZONTAL

Горизонтальная планировка.

Если object( CardContent ) содержит поле media , он также должен включать как минимум поле title , description или suggestions[] .

VERTICAL Вертикальная планировка.

StandaloneCard.ThumbnailImageAlignment

Выравнивание предварительного просмотра изображений для отдельных карточек с горизонтальным расположением.

Перечисления
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED Не указан.
LEFT Предварительный просмотр файла выравнивается по левому краю.
RIGHT Предварительный просмотр файла выравнивается по правому краю.

Методы

create

Отправляет сообщение от агента пользователю.

delete

Отменяет сообщение агента, которое было отправлено, но еще не доставлено.