Class Button

Button

Una clase base para todos los botones.

Disponible para complementos de Google Workspace y apps de Google Chat.

Métodos

MétodoTipo de datos que se devuelveDescripción breve
setAuthorizationAction(action)ButtonEstablece una acción de autorización que abre una URL al flujo de autorización cuando se hace clic en el objeto.
setComposeAction(action, composedEmailType)ButtonEstablece una acción que redacta un borrador de correo electrónico cuando se hace clic en el objeto.
setOnClickAction(action)ButtonEstablece una acción que se ejecuta cuando se hace clic en el objeto.
setOnClickOpenLinkAction(action)ButtonEstablece una acción que abre una URL en una pestaña cuando se hace clic en el objeto.
setOpenLink(openLink)ButtonEstablece una URL que se abrirá cuando se haga clic en el objeto.
setOverflowMenu(menu)ButtonEstablece un menú emergente que se abrirá cuando se haga clic en el objeto.

Documentación detallada

setAuthorizationAction(action)

Establece una acción de autorización que abre una URL al flujo de autorización cuando se hace clic en el objeto. Esto abre la URL en una ventana nueva. Cuando el usuario termina el flujo de autorización y regresa a la aplicación, se vuelve a cargar el complemento.

Un objeto de la IU solo puede tener uno de los siguientes parámetros establecidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) o setComposeAction(action, composedEmailType).

// ...

const action = CardService.newAuthorizationAction().setAuthorizationUrl('url');
CardService.newTextButton().setText('Authorize').setAuthorizationAction(action);

Parámetros

NombreTipoDescripción
actionAuthorizationActionEl objeto que especifica la acción de autorización que se debe realizar cuando se hace clic en este elemento.

Volver

Button: Este objeto, para el encadenamiento.


setComposeAction(action, composedEmailType)

Establece una acción que redacta un borrador de correo electrónico cuando se hace clic en el objeto. Un objeto de la IU solo puede tener uno de los siguientes parámetros establecidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) o setComposeAction(action, composedEmailType).

El parámetro Action debe especificar una función de devolución de llamada que muestre un objeto ComposeActionResponse configurado con ComposeActionResponseBuilder.setGmailDraft(draft).

// ...

const action = CardService.newAction().setFunctionName('composeEmailCallback');
CardService.newTextButton()
    .setText('Compose Email')
    .setComposeAction(action, CardService.ComposedEmailType.REPLY_AS_DRAFT);

// ...

function composeEmailCallback(e) {
  const thread = GmailApp.getThreadById(e.threadId);
  const draft = thread.createDraftReply('This is a reply');
  return CardService.newComposeActionResponseBuilder()
      .setGmailDraft(draft)
      .build();
}

Parámetros

NombreTipoDescripción
actionActionEl objeto que especifica la acción de redacción que se debe realizar cuando se hace clic en este elemento.
composedEmailTypeComposedEmailTypeUn valor de enum que especifica si el borrador redactado es un borrador independiente o de respuesta.

Volver

Button: Este objeto, para el encadenamiento.


setOnClickAction(action)

Establece una acción que se ejecuta cuando se hace clic en el objeto. Un objeto de la IU solo puede tener uno de los siguientes parámetros establecidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) o setComposeAction(action, composedEmailType).

El parámetro Action debe especificar una función de devolución de llamada que muestre un objeto ActionResponse.

// ...

const action = CardService.newAction().setFunctionName('notificationCallback');
CardService.newTextButton()
    .setText('Create notification')
    .setOnClickAction(action);

// ...

function notificationCallback() {
  return CardService.newActionResponseBuilder()
      .setNotification(
          CardService.newNotification().setText('Some info to display to user'),
          )
      .build();
}

Parámetros

NombreTipoDescripción
actionActionLa acción que se debe realizar cuando se hace clic en este elemento.

Volver

Button: Este objeto, para el encadenamiento.


setOnClickOpenLinkAction(action)

Establece una acción que abre una URL en una pestaña cuando se hace clic en el objeto. Usa esta función cuando se deba compilar la URL o cuando necesites realizar otras acciones además de crear el objeto OpenLink. Un objeto de la IU solo puede tener uno de los siguientes parámetros establecidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) o setComposeAction(action, composedEmailType).

El parámetro Action debe especificar una función de devolución de llamada que muestre un objeto ActionResponse configurado con ActionResponseBuilder.setOpenLink(openLink).

// ...

const action = CardService.newAction().setFunctionName('openLinkCallback');
CardService.newTextButton()
    .setText('Open Link')
    .setOnClickOpenLinkAction(action);

// ...

function openLinkCallback() {
  return CardService.newActionResponseBuilder()
      .setOpenLink(CardService.newOpenLink().setUrl('https://www.google.com'))
      .build();
}

Parámetros

NombreTipoDescripción
actionActionEl objeto que especifica la acción de abrir vínculo que se debe realizar cuando se hace clic en este elemento.

Volver

Button: Este objeto, para el encadenamiento.


Establece una URL que se abrirá cuando se haga clic en el objeto. Usa esta función cuando la URL ya se conozca y solo deba abrirse. Un objeto de la IU solo puede tener uno de los siguientes parámetros establecidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) o setComposeAction(action, composedEmailType).

Parámetros

NombreTipoDescripción
openLinkOpenLinkUn objeto OpenLink que describe la URL que se abrirá.

Volver

Button: Este objeto, para el encadenamiento.


setOverflowMenu(menu)

Establece un menú emergente que se abrirá cuando se haga clic en el objeto. Cada elemento del menú puede especificar una acción que se activará cuando se haga clic en él. No se admiten menús anidados, las acciones de los elementos de menú no deben especificar un menú ampliado.

Disponible para apps de Google Chat. En versión preliminar para desarrolladores para complementos de Google Workspace.

const overflowMenuItem =
    CardService.newOverflowMenuItem()
        .setStartIcon(
            CardService.newIconImage().setIconUrl(
                'https://www.google.com/images/branding/googleg/1x/googleg_standard_color_64dp.png',
                ),
            )
        .setText('Open Link')
        .setOpenLink(
            CardService.newOpenLink().setUrl('https://www.google.com'));

const overflowMenu =
    CardService.newOverflowMenu().addMenuItem(overflowMenuItem).build();

Parámetros

NombreTipoDescripción
menuOverflowMenuEl objeto que especifica el menú ampliado que se mostrará cuando se haga clic en este elemento.

Volver

Button: Este objeto, para el encadenamiento.