Class CardService

Карточные услуги

Служба карточек предоставляет возможность создавать общие карточки, используемые в различных продуктах расширения Google, таких как надстройки Google Workspace .

Ниже приведен образец карты дополнений.

function createCard() {
  return CardService.newCardBuilder()
      .setHeader(CardService.newCardHeader().setTitle('CardTitle'))
      .build();
}

Или вы можете вернуть несколько карточек следующим образом:

function createCards() {
  return [
    CardService.newCardBuilder().build(),
    CardService.newCardBuilder().build(),
    CardService.newCardBuilder().build(),
  ];
}

Ниже показано, как можно определить карточку с заголовком, текстом, изображением и пунктом меню:

function createWidgetDemoCard() {
  return CardService.newCardBuilder()
      .setHeader(
          CardService.newCardHeader()
              .setTitle('Widget demonstration')
              .setSubtitle('Check out these widgets')
              .setImageStyle(CardService.ImageStyle.SQUARE)
              .setImageUrl('https://www.example.com/images/headerImage.png'),
          )
      .addSection(
          CardService.newCardSection()
              .setHeader('Simple widgets')  // optional
              .addWidget(
                  CardService.newTextParagraph().setText(
                      'These widgets are display-only. ' +
                          'A text paragraph can have multiple lines and ' +
                          'formatting.',
                      ),
                  )
              .addWidget(
                  CardService.newImage().setImageUrl(
                      'https://www.example.com/images/mapsImage.png',
                      ),
                  ),
          )
      .addCardAction(
          CardService.newCardAction().setText('Gmail').setOpenLink(
              CardService.newOpenLink().setUrl('https://mail.google.com/mail'),
              ),
          )
      .build();
}

Образец карточки приложения Chat.

const cardHeader =
    CardService.newCardHeader()
        .setTitle('Sasha')
        .setSubtitle('Software Engineer')
        .setImageUrl(
            'https://developers.google.com/chat/images/quickstart-app-avatar.png',
            )
        .setImageStyle(CardService.ImageStyle.CIRCLE)
        .setImageAltText('Avatar for Sasha');

const cardSection =
    CardService.newCardSection()
        .setHeader('Contact Info')
        .setCollapsible(true)
        .setNumUncollapsibleWidgets(1)
        .addWidget(
            CardService.newDecoratedText()
                .setStartIcon(
                    CardService.newIconImage().setIcon(CardService.Icon.EMAIL))
                .setText('sasha@example.com'),
            )
        .addWidget(
            CardService.newDecoratedText()
                .setStartIcon(
                    CardService.newIconImage().setIcon(CardService.Icon.PERSON))
                .setText('<font color="#80e27e">Online</font>'),
            )
        .addWidget(
            CardService.newDecoratedText()
                .setStartIcon(
                    CardService.newIconImage().setIcon(CardService.Icon.PHONE))
                .setText('+1 (555) 555-1234'),
            )
        .addWidget(
            CardService.newButtonSet()
                .addButton(
                    CardService.newTextButton().setText('Share').setOpenLink(
                        CardService.newOpenLink().setUrl(
                            'https://example.com/share'),
                        ),
                    )
                .addButton(
                    CardService.newTextButton()
                        .setText('Edit')
                        .setOnClickAction(
                            CardService.newAction()
                                .setFunctionName('goToView')
                                .setParameters({viewType: 'EDIT'}),
                            ),
                    ),
        );

const card = CardService.newCardBuilder()
                 .setHeader(cardHeader)
                 .addSection(cardSection)
                 .build();

Характеристики

Свойство Тип Описание
Border Type Border Type Перечисление Border Type .
Chip List Layout Chip List Layout Перечисление Chip List Layout .
Composed Email Type Composed Email Type Перечисление Composed Email Type .
Content Type Content Type Перечисление Content Type .
Grid Item Layout Grid Item Layout Перечисление Grid Item Layout .
Horizontal Alignment Horizontal Alignment Перечисление Horizontal Alignment .
Icon Icon Перечисление Icon .
Image Button Style Image Button Style Перечисление Image Button Style .
Image Crop Type Image Crop Type Перечисление Image Crop Type .
Image Style Image Style Перечисление Image Style .
Input Type Input Type Перечисление Input Type .
Load Indicator Load Indicator Перечисление Load Indicator .
On Close On Close Перечисление On Close .
Open As Open As Перечисление Open As .
Selection Input Type Selection Input Type Перечисление Selection Input Type .
Text Button Style Text Button Style Перечисление Text Button Style .
Update Draft Body Type Update Draft Body Type Перечисление Update Draft Body Type .

Методы

Метод Тип возврата Краткое описание
new Action() Action Создает новое Action .
new Action Response Builder() Action Response Builder Создает новый Action Response Builder .
new Action Status() Action Status Создает новый Action Status .
new Attachment() Attachment Создает новое Attachment .
new Authorization Action() Authorization Action Создает новое Authorization Action .
new Authorization Exception() Authorization Exception Создает новое Authorization Exception .
new Border Style() Border Style Создает новый Border Style .
new Button Set() Button Set Создает новый Button Set .
new Calendar Event Action Response Builder() Calendar Event Action Response Builder Создает новый Calendar Event Action Response Builder .
new Card Action() Card Action Создает новое Card Action .
new Card Builder() Card Builder Создает новый конструктор карт.
new Card Header() Card Header Создает новый Card Header .
new Card Section() Card Section Создает новый Card Section .
new Card With Id() Card With Id Создает новую Card With Id .
new Chat Action Response() Chat Action Response Создает новый Chat Action Response .
new Chat Response Builder() Chat Response Builder Создает новый Chat Response Builder .
new Chip() Chip Создает новый Chip .
new Chip List() Chip List Создает новый Chip List .
new Collapse Control() Collapse Control Создает новый Collapse Control .
new Column() Column Создает новый Column .
new Columns() Columns Создает новый набор Columns .
new Compose Action Response Builder() Compose Action Response Builder Создает новый Compose Action Response Builder .
new Date Picker() Date Picker Создает новый Date Picker .
new Date Time Picker() Date Time Picker Создает новый Date Time Picker .
new Decorated Text() Decorated Text Создает новый Decorated Text .
new Dialog() Dialog Создает новый Dialog .
new Dialog Action() Dialog Action Создает новое Dialog Action .
new Divider() Divider Создает новый Divider .
new Drive Items Selected Action Response Builder() Drive Items Selected Action Response Builder Создает новый Drive Items Selected Action Response Builder .
new Editor File Scope Action Response Builder() Editor File Scope Action Response Builder Создает новый Editor File Scope Action Response Builder .
new Fixed Footer() Fixed Footer Создает новый Fixed Footer .
new Grid() Grid Создает новую Grid .
new Grid Item() Grid Item Создает новый Grid Item .
new Icon Image() Icon Image Создает новое Icon Image .
new Image() Image Создает новое Image .
new Image Button() Image Button Создает новую Image Button .
new Image Component() Image Component Создает новый Image Component .
new Image Crop Style() Image Crop Style Создает новый Image Crop Style .
new Key Value() Key Value Создает новое Key Value .
new Link Preview() Link Preview Создает новый Link Preview .
new Material Icon() Material Icon Создает новый Material Icon .
new Navigation() Navigation Создает новую Navigation .
new Notification() Notification Создает новое Notification .
new Open Link() Open Link Создает новую Open Link .
new Overflow Menu() Overflow Menu Создает новое Overflow Menu .
new Overflow Menu Item() Overflow Menu Item Создает новый Overflow Menu Item .
new Selection Input() Selection Input Создает новый Selection Input .
new Suggestions() Suggestions Создает новые Suggestions .
new Suggestions Response Builder() Suggestions Response Builder Создает новый Suggestions Response Builder .
new Switch() Switch Создает новый Switch .
new Text Button() Text Button Создает новую Text Button .
new Text Input() Text Input Создает новый Text Input .
new Text Paragraph() Text Paragraph Создает новый Text Paragraph .
new Time Picker() Time Picker Создает новый Time Picker .
new Universal Action Response Builder() Universal Action Response Builder Создает новый Universal Action Response Builder .
new Update Draft Action Response Builder() Update Draft Action Response Builder Создает новый Update Draft Action Response Builder .
new Update Draft Bcc Recipients Action() Update Draft Bcc Recipients Action Создает новое Update Draft Bcc Recipients Action ;
new Update Draft Body Action() Update Draft Body Action Создает новое Update Draft Body Action .
new Update Draft Cc Recipients Action() Update Draft Cc Recipients Action Создает новое Update Draft Cc Recipients Action .
new Update Draft Subject Action() Update Draft Subject Action Создает новое Update Draft Subject Action .
new Update Draft To Recipients Action() Update Draft To Recipients Action Создает новое Update Draft To Recipients Action .
new Validation() Validation Создает новую Validation .

Подробная документация

new Action()

Создает новое Action .

Возвращаться

Action — пустое действие.


new Action Response Builder()

Создает новый Action Response Builder .

Возвращаться

Action Response Builder — пустой конструктор ActionResponse.


new Action Status()

Создает новый Action Status .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const actionStatus = CardService.newActionStatus()
                         .setStatusCode(CardService.Status.OK)
                         .setUserFacingMessage('Success');

Возвращаться

Action Status — пустой статус действия.


new Attachment()

Создает новое Attachment .

Возвращаться

Attachment — пустое вложение.


new Authorization Action()

Создает новое Authorization Action .

Возвращаться

Authorization Action — пустое действие авторизации.


new Authorization Exception()

Создает новое Authorization Exception .

Возвращаться

Authorization Exception — пустое исключение AuthorizationException.


new Border Style()

Создает новый Border Style .

Возвращаться

Border Style — пустой стиль границы.


new Button Set()

Создает новый Button Set .

Возвращаться

Button Set — пустой набор кнопок.


new Calendar Event Action Response Builder()

Создает новый Calendar Event Action Response Builder .

Возвращаться

Calendar Event Action Response Builder — пустой Calendar Event Action Response Builder .


new Card Action()

Создает новое Card Action .

Возвращаться

Card Action — пустое CardAction.


new Card Builder()

Создает новый конструктор карт.

Возвращаться

Card Builder — пустой конструктор карт.


new Card Header()

Создает новый Card Header .

Возвращаться

Card Header — пустой заголовок карты.


new Card Section()

Создает новый Card Section .

Возвращаться

Card Section — пустой раздел карты.


new Card With Id()

Создает новую Card With Id . Используется для отправки карточки в сообщении Google Chat. Идентификатор карты — уникальный идентификатор карты в сообщении при отправке нескольких карт.

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const cardSection = CardService.newCardSection();
cardSection.addWidget(
    CardService.newTextParagraph().setText('This is a text paragraph widget.'),
);

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .addSection(cardSection)
                 .build();

const cardWithId =
    CardService.newCardWithId().setCardId('card_id').setCard(card);

Возвращаться

Card With Id — пустая Card With Id .


new Chat Action Response()

Создает новый Chat Action Response .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .build();
const dialog = CardService.newDialog().setBody(card);

const dialogAction = CardService.newDialogAction().setDialog(dialog);

const chatActionResponse = CardService.newChatActionResponse()
                               .setResponseType(CardService.ResponseType.DIALOG)
                               .setDialogAction(dialogAction);

Возвращаться

Chat Action Response — пустой Chat Action Response .


new Chat Response Builder()

Создает новый Chat Response Builder .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const cardSection = CardService.newCardSection();
cardSection.addWidget(
    CardService.newTextParagraph().setText('This is a text paragraph widget.'),
);

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .addSection(cardSection)
                 .build();

const cardWithId =
    CardService.newCardWithId().setCardId('card_id').setCard(card);

const chatResponse =
    CardService.newChatResponseBuilder().addCardsV2(cardWithId).build();

Возвращаться

Chat Response Builder — пустой ChatResponseBuilder.


new Chip()

Создает новый Chip .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const chip = CardService.newChip()
                 .setLabel('Open Link')
                 .setOpenLink(CardService.newOpenLink().setUrl(
                     'https://www.google.com'));

Возвращаться

Chip — пустой чип.


new Chip List()

Создает новый Chip List .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const chip = CardService.newChip();
// Finish building the text chip...

const chipList = CardService.newChipList()
                     .setLayout(CardService.ChipListLayout.WRAPPED)
                     .addChip(chip);

Возвращаться

Chip List — пустой список чипов.


new Collapse Control()

Создает новый Collapse Control .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const collapseControl =
    CardService.newCollapseControl()
        .setHorizontalAlign(CardService.HorizontalAlignment.START)
        .setExpandButton(CardService.newTextButton().setText('Expand'))
        .setCollapseButton(CardService.newTextButton().setText('Collapse'));

Возвращаться

Collapse Control — пустой элемент CollapseControl.


new Column()

Создает новый Column .

Доступно для приложений Google Chat и дополнений Google Workspace.

const columnWidget = CardService.newTextParagraph();
const column =
    CardService.newColumn()
        .setHorizontalSizeStyle(
            CardService.HorizontalSizeStyle.FILL_AVAILABLE_SPACE)
        .setHorizontalAlignment(CardService.HorizontalAlignment.CENTER)
        .setVerticalAlignment(CardService.VerticalAlignment.CENTER)
        .addWidget(columnWidget);

Возвращаться

Column — пустой столбец.


new Columns()

Создает новый набор Columns .

Доступно для приложений Google Chat и дополнений Google Workspace.

const firstColumn =
    CardService.newColumn()
        .setHorizontalSizeStyle(
            CardService.HorizontalSizeStyle.FILL_AVAILABLE_SPACE)
        .setHorizontalAlignment(CardService.HorizontalAlignment.CENTER)
        .setVerticalAlignment(CardService.VerticalAlignment.CENTER);
const secondColumn =
    CardService.newColumn()
        .setHorizontalSizeStyle(
            CardService.HorizontalSizeStyle.FILL_AVAILABLE_SPACE)
        .setHorizontalAlignment(CardService.HorizontalAlignment.CENTER)
        .setVerticalAlignment(CardService.VerticalAlignment.CENTER);
const columns = CardService.newColumns()
                    .addColumn(firstColumn)
                    .addColumn(secondColumn)
                    .setWrapStyle(CardService.WrapStyle.WRAP);

Возвращаться

Columns — пустой набор столбцов.


new Compose Action Response Builder()

Создает новый Compose Action Response Builder .

Возвращаться

Compose Action Response Builder — пустой построитель ComposeActionResponse.


new Date Picker()

Создает новый Date Picker .

Возвращаться

Date Picker — пустой DatePicker.


new Date Time Picker()

Создает новый Date Time Picker .

Возвращаться

Date Time Picker — пустой DateTimePicker.


new Decorated Text()

Создает новый Decorated Text .

Возвращаться

Decorated Text — пустой декорированныйтекст.


new Dialog()

Создает новый Dialog .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .build();

// Sets the card of the dialog.
const dialog = CardService.newDialog().setBody(card);

Возвращаться

Dialog — пустой Dialog .


new Dialog Action()

Создает новое Dialog Action .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card title'))
                 .build();
const dialog = CardService.newDialog().setBody(card);

const dialogAction = CardService.newDialogAction().setDialog(dialog);

Возвращаться

Dialog Action — пустое Dialog Action .


new Divider()

Создает новый Divider . В следующем примере создается простая карточка с двумя абзацами, разделенными разделителем.

function buildCard() {
  const cardSection1TextParagraph1 =
      CardService.newTextParagraph().setText('Hello world!');

  const cardSection1Divider1 = CardService.newDivider();

  const cardSection1TextParagraph2 =
      CardService.newTextParagraph().setText('Hello world!');

  const cardSection1 = CardService.newCardSection()
                           .addWidget(cardSection1TextParagraph1)
                           .addWidget(cardSection1Divider1)
                           .addWidget(cardSection1TextParagraph2);

  const card = CardService.newCardBuilder().addSection(cardSection1).build();

  return card;
}

Возвращаться

Divider — Делитель.


new Drive Items Selected Action Response Builder()


new Editor File Scope Action Response Builder()


new Fixed Footer()

Создает новый Fixed Footer .

Возвращаться

Fixed Footer — пустой фиксированный нижний колонтитул.


new Grid()

Создает новую Grid .

Возвращаться

Grid — пустая сетка.


new Grid Item()

Создает новый Grid Item .

Возвращаться

Grid Item — пустой элемент GridItem.


new Icon Image()

Создает новое Icon Image .

Возвращаться

Icon Image — пустое изображение значка.


new Image()

Создает новое Image .

Возвращаться

Image — пустое изображение.


new Image Button()

Создает новую Image Button .

Возвращаться

Image Button — пустая кнопка изображения.


new Image Component()

Создает новый Image Component .

Возвращаться

Image Component — пустой компонент изображения.


new Image Crop Style()

Создает новый Image Crop Style .

Возвращаться

Image Crop Style — пустой стиль ImageCropStyle.


new Key Value()

Создает новое Key Value .

Возвращаться

Key Value — пустое значение ключа.


new Link Preview()

Создает новый Link Preview .

const decoratedText =
    CardService.newDecoratedText().setTopLabel('Hello').setText('Hi!');

const cardSection = CardService.newCardSection().addWidget(decoratedText);

const card = CardService.newCardBuilder().addSection(cardSection).build();

const linkPreview = CardService.newLinkPreview().setPreviewCard(card).setTitle(
    'Smart chip title');

Возвращаться

Link Preview — пустой LinkPreview.


new Material Icon()

Создает новый Material Icon .

Доступно для приложений Google Chat и дополнений Google Workspace.

const materialIcon =
    CardService.newMaterialIcon().setName('check_box').setFill(true);

const cardSection = CardService.newCardSection();
cardSection.addWidget(
    CardService.newDecoratedText()
        .setStartIcon(CardService.newIconImage().setMaterialIcon(materialIcon))
        .setText('sasha@example.com'),
);

const card = CardService.newCardBuilder()
                 .setHeader(CardService.newCardHeader().setTitle('Card Title'))
                 .addSection(cardSection)
                 .build();

Возвращаться

Material Icon — пустой значок материала.


new Navigation()

Создает новую Navigation .

Возвращаться

Navigation — пустая навигация.


new Notification()

Создает новое Notification .

Возвращаться

Notification — пустое уведомление.


Создает новую Open Link .

Возвращаться

Open Link — пустая ссылка OpenLink.


new Overflow Menu()

Создает новое Overflow Menu .

Доступно только для приложений Google Chat. Недоступно для дополнений Google Workspace.

const overflowMenuItem = CardService.newOverflowMenuItem();
// Finish building the overflow menu item...

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

Возвращаться

Overflow Menu — пустое меню OverflowMenu.


new Overflow Menu Item()

Создает новый Overflow Menu Item .

Доступно только для приложений Google Chat. Недоступно для дополнений 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'));

Возвращаться

Overflow Menu Item — пустой элемент OverflowMenuItem.


new Selection Input()

Создает новый Selection Input .

Возвращаться

Selection Input — пустой SelectionInput.


new Suggestions()

Создает новые Suggestions .

Возвращаться

Suggestions — пустое поле «Предложения».


new Suggestions Response Builder()

Создает новый Suggestions Response Builder .

Возвращаться

Suggestions Response Builder — пустой построитель предложений.


new Switch()

Создает новый Switch .

Возвращаться

Switch — пустой переключатель.


new Text Button()

Создает новую Text Button .

Возвращаться

Text Button — пустая текстовая кнопка.


new Text Input()

Создает новый Text Input .

Возвращаться

Text Input — пустой текстовый ввод.


new Text Paragraph()

Создает новый Text Paragraph .

Возвращаться

Text Paragraph — пустой TextParagraph.


new Time Picker()

Создает новый Time Picker .

Возвращаться

Time Picker — пустой TimePicker.


new Universal Action Response Builder()

Создает новый Universal Action Response Builder .

Возвращаться

Universal Action Response Builder — пустой построитель UniversalActionResponse.


new Update Draft Action Response Builder()

Создает новый Update Draft Action Response Builder .

Возвращаться

Update Draft Action Response Builder — пустой UpdateDraftActionResponseBuilder.


new Update Draft Bcc Recipients Action()

Создает новое Update Draft Bcc Recipients Action ;

Возвращаться

Update Draft Bcc Recipients Action — пустое действие UpdateDraftBccRecipientsAction.


new Update Draft Body Action()

Создает новое Update Draft Body Action .

Возвращаться

Update Draft Body Action — пустое действие UpdateDraftBodyAction.


new Update Draft Cc Recipients Action()

Создает новое Update Draft Cc Recipients Action .

Возвращаться

Update Draft Cc Recipients Action — пустое действие UpdateDraftCcRecipientsAction.


new Update Draft Subject Action()

Создает новое Update Draft Subject Action .

Возвращаться

Update Draft Subject Action — пустое действие UpdateDraftSubjectAction.


new Update Draft To Recipients Action()

Создает новое Update Draft To Recipients Action .

Возвращаться

Update Draft To Recipients Action — пустое действие UpdateDraftToRecipientsAction.


new Validation()

Создает новую Validation .

Доступно для приложений Google Chat и дополнений Google Workspace.

const validation =
    CardService.newValidation().setCharacterLimit(5).setInputType(
        CardService.InputType.EMAIL);

Возвращаться

Validation — пустая проверка.