Índice
Action
(mensaje)Action.ActionParameter
(mensaje)Action.Interaction
(enumeración)Action.LoadIndicator
(enumeración)BorderStyle
(mensaje)BorderStyle.BorderType
(enumeración)Button
(mensaje)ButtonList
(mensaje)Card
(mensaje)Card.CardAction
(mensaje)Card.CardFixedFooter
(mensaje)Card.CardHeader
(mensaje)Card.DisplayStyle
(enumeración)Card.DividerStyle
(enumeración)Card.Section
(mensaje)Columns
(mensaje)Columns.Column
(mensaje)Columns.Column.HorizontalSizeStyle
(enumeración)Columns.Column.VerticalAlignment
(enumeración)Columns.Column.Widgets
(mensaje)DateTimePicker
(mensaje)DateTimePicker.DateTimePickerType
(enumeración)DecoratedText
(mensaje)DecoratedText.SwitchControl
(mensaje)DecoratedText.SwitchControl.ControlType
(enumeración)Divider
(mensaje)GetAutocompletionResponse
(mensaje)Grid
(mensaje)Grid.GridItem
(mensaje)Grid.GridItem.GridItemLayout
(enumeración)Icon
(mensaje)Image
(mensaje)ImageComponent
(mensaje)ImageCropStyle
(mensaje)ImageCropStyle.ImageCropType
(enumeración)Link
(mensaje)LinkPreview
(mensaje)Navigation
(mensaje)Notification
(mensaje)OnClick
(mensaje)OpenLink
(mensaje)OpenLink.OnClose
(enumeración)OpenLink.OpenAs
(enumeración)RenderActions
(mensaje)RenderActions.Action
(mensaje)SelectionInput
(mensaje)SelectionInput.PlatformDataSource
(mensaje)SelectionInput.PlatformDataSource.CommonDataSource
(enumeración)SelectionInput.SelectionItem
(mensaje)SelectionInput.SelectionType
(enumeración)SubmitFormResponse
(mensaje)Suggestions
(mensaje)Suggestions.SuggestionItem
(mensaje)TextInput
(mensaje)TextInput.Type
(enumeración)TextParagraph
(mensaje)Widget
(mensaje)Widget.HorizontalAlignment
(enumeración)Widget.ImageType
(enumeración)
Acción
Una acción que describe el comportamiento cuando se envía el formulario. Por ejemplo, puedes invocar una secuencia de comandos de Apps Script para controlar el formulario. Si se activa la acción, los valores del formulario se envían al servidor.
Campos | |
---|---|
function |
Es una función personalizada que se invoca cuando se hace clic en el elemento contenedor o se activa de otro modo. Para ver ejemplos de uso, consulta Cómo crear tarjetas interactivas. |
parameters[] |
Lista de parámetros de acción. |
loadIndicator |
Especifica el indicador de carga que muestra la acción mientras se realiza la llamada a la acción. |
persistValues |
Indica si los valores del formulario persisten después de la acción. El valor predeterminado es Si es Si es |
interaction |
Opcional. Es obligatorio al abrir un diálogo. Qué hacer en respuesta a una interacción con un usuario, como cuando un usuario hace clic en un botón en un mensaje de tarjeta. Si no se especifica, la app responde con la ejecución de un Cuando se especifica un Son compatibles con las apps de Chat, pero no los complementos de Google Workspace. Si se especifica para un complemento, se quitará toda la tarjeta y no se mostrará nada en el cliente. |
ActionParameter
Lista de parámetros de cadena que se deben proporcionar cuando se invoca el método de acción. Por ejemplo, considera tres botones para posponer: Posponer ahora, Posponer un día o Posponer la próxima semana. Puedes usar action method = snooze()
y pasar el tipo de posponer y el tiempo de posposición en la lista de parámetros de cadena.
Para obtener más información, consulta CommonEventObject
.
Campos | |
---|---|
key |
El nombre del parámetro de la secuencia de comandos de acción. |
value |
El valor del parámetro. |
Interacción
Opcional. Es obligatorio al abrir un diálogo.
Qué hacer en respuesta a una interacción con un usuario, como cuando un usuario hace clic en un botón en un mensaje de tarjeta.
Si no se especifica, la app responde con la ejecución de un action
, como abrir un vínculo o ejecutar una función, de la forma habitual.
Cuando se especifica un interaction
, la app puede responder de maneras interactivas especiales. Por ejemplo, si estableces interaction
en OPEN_DIALOG
, la app podrá abrir un diálogo.
Cuando se especifica, no se muestra un indicador de carga.
Son compatibles con las apps de Chat, pero no los complementos de Google Workspace. Si se especifica para un complemento, se quitará toda la tarjeta y no se mostrará nada en el cliente.
Enumeradores | |
---|---|
INTERACTION_UNSPECIFIED |
Valor predeterminado action se ejecuta con normalidad. |
OPEN_DIALOG |
Abre un diálogo, una interfaz con ventanas basada en tarjetas que usan las apps de Chat para interactuar con los usuarios. Solo es compatible con apps de Chat en respuesta a clics en botones en mensajes de tarjetas. No es compatible con los complementos de Google Workspace. Si se especifica para un complemento, se quitará toda la tarjeta y no se mostrará nada en el cliente. |
LoadIndicator
Especifica el indicador de carga que muestra la acción mientras se realiza la llamada a la acción.
Enumeradores | |
---|---|
SPINNER |
Muestra un ícono giratorio para indicar que se está cargando el contenido. |
NONE |
No se muestra nada. |
BorderStyle
Las opciones de estilo para el borde de una tarjeta o un widget, incluidos el tipo de borde y el color.
Campos | |
---|---|
type |
Es el tipo de borde. |
strokeColor |
Los colores que se usarán cuando el tipo sea |
cornerRadius |
Radio de esquina del borde. |
BorderType
Representa los tipos de bordes aplicados a los widgets.
Enumeradores | |
---|---|
BORDER_TYPE_UNSPECIFIED |
No utilizar. No se especifica. |
NO_BORDER |
Valor predeterminado Sin borde |
STROKE |
Esquema |
Botón
Un texto, un icono o un texto y un botón de icono en el que los usuarios pueden hacer clic. Para ver un ejemplo en las apps de Google Chat, consulta la Lista de botones.
Para que una imagen sea un botón en el que se pueda hacer clic, especifica un elemento
(no un Image
) y configura una acción ImageComponent
onClick
.
Campos | |
---|---|
text |
Es el texto que se muestra dentro del botón. |
icon |
La imagen del ícono Si se configuran tanto |
color |
Si se configura, el botón se rellena con un color de fondo sólido y el color de la fuente cambia para mantener el contraste con el color de fondo. Por ejemplo, si estableces un fondo azul, es probable que el resultado sea texto blanco. Si no la estableces, el fondo de la imagen será blanco y el color de la fuente será azul. Para el rojo, el verde y el azul, el valor de cada campo es un número De manera opcional, establece
En el caso de Por ejemplo, el siguiente color representa un rojo medio transparente:
|
onClick |
Obligatorio. Es la acción que se debe realizar cuando un usuario hace clic en el botón, como abrir un hipervínculo o ejecutar una función personalizada. |
disabled |
Si es |
altText |
Es el texto alternativo que se usa con fines de accesibilidad. Establece un texto descriptivo que informe a los usuarios lo que hace el botón. Por ejemplo, si un botón abre un hipervínculo, podrías escribir: "Abre una nueva pestaña del navegador y navega a la documentación para desarrolladores de Google Chat en https://developers.google.com/chat". |
ButtonList
Una lista de botones dispuestos horizontalmente. Para ver un ejemplo en las apps de Google Chat, consulta la Lista de botones.
Campos | |
---|---|
buttons[] |
Un array de botones. |
Tarjeta
Una interfaz de tarjeta que se muestra en un mensaje de Google Chat o en un complemento de Google Workspace
Las tarjetas admiten un diseño definido, elementos interactivos de la IU como botones y rich media, como imágenes. Usa tarjetas para presentar información detallada, recopilar información de los usuarios y guiarlos para dar el siguiente paso.
Si deseas obtener información para compilar tarjetas, consulta la siguiente documentación:
- Para las apps de Google Chat, consulta Diseña IUs dinámicas, interactivas y coherentes con tarjetas.
- Para los complementos de Google Workspace, consulta Interfaces basadas en tarjetas.
Ejemplo: Mensaje de tarjeta para una app de Google Chat
Para crear el mensaje de tarjeta de muestra en Google Chat, usa el siguiente JSON:
{
"cardsV2": [
{
"cardId": "unique-card-id",
"card": {
"header": {
"title": "Sasha",
"subtitle": "Software Engineer",
"imageUrl":
"https://developers.google.com/chat/images/quickstart-app-avatar.png",
"imageType": "CIRCLE",
"imageAltText": "Avatar for Sasha",
},
"sections": [
{
"header": "Contact Info",
"collapsible": true,
"uncollapsibleWidgetsCount": 1,
"widgets": [
{
"decoratedText": {
"startIcon": {
"knownIcon": "EMAIL",
},
"text": "sasha@example.com",
}
},
{
"decoratedText": {
"startIcon": {
"knownIcon": "PERSON",
},
"text": "<font color=\"#80e27e\">Online</font>",
},
},
{
"decoratedText": {
"startIcon": {
"knownIcon": "PHONE",
},
"text": "+1 (555) 555-1234",
}
},
{
"buttonList": {
"buttons": [
{
"text": "Share",
"onClick": {
"openLink": {
"url": "https://example.com/share",
}
}
},
{
"text": "Edit",
"onClick": {
"action": {
"function": "goToView",
"parameters": [
{
"key": "viewType",
"value": "EDIT",
}
],
}
}
},
],
}
},
],
},
],
},
}
],
}
Campos | |
---|---|
header |
Es el encabezado de la tarjeta. Por lo general, un encabezado contiene una imagen principal y un título. Los encabezados siempre aparecen en la parte superior de una tarjeta. |
sections[] |
Contiene una colección de widgets. Cada sección tiene su propio encabezado opcional. Las secciones están separadas visualmente por una línea divisoria. Para ver un ejemplo de las apps de Google Chat, consulta la sección de tarjetas. |
sectionDividerStyle |
El estilo divisor entre las secciones |
cardActions[] |
Las acciones de la tarjeta. Las acciones se agregan al menú de la barra de herramientas de la tarjeta. Como las tarjetas de la app de Chat no tienen una barra de herramientas, Por ejemplo, el siguiente JSON construye un menú de acciones con tarjetas con las opciones
|
name |
Es el nombre de la tarjeta. Se usa como identificador de tarjeta en la navegación con tarjetas. Dado que las apps de Chat no admiten la navegación por tarjetas, ignoran este campo. |
fixedFooter |
Es el pie de página fijo que se muestra en la parte inferior de esta tarjeta. Si se configura Es compatible con los complementos de Google Workspace y las apps de Chat. En el caso de las apps de Chat, puedes usar pies de página fijos en los diálogos, pero no los mensajes de tarjetas. |
displayStyle |
En los complementos de Google Workspace, establece las propiedades de visualización de No es compatible con las apps de Chat. |
peekCardHeader |
Cuando se muestra contenido contextual, el encabezado de la tarjeta de vista previa actúa como un marcador de posición para que el usuario pueda navegar hacia adelante entre las tarjetas de la página principal y las tarjetas contextuales. No es compatible con las apps de Chat. |
CardAction
Una acción de tarjeta es la acción asociada con la tarjeta. Por ejemplo, una tarjeta de factura puede incluir acciones como borrar una factura, una factura por correo electrónico o abrir la factura en un navegador.
No es compatible con las apps de Chat.
Campos | |
---|---|
actionLabel |
Etiqueta que se muestra como elemento del menú de acciones. |
onClick |
Es la acción |
CardHeader
Representa el encabezado de una tarjeta. Para ver un ejemplo en las apps de Google Chat, consulta Encabezado de la tarjeta.
Campos | |
---|---|
title |
Obligatorio. Es el título del encabezado de la tarjeta. El encabezado tiene una altura fija: si se especifican un título y un subtítulo, cada uno ocupa una línea. Si solo se especifica el título, este ocupará ambas líneas. |
subtitle |
El subtítulo del encabezado de la tarjeta. Si se especifica, aparece en su propia línea debajo de |
imageType |
Forma que se usa para recortar la imagen. |
imageUrl |
Es la URL HTTPS de la imagen en el encabezado de la tarjeta. |
imageAltText |
El texto alternativo de esta imagen que se usa con fines de accesibilidad. |
DisplayStyle
En los complementos de Google Workspace, determina cómo se muestra una tarjeta.
No es compatible con las apps de Chat.
Enumeradores | |
---|---|
DISPLAY_STYLE_UNSPECIFIED |
No utilizar. No se especifica. |
PEEK |
El encabezado de la tarjeta aparece en la parte inferior de la barra lateral y cubre parcialmente la tarjeta superior actual de la pila. Cuando haces clic en el encabezado, la tarjeta aparece en la pila de tarjetas. Si la tarjeta no tiene encabezado, se usará uno generado. |
REPLACE |
Valor predeterminado La tarjeta se muestra reemplazando la vista de la tarjeta superior en la pila de tarjetas. |
DividerStyle
El estilo divisor de una tarjeta. Actualmente, solo se usa para divisores entre secciones de tarjetas.
Enumeradores | |
---|---|
DIVIDER_STYLE_UNSPECIFIED |
No utilizar. No se especifica. |
SOLID_DIVIDER |
Opción predeterminada. Renderiza una división sólida entre las secciones. |
NO_DIVIDER |
Si se establece, no se renderiza ningún divisor entre las secciones. |
Sección
Una sección contiene una colección de widgets que se renderizan verticalmente en el orden en que se especifican.
Campos | |
---|---|
header |
Texto que aparece en la parte superior de una sección. Admite texto simple en formato HTML. Para obtener más información sobre cómo dar formato al texto, consulta Dar formato al texto en las apps de Google Chat y Dar formato al texto en complementos de Google Workspace. |
widgets[] |
Todos los widgets de la sección. Debe contener al menos un widget. |
collapsible |
Indica si esta sección es contraíble. Las secciones contraíbles ocultan algunos o todos los widgets, pero los usuarios pueden hacer clic en Mostrar más para expandir la sección y mostrar los widgets ocultos. Los usuarios pueden volver a ocultar los widgets haciendo clic en Mostrar menos. Para determinar qué widgets están ocultos, especifica |
uncollapsibleWidgetsCount |
La cantidad de widgets no contraíbles que permanecen visibles incluso cuando se contrae una sección. Por ejemplo, cuando una sección contiene cinco widgets y |
Columnas
El widget Columns
muestra hasta 2 columnas en un mensaje o diálogo de tarjeta. Puedes agregar widgets a cada columna; los widgets aparecen en el orden en que se especifican. Para ver un ejemplo en las apps de Google Chat, consulta Columnas.
La altura de cada columna se determina por la columna más alta. Por ejemplo, si la primera columna es más alta que la segunda, ambas columnas tienen la misma altura de la primera. Debido a que cada columna puede contener una cantidad diferente de widgets, no puedes definir filas ni alinear widgets entre las columnas.
Las columnas se muestran en paralelo. Puedes personalizar el ancho de cada columna con el campo HorizontalSizeStyle
. Si el ancho de la pantalla del usuario es demasiado angosto, la segunda columna se ajusta debajo de la primera:
- En la Web, la segunda columna se ajusta si el ancho de la pantalla es menor o igual que 480 píxeles.
- En dispositivos iOS, la segunda columna se ajusta si el ancho de la pantalla es menor o igual que 300 pt.
- En dispositivos Android, la segunda columna se ajusta si el ancho de la pantalla es menor o igual que 320 dp.
Para incluir más de 2 columnas o usar filas, usa el widget
.Grid
Son compatibles con las apps de Chat, pero no los complementos de Google Workspace.
Campos | |
---|---|
columnItems[] |
Un array de columnas. Puedes incluir hasta 2 columnas en una tarjeta o un diálogo. |
Columna
Una columna.
Campos | |
---|---|
horizontalSizeStyle |
Especifica cómo una columna completa el ancho de la tarjeta. |
horizontalAlignment |
Especifica si los widgets se alinean a la izquierda, a la derecha o al centro de una columna. |
verticalAlignment |
Especifica si los widgets se alinean en la parte superior, inferior o central de una columna. |
widgets[] |
Un array de widgets incluidos en una columna. Los widgets aparecen en el orden en que se especifican. |
HorizontalSizeStyle
Especifica cómo una columna completa el ancho de la tarjeta. El ancho de cada columna depende del HorizontalSizeStyle
y del ancho de los widgets dentro de la columna.
Enumeradores | |
---|---|
HORIZONTAL_SIZE_STYLE_UNSPECIFIED |
No utilizar. No se especifica. |
FILL_AVAILABLE_SPACE |
Valor predeterminado La columna ocupa el espacio disponible, hasta el 70% del ancho de la tarjeta. Si ambas columnas se configuran en FILL_AVAILABLE_SPACE , cada columna ocupa el 50% del espacio. |
FILL_MINIMUM_SPACE |
La columna ocupa la menor cantidad de espacio posible y no más del 30% del ancho de la tarjeta. |
VerticalAlignment
Especifica si los widgets se alinean en la parte superior, inferior o central de una columna.
Enumeradores | |
---|---|
VERTICAL_ALIGNMENT_UNSPECIFIED |
No utilizar. No se especifica. |
CENTER |
Valor predeterminado Alinea los widgets en el centro de una columna. |
TOP |
Alinea los widgets en la parte superior de una columna. |
BOTTOM |
Alinea los widgets en la parte inferior de una columna. |
Widgets
Los widgets compatibles que puedes incluir en una columna.
Campos | |
---|---|
Campo de unión
|
|
textParagraph |
|
image |
|
decoratedText |
|
buttonList |
|
textInput |
|
selectionInput |
|
dateTimePicker |
|
DateTimePicker
Permite que los usuarios ingresen una fecha, una hora o ambas. Para ver un ejemplo en las apps de Google Chat, consulta Selector de fecha y hora.
Los usuarios pueden ingresar texto o usar el selector para seleccionar fechas y horas. Si los usuarios ingresan una fecha o una hora no válidas, el selector mostrará un error que les indicará que ingresen la información correctamente.
Campos | |
---|---|
name |
Es el nombre con el que se identifica el Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios. |
label |
Es el texto que solicita a los usuarios que ingresen una fecha, una hora o una fecha y hora. Por ejemplo, si los usuarios están programando una cita, usa una etiqueta como |
type |
Indica si el widget admite ingresar una fecha, una hora o la fecha y hora. |
valueMsEpoch |
Es el valor predeterminado que se muestra en el widget, expresado en milisegundos desde la época Unix. Especifica el valor según el tipo de selector (
|
timezoneOffsetDate |
El número que representa el desplazamiento de zona horaria desde UTC, en minutos. Si se configura, |
onChangeAction |
Se activa cuando el usuario hace clic en Guardar o Borrar en la interfaz de |
DateTimePickerType
El formato para la fecha y la hora en el widget DateTimePicker
. Determina si los usuarios pueden ingresar una fecha, una hora o ambas.
Enumeradores | |
---|---|
DATE_AND_TIME |
Los usuarios ingresan una fecha y hora. |
DATE_ONLY |
Los usuarios ingresan una fecha. |
TIME_ONLY |
Los usuarios ingresan una hora. |
DecoratedText
Un widget que muestra texto con decoraciones opcionales, como una etiqueta encima o debajo del texto, un ícono frente al texto, un widget de selección o un botón después del texto. Para ver un ejemplo en las apps de Google Chat, consulta Texto decorado.
Campos | |
---|---|
icon |
Se dio de baja y se reemplazó por |
startIcon |
El ícono que se muestra delante del texto. |
topLabel |
El texto que aparece sobre |
text |
Obligatorio. Es el texto principal. Admite formatos simples. Para obtener más información sobre cómo dar formato al texto, consulta Dar formato al texto en las apps de Google Chat y Dar formato al texto en complementos de Google Workspace. |
wrapText |
La configuración para ajustar texto. Si es Solo se aplica a |
bottomLabel |
El texto que aparece debajo de |
onClick |
Esta acción se activa cuando los usuarios hacen clic en |
Campo de unión control . Un botón, un interruptor, una casilla de verificación o una imagen que aparece en el lado derecho del texto en el widget decoratedText control puede ser solo uno de los siguientes: |
|
button |
Es un botón en el que un usuario puede hacer clic para activar una acción. |
switchControl |
Un widget de interruptor en el que un usuario puede hacer clic para cambiar su estado y activar una acción |
endIcon |
Un ícono que se muestra después del texto. Admite íconos integrados y personalizados. |
SwitchControl
Un interruptor de estilo de activación o una casilla de verificación dentro de un widget decoratedText
Solo es compatible con el widget decoratedText
.
Campos | |
---|---|
name |
Es el nombre con el que se identifica el widget de interruptor en un evento de entrada de formulario. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios. |
value |
Es el valor ingresado por un usuario que se muestra como parte de un evento de entrada de formulario. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios. |
selected |
Cuando es |
onChangeAction |
Es la acción que se debe realizar cuando cambia el estado del interruptor, por ejemplo, qué función se debe ejecutar. |
controlType |
Cómo aparece el interruptor en la interfaz de usuario |
ControlType
Cómo aparece el interruptor en la interfaz de usuario
Enumeradores | |
---|---|
SWITCH |
Un interruptor estilo interruptor |
CHECKBOX |
Se dio de baja y se reemplazó por CHECK_BOX . |
CHECK_BOX |
Una casilla de verificación. |
Divisor
Este tipo no tiene campos.
Muestra un divisor entre los widgets como una línea horizontal. Para ver un ejemplo en las apps de Google Chat, consulta Divisor.
Por ejemplo, el siguiente JSON crea un divisor:
"divider": {}
GetAutocompletionResponse
Una respuesta para obtener un contenedor de autocompletado, que incluye elementos necesarios a fin de mostrar elementos de autocompletado para el campo de texto. Por ejemplo:
{
"autoComplete": {
"items": [
{
"text": "C++"
},
{
"text": "Java"
},
{
"text": "JavaScript"
},
{
"text": "Python"
}
]
}
}
Campos | |
---|---|
autoComplete |
|
schema |
Este es un campo de esquema no-ops que podría estar presente en el lenguaje de marcado para la verificación de sintaxis. |
Cuadrícula
Muestra una cuadrícula con una colección de elementos. Los elementos solo pueden incluir texto o imágenes. Para las columnas responsivas, o para incluir más que solo texto o imágenes, usa
. Para ver un ejemplo en las apps de Google Chat, consulta Cuadrícula.Columns
Una cuadrícula admite cualquier cantidad de columnas y elementos. El número de filas se determina por los elementos dividido por columnas. Una cuadrícula con 10 elementos y 2 columnas tiene 5 filas. Una cuadrícula con 11 elementos y 2 columnas tiene 6 filas.
Por ejemplo, el siguiente JSON crea una cuadrícula de 2 columnas con un solo elemento:
"grid": {
"title": "A fine collection of items",
"columnCount": 2,
"borderStyle": {
"type": "STROKE",
"cornerRadius": 4
},
"items": [
{
"image": {
"imageUri": "https://www.example.com/image.png",
"cropStyle": {
"type": "SQUARE"
},
"borderStyle": {
"type": "STROKE"
}
},
"title": "An item",
"textAlignment": "CENTER"
}
],
"onClick": {
"openLink": {
"url": "https://www.example.com"
}
}
}
Campos | |
---|---|
title |
El texto que se muestra en el encabezado de la cuadrícula. |
items[] |
Los elementos que se mostrarán en la cuadrícula. |
borderStyle |
El estilo de borde que se aplicará a cada elemento de la cuadrícula. |
columnCount |
El número de columnas que se mostrarán en la cuadrícula. Si no se especifica este campo, se usa un valor predeterminado, que será diferente según el lugar en el que se muestre la cuadrícula (diálogo o complementario). |
onClick |
Cada elemento individual de la cuadrícula vuelve a usar esta devolución de llamada, pero con el identificador y el índice del elemento en la lista de elementos agregados a los parámetros de la devolución de llamada. |
GridItem
Representa un elemento en un diseño de cuadrícula. Los elementos pueden contener texto, una imagen o ambos.
Campos | |
---|---|
id |
Un identificador especificado por el usuario para este elemento de la cuadrícula. Este identificador se muestra en los parámetros de devolución de llamada |
image |
Imagen que se muestra en el elemento de la cuadrícula. |
title |
Título del elemento de la cuadrícula. |
subtitle |
Subtítulo del elemento de la cuadrícula. |
layout |
Es el diseño que se usará para el elemento de cuadrícula. |
GridItemLayout
Representa las diversas opciones de diseño disponibles para un elemento de cuadrícula.
Enumeradores | |
---|---|
GRID_ITEM_LAYOUT_UNSPECIFIED |
No utilizar. No se especifica. |
TEXT_BELOW |
El título y el subtítulo se muestran debajo de la imagen del elemento de la cuadrícula. |
TEXT_ABOVE |
El título y el subtítulo se muestran sobre la imagen del elemento de la cuadrícula. |
Ícono
Un ícono que se muestra en un widget en una tarjeta. Para ver un ejemplo en las apps de Google Chat, consulta Ícono.
Admite íconos integrados y personalizados.
Campos | |
---|---|
altText |
Opcional. Es una descripción del ícono que se usa con fines de accesibilidad. Si no se especifica, se proporciona el valor predeterminado Si se establece el ícono en una |
imageType |
El estilo de recorte aplicado a la imagen. En algunos casos, aplicar un recorte de |
Campo de unión icons . Es el ícono que se muestra en el widget de la tarjeta. Las direcciones (icons ) solo pueden ser una de las siguientes opciones: |
|
knownIcon |
Muestra uno de los íconos integrados que proporciona Google Workspace. Por ejemplo, para mostrar un ícono de avión, especifica Para obtener una lista completa de los íconos compatibles, consulta íconos integrados. |
iconUrl |
Mostrar un ícono personalizado alojado en una URL HTTPS Por ejemplo:
Los tipos de archivo admitidos incluyen |
Imagen
Una imagen especificada por una URL y que puede tener una acción onClick
. Para ver un ejemplo, consulta Imagen.
Campos | |
---|---|
imageUrl |
La URL HTTPS que aloja la imagen. Por ejemplo:
|
onClick |
Cuando un usuario hace clic en la imagen, se activa esta acción. |
altText |
El texto alternativo de esta imagen que se usa con fines de accesibilidad. |
ImageComponent
Representa una imagen.
Campos | |
---|---|
imageUri |
La URL de la imagen. |
altText |
Es la etiqueta de accesibilidad de la imagen. |
cropStyle |
El estilo de recorte que se aplicará a la imagen. |
borderStyle |
Estilo de borde que se aplicará a la imagen. |
ImageCropStyle
Representa el estilo de recorte aplicado a una imagen.
Por ejemplo, a continuación, se muestra cómo aplicar una relación de aspecto de 16:9:
cropStyle {
"type": "RECTANGLE_CUSTOM",
"aspectRatio": 16/9
}
Campos | |
---|---|
type |
El tipo de recorte. |
aspectRatio |
La relación de aspecto que se usará si el tipo de recorte es Por ejemplo, a continuación, se muestra cómo aplicar una relación de aspecto de 16:9:
|
ImageCropType
Representa el estilo de recorte aplicado a una imagen.
Enumeradores | |
---|---|
IMAGE_CROP_TYPE_UNSPECIFIED |
No utilizar. No se especifica. |
SQUARE |
Valor predeterminado Aplica un recorte cuadrado. |
CIRCLE |
Aplica un recorte circular. |
RECTANGLE_CUSTOM |
Aplica un recorte rectangular con una relación de aspecto personalizada. Establece la relación de aspecto personalizada con aspectRatio . |
RECTANGLE_4_3 |
Aplica un recorte rectangular con una relación de aspecto de 4:3. |
Vínculo
El objeto de vínculo para el recurso de terceros que se muestra al complemento.
Campos | |
---|---|
url |
URL del vínculo para volver al complemento. |
title |
Título del vínculo para volver al complemento. |
LinkPreview
Acción de tarjeta que ofrece una vista previa de un vínculo de terceros mostrando una tarjeta y un chip inteligente. Para obtener más información, consulta Cómo obtener una vista previa de vínculos con chips inteligentes.
Por ejemplo, el siguiente JSON muestra un título único para la vista previa del vínculo y su chip inteligente, y una tarjeta de vista previa con un encabezado y una descripción de texto:
{
"action": {
"linkPreview": {
"title": "Smart chip title",
"linkPreviewTitle": "Link preview title",
"previewCard": {
"header": {
"title": "Preview card header",
},
"sections": [
{
"widgets": [
{
"textParagraph": {
"text": "Description of the link."
}
}
]
}
]
}
}
}
}
En el ejemplo, se muestra la siguiente vista previa del vínculo:
Campos | |
---|---|
previewCard |
Es una tarjeta que muestra información sobre un vínculo de un servicio de terceros. |
title |
Es el título que se muestra en el chip inteligente para la vista previa del vínculo. Si no la estableces, el chip inteligente mostrará el encabezado de |
linkPreviewTitle |
Título que se muestra en la vista previa del vínculo. Si no la estableces, la vista previa del vínculo muestra el encabezado de |
Notificación
Acción de tarjeta que muestra una notificación en la app host.
Campos | |
---|---|
text |
Texto sin formato para mostrar en la notificación, sin etiquetas HTML. |
OnClick
Representa cómo responder cuando los usuarios hacen clic en un elemento interactivo en una tarjeta, como un botón.
Campos | |
---|---|
Campo de unión
|
|
action |
Si se especifica, esta |
openLink |
Si se especifica, este |
openDynamicLinkAction |
Un complemento activa esta acción cuando la acción necesita abrir un vínculo. Esto difiere del |
card |
Si se especifica, se envía una nueva tarjeta a la pila de tarjetas después de hacer clic. Son compatibles con los complementos de Google Workspace, pero no con las apps de Google Chat. |
OpenLink
Representa un evento onClick
que abre un hipervínculo.
Campos | |
---|---|
url |
La URL que se abrirá. |
openAs |
Cómo abrir un vínculo No es compatible con las apps de Chat. |
onClose |
Indica si el cliente se olvida de un vínculo después de abrirlo o si lo observa hasta que se cierra la ventana. No es compatible con las apps de Chat. |
OnClose
Qué hace el cliente cuando se cierra un vínculo abierto por una acción OnClick
La implementación depende de las capacidades de la plataforma del cliente. Por ejemplo, un navegador web podría abrir un vínculo en una ventana emergente con un controlador OnClose
.
Si se configuran los controladores OnOpen
y OnClose
, y la plataforma cliente no puede admitir ambos valores, OnClose
tiene prioridad.
Son compatibles con los complementos de Google Workspace, pero no con las apps de Google Chat.
Enumeradores | |
---|---|
NOTHING |
Valor predeterminado La tarjeta no se vuelve a cargar y no sucede nada. |
RELOAD |
Vuelve a cargar la tarjeta después de que se cierra la ventana secundaria. Si se usa junto con |
OpenAs
Cuando una acción OnClick
abre un vínculo, el cliente puede abrirlo como una ventana de tamaño completo (si ese es el marco que usa el cliente) o como una superposición (como una ventana emergente). La implementación depende de las capacidades de la plataforma cliente y es posible que se ignore el valor seleccionado si el cliente no lo admite. FULL_SIZE
es compatible con todos los clientes.
Son compatibles con los complementos de Google Workspace, pero no con las apps de Google Chat.
Enumeradores | |
---|---|
FULL_SIZE |
El vínculo se abrirá como una ventana de tamaño completo (si ese es el marco que usa el cliente). |
OVERLAY |
El vínculo se abre como una superposición, por ejemplo, una ventana emergente. |
RenderActions
Es un conjunto de instrucciones de renderización que le indican a una tarjeta que realice una acción o a la app host del complemento que realice una acción específica de la app.
Campos | |
---|---|
action |
|
hostAppAction |
Acciones administradas por apps de host individuales |
schema |
Este es un campo de esquema no-ops que podría estar presente en el lenguaje de marcado para la verificación de sintaxis. |
Acción
Campos | |
---|---|
navigations[] |
Enviar, extraer o actualizar las tarjetas que se muestran |
link |
Abre el vínculo de destino de inmediato en una pestaña nueva o en una ventana emergente. |
notification |
Muestra una notificación al usuario final. |
linkPreview |
Muestra una vista previa del vínculo al usuario final. |
links[] |
Es el vínculo de un recurso de terceros que se crea desde una aplicación de Google Workspace. Tiene el formato de un array de objetos con un elemento. Se ignorará cualquier elemento adicional en el array. |
SelectionInput
Es un widget que crea uno o más elementos de la IU que los usuarios pueden seleccionar. Por ejemplo, un menú desplegable o casillas de verificación. Puedes usar este widget para recopilar datos que se pueden predecir o enumerar. Para ver un ejemplo en las apps de Google Chat, consulta Entrada de selección.
Las apps de chat pueden procesar el valor de los elementos que los usuarios seleccionan o ingresan. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios.
Para recopilar datos indefinidos o abstractos de los usuarios, usa el widget TextInput
.
Campos | |
---|---|
name |
Es el nombre que identifica la entrada de selección en un evento de entrada de formulario. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios. |
label |
El texto que aparece sobre el campo de entrada de selección en la interfaz de usuario. Especifica un texto que ayude al usuario a ingresar la información que necesita tu app. Por ejemplo, si los usuarios seleccionan la urgencia de un ticket de trabajo en un menú desplegable, la etiqueta podría ser "Urgencia" o "Seleccionar urgencia". |
type |
Es el tipo de elementos que se muestran a los usuarios en un widget de |
items[] |
Es un array de elementos seleccionables. Por ejemplo, un array de botones de selección o casillas de verificación. Admite hasta 100 elementos. |
onChangeAction |
Si se especifica, el formulario se envía cuando cambia la selección. Si no se especifica, debes especificar otro botón que envíe el formulario. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios. |
multiSelectMaxSelectedItems |
En el caso de los menús de selección múltiple, la cantidad máxima de elementos que puede seleccionar un usuario. El valor mínimo es 1 artículo. Si no se especifica, el valor predeterminado es 3 elementos. |
multiSelectMinQueryLength |
En los menús de selección múltiple, la cantidad de caracteres de texto que un usuario ingresa antes de que la app de Chat consulte se autocompleta y muestra los elementos sugeridos en el menú. Si no se especifica, el valor predeterminado es 0 caracteres para las fuentes de datos estáticas y 3 caracteres para las fuentes de datos externas. |
Campo de unión multi_select_data_source . Solo para apps de Chat. Para un menú de selección múltiple, es la fuente de datos que propaga los elementos de selección. Las direcciones (multi_select_data_source ) solo pueden ser una de las siguientes opciones: |
|
externalDataSource |
Una fuente de datos externa, como una base de datos relacional. |
platformDataSource |
Una fuente de datos de Google Workspace. |
PlatformDataSource
Solo para apps de Chat. Para un widget
que usa un menú de selección múltiple, una fuente de datos de Google Workspace. Se utiliza para propagar elementos en un menú de selección múltiple.SelectionInput
Campos | |
---|---|
Campo de unión data_source . Es la fuente de datos. Las direcciones (data_source ) solo pueden ser una de las siguientes opciones: |
|
commonDataSource |
Una fuente de datos que comparten todas las aplicaciones de Google Workspace, como los usuarios de una organización de Google Workspace. |
hostAppDataSource |
Una fuente de datos exclusiva de una aplicación host de Google Workspace, como los espacios en Google Chat |
CommonDataSource
Solo para apps de Chat. Una fuente de datos compartida por todas las aplicaciones de Google Workspace
Enumeradores | |
---|---|
UNKNOWN |
Valor predeterminado No utilizar. |
USER |
usuarios de Google Workspace. El usuario solo puede ver y seleccionar usuarios de su organización de Google Workspace. |
SelectionItem
Es un elemento que los usuarios pueden seleccionar en una entrada de selección, como una casilla de verificación o un interruptor.
Campos | |
---|---|
text |
Es el texto que identifica o describe el elemento a los usuarios. |
value |
El valor asociado con este elemento. El cliente debe usar esto como un valor de entrada de formulario. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios. |
selected |
Indica si el elemento está seleccionado de forma predeterminada. Si la entrada de selección solo acepta un valor (como los botones de selección o un menú desplegable), establece este campo solo para un elemento. |
startIconUri |
En el caso de los menús de selección múltiple, la URL del ícono se muestra junto al campo |
bottomText |
Para los menús de selección múltiple, una descripción de texto o etiqueta que se muestra debajo del campo |
SelectionType
Es el formato de los elementos que pueden seleccionar los usuarios. Las diferentes opciones admiten diferentes tipos de interacciones. Por ejemplo, los usuarios pueden seleccionar varias casillas de verificación, pero solo pueden seleccionar un elemento de un menú desplegable.
Cada entrada de selección admite un tipo de selección. Por ejemplo, no se admite la combinación de casillas e interruptores.
Enumeradores | |
---|---|
CHECK_BOX |
Un conjunto de casillas de verificación. Los usuarios pueden seleccionar una o más casillas de verificación. |
RADIO_BUTTON |
Un conjunto de botones de selección. Los usuarios pueden elegir un botón de selección. |
SWITCH |
Un conjunto de interruptores. Los usuarios pueden activar uno o más interruptores. |
DROPDOWN |
Un menú desplegable Los usuarios pueden seleccionar un elemento del menú. |
MULTI_SELECT |
Son compatibles con las apps de Chat, pero no los complementos de Google Workspace. Un menú de selección múltiple para datos estáticos o dinámicos. En la barra de menú, los usuarios seleccionan uno o más elementos. Los usuarios también pueden ingresar valores para propagar datos dinámicos. Por ejemplo, los usuarios pueden comenzar a escribir el nombre de un espacio de Google Chat y el widget lo sugerirá automáticamente. Para propagar los elementos de un menú de selección múltiple, puedes usar uno de los siguientes tipos de fuentes de datos:
Para ver ejemplos de cómo implementar menús de selección múltiple, consulta la página del widget de |
SubmitFormResponse
Una respuesta a un formulario que se envía que no es obtener un contenedor de autocompletado, que contiene las acciones que la tarjeta debe realizar o la app host de complementos, y si cambió el estado de la tarjeta Por ejemplo:
{
"renderActions": {
"action": {
"notification": {
"text": "Email address is added: salam.heba@example.com"
}
},
"hostAppAction": {
"gmailAction": {
"openCreatedDraftAction": {
"draftId": "msg-a:r-79766936926021702",
"threadServerPermId": "thread-f:15700999851086004"
}
}
}
}
}
Campos | |
---|---|
renderActions |
Es un conjunto de instrucciones de renderización que le indican a la tarjeta que realice una acción o a la app host del complemento que realice una acción específica de la app. |
stateChanged |
Indica si cambió el estado de las tarjetas y si los datos de las tarjetas existentes están inactivos. |
schema |
Este es un campo de esquema no-op que puede estar presente en el lenguaje de marcado para la verificación de sintaxis. |
Sugerencias
Valores sugeridos que los usuarios pueden ingresar. Estos valores aparecen cuando los usuarios hacen clic dentro del campo de entrada de texto. A medida que los usuarios escriben, los valores sugeridos se filtran de forma dinámica para coincidir con lo que escribieron los usuarios.
Por ejemplo, un campo de entrada de texto para lenguaje de programación podría sugerir Java, JavaScript, Python y C++. Cuando los usuarios comienzan a escribir Jav
, la lista de filtros de sugerencias muestra Java
y JavaScript
.
Los valores sugeridos ayudan a guiar a los usuarios para que ingresen valores que la app pueda comprender. Cuando se hace referencia a JavaScript, algunos usuarios pueden ingresar javascript
y otros java script
. Sugerir JavaScript
puede estandarizar la forma en que los usuarios interactúan con tu app.
Cuando se especifica, TextInput.type
siempre es SINGLE_LINE
, incluso si se establece en MULTIPLE_LINE
.
Campos | |
---|---|
items[] |
Una lista de sugerencias usadas para las recomendaciones de autocompletar en los campos de entrada de texto. |
SuggestionItem
Un valor sugerido que los usuarios pueden ingresar en un campo de entrada de texto
Campos | |
---|---|
Campo de unión
|
|
text |
El valor de una entrada sugerida para un campo de entrada de texto. Esto equivale a lo que los usuarios ingresan. |
TextInput
Es un campo en el que los usuarios pueden ingresar texto. Admite sugerencias y acciones ante cambios. Para ver un ejemplo en las apps de Google Chat, consulta Entrada de texto.
Las apps de chat reciben y pueden procesar el valor del texto ingresado durante los eventos de entrada de formularios. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios.
Cuando necesites recopilar datos indefinidos o abstractos de los usuarios, usa una entrada de texto. Para recopilar datos definidos o enumerados de los usuarios, usa el widget SelectionInput
.
Campos | |
---|---|
name |
El nombre con el que se identifica la entrada de texto en un evento de entrada de formulario. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios. |
label |
El texto que aparece sobre el campo de entrada de texto en la interfaz de usuario. Especifica un texto que ayude al usuario a ingresar la información que necesita tu app. Por ejemplo, si solicitas el nombre de una persona, pero necesitas específicamente su apellido, escribe Es obligatorio si no se especifica |
hintText |
Texto que aparece debajo del campo de entrada de texto para ayudar a los usuarios indicándoles que ingresen un valor determinado Este texto siempre es visible. Es obligatorio si no se especifica |
value |
Es el valor ingresado por un usuario que se muestra como parte de un evento de entrada de formulario. Para obtener información detallada sobre cómo trabajar con entradas de formularios, consulta Recibe datos de formularios. |
type |
Cómo aparece un campo de entrada de texto en la interfaz de usuario Por ejemplo, si el campo es de una o varias líneas. |
onChangeAction |
Qué hacer cuando se produce un cambio en el campo de entrada de texto Por ejemplo, un usuario que agrega elementos al campo o borra texto. Algunos ejemplos de acciones que se pueden realizar incluyen ejecutar una función personalizada o abrir un diálogo en Google Chat. |
initialSuggestions |
Valores sugeridos que los usuarios pueden ingresar. Estos valores aparecen cuando los usuarios hacen clic dentro del campo de entrada de texto. A medida que los usuarios escriben, los valores sugeridos se filtran de forma dinámica para coincidir con lo que escribieron los usuarios. Por ejemplo, un campo de entrada de texto para lenguaje de programación podría sugerir Java, JavaScript, Python y C++. Cuando los usuarios comienzan a escribir Los valores sugeridos ayudan a guiar a los usuarios para que ingresen valores que la app pueda comprender. Cuando se hace referencia a JavaScript, algunos usuarios pueden ingresar Cuando se especifica, |
autoCompleteAction |
Opcional. Especifica qué acción realizar cuando el campo de entrada de texto proporcione sugerencias a los usuarios que interactúan con él. Si no se especifican, Si se especifica, la app realiza la acción que se especifica aquí, como ejecutar una función personalizada. Son compatibles con los complementos de Google Workspace, pero no con las apps de Google Chat. |
placeholderText |
Texto que aparece en el campo de entrada de texto cuando el campo está vacío. Usa este texto para solicitar a los usuarios que ingresen un valor. Por ejemplo, Son compatibles con las apps de Google Chat, pero no los complementos de Google Workspace. |
Tipo
Cómo aparece un campo de entrada de texto en la interfaz de usuario Por ejemplo, si es un campo de entrada de una sola línea o una entrada de varias líneas.
Si se especifica initialSuggestions
, type
siempre es SINGLE_LINE
, incluso si se establece en MULTIPLE_LINE
.
Enumeradores | |
---|---|
SINGLE_LINE |
El campo de entrada de texto tiene una altura fija de una línea. |
MULTIPLE_LINE |
El campo de entrada de texto tiene una altura fija de varias líneas. |
TextParagraph
Un párrafo de texto que admite formato. Para ver un ejemplo en las apps de Google Chat, consulta Párrafo de texto. Para obtener más información sobre cómo dar formato al texto, consulta Dar formato al texto en las apps de Google Chat y Dar formato al texto en complementos de Google Workspace.
Campos | |
---|---|
text |
El texto que se muestra en el widget |
Widget
Cada tarjeta está compuesta por widgets.
Un widget es un objeto compuesto que puede representar texto, imágenes, botones y otros tipos de objetos.
Campos | |
---|---|
horizontalAlignment |
Especifica si los widgets se alinean a la izquierda, a la derecha o al centro de una columna. |
Campo de unión data . Un widget solo puede tener uno de los siguientes elementos. Puedes usar varios campos de widgets para mostrar más elementos. Las direcciones (data ) solo pueden ser una de las siguientes opciones: |
|
textParagraph |
Muestra un párrafo de texto. Admite texto simple en formato HTML. Para obtener más información sobre cómo dar formato al texto, consulta Dar formato al texto en las apps de Google Chat y Dar formato al texto en complementos de Google Workspace. Por ejemplo, el siguiente JSON crea un texto en negrita:
|
image |
Muestra una imagen. Por ejemplo, el siguiente JSON crea una imagen con texto alternativo:
|
decoratedText |
Muestra un elemento de texto decorado. Por ejemplo, el siguiente JSON crea un widget de texto decorado que muestra la dirección de correo electrónico:
|
buttonList |
Una lista de botones. Por ejemplo, el siguiente JSON crea dos botones. El primero es un botón de texto azul y el segundo es un botón de imagen que abre un vínculo:
|
textInput |
Muestra un cuadro de texto en el que los usuarios pueden escribir. Por ejemplo, el siguiente JSON crea una entrada de texto para una dirección de correo electrónico:
Otro ejemplo: El siguiente JSON crea una entrada de texto para un lenguaje de programación con sugerencias estáticas:
|
selectionInput |
Muestra un control de selección que permite a los usuarios seleccionar elementos. Los controles de selección pueden ser casillas de verificación, botones de selección, interruptores o menús desplegables. Por ejemplo, el siguiente JSON crea un menú desplegable que permite a los usuarios elegir un tamaño:
|
dateTimePicker |
Muestra un widget que permite a los usuarios ingresar una fecha, una hora o una y otra hora. Por ejemplo, el siguiente JSON crea un selector de fecha y hora para programar una cita:
|
divider |
Muestra una línea divisoria horizontal entre los widgets. Por ejemplo, el siguiente JSON crea un divisor:
|
grid |
Muestra una cuadrícula con una colección de elementos. Una cuadrícula admite cualquier cantidad de columnas y elementos. La cantidad de filas se determina mediante los límites superiores de la cantidad de elementos dividido por el número de columnas. Una cuadrícula con 10 elementos y 2 columnas tiene 5 filas. Una cuadrícula con 11 elementos y 2 columnas tiene 6 filas. Por ejemplo, el siguiente JSON crea una cuadrícula de 2 columnas con un solo elemento:
|
columns |
Muestra hasta 2 columnas. Para incluir más de 2 columnas o usar filas, usa el widget Por ejemplo, el siguiente JSON crea 2 columnas que contienen párrafos de texto:
|
HorizontalAlignment
Especifica si los widgets se alinean a la izquierda, a la derecha o al centro de una columna.
Enumeradores | |
---|---|
HORIZONTAL_ALIGNMENT_UNSPECIFIED |
No utilizar. No se especifica. |
START |
Valor predeterminado Alinea los widgets con la posición inicial de la columna. Para los diseños de izquierda a derecha, se alinea a la izquierda. Para los diseños de derecha a izquierda, se alinea con la derecha. |
CENTER |
Alinea los widgets en el centro de la columna. |
END |
Alinea los widgets con la posición final de la columna. Para diseños de izquierda a derecha, alinea los widgets a la derecha. Para los diseños de derecha a izquierda, se alinean los widgets a la izquierda. |
ImageType
Forma que se usa para recortar la imagen.
Enumeradores | |
---|---|
SQUARE |
Valor predeterminado Aplica una máscara cuadrada a la imagen. Por ejemplo, una imagen de 4 × 3 se convierte en 3 × 3. |
CIRCLE |
Aplica una máscara circular a la imagen. Por ejemplo, una imagen de 4 x 3 se convierte en un círculo con un diámetro de 3. |