Class CardAction

CardAction

Um item de menu clicável que é adicionado ao menu do cabeçalho do cartão.

const action = CardService.newAction();
// Finish building the action...

const cardAction =
    CardService.newCardAction().setText('Card action').setOnClickAction(action);

Métodos

MétodoTipo de retornoBreve descrição
setAuthorizationAction(action)CardActionDefine uma ação de autorização que abre um URL para o fluxo de autorização quando o objeto é clicado.
setComposeAction(action, composedEmailType)CardActionDefine uma ação que compõe um e-mail de rascunho quando o objeto é clicado.
setOnClickAction(action)CardActionDefine uma ação que é executada quando o objeto é clicado.
setOnClickOpenLinkAction(action)CardActionDefine uma ação que abre um URL em uma guia quando o objeto é clicado.
setOpenLink(openLink)CardActionDefine um URL para ser aberto quando o objeto é clicado.
setText(text)CardActionDefine o texto do menu para essa ação.

Documentação detalhada

setAuthorizationAction(action)

Define uma ação de autorização que abre um URL para o fluxo de autorização quando o objeto é clicado. O URL vai ser aberto em uma nova janela. Quando o usuário termina o fluxo de autorização e retorna ao aplicativo, o complemento é recarregado.

Um objeto de interface só pode ter um dos seguintes valores definidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

// ...

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

Parâmetros

NomeTipoDescrição
actionAuthorizationActionO objeto que especifica a ação de autorização a ser realizada quando este elemento é clicado.

Retornar

CardAction: este objeto, para encadeamento.


setComposeAction(action, composedEmailType)

Define uma ação que compõe um e-mail de rascunho quando o objeto é clicado. Um objeto de interface só pode ter um dos setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType) definidos.

O parâmetro Action precisa especificar uma função de callback que retorne um objeto ComposeActionResponse configurado usando 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

NomeTipoDescrição
actionActionO objeto que especifica a ação de composição a ser realizada quando este elemento é clicado.
composedEmailTypeComposedEmailTypeUm valor de tipo enumerado que especifica se o rascunho composto é independente ou de resposta.

Retornar

CardAction: este objeto, para encadeamento.


setOnClickAction(action)

Define uma ação que é executada quando o objeto é clicado. Um objeto de interface só pode ter um dos setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType) definidos.

O parâmetro Action precisa especificar uma função de callback que retorne um 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

NomeTipoDescrição
actionActionA ação a ser realizada quando esse elemento for clicado.

Retornar

CardAction: este objeto, para encadeamento.


setOnClickOpenLinkAction(action)

Define uma ação que abre um URL em uma guia quando o objeto é clicado. Use essa função quando o URL precisar ser criado ou quando você precisar realizar outras ações além de criar o objeto OpenLink. Um objeto de interface só pode ter um dos seguintes valores definidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

O parâmetro Action precisa especificar uma função de callback que retorne um objeto ActionResponse configurado usando 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

NomeTipoDescrição
actionActionO objeto que especifica a ação de abrir link a ser realizada quando este elemento for clicado.

Retornar

CardAction: este objeto, para encadeamento.


Define um URL para ser aberto quando o objeto é clicado. Use essa função quando o URL já é conhecido e só precisa ser aberto. Um objeto de interface só pode ter um dos setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType) definidos.

Parâmetros

NomeTipoDescrição
openLinkOpenLinkUm objeto OpenLink que descreve o URL a ser aberto.

Retornar

CardAction: este objeto, para encadeamento.


setText(text)

Define o texto do menu para essa ação.

Parâmetros

NomeTipoDescrição
textStringO texto do item de menu.

Retornar

CardAction: este objeto, para encadeamento.