Class CardAction

CardAction

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

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 cria um rascunho de e-mail 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 a 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. Isso abre o URL 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 conjuntos: 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 esse elemento é clicado.

Retornar

CardAction: esse objeto, para encadeamento.


setComposeAction(action, composedEmailType)

Define uma ação que cria um rascunho de e-mail quando o objeto é clicado. Um objeto de interface só pode ter um dos seguintes conjuntos: 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 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 criação a ser realizada quando esse elemento é clicado.
composedEmailTypeComposedEmailTypeUm valor de enumeração que especifica se o rascunho criado é um rascunho independente ou de resposta.

Retornar

CardAction: esse objeto, para encadeamento.


setOnClickAction(action)

Define uma ação que é executada quando o objeto é clicado. Um objeto de interface só pode ter um dos seguintes conjuntos: 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.

// ...

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 é clicado.

Retornar

CardAction: esse 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 conjuntos: 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 link aberto a ser realizada quando esse elemento é clicado.

Retornar

CardAction: esse objeto, para encadeamento.


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

Parâmetros

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

Retornar

CardAction: esse 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: esse objeto, para encadeamento.