Recurso: AgentMessage
Es un mensaje que envía el agente a un usuario.
| Representación JSON |
|---|
{ "name": string, "sendTime": string, "contentMessage": { object ( |
| Campos | |
|---|---|
name |
Este campo lo establece la plataforma de RCS para empresas. No lo incluyas cuando crees un mensaje del agente. El campo resuelve "phones/{E.164}/agentMessages/{messageId}", donde {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 |
Este campo lo establece la plataforma de RCS para empresas. No lo incluyas cuando crees un mensaje del agente. El campo resuelve la hora en la que se envía el mensaje al usuario. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
contentMessage |
Es el contenido del mensaje del agente. |
messageTrafficType |
Es el tipo de tráfico del mensaje. |
richMessageClassification |
Solo salida. Clasifica el mensaje según el modelo de facturación de EE.UU. Para obtener detalles sobre cada tipo de clasificación, consulta la guía del modelo de facturación de EE.UU.. Este campo solo se completa para los números de teléfono de EE.UU. |
totalPayloadSizeBytes |
Solo salida. Es el tamaño total de la carga útil del mensaje en bytes. La carga útil cuenta todos los archivos adjuntos en un mensaje de RCS para empresas, que pueden ser videos, imágenes, archivos PDF, etcétera, excepto el texto del mensaje o las sugerencias. Actualmente, este campo solo se completa para los números de teléfono de EE.UU. |
carrier |
Solo salida. Es la información del operador al que pertenece el número de teléfono del usuario, según los servidores de RCS de Google. Actualmente, este campo solo se completa para los números de teléfono de EE.UU. |
Campo de unión
|
|
expireTime |
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. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
ttl |
Opcional. Solo entrada. Tiempo que el mensaje estará activo antes de que se revoque automáticamente. Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
AgentContentMessage
Es el contenido de un mensaje que se envía del agente a un usuario.
| Representación JSON |
|---|
{ "suggestions": [ { object ( |
| Campos | |
|---|---|
suggestions[] |
Es una lista de respuestas y acciones sugeridas que aparecen como una lista de chips de sugerencias después del mensaje del agente asociado. Máximo de 11 sugerencias. Los chips solo se muestran cuando el mensaje del agente asociado es el más reciente de la conversación (incluidos los mensajes del agente y del usuario). El usuario puede presionar una respuesta sugerida para enviarle la respuesta de texto al agente o presionar una acción sugerida para iniciar una acción nativa en el dispositivo. Existen dos tipos de patrones de sugerencias: persistentes y transitorios. Para obtener más detalles, consulta Sugerencias. |
Campo de unión content. El contenido del mensaje del agente content solo puede ser uno de los siguientes: |
|
text |
Texto codificado en UTF-8. Se admiten hasta 3,072 caracteres. |
fileName |
Es el nombre único de un archivo. La plataforma de RCS para empresas devuelve un nombre de archivo cuando un agente sube un archivo. Está obsoleta. En su lugar, usa uploadedRbmFile que se indica a continuación. |
uploadedRbmFile |
Contiene identificadores de un archivo y una miniatura que se subieron al servidor de RCS para empresas y que este los publicó. |
richCard |
Es una tarjeta enriquecida independiente. |
contentInfo |
Es información sobre un archivo, incluidas la URL del archivo y la URL de la miniatura del archivo. La plataforma de RCS para empresas entrega contenido desde una caché, pero un agente puede forzar a la plataforma de RCS para empresas a recuperar una versión nueva del contenido y actualizar la caché. |
UploadedRbmFile
Mensaje que contiene información del archivo y la miniatura
| Representación JSON |
|---|
{ "fileName": string, "thumbnailName": string } |
| Campos | |
|---|---|
fileName |
Es el nombre del archivo que devolvió la plataforma de RCS para empresas cuando se subió el archivo. |
thumbnailName |
Es el nombre de la miniatura que devuelve la plataforma de RCS para empresas cuando se subió la miniatura. |
RichCard
Es una tarjeta enriquecida independiente o un carrusel de tarjetas enriquecidas que el agente envía al usuario.
| Representación JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de unión card. Tarjeta independiente o carrusel de tarjetas. card puede ser solo uno de los parámetros siguientes: |
|
carouselCard |
Carrusel de tarjetas. |
standaloneCard |
Es una tarjeta independiente. |
CarouselCard
Carrusel de tarjetas.
| Representación JSON |
|---|
{ "cardWidth": enum ( |
| Campos | |
|---|---|
cardWidth |
Es el ancho de las tarjetas en el carrusel. |
cardContents[] |
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
Es el ancho de las tarjetas en el carrusel.
| Enums | |
|---|---|
CARD_WIDTH_UNSPECIFIED |
No se especifica. |
SMALL |
120 DP. |
MEDIUM |
232 DP. |
CardContent
Contenido de la tarjeta
| Representación JSON |
|---|
{ "title": string, "description": string, "media": { object ( |
| Campos | |
|---|---|
title |
Título opcional de la tarjeta. Se admiten hasta 200 caracteres. |
description |
(Opcional) Descripción de la tarjeta. Se admiten 2,000 caracteres como máximo. |
media |
(Opcional) Contenido multimedia (imagen, GIF, video o PDF) para incluir en la tarjeta. |
suggestions[] |
(Opcional) Lista de sugerencias para incluir en la tarjeta. Se pueden incluir hasta 4 sugerencias. |
Medios
Es un archivo multimedia dentro de una tarjeta enriquecida.
| Representación JSON |
|---|
{ "height": enum ( |
| Campos | |
|---|---|
height |
Es la altura del contenido multimedia dentro de una tarjeta enriquecida con un diseño vertical. En el caso de 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 solo puede ser uno de los siguientes: |
|
fileName |
Es el nombre único del archivo que devuelve la plataforma de RCS para empresas cuando se subió el archivo. Está obsoleta. En su lugar, usa uploadedRbmFile que se indica a continuación. |
uploadedRbmFile |
Contiene identificadores de un archivo y una miniatura que se subieron al servidor de RCS para empresas y se publicaron desde él. |
contentInfo |
Es información sobre un archivo, incluidas la URL del archivo y la URL de su miniatura. La plataforma de RCS para empresas entrega contenido desde una caché, pero un agente puede forzar a la plataforma de RCS para empresas a recuperar una nueva versión del contenido y actualizar la caché. |
ContentInfo
Es un mensaje que contiene la información del contenido.
| Representación JSON |
|---|
{ "fileUrl": string, "thumbnailUrl": string, "forceRefresh": boolean } |
| Campos | |
|---|---|
fileUrl |
Es la URL del archivo a la que se puede acceder públicamente. La plataforma de RCS para empresas determina el tipo de MIME del archivo a partir del campo content-type en los encabezados HTTP cuando recupera el archivo. El campo content-type debe estar presente y ser preciso en la respuesta HTTP de la URL. El tamaño máximo recomendado del archivo es de 100 MB. Nota: No se admiten redireccionamientos en las URLs de archivos. Usa CreateFileRequest si se necesita un redireccionamiento. |
thumbnailUrl |
(Opcional, solo para archivos de imagen, audio y video) URL accesible de forma pública de la miniatura. El tamaño máximo es de 100 KB. Si no proporcionas una URL de miniatura, la plataforma de RCS para empresas 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 el usuario deba presionar un botón de descarga. Nota: No se admiten redireccionamientos en las URLs de archivos. Usa CreateFileRequest si se necesita un redireccionamiento. |
forceRefresh |
Si se configura, la plataforma de RCS para empresas 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
| Enums | |
|---|---|
HEIGHT_UNSPECIFIED |
No se especifica. |
SHORT |
112 DP. |
MEDIUM |
168 DP. |
TALL |
264 dp |
Sugerencia
Es una respuesta o acción sugerida que se incluye en una tarjeta enriquecida o en una lista de chips de sugerencias.
| Representación JSON |
|---|
{ "suggestionDisplay": enum ( |
| Campos | |
|---|---|
suggestionDisplay |
Opcional. Controla el comportamiento de visualización de la sugerencia. Solo se aplica a los mensajes de texto sin formato que se envían a los clientes de Mensajes de Google (versión 20260225.00 o posterior). Este campo solo se debe establecer en las sugerencias independientes asociadas con mensajes de texto sin formato. El servidor rechazará el mensaje si este campo se aplica a sugerencias en tarjetas enriquecidas o sugerencias independientes con transferencias de archivos. Este parámetro de configuración solo se serializa para Mensajes de Google; otros clientes (como iOS o Samsung) lo ignoran. |
Campo de unión option. Es una respuesta o acción sugerida. option puede ser solo uno de los parámetros siguientes: |
|
reply |
Los usuarios pueden presionar una respuesta sugerida para enviarle la respuesta de texto al agente. |
action |
Los usuarios pueden presionar una acción sugerida para iniciar la acción nativa correspondiente en el dispositivo. |
SuggestedReply
Cuando se presiona, envía la respuesta de texto al agente.
| Representación JSON |
|---|
{ "text": string, "postbackData": string } |
| Campos | |
|---|---|
text |
Es el texto que se muestra en la respuesta sugerida y que se envía al agente cuando el usuario lo presiona. Máximo: 25 caracteres. |
postbackData |
Es 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 |
| Campos | |
|---|---|
text |
Es el texto que se muestra en la acción sugerida. Máximo: 25 caracteres. |
postbackData |
Es la carga útil (codificada en base64) que se enviará al agente en el evento del usuario que se genera cuando el usuario presiona la acción sugerida. Se admiten hasta 2,048 caracteres. |
fallbackUrl |
(Opcional) URL de resguardo que se usará si un cliente no admite una acción sugerida. Las URLs de resguardo se abren en ventanas nuevas del navegador. Debe ser un URI válido, como se define en RFC 3986. Se admiten hasta 2,048 caracteres. |
Campo de unión action. Es la acción nativa que se inicia en el dispositivo cuando el usuario presiona la acción sugerida. action puede ser solo uno de los parámetros siguientes: |
|
dialAction |
Abre la app de marcador predeterminada del usuario con el número de teléfono especificado por el agente completado. |
viewLocationAction |
Abre la app de mapas predeterminada del usuario y selecciona la ubicación especificada por el agente o realiza una búsqueda cerca de la ubicación del usuario según una búsqueda especificada por el agente. |
createCalendarEventAction |
Abre la app de calendario predeterminada del usuario y comienza el flujo del nuevo evento de calendario con los datos del evento especificados por el agente completados previamente. |
openUrlAction |
Abre la app del navegador web predeterminado del usuario en la URL determinada. Si el usuario tiene instalada una app registrada como controlador predeterminado para la URL, se abrirá esta app y se usará su ícono en la IU de la acción sugerida. |
shareLocationAction |
Abre el selector de ubicación de la app de RCS para que el usuario pueda elegir una ubicación y enviársela 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 |
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 realiza una búsqueda cerca de la ubicación del usuario según una búsqueda especificada por el agente.
| Representación JSON |
|---|
{
"latLong": {
object ( |
| Campos | |
|---|---|
latLong |
(Opcional) La latitud y la longitud de la ubicación especificada. |
label |
(Opcional) Es la etiqueta de la chincheta que se soltó en latLong. |
query |
(Opcional, solo se admite en clientes de Mensajes para Android) En lugar de especificar una latLong (y, de manera opcional, una etiqueta), el agente puede especificar una cadena de consulta. En el caso de las apps de mapas predeterminadas que admiten la función de búsqueda (incluido Google Maps), si se presiona esta acción sugerida, se realiza una búsqueda de ubicación centrada en la ubicación actual del usuario. Si la búsqueda es lo suficientemente específica, los agentes pueden usarla para seleccionar cualquier ubicación del mundo. Por ejemplo, si configuras la cadena de consulta como "Banco Verde en crecimiento", se mostrarán todas las ubicaciones de Banco Verde en crecimiento cercanas al usuario. Si configuras la cadena de consulta como "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 números de punto flotante de doble precisión que representan los grados de latitud y longitud. 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 |
La latitud expresada en grados. Debe pertenecer al rango [-90.0, +90.0]. |
longitude |
La longitud expresada en grados. Debe pertenecer al rango [-180.0, +180.0]. |
CreateCalendarEventAction
Abre la app de calendario predeterminada del usuario y comienza el flujo del nuevo evento de calendario con los datos del evento especificados por el agente completados previamente.
| Representación JSON |
|---|
{ "startTime": string, "endTime": string, "title": string, "description": string } |
| Campos | |
|---|---|
startTime |
Hora de inicio del evento. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
endTime |
Hora de finalización del evento. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
title |
Es el título del evento. Se admiten 100 caracteres como máximo. |
description |
Descripción del evento. 500 caracteres como máximo. |
OpenUrlAction
Abre la app del navegador web predeterminado del usuario en la URL especificada. Si el usuario tiene instalada una app registrada como controlador predeterminado para la URL, se abrirá esta app y se usará su ícono en la IU de la acción sugerida.
| Representación JSON |
|---|
{ "url": string, "application": enum ( |
| Campos | |
|---|---|
url |
Es la URL que se abrirá. A partir del 1 de noviembre de 2025, el esquema de URL debe ser https:// o http://. Las solicitudes a la API que usen cualquier otro esquema (p.ej., tel:, mailto:, sms:) se rechazarán con un error 400 Bad Request después de esta fecha. La URL debe ser un URI válido, como se define en RFC 3986. Se admiten hasta 2,048 caracteres. |
application |
Es la aplicación, el navegador o la WebView que abre la URL. Para verificar si el dispositivo de un usuario admite el modo de WebView, primero ejecuta una verificación de capacidades. Consulta la documentación para obtener más detalles: https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities. |
webviewViewMode |
Es el modo de visualización de WebView. |
description |
Es la descripción de accesibilidad para WebView. |
OpenUrlApplication
Tipo de la aplicación de apertura de URL
| Enums | |
|---|---|
OPEN_URL_APPLICATION_UNSPECIFIED |
No se especificó. Se usará el navegador para abrir el vínculo. |
BROWSER |
Usa el navegador para abrir la URL. |
WEBVIEW |
Abrir la URL en una ventana integrada de WebView |
WebviewViewMode
Es el tipo de modo de vista de la WebView.
| Enums | |
|---|---|
WEBVIEW_VIEW_MODE_UNSPECIFIED |
No se especifica. Para usar WebView, se debe especificar un modo de vista. |
FULL |
Requiere una superposición de pantalla completa con la conversación del chatbot etiquetada en la barra de estado. |
HALF |
Requiere una superposición de media pantalla. |
TALL |
Requiere una pantalla superpuesta de tres cuartos. |
Suggestion.SuggestionDisplay
Es el comportamiento de visualización de las sugerencias de texto independientes.
| Enums | |
|---|---|
SUGGESTION_DISPLAY_UNSPECIFIED |
Los clientes aplican el comportamiento de visualización predeterminado:
|
PERSISTENT |
La sugerencia permanece visible de forma persistente dentro de la burbuja de mensaje, incluso cuando se agregan mensajes nuevos a la conversación. |
StandaloneCard
Tarjeta independiente
| Representación JSON |
|---|
{ "cardOrientation": enum ( |
| Campos | |
|---|---|
cardOrientation |
Es la orientación de la tarjeta. |
thumbnailImageAlignment |
Es la alineación de la vista previa de la imagen para tarjetas independientes con diseño horizontal. |
cardContent |
Contenido de la tarjeta. |
StandaloneCard.CardOrientation
Es la orientación de la tarjeta.
| Enums | |
|---|---|
CARD_ORIENTATION_UNSPECIFIED |
No se especifica. |
HORIZONTAL |
Diseño horizontal. Si el objeto |
VERTICAL |
Diseño vertical. |
StandaloneCard.ThumbnailImageAlignment
Es la alineación de la vista previa de la imagen para tarjetas independientes con diseño horizontal.
| Enums | |
|---|---|
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. |
MessageTrafficType
Tipos de tráfico de mensajes admitidos. Se extenderá el enum para admitir tipos de tráfico adicionales.
| Enums | |
|---|---|
MESSAGE_TRAFFIC_TYPE_UNSPECIFIED |
Comportamiento predeterminado: El tipo de tráfico de mensajes se determina según el caso de uso del agente. Actualiza el tipo de tráfico según sea necesario en función del contenido del mensaje. En el caso de los agentes de uso múltiple, no se proporciona ningún valor predeterminado. El tipo de tráfico se debe establecer de forma manual (p.ej., TRANSACCIÓN, PROMOCIÓN). |
AUTHENTICATION |
Son los mensajes de autenticación en el caso de uso del agente de OTP. |
TRANSACTION |
Para mensajes transaccionales en casos de uso de agentes transaccionales o de uso múltiple |
PROMOTION |
Para mensajes promocionales en casos de uso de agentes promocionales o de uso múltiple |
SERVICEREQUEST |
Son los mensajes sobre los servicios que el usuario aceptó recibir. Se usa en casos de uso de agentes de OTP, transaccionales, promocionales o de uso múltiple. |
ACKNOWLEDGEMENT |
Son los mensajes que confirman la solicitud de cancelación de suscripción del usuario. Se usa en casos de uso de agentes de OTP, transaccionales, promocionales o de uso múltiple. |
RichMessageClassification
Solo para la facturación en EE.UU.: Detalles sobre las clasificaciones de mensajes que se usan para la facturación.
| Representación JSON |
|---|
{
"classificationType": enum ( |
| Campos | |
|---|---|
classificationType |
|
segmentCount |
Cantidad de segmentos de 160 bytes para el texto del mensaje, siempre redondeada hacia arriba. Se calcula a partir de la longitud total en bytes UTF-8 del contenido de texto únicamente; se excluyen los datos de las respuestas o acciones sugeridas. Por ejemplo, un mensaje de texto de 300 bytes tiene un segmentCount de 2. Este campo solo se propaga para los tipos de RICH_MESSAGE. |
RichMessageClassificationType
Solo para la facturación en EE.UU.: Especifica la clasificación del mensaje para la facturación.
Importante: Los operadores de EE.UU. establecen el precio de los tipos de mensajes facturables que se describen en esta página. Los operadores de EE.UU. también determinan el cargo final del desarrollador por enviar mensajes de RCS para empresas. Para obtener más información sobre precios o facturación, comunícate con los representantes de la empresa de transporte correspondiente.
| Enums | |
|---|---|
RICH_MESSAGE_CLASSIFICATION_TYPE_UNSPECIFIED |
No especificado |
RICH_MESSAGE |
El mensaje se clasifica como RICH en las siguientes condiciones: 1. No contiene tarjetas enriquecidas. 2. No contiene archivos adjuntos. 3. Las acciones sugeridas que contiene deben ser una acción de marcado o una acción de apertura de URL que no use una WebView. |
RICH_MEDIA_MESSAGE |
Cualquier mensaje que no cumpla con los criterios de RICH_MESSAGE Esto incluye los mensajes que contienen una tarjeta enriquecida, un archivo multimedia o cualquier acción sugerida, excepto Marcar o Abrir URL en el navegador. |
SUGGESTED_ACTION_CLICK |
Representa la acción de presionar del usuario en una acción sugerida (no en una respuesta sugerida). Esta clasificación solo se aplica a las acciones del usuario y aparece exclusivamente en la carga útil de UserMessage de un webhook. No se aplica a los mensajes A2P. |
Métodos |
|
|---|---|
|
Envía un mensaje del agente a un usuario. |
|
Revoca un mensaje del agente que se envió, pero aún no se entregó. |