Class CardService

CardService

CardService menyediakan kemampuan untuk membuat kartu generik yang digunakan di berbagai produk ekstensibilitas Google, seperti Add-on Google Workspace.

Berikut adalah contoh kartu add-on.

return CardService.newCardBuilder()
         .setHeader(CardService.newCardHeader().setTitle("CardTitle"))
         .build();

Atau, Anda dapat mengembalikan beberapa Kartu seperti:

return [
  CardService.newCardBuilder().build(),
  CardService.newCardBuilder().build(),
  CardService.newCardBuilder().build()
]

Berikut ini cara menentukan kartu dengan header, teks, gambar, dan item 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();
}

Contoh untuk kartu Aplikasi 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();

Properti

PropertiJenisDeskripsi
BorderTypeBorderTypeEnumerasi BorderType.
ComposedEmailTypeComposedEmailTypeEnumerasi ComposedEmailType.
ContentTypeContentTypeEnumerasi ContentType.
GridItemLayoutGridItemLayoutEnumerasi GridItemLayout.
HorizontalAlignmentHorizontalAlignmentEnumerasi HorizontalAlignment.
IconIconEnumerasi Icon.
ImageCropTypeImageCropTypeEnumerasi ImageCropType.
ImageStyleImageStyleEnumerasi ImageStyle.
LoadIndicatorLoadIndicatorEnumerasi LoadIndicator.
OnCloseOnCloseEnumerasi OnClose.
OpenAsOpenAsEnumerasi OpenAs.
SelectionInputTypeSelectionInputTypeEnumerasi SelectionInputType.
TextButtonStyleTextButtonStyleEnumerasi TextButtonStyle.
UpdateDraftBodyTypeUpdateDraftBodyTypeEnumerasi UpdateDraftBodyType.

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
newAction()ActionMembuat Action baru.
newActionResponseBuilder()ActionResponseBuilderMembuat ActionResponseBuilder baru.
newActionStatus()ActionStatusMembuat ActionStatus baru.
newAttachment()AttachmentMembuat Attachment baru.
newAuthorizationAction()AuthorizationActionMembuat AuthorizationAction baru.
newAuthorizationException()AuthorizationExceptionMembuat AuthorizationException baru.
newBorderStyle()BorderStyleMembuat BorderStyle baru.
newButtonSet()ButtonSetMembuat ButtonSet baru.
newCalendarEventActionResponseBuilder()CalendarEventActionResponseBuilderMembuat CalendarEventActionResponseBuilder baru.
newCardAction()CardActionMembuat CardAction baru.
newCardBuilder()CardBuilderMembuat CardBuilder baru.
newCardHeader()CardHeaderMembuat CardHeader baru.
newCardSection()CardSectionMembuat CardSection baru.
newCardWithId()CardWithIdMembuat CardWithId baru.
newChatActionResponse()ChatActionResponseMembuat ChatActionResponse baru.
newChatResponseBuilder()ChatResponseBuilderMembuat ChatResponseBuilder baru.
newColumn()ColumnMembuat Column baru.
newColumns()ColumnsMembuat kumpulan Columns baru.
newComposeActionResponseBuilder()ComposeActionResponseBuilderMembuat ComposeActionResponseBuilder baru.
newDatePicker()DatePickerMembuat DatePicker baru.
newDateTimePicker()DateTimePickerMembuat DateTimePicker baru.
newDecoratedText()DecoratedTextMembuat DecoratedText baru.
newDialog()DialogMembuat Dialog baru.
newDialogAction()DialogActionMembuat DialogAction baru.
newDivider()DividerMembuat Divider baru.
newDriveItemsSelectedActionResponseBuilder()DriveItemsSelectedActionResponseBuilderMembuat DriveItemsSelectedActionResponseBuilder baru.
newEditorFileScopeActionResponseBuilder()EditorFileScopeActionResponseBuilderMembuat EditorFileScopeActionResponseBuilder baru.
newFixedFooter()FixedFooterMembuat FixedFooter baru.
newGrid()GridMembuat Grid baru.
newGridItem()GridItemMembuat GridItem baru.
newIconImage()IconImageMembuat IconImage baru.
newImage()ImageMembuat Image baru.
newImageButton()ImageButtonMembuat ImageButton baru.
newImageComponent()ImageComponentMembuat ImageComponent baru.
newImageCropStyle()ImageCropStyleMembuat ImageCropStyle baru.
newKeyValue()KeyValueMembuat KeyValue baru.
newLinkPreview()LinkPreviewMembuat LinkPreview baru.
newNavigation()NavigationMembuat Navigation baru.
newNotification()NotificationMembuat Notification baru.
newOpenLink()OpenLinkMembuat OpenLink baru.
newSelectionInput()SelectionInputMembuat SelectionInput baru.
newSuggestions()SuggestionsMembuat Suggestions baru.
newSuggestionsResponseBuilder()SuggestionsResponseBuilderMembuat SuggestionsResponseBuilder baru.
newSwitch()SwitchMembuat Switch baru.
newTextButton()TextButtonMembuat TextButton baru.
newTextInput()TextInputMembuat TextInput baru.
newTextParagraph()TextParagraphMembuat TextParagraph baru.
newTimePicker()TimePickerMembuat TimePicker baru.
newUniversalActionResponseBuilder()UniversalActionResponseBuilderMembuat UniversalActionResponseBuilder baru.
newUpdateDraftActionResponseBuilder()UpdateDraftActionResponseBuilderMembuat UpdateDraftActionResponseBuilder baru.
newUpdateDraftBccRecipientsAction()UpdateDraftBccRecipientsActionMembuat UpdateDraftBccRecipientsAction baru;
newUpdateDraftBodyAction()UpdateDraftBodyActionMembuat UpdateDraftBodyAction baru.
newUpdateDraftCcRecipientsAction()UpdateDraftCcRecipientsActionMembuat UpdateDraftCcRecipientsAction baru.
newUpdateDraftSubjectAction()UpdateDraftSubjectActionMembuat UpdateDraftSubjectAction baru.
newUpdateDraftToRecipientsAction()UpdateDraftToRecipientsActionMembuat UpdateDraftToRecipientsAction baru.

Dokumentasi mendetail

newAction()

Membuat Action baru.

Return

Action — Action kosong.


newActionResponseBuilder()

Membuat ActionResponseBuilder baru.

Return

ActionResponseBuilder — Builder ActionResponse kosong.


newActionStatus()

Membuat ActionStatus baru.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on Google Workspace.

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

Return

ActionStatus — ActionStatus kosong.


newAttachment()

Membuat Attachment baru.

Return

Attachment — Lampiran kosong.


newAuthorizationAction()

Membuat AuthorizationAction baru.

Return

AuthorizationAction — AuthorizationAction kosong.


newAuthorizationException()

Membuat AuthorizationException baru.

Return

AuthorizationException — AuthorizationException kosong.


newBorderStyle()

Membuat BorderStyle baru.

Return

BorderStyle — BorderStyle kosong.


newButtonSet()

Membuat ButtonSet baru.

Return

ButtonSet — ButtonSet kosong.


newCalendarEventActionResponseBuilder()


newCardAction()

Membuat CardAction baru.

Return

CardAction — CardAction kosong.


newCardBuilder()

Membuat CardBuilder baru.

Return

CardBuilder — Pembuat Kartu yang kosong.


newCardHeader()

Membuat CardHeader baru.

Return

CardHeader — CardHeader kosong.


newCardSection()

Membuat CardSection baru.

Return

CardSection — CardSection kosong.


newCardWithId()

Membuat CardWithId baru. ID ini digunakan untuk mengirim kartu dalam pesan Google Chat. ID kartu adalah ID unik untuk kartu dalam pesan saat mengirim beberapa kartu.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on 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);

Return

CardWithIdCardWithId kosong.


newChatActionResponse()

Membuat ChatActionResponse baru.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on 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);

Return

ChatActionResponseChatActionResponse kosong.


newChatResponseBuilder()

Membuat ChatResponseBuilder baru.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on 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();

Return

ChatResponseBuilder — ChatResponseBuilder kosong.


newColumn()

Membuat Column baru.

Tersedia untuk aplikasi Google Chat dan Add-on 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);

Return

Column — Kolom kosong.


newColumns()

Membuat kumpulan Columns baru.

Tersedia untuk aplikasi Google Chat dan Add-on 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(column)
    .addColumn(secondColumn)
    .setWrapStyle(CardService.WrapStyle.WRAP);

Return

Columns — Kumpulan Kolom kosong.


newComposeActionResponseBuilder()

Membuat ComposeActionResponseBuilder baru.

Return

ComposeActionResponseBuilder — Builder ComposeActionResponse kosong.


newDatePicker()

Membuat DatePicker baru.

Return

DatePicker — DatePicker kosong.


newDateTimePicker()

Membuat DateTimePicker baru.

Return

DateTimePicker — DateTimePicker kosong.


newDecoratedText()

Membuat DecoratedText baru.

Return

DecoratedText — Dekorasi Teks kosong.


newDialog()

Membuat Dialog baru.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on 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);

Return

DialogDialog kosong.


newDialogAction()

Membuat DialogAction baru.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on 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)

Return

DialogActionDialogAction kosong.


newDivider()

Membuat Divider baru. Contoh berikut membuat kartu sederhana dengan 2 paragraf yang dipisahkan oleh pemisah.

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

    let cardSection1Divider1 = CardService.newDivider();

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

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

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

   return card;
}

Return

Divider — Pembagi.


newDriveItemsSelectedActionResponseBuilder()


newEditorFileScopeActionResponseBuilder()


newFixedFooter()

Membuat FixedFooter baru.

Return

FixedFooter — FixedFooter kosong.


newGrid()

Membuat Grid baru.

Return

Grid — Petak kosong.


newGridItem()

Membuat GridItem baru.

Return

GridItem — GridItem kosong.


newIconImage()

Membuat IconImage baru.

Return

IconImage — Gambar ikon kosong.


newImage()

Membuat Image baru.

Return

Image — Gambar kosong.


newImageButton()

Membuat ImageButton baru.

Return

ImageButton — ImageButton kosong.


newImageComponent()

Membuat ImageComponent baru.

Return

ImageComponent — ImageComponent kosong.


newImageCropStyle()

Membuat ImageCropStyle baru.

Return

ImageCropStyle — ImageCropStyle kosong.


newKeyValue()

Membuat KeyValue baru.

Return

KeyValue — KeyValue kosong.


newLinkPreview()

Membuat LinkPreview baru.

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');

Return

LinkPreview — LinkPreview kosong.


newNavigation()

Membuat Navigation baru.

Return

Navigation — Navigasi kosong.


newNotification()

Membuat Notification baru.

Return

Notification — Notifikasi kosong.


Membuat OpenLink baru.

Return

OpenLink — OpenLink kosong.


newSelectionInput()

Membuat SelectionInput baru.

Return

SelectionInput — SelectionInput kosong.


newSuggestions()

Membuat Suggestions baru.

Return

Suggestions — Saran kosong.


newSuggestionsResponseBuilder()

Membuat SuggestionsResponseBuilder baru.

Return

SuggestionsResponseBuilder — Builder SuggestionsResponse kosong.


newSwitch()

Membuat Switch baru.

Return

Switch — Switch kosong.


newTextButton()

Membuat TextButton baru.

Return

TextButton — TextButton kosong.


newTextInput()

Membuat TextInput baru.

Return

TextInput — TextInput kosong.


newTextParagraph()

Membuat TextParagraph baru.

Return

TextParagraph — TextParagraph kosong.


newTimePicker()

Membuat TimePicker baru.

Return

TimePicker — Pemilih Waktu kosong.


newUniversalActionResponseBuilder()

Membuat UniversalActionResponseBuilder baru.

Return

UniversalActionResponseBuilder — Builder UniversalActionResponse kosong.


newUpdateDraftActionResponseBuilder()

Membuat UpdateDraftActionResponseBuilder baru.

Return

UpdateDraftActionResponseBuilder — UpdateDraftActionResponseBuilder kosong.


newUpdateDraftBccRecipientsAction()

Membuat UpdateDraftBccRecipientsAction baru;

Return

UpdateDraftBccRecipientsAction — UpdateDraftBccRecipientsAction kosong.


newUpdateDraftBodyAction()

Membuat UpdateDraftBodyAction baru.

Return

UpdateDraftBodyAction — UpdateDraftBodyAction kosong.


newUpdateDraftCcRecipientsAction()

Membuat UpdateDraftCcRecipientsAction baru.

Return

UpdateDraftCcRecipientsAction — UpdateDraftCcRecipientsAction Kosong.


newUpdateDraftSubjectAction()

Membuat UpdateDraftSubjectAction baru.

Return

UpdateDraftSubjectAction — UpdateDraftSubjectAction kosong.


newUpdateDraftToRecipientsAction()

Membuat UpdateDraftToRecipientsAction baru.

Return

UpdateDraftToRecipientsAction — UpdateDraftToRecipientsAction kosong.