Recurso: Mensaje del agente
Un mensaje enviado por el agente a un usuario.
| Representación JSON |
|---|
{ "name": string, "sendTime": string, "contentMessage": { object ( |
| Campos | |
|---|---|
name | Este campo lo configura la plataforma RCS for Business. No lo incluya al crear un mensaje para el agente. El campo se resuelve como "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 al agente para el mensaje. |
sendTime | Este campo lo configura la plataforma RCS for Business. No lo incluya al crear un mensaje para el agente. El campo indica la hora en que se envía el mensaje al usuario. Utiliza RFC 3339, donde la salida generada siempre estará normalizada en Z y utilizará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan desplazamientos distintos de "Z". Ejemplos: |
contentMessage | El contenido del mensaje del agente. |
messageTrafficType | El tipo de tráfico de mensajes. |
richMessageClassification | Solo salida. Clasifica el mensaje según el modelo de facturación de EE. UU. Para obtener más información sobre cada tipo de clasificación, consulte la guía del modelo de facturación de EE . UU. Este campo solo se completa para números de teléfono de EE. UU. |
totalPayloadSizeBytes | Solo salida. Tamaño total de la carga útil del mensaje en bytes. La carga útil incluye todos los archivos adjuntos de un mensaje RCS for Business (vídeos, imágenes, PDF, etc.), a excepción del texto del mensaje o las sugerencias. Actualmente, este campo solo se rellena para números de teléfono de EE. UU. |
carrier | Solo se muestra la información del operador al que pertenece el número de teléfono del usuario, según los sistemas RCS de Google. Actualmente, este campo solo se completa para números de teléfono de EE. UU. |
| |
expireTime | Opcional. Marca de tiempo en UTC que indica cuándo se considera que este recurso ha caducado. Este valor se proporciona en la salida si se especifica o si se establece el campo TTL. Utiliza RFC 3339, donde la salida generada siempre estará normalizada en Z y utilizará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan desplazamientos distintos de "Z". Ejemplos: |
ttl | Opcional. Solo para entrada. Indica cuánto tiempo permanecerá visible el mensaje antes de ser revocado automáticamente. Una duración en segundos con hasta nueve dígitos fraccionarios, que termina en ' |
Mensaje de contenido del agente
El contenido de un mensaje enviado por el agente a un usuario.
| Representación JSON |
|---|
{ "suggestions": [ { object ( |
| Campos | |
|---|---|
suggestions[] | Una lista de respuestas y acciones sugeridas que aparecen como una lista de sugerencias después del mensaje del agente correspondiente. Máximo 11 sugerencias. Los chips solo se muestran cuando el mensaje del agente asociado es el más reciente dentro de la conversación (incluyendo mensajes tanto del agente como del usuario). El usuario puede tocar una respuesta sugerida para enviarla al agente o tocar una acción sugerida para iniciar una acción nativa en el dispositivo. Existen dos tipos de patrones de sugerencias: persistentes y transitorios. Para más detalles, consulte Sugerencias . |
content del campo de unión. El content del mensaje del agente solo puede ser uno de los siguientes: | |
text | Texto codificado en UTF-8. Máximo 3072 caracteres. |
fileName | El nombre único de un archivo. La plataforma RCS for Business devuelve un nombre de archivo cuando un agente carga un archivo. Se ha dejado de usar; en su lugar, utilice uploadedRbmFile (ver más abajo). |
uploadedRbmFile | Contiene identificadores para un archivo y una miniatura que fueron cargados y servidos por el servidor RCS for Business. |
richCard | Una tarjeta enriquecida independiente. |
contentInfo | Información sobre un archivo, incluyendo la URL del archivo y la URL de la miniatura del archivo. La plataforma RCS for Business sirve el contenido desde una caché, pero un agente puede forzar a la plataforma RCS for Business a obtener una nueva versión del contenido y actualizar la caché. |
Archivo RBM subido
Mensaje que contiene información sobre el archivo y la miniatura.
| Representación JSON |
|---|
{ "fileName": string, "thumbnailName": string } |
| Campos | |
|---|---|
fileName | El nombre del archivo, devuelto por la plataforma RCS for Business cuando se cargó el archivo. |
thumbnailName | El nombre de la miniatura, devuelto por la plataforma RCS for Business al cargar la miniatura. |
Tarjeta enriquecida
Una tarjeta enriquecida independiente o un carrusel de tarjetas enriquecidas enviadas desde el agente al usuario.
| Representación JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
card de campo de unión. Tarjeta independiente o carrusel de tarjetas. card solo puede ser una de las siguientes: | |
carouselCard | Carrusel de cartas. |
standaloneCard | Tarjeta independiente. |
Tarjeta de carrusel
Carrusel de cartas.
| Representación JSON |
|---|
{ "cardWidth": enum ( |
| Campos | |
|---|---|
cardWidth | El ancho de las tarjetas en el carrusel. |
cardContents[] | Lista de contenidos para cada tarjeta del carrusel. Un carrusel puede tener un mínimo de 2 tarjetas y un máximo de 10. |
CarruselCard.CardWidth
El ancho de las tarjetas en el carrusel.
| Enumeraciones | |
|---|---|
CARD_WIDTH_UNSPECIFIED | No especificado. |
SMALL | 120 DP. |
MEDIUM | 232 DP. |
Contenido de la tarjeta
Contenido de la tarjeta
| Representación JSON |
|---|
{ "title": string, "description": string, "media": { object ( |
| Campos | |
|---|---|
title | (Opcional) Título de la tarjeta. Máximo 200 caracteres. |
description | (Opcional) Descripción de la tarjeta. Máximo 2000 caracteres. |
media | (Opcional) Archivos multimedia (imagen, GIF, vídeo, PDF) para incluir en la tarjeta. |
suggestions[] | (Opcional) Lista de sugerencias para incluir en la tarjeta. Máximo 4 sugerencias. |
Medios de comunicación
Un archivo multimedia dentro de una tarjeta enriquecida.
| Representación JSON |
|---|
{ "height": enum ( |
| Campos | |
|---|---|
height | Altura del contenido multimedia dentro de una tarjeta enriquecida con diseño vertical. Para una tarjeta independiente con diseño horizontal, utilice |
content del campo de unión. content multimedia solo puede ser uno de los siguientes: | |
fileName | El nombre único del archivo, devuelto por la plataforma RCS for Business al cargarlo. Se recomienda usar uploadedRbmFile (ver más abajo) en lugar de uploadedRbmFile. |
uploadedRbmFile | Contiene identificadores para un archivo y una miniatura que fueron cargados y servidos por el servidor RCS for Business. |
contentInfo | Información sobre un archivo, incluyendo la URL del archivo y la URL de la miniatura del archivo. La plataforma RCS for Business sirve el contenido desde una caché, pero un agente puede forzar a la plataforma RCS for Business a obtener una nueva versión del contenido y actualizar la caché. |
Información de contenido
Mensaje que contiene la información del contenido.
| Representación JSON |
|---|
{ "fileUrl": string, "thumbnailUrl": string, "forceRefresh": boolean } |
| Campos | |
|---|---|
fileUrl | URL pública del archivo. La plataforma RCS for Business determina el tipo MIME del archivo a partir del campo `content-type` en los encabezados HTTP al recuperarlo. El campo `content-type` debe estar presente y ser correcto en la respuesta HTTP de la URL. Se recomienda un tamaño máximo de archivo de 100 MB. Nota: Las redirecciones en las URL de archivos no son compatibles. Si necesita una redirección, utilice CreateFileRequest. |
thumbnailUrl | (Opcional, solo para archivos de imagen, audio y vídeo) URL pública de la miniatura. Tamaño máximo de 100 kB. Si no proporciona una URL de miniatura, la plataforma RCS for Business mostrará una miniatura vacía 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 deba pulsar un botón de descarga. Nota: Las redirecciones en las URL de archivos no son compatibles. Si necesita una redirección, utilice CreateFileRequest. |
forceRefresh | Si está configurada, la plataforma RCS for Business obtiene el archivo y la miniatura de las URL especificadas, incluso si la plataforma tiene copias en caché del archivo (y/o de la miniatura). |
Medios.Altura
Altura media
| Enumeraciones | |
|---|---|
HEIGHT_UNSPECIFIED | No especificado. |
SHORT | 112 DP. |
MEDIUM | 168 DP. |
TALL | 264 DP. |
Sugerencia
Una respuesta sugerida o una acción sugerida incluida en una tarjeta enriquecida o en una lista de sugerencias.
| Representación JSON |
|---|
{ "suggestionDisplay": enum ( |
| Campos | |
|---|---|
suggestionDisplay | Opcional. Controla el comportamiento de visualización de la sugerencia. Aplicable únicamente a mensajes de texto sin formato enviados a clientes de Google Messages (versión 20260225.00 o posterior). Este campo solo debe configurarse en sugerencias independientes asociadas a 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. Esta configuración solo se serializa para Google Messages; otros clientes (como iOS o Samsung) la ignoran. |
option de campo de unión. Una respuesta sugerida o una acción sugerida. option solo puede ser una de las siguientes: | |
reply | Los usuarios pueden pulsar una respuesta sugerida para enviar la respuesta de texto al agente. |
action | Los usuarios pueden pulsar una acción sugerida para iniciar la acción nativa correspondiente en el dispositivo. |
Respuesta sugerida
Al pulsarlo, envía la respuesta de texto al agente.
| Representación JSON |
|---|
{ "text": string, "postbackData": string } |
| Campos | |
|---|---|
text | Texto que se muestra en la respuesta sugerida y que se envía al agente cuando el usuario lo pulsa. Máximo 25 caracteres. |
postbackData | La carga útil codificada en base64 que el agente recibe en un evento de usuario cuando este toca la respuesta sugerida. |
Acción sugerida
Al pulsarlo, se inicia la acción nativa correspondiente en el dispositivo.
| Representación JSON |
|---|
{ "text": string, "postbackData": string, "fallbackUrl": string, // Union field |
| Campos | |
|---|---|
text | Texto que se muestra en la acción sugerida. Máximo 25 caracteres. |
postbackData | Carga útil (codificada en base64) que se enviará al agente en el evento de usuario que se produce cuando el usuario pulsa la acción sugerida. Máximo 2048 caracteres. |
fallbackUrl | (Opcional) URL alternativa que se utilizará si un cliente no admite la acción sugerida. Las URL alternativas se abren en nuevas ventanas del navegador. Debe ser una URI válida según lo definido en RFC 3986. Máximo 2048 caracteres. |
action de campo de unión. La acción nativa que se inicia en el dispositivo cuando el usuario toca la acción sugerida. action solo puede ser una de las siguientes: | |
dialAction | Abre la aplicación de marcación predeterminada del usuario con el número de teléfono especificado por el agente ya introducido. |
viewLocationAction | Abre la aplicación de mapas predeterminada del usuario y selecciona la ubicación especificada por el agente o realiza búsquedas en los alrededores de la ubicación del usuario en función de una consulta especificada por el agente. |
createCalendarEventAction | Abre la aplicación de calendario predeterminada del usuario e inicia el flujo de eventos del calendario con los datos de evento especificados por el agente precargados. |
openUrlAction | Abre el navegador web predeterminado del usuario en la URL indicada. Si el usuario tiene instalada una aplicación registrada como navegador predeterminado para esa URL, se abrirá dicha aplicación y su icono aparecerá en la interfaz de usuario de acciones sugeridas. |
shareLocationAction | Abre el selector de ubicación de la aplicación RCS para que el usuario pueda elegir una ubicación que enviar al agente. |
DialAction
Abre la aplicación de marcación predeterminada del usuario con el número de teléfono especificado por el agente ya introducido.
| Representación JSON |
|---|
{ "phoneNumber": string } |
| Campos | |
|---|---|
phoneNumber | El número de teléfono en formato E.164, por ejemplo, +12223334444. |
Ver acción de ubicación
Abre la aplicación de mapas predeterminada del usuario y selecciona la ubicación especificada por el agente o realiza búsquedas en los alrededores de la ubicación del usuario en función de una consulta especificada por el agente.
| Representación JSON |
|---|
{
"latLong": {
object ( |
| Campos | |
|---|---|
latLong | (Opcional) La latitud y longitud de la ubicación especificada. |
label | (Opcional) La etiqueta del pin colocado en latLong. |
query | (Opcional) En lugar de especificar coordenadas latitud/longitud (y, opcionalmente, una etiqueta), el agente puede especificar una cadena de consulta. En las aplicaciones de mapas predeterminadas que admiten la función de búsqueda (como Google Maps), al pulsar esta opción se realiza una búsqueda de ubicación centrada en la ubicación actual del usuario. Si la consulta es suficientemente específica, los agentes pueden usarla para seleccionar cualquier ubicación del mundo. Por ejemplo, al establecer la cadena de consulta en "Growing Tree Bank" se mostrarán todas las sucursales de Growing Tree Bank cercanas al usuario. Si se establece la cadena de consulta en "1600 Amphitheatre Parkway, Mountain View, CA 94043", se seleccionará esa dirección específica, independientemente de la ubicación del usuario. |
LatLng
Un objeto que representa un par de latitud/longitud. Se expresa como un par de números decimales para representar grados de latitud y grados de longitud. Salvo que se especifique lo contrario, este objeto debe ajustarse al estándar WGS84 . Los valores deben estar dentro de rangos normalizados.
| Representación JSON |
|---|
{ "latitude": number, "longitude": number } |
| Campos | |
|---|---|
latitude | La latitud en grados. Debe estar en el rango [-90.0, +90.0]. |
longitude | La longitud en grados. Debe estar en el rango [-180.0, +180.0]. |
Acción para crear eventos de calendario
Abre la aplicación de calendario predeterminada del usuario e inicia el flujo de eventos del calendario con los datos de evento especificados por el agente precargados.
| Representación JSON |
|---|
{ "startTime": string, "endTime": string, "title": string, "description": string } |
| Campos | |
|---|---|
startTime | Hora de inicio del evento. Utiliza RFC 3339, donde la salida generada siempre estará normalizada en Z y utilizará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan desplazamientos distintos de "Z". Ejemplos: |
endTime | Hora de finalización del evento. Utiliza RFC 3339, donde la salida generada siempre estará normalizada en Z y utilizará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan desplazamientos distintos de "Z". Ejemplos: |
title | Título del evento. Máximo 100 caracteres. |
description | Descripción del evento. Máximo 500 caracteres. |
OpenUrlAction
Abre el navegador web predeterminado del usuario en la URL especificada. Si el usuario tiene instalada una aplicación registrada como navegador predeterminado para esa URL, se abrirá dicha aplicación y su icono aparecerá en la interfaz de usuario de acciones sugeridas.
| Representación JSON |
|---|
{ "url": string, "application": enum ( |
| Campos | |
|---|---|
url | La URL a abrir. A partir del 1 de noviembre de 2025, el esquema de URL debe ser https:// o http://. Las solicitudes a la API que utilicen otros esquemas (por ejemplo, tel:, mailto:, sms:) serán rechazadas con un error 400 Bad Request después de esta fecha. La URL debe ser una URI válida según lo definido en RFC 3986. Máximo 2048 caracteres. |
application | La URL abre la aplicación, el navegador o la vista web. Para comprobar si el dispositivo de un usuario admite el modo de vista web, primero ejecute una comprobación de capacidades. Consulte la documentación para obtener más detalles: https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities . |
webviewViewMode | Modo de visualización para webview. |
description | Descripción de accesibilidad para la vista web. |
Aplicación OpenUrl
Tipo de URL de la aplicación abierta
| Enumeraciones | |
|---|---|
OPEN_URL_APPLICATION_UNSPECIFIED | No se especifica, se abrirá mediante navegador. |
BROWSER | Utilice el navegador para abrir la URL. |
WEBVIEW | Abrir URL en una ventana de visualización web integrada |
WebviewViewMode
Tipo de modo de vista de la vista web.
| Enumeraciones | |
|---|---|
WEBVIEW_VIEW_MODE_UNSPECIFIED | No especificado. Para usar la vista web, debe especificarse un modo de visualización. |
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 superposición de pantalla de tres cuartos. |
Sugerencia.Mostrar sugerencia
El comportamiento de visualización de las sugerencias de texto independientes.
| Enumeraciones | |
|---|---|
SUGGESTION_DISPLAY_UNSPECIFIED | Los clientes activan el comportamiento de visualización predeterminado:
|
PERSISTENT | La sugerencia permanece visible de forma persistente dentro de la burbuja de mensaje, incluso cuando se añaden nuevos mensajes a la conversación. |
Tarjeta independiente
Tarjeta independiente
| Representación JSON |
|---|
{ "cardOrientation": enum ( |
| Campos | |
|---|---|
cardOrientation | Orientación de la tarjeta. |
thumbnailImageAlignment | Alineación de la vista previa de la imagen para tarjetas independientes con diseño horizontal. |
cardContent | Contenido de la tarjeta. |
Tarjeta independiente.Orientación de la tarjeta
Orientación de la tarjeta.
| Enumeraciones | |
|---|---|
CARD_ORIENTATION_UNSPECIFIED | No especificado. |
HORIZONTAL | Disposición horizontal. Si |
VERTICAL | Disposición vertical. |
Tarjeta independiente.Alineación de la imagen en miniatura
Alineación de la vista previa de la imagen para tarjetas independientes con diseño horizontal.
| Enumeraciones | |
|---|---|
THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED | No especificado. |
LEFT | La vista previa del archivo está alineada a la izquierda. |
RIGHT | La vista previa del archivo está alineada a la derecha. |
Tipo de tráfico de mensajes
Tipos de tráfico de mensajes compatibles. La enumeración se ampliará para admitir tipos de tráfico adicionales.
| Enumeraciones | |
|---|---|
MESSAGE_TRAFFIC_TYPE_UNSPECIFIED | Comportamiento predeterminado: El tipo de tráfico de mensajes se determina según el caso de uso del agente. Actualice el tipo de tráfico según sea necesario en función del contenido del mensaje. Para agentes multiuso, no se proporciona un valor predeterminado. El tipo de tráfico debe configurarse manualmente (por ejemplo, TRANSACCIÓN, PROMOCIÓN). |
AUTHENTICATION | Para mensajes de autenticación en el caso de uso del agente OTP. |
TRANSACTION | Para mensajes transaccionales en casos de uso de agentes transaccionales o multiuso. |
PROMOTION | Para mensajes promocionales en casos de uso de agentes promocionales o multiuso. |
SERVICEREQUEST | Para mensajes sobre servicios que el usuario ha aceptado recibir. Se utiliza en casos de uso de OTP, transaccionales, promocionales o de agentes multiuso. |
ACKNOWLEDGEMENT | Para mensajes que confirman la solicitud de baja del usuario. Se utiliza en casos de uso de OTP, transaccionales, promocionales o de agentes multiuso. |
Clasificación de mensajes enriquecidos
Solo para facturación en EE. UU.: Detalles sobre las clasificaciones de mensajes utilizadas para la facturación.
| Representación JSON |
|---|
{
"classificationType": enum ( |
| Campos | |
|---|---|
classificationType | |
segmentCount | El número de segmentos de 160 bytes para el texto del mensaje, siempre redondeado al alza. Calculado únicamente a partir de la longitud total en bytes UTF-8 del contenido del texto; se excluyen los datos de las respuestas o acciones sugeridas. Por ejemplo, un mensaje de texto de 300 bytes tiene un recuento de segmentos de 2. Este campo solo se rellena para los tipos RICH_MESSAGE. |
Tipo de clasificación de mensajes enriquecidos
Solo para facturación en EE. UU.: Especifica la clasificación del mensaje para la facturación.
Importante: Los operadores estadounidenses fijan el precio de los tipos de mensajes facturables descritos en esta página. Asimismo, determinan el cargo final que el desarrollador deberá pagar por el envío de mensajes RCS para Empresas. Para obtener información adicional sobre precios o facturación, póngase en contacto con los representantes del operador correspondiente.
| Enumeraciones | |
|---|---|
RICH_MESSAGE_CLASSIFICATION_TYPE_UNSPECIFIED | No especificado |
RICH_MESSAGE | Un mensaje se clasifica como RICH bajo las siguientes condiciones: 1. No contiene tarjetas enriquecidas. 2. No contiene archivos adjuntos. 3. Cualquier acción sugerida que contenga debe ser una acción de Marcación o una acción de Abrir URL que no utilice una vista web. |
RICH_MEDIA_MESSAGE | Cualquier mensaje que no cumpla con los criterios RICH_MESSAGE. Esto incluye mensajes que contengan una tarjeta enriquecida, un archivo multimedia o cualquier acción sugerida que no sea Marcar o Abrir URL en el navegador. |
SUGGESTED_ACTION_CLICK | Representa la pulsación del usuario sobre una acción sugerida (no una respuesta sugerida). Esta clasificación se aplica únicamente a las acciones del usuario y aparece exclusivamente en la carga útil 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 de agente que se ha enviado pero que aún no se ha entregado. |