CardService umożliwia tworzenie ogólnych kart używanych w różnych usługach Google, takich jak dodatki do Google Workspace.
Poniżej znajdziesz przykład karty dodatków.
function createCard() { return CardService.newCardBuilder() .setHeader(CardService.newCardHeader().setTitle('CardTitle')) .build(); }
Możesz też zwrócić kilka kart w ten sposób:
function createCards() { return [ CardService.newCardBuilder().build(), CardService.newCardBuilder().build(), CardService.newCardBuilder().build(), ]; }
Poniżej pokazujemy, jak zdefiniować kartę z nagłówkiem, tekstem, obrazem i elementem menu:
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(); }
Przykładowa karta aplikacji do obsługi czatu.
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();
Właściwości
Metody
Szczegółowa dokumentacja
newActionResponseBuilder()
newActionStatus()
Tworzy nowy ActionStatus.
Dostępne tylko w przypadku aplikacji Google Chat. Niedostępne w przypadku dodatków do Google Workspace.
const actionStatus = CardService.newActionStatus() .setStatusCode(CardService.Status.OK) .setUserFacingMessage('Success');
Powrót
ActionStatus – pusty stan działania.
newAttachment()
newAuthorizationAction()
newAuthorizationException()
Tworzy nowy AuthorizationException.
Powrót
AuthorizationException – pusty obiekt AuthorizationException.
newBorderStyle()
newCalendarEventActionResponseBuilder()
Tworzy nowy CalendarEventActionResponseBuilder.
Powrót
CalendarEventActionResponseBuilder – pusta CalendarEventActionResponseBuilder.
newCardAction()
newCardBuilder()
newCardHeader()
newCardSection()
newCardWithId()
Tworzy nowy CardWithId. Służy do wysyłania karty w wiadomości Google Chat. Identyfikator karty to unikalny identyfikator karty w wiadomości podczas wysyłania wielu kart.
Dostępne tylko w przypadku aplikacji Google Chat. Niedostępne w przypadku dodatków do 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);
Powrót
CardWithId – pusta CardWithId.
newCarousel()
Tworzy Carousel.
const carousel = CardService.newCarousel() .addCarouselCard(CardService.newCarouselCard().addWidget( CardService.newTextParagraph().setText('The first text paragraph in carousel'))) .addCarouselCard(CardService.newCarouselCard().addWidget( CardService.newTextParagraph().setText('The second text paragraph in carousel'))) .addCarouselCard(CardService.newCarouselCard().addWidget( CardService.newTextParagraph().setText('The third text paragraph in carousel')))
Powrót
Carousel – pusta karuzela.
newCarouselCard()
Tworzy nowy CarouselCard.
const carouselCard = CardService.newCarouselCard().addWidget( CardService.newTextParagraph().setText('Text paragraph in carousel'));
Powrót
CarouselCard – pusty element.
newChatActionResponse()
Tworzy nowy ChatActionResponse.
Dostępne tylko w przypadku aplikacji Google Chat. Niedostępne w przypadku dodatków do 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);
Powrót
ChatActionResponse – pusta ChatActionResponse.
newChatResponseBuilder()
Tworzy nowy ChatResponseBuilder.
Dostępne tylko w przypadku aplikacji Google Chat. Niedostępne w przypadku dodatków do 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();
Powrót
ChatResponseBuilder – pusty obiekt ChatResponseBuilder.
newChip()
newChipList()
Tworzy nowy ChipList.
Dostępne w przypadku aplikacji Google Chat. W wersji przedpremierowej dla programistów dodatków do Google Workspace.
const chip = CardService.newChip(); // Finish building the text chip... const chipList = CardService.newChipList() .setLayout(CardService.ChipListLayout.WRAPPED) .addChip(chip);
Powrót
ChipList – pusta lista ChipList.
newCollapseControl()
Tworzy nowy CollapseControl.
Dostępne w przypadku aplikacji Google Chat. W wersji przedpremierowej dla programistów dodatków do Google Workspace.
const collapseControl = CardService.newCollapseControl() .setHorizontalAlign(CardService.HorizontalAlignment.START) .setExpandButton(CardService.newTextButton().setText('Expand')) .setCollapseButton(CardService.newTextButton().setText('Collapse'));
Powrót
CollapseControl – pusty element CollapseControl.
newColumn()
Tworzy nowy Column.
Dostępne w przypadku aplikacji Google Chat i dodatków do 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);
Powrót
Column – pusta kolumna.
newColumns()
Tworzy nowy zestaw Columns.
Dostępne w przypadku aplikacji Google Chat i dodatków do 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);
Powrót
Columns – pusty zbiór kolumn.
newCommonWidgetAction()
newComposeActionResponseBuilder()
Tworzy nowy ComposeActionResponseBuilder.
Powrót
ComposeActionResponseBuilder – pusty konstruktor ComposeActionResponse.
newCondition()
newDataSourceConfig()
newDatePicker()
newDateTimePicker()
newDecoratedText()
newDialog()
Tworzy nowy Dialog.
Dostępne tylko w przypadku aplikacji Google Chat. Niedostępne w przypadku dodatków do 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);
Powrót
newDialogAction()
Tworzy nowy DialogAction.
Dostępne tylko w przypadku aplikacji Google Chat. Niedostępne w przypadku dodatków do 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);
Powrót
DialogAction – pusta DialogAction.
newDivider()
Tworzy nowy Divider. Poniższy przykład tworzy prostą kartę z 2 akapitami oddzielonymi separatorem.
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; }
Powrót
Divider – separator.
newDriveDataSourceSpec()
newDriveItemsSelectedActionResponseBuilder()
Tworzy nowy DriveItemsSelectedActionResponseBuilder.
Powrót
DriveItemsSelectedActionResponseBuilder – pusta DriveItemsSelectedActionResponseBuilder.
newEditorFileScopeActionResponseBuilder()
Tworzy nowy EditorFileScopeActionResponseBuilder.
Powrót
EditorFileScopeActionResponseBuilder – pusta EditorFileScopeActionResponseBuilder.
newEventAction()
Tworzy nowy obiekt EventAction używany do weryfikacji po stronie klienta.
Powrót
EventAction – pusta EventAction.
newExpressionData()
Tworzy nowy obiekt ExpressionData używany do weryfikacji po stronie klienta.
Powrót
ExpressionData – pusta ExpressionData.
newExpressionDataAction()
Tworzy nowy obiekt ExpressionDataAction używany do weryfikacji po stronie klienta.
Powrót
ExpressionDataAction – pusta ExpressionDataAction.
newExpressionDataCondition()
Tworzy nowy obiekt ExpressionDataCondition używany do weryfikacji po stronie klienta.
Powrót
newHostAppDataSource()
newImageButton()
newImageComponent()
newImageCropStyle()
newLinkPreview()
Tworzy nowy LinkPreview.
const decoratedText = CardService.newDecoratedText().setTopLabel('Hello').setText('Hi!'); const cardSection = CardService.newCardSection().addWidget(decoratedText); const card = CardService.newCardBuilder().addSection(cardSection).build(); return CardService.newLinkPreview().setPreviewCard(card).setTitle( 'Smart chip title');
Powrót
LinkPreview – pusty obiekt LinkPreview.
newMaterialIcon()
Tworzy nowy MaterialIcon.
Dostępne w przypadku aplikacji Google Chat i dodatków do 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();
Powrót
MaterialIcon – pusta ikona MaterialIcon.
newNotification()
newOverflowMenu()
Tworzy nowy OverflowMenu.
Dostępne w przypadku aplikacji Google Chat. W wersji przedpremierowej dla programistów dodatków do Google Workspace.
const overflowMenuItem = CardService.newOverflowMenuItem(); // Finish building the overflow menu item... const overflowMenu = CardService.newOverflowMenu().addMenuItem(overflowMenuItem);
Powrót
OverflowMenu – puste rozszerzone menu.
newOverflowMenuItem()
Tworzy nowy OverflowMenuItem.
Dostępne w przypadku aplikacji Google Chat. W wersji przedpremierowej dla programistów dodatków do 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'));
Powrót
OverflowMenuItem – pusty element OverflowMenuItem.
newPlatformDataSource()
newSelectionInput()
newSuggestions()
newSuggestionsResponseBuilder()
Tworzy nowy SuggestionsResponseBuilder.
Powrót
SuggestionsResponseBuilder – pusty konstruktor SuggestionsResponse.
newTextButton()
newTextParagraph()
newTimePicker()
newTrigger()
newUniversalActionResponseBuilder()
Tworzy nowy UniversalActionResponseBuilder.
Powrót
UniversalActionResponseBuilder – pusty konstruktor UniversalActionResponse.
newUpdateDraftActionResponseBuilder()
Tworzy nowy UpdateDraftActionResponseBuilder.
Powrót
UpdateDraftActionResponseBuilder – pusty obiekt UpdateDraftActionResponseBuilder.
newUpdateDraftBccRecipientsAction()
tworzy nowy element UpdateDraftBccRecipientsAction;
Powrót
UpdateDraftBccRecipientsAction – pusta wartość UpdateDraftBccRecipientsAction.
newUpdateDraftBodyAction()
Tworzy nowy UpdateDraftBodyAction.
Powrót
UpdateDraftBodyAction – pusta wartość UpdateDraftBodyAction.
newUpdateDraftCcRecipientsAction()
Tworzy nowy UpdateDraftCcRecipientsAction.
Powrót
UpdateDraftCcRecipientsAction – Empty UpdateDraftCcRecipientsAction.
newUpdateDraftSubjectAction()
Tworzy nowy UpdateDraftSubjectAction.
Powrót
UpdateDraftSubjectAction – pusty obiekt UpdateDraftSubjectAction.
newUpdateDraftToRecipientsAction()
Tworzy nowy UpdateDraftToRecipientsAction.
Powrót
UpdateDraftToRecipientsAction – pusty obiekt UpdateDraftToRecipientsAction.
newUpdateVisibilityAction()
newValidation()
Tworzy nowy Validation.
Dostępne w przypadku aplikacji Google Chat i dodatków do Google Workspace.
const validation = CardService.newValidation().setCharacterLimit(5).setInputType( CardService.InputType.EMAIL);
Powrót
Validation – pusta weryfikacja.