REST Resource: phones.agentMessages

Recurso: AgentMessage

Un mensaje enviado del agente a un usuario.

Representación 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.
}
Campos
name

string

La plataforma de RBM establece este campo. No lo incluyas cuando crees un mensaje de agente. El campo resuelve "phones/{E.164}/agentMessages/{messageId}", en el que {E.164} es el número de teléfono del usuario en formato E.164 y {messageId} es el ID asignado por el agente del mensaje del agente.

sendTime

string (Timestamp format)

La plataforma de RBM establece este campo. No lo incluyas cuando crees un mensaje de agente. El campo resuelve el momento en que se envía el mensaje al usuario.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

contentMessage

object (AgentContentMessage)

El contenido del mensaje del agente.

Campo de unión expiration.

expiration puede ser una de las siguientes opciones:

expireTime

string (Timestamp format)

Opcional. Marca de tiempo en UTC del momento en que este recurso se consideró vencido. Este valor se proporciona en el resultado si se establece o si se establece el campo TTL.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

ttl

string (Duration format)

Opcional. Solo entrada. Durante cuánto tiempo estará activo el mensaje antes de que se revoque automáticamente.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

AgentContentMessage

El contenido de un mensaje enviado desde el agente a un usuario.

Representación 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.
}
Campos
suggestions[]

object (Suggestion)

Una lista de respuestas sugeridas y acciones sugeridas que aparecen como una lista de chips de sugerencias después del mensaje del agente asociado. Se admiten hasta 11 sugerencias.

Los chips solo se muestran cuando el mensaje del agente asociado es el mensaje más reciente de la conversación (incluidos los mensajes del agente y los del usuario). El usuario puede presionar una respuesta sugerida para enviarle el mensaje de texto de respuesta al agente o presionar una acción sugerida para iniciar una acción nativa en el dispositivo.

Campo de unión content. El contenido del mensaje del agente content puede ser solo una de las siguientes opciones:
text

string

Texto codificado en UTF-8.

fileName
(deprecated)

string

El nombre único de un archivo. La plataforma de RBM muestra un nombre de archivo cuando un agente sube un archivo. Se dio de baja y se reemplazó por el archivo uploadRbmFile que aparece a continuación.

uploadedRbmFile

object (UploadedRbmFile)

Contiene identificadores de un archivo y una miniatura que se subieron y publicaron en el servidor de RBM

richCard

object (RichCard)

Una tarjeta enriquecida independiente

contentInfo

object (ContentInfo)

Información sobre un archivo, incluidas la URL del archivo y la URL de su miniatura.

La plataforma de RBM entrega contenido de una caché, pero un agente puede forzar a la plataforma de RBM a recuperar una versión nueva del contenido y actualizar la caché.

UploadedRbmFile

Mensaje con información de miniaturas y archivos

Representación JSON
{
  "fileName": string,
  "thumbnailName": string
}
Campos
fileName

string

El nombre del archivo, que muestra la plataforma de RBM cuando se sube el archivo

thumbnailName

string

Es el nombre de la miniatura, que muestra la plataforma de RBM cuando se sube.

RichCard

Una tarjeta enriquecida independiente o un carrusel de tarjetas enriquecidas que el agente envía al usuario

Representación 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.
}
Campos
Campo de unión card. Tarjeta independiente o carrusel de tarjetas Las direcciones (card) solo pueden ser una de las siguientes opciones:
carouselCard

object (CarouselCard)

Carrusel de tarjetas

standaloneCard

object (StandaloneCard)

Tarjeta independiente.

CarouselCard

Carrusel de tarjetas

Representación JSON
{
  "cardWidth": enum (CarouselCard.CardWidth),
  "cardContents": [
    {
      object (CardContent)
    }
  ]
}
Campos
cardWidth

enum (CarouselCard.CardWidth)

El ancho de las tarjetas en el carrusel

cardContents[]

object (CardContent)

Es la lista de contenido de cada tarjeta del carrusel. Un carrusel puede tener un mínimo de 2 tarjetas y un máximo de 10.

CarouselCard.CardWidth

El ancho de las tarjetas en el carrusel

Enumeradores
CARD_WIDTH_UNSPECIFIED No se especifica.
SMALL 120 dp Ten en cuenta que no se pueden utilizar archivos multimedia altos.
MEDIUM 232 DP.

CardContent

Contenido de la tarjeta

Representación JSON
{
  "title": string,
  "description": string,
  "media": {
    object (Media)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ]
}
Campos
title

string

Es el título de la tarjeta (opcional). Se admiten hasta 200 caracteres.

description

string

(Opcional) Descripción de la tarjeta. Se admiten hasta 2,000 caracteres.

media

object (Media)

Contenido multimedia (imagen, GIF, video) que se debe incluir en la tarjeta (opcional).

suggestions[]

object (Suggestion)

(Opcional) Lista de sugerencias para incluir en la tarjeta. Se admiten hasta 4 sugerencias.

Contenido multimedia

Un archivo multimedia dentro de una tarjeta enriquecida.

Representación 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.
}
Campos
height

enum (Media.Height)

La altura del contenido multimedia dentro de una tarjeta enriquecida con un diseño vertical. Para una tarjeta independiente con diseño horizontal, la altura no se puede personalizar y este campo se ignora.

Campo de unión content. El contenido multimedia content puede ser solo una de las siguientes opciones:
fileName
(deprecated)

string

El nombre único del archivo que muestra la plataforma RBM cuando se sube el archivo Se dio de baja y se reemplazó por el archivo uploadRbmFile que aparece a continuación.

uploadedRbmFile

object (UploadedRbmFile)

Contiene identificadores de un archivo y una miniatura que se subieron y publicaron en el servidor de RBM

contentInfo

object (ContentInfo)

Información sobre un archivo, incluidas la URL del archivo y la URL de su miniatura.

La plataforma de RBM entrega contenido de una caché, pero un agente puede forzar a la plataforma de RBM a recuperar una versión nueva del contenido y actualizar la caché.

ContentInfo

Es un mensaje con la información del contenido.

Representación JSON
{
  "fileUrl": string,
  "thumbnailUrl": string,
  "forceRefresh": boolean
}
Campos
fileUrl

string

Es la URL del archivo de acceso público. La plataforma de RBM determina el tipo de MIME del archivo a partir del campo content-type en los encabezados HTTP cuando la plataforma recupera el archivo. El campo content-type debe estar presente y ser preciso en la respuesta HTTP de la URL. El tamaño de archivo máximo recomendado es de 100 MB.

thumbnailUrl

string

(Opcional, solo para archivos de imagen y video) Es la URL de la miniatura accesible públicamente. El tamaño máximo es de 100 KB.

Si no proporcionas una URL en miniatura, la plataforma de RBM mostrará una miniatura de marcador de posición en blanco hasta que el dispositivo del usuario descargue el archivo. Según la configuración del usuario, es posible que el archivo no se descargue automáticamente y que se le solicite presionar un botón de descarga.

forceRefresh

boolean

Si se configura, la plataforma de RBM recupera el archivo y la miniatura de las URLs especificadas, incluso si la plataforma tiene copias almacenadas en caché del archivo (o de la miniatura).

Media.Height

Altura de medios

Enumeradores
HEIGHT_UNSPECIFIED No se especifica.
SHORT 112 DP.
MEDIUM 168 DP.
TALL 264 DP. Esta opción no está disponible para los carruseles de tarjetas enriquecidas cuando el ancho de la tarjeta es pequeño.

Sugerencia

Una respuesta sugerida o una acción sugerida incluida en una tarjeta enriquecida o en una lista de chips de sugerencias.

Representación 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.
}
Campos
Campo de unión option. Una respuesta sugerida o una acción sugerida option puede ser solo una de las siguientes opciones:
reply

object (SuggestedReply)

Los usuarios pueden presionar una respuesta sugerida para enviar el mensaje de respuesta al agente.

action

object (SuggestedAction)

Los usuarios pueden presionar una acción sugerida para iniciar la acción nativa correspondiente en el dispositivo.

SuggestedReply

Cuando se presiona, se envía el mensaje de respuesta de texto al agente.

Representación JSON
{
  "text": string,
  "postbackData": string
}
Campos
text

string

Texto que se muestra en la respuesta sugerida y se envía al agente cuando el usuario lo presiona. Se admiten hasta 25 caracteres.

postbackData

string

La carga útil codificada en base64 que el agente recibe en un evento del usuario cuando este presiona la respuesta sugerida.

SuggestedAction

Cuando se presiona, inicia la acción nativa correspondiente en el dispositivo.

Representación 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.
}
Campos
text

string

Texto que se muestra en la acción sugerida. Se admiten hasta 25 caracteres.

postbackData

string

Carga útil (codificada en base64) que se enviará al agente en el evento del usuario que se produce cuando el usuario presiona la acción sugerida

fallbackUrl

string

(Opcional) URL de resguardo para usar si un cliente no admite una acción sugerida. Las URL de resguardo se abren en ventanas nuevas del navegador.

Campo de unión action. La acción nativa que se inicia en el dispositivo cuando el usuario presiona la acción sugerida action solo puede ser una de las siguientes opciones:
dialAction

object (DialAction)

Abre la app de marcador predeterminada del usuario con el número de teléfono especificado por el agente completado.

viewLocationAction

object (ViewLocationAction)

Abre la app de mapas predeterminada del usuario y selecciona la ubicación especificada por el agente o busca en la ubicación del usuario de acuerdo con una consulta especificada por el agente.

createCalendarEventAction

object (CreateCalendarEventAction)

Abre la app de calendario predeterminada del usuario y, luego, inicia el nuevo flujo de eventos de calendario con los datos del evento especificados por el agente que se completaron previamente.

openUrlAction

object (OpenUrlAction)

Abre la app de navegador web predeterminada del usuario en la URL determinada. Si el usuario tiene instalada una app que está registrada como controlador predeterminado de la URL, esta app se abrirá y se usará su ícono en la IU de acción sugerida.

shareLocationAction

object (ShareLocationAction)

Abre el selector de ubicación de la app de RCS para que el usuario pueda elegir una ubicación para enviarla al agente.

DialAction

Abre la app de marcador predeterminada del usuario con el número de teléfono especificado por el agente completado.

Representación JSON
{
  "phoneNumber": string
}
Campos
phoneNumber

string

Es el número de teléfono en formato E.164, por ejemplo, +12223334444.

ViewLocationAction

Abre la app de mapas predeterminada del usuario y selecciona la ubicación especificada por el agente o busca en la ubicación del usuario de acuerdo con una consulta especificada por el agente.

Representación JSON
{
  "latLong": {
    object (LatLng)
  },
  "label": string,
  "query": string
}
Campos
latLong

object (LatLng)

La latitud y la longitud de la ubicación especificada (opcional).

label

string

(Opcional) La etiqueta del pin se encuentra en latLong.

query

string

(Opcional, solo se admite en los clientes de Mensajes Android) En lugar de especificar un latLong (y, opcionalmente, una etiqueta), el agente puede especificar una cadena de consulta. En el caso de las aplicaciones de mapas predeterminadas que admiten la funcionalidad de búsqueda (incluido Google Maps), cuando se presiona esta acción sugerida, se genera una búsqueda de ubicación centrada en la ubicación actual del usuario. Si la consulta es lo suficientemente específica, los agentes pueden usarla para seleccionar cualquier ubicación en el mundo.

Por ejemplo, si estableces la cadena de consulta como "Banco de árboles creciendo", se mostrarán todas las ubicaciones de Bancos que crecen en las cercanías del usuario. Si estableces la cadena de consulta en "1600 Amphitheater Parkway, Mountain View, CA 94043", se seleccionará esa dirección específica, independientemente de la ubicación del usuario.

LatLng

Es un objeto que representa un par de valores de latitud y longitud. Esto se expresa como un par de dobles para representar la latitud en grados y la longitud en grados. A menos que se especifique lo contrario, este objeto debe cumplir con el estándar WGS84. Los valores deben pertenecer a rangos normalizados.

Representación JSON
{
  "latitude": number,
  "longitude": number
}
Campos
latitude

number

La latitud expresada en grados. Debe pertenecer al rango [-90.0, +90.0].

longitude

number

La longitud expresada en grados. Debe pertenecer al rango [-180.0, +180.0].

CreateCalendarEventAction

Abre la app de calendario predeterminada del usuario y, luego, inicia el nuevo flujo de eventos de calendario con los datos del evento especificados por el agente que se completaron previamente.

Representación JSON
{
  "startTime": string,
  "endTime": string,
  "title": string,
  "description": string
}
Campos
startTime

string (Timestamp format)

Hora de inicio del evento.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

endTime

string (Timestamp format)

Hora de finalización del evento

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

title

string

Título del evento

description

string

Descripción del evento.

OpenUrlAction

Abre la app de navegador web predeterminada del usuario en la URL especificada. Si el usuario tiene instalada una app que está registrada como controlador predeterminado de la URL, esta app se abrirá y se usará su ícono en la IU de acción sugerida.

Representación JSON
{
  "url": string
}
Campos
url

string

URL

ShareLocationAction

Este tipo no tiene campos.

Abre el selector de ubicación de la app de RCS para que el usuario pueda elegir una ubicación que se enviará de vuelta al agente.

StandaloneCard

Tarjeta independiente

Representación JSON
{
  "cardOrientation": enum (StandaloneCard.CardOrientation),
  "thumbnailImageAlignment": enum (StandaloneCard.ThumbnailImageAlignment),
  "cardContent": {
    object (CardContent)
  }
}
Campos
cardOrientation

enum (StandaloneCard.CardOrientation)

Orientación de la tarjeta

thumbnailImageAlignment

enum (StandaloneCard.ThumbnailImageAlignment)

Alineación de vista previa de la imagen para tarjetas independientes con diseño horizontal.

cardContent

object (CardContent)

Contenido de la tarjeta.

StandaloneCard.CardOrientation

Orientación de la tarjeta

Enumeradores
CARD_ORIENTATION_UNSPECIFIED No se especifica.
HORIZONTAL

Diseño horizontal

Si el object(CardContent) de una tarjeta enriquecida horizontal contiene el campo media, también debe incluir al menos un campo title, description o suggestions[].

VERTICAL Diseño vertical

StandaloneCard.ThumbnailImageAlignment

Alineación de vista previa de la imagen para tarjetas independientes con diseño horizontal.

Enumeradores
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED No se especifica.
LEFT La vista previa del archivo está alineada a la izquierda.
RIGHT La vista previa del archivo está alineada a la derecha.

Métodos

create

Envía un mensaje del agente a un usuario.

delete

Revoca un mensaje de agente que se haya enviado, pero que aún no se haya entregado.