Class CardService

CardService

CardService는 다양한 Google 서비스에서 사용되는 일반 카드를 만드는 기능을 제공합니다. 확장 제품(예: Google Workspace 부가기능)

다음은 부가기능 카드 샘플입니다.

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

또는 다음과 같이 여러 카드를 반환할 수도 있습니다.

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();
}

채팅 앱 카드 샘플입니다.

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

속성

속성유형설명
BorderTypeBorderTypeBorderType 열거형.
ComposedEmailTypeComposedEmailTypeComposedEmailType 열거형.
ContentTypeContentTypeContentType 열거형.
GridItemLayoutGridItemLayoutGridItemLayout 열거형.
HorizontalAlignmentHorizontalAlignmentHorizontalAlignment 열거형.
IconIconIcon 열거형.
ImageCropTypeImageCropTypeImageCropType 열거형.
ImageStyleImageStyleImageStyle 열거형.
LoadIndicatorLoadIndicatorLoadIndicator 열거형.
OnCloseOnCloseOnClose 열거형.
OpenAsOpenAsOpenAs 열거형.
SelectionInputTypeSelectionInputTypeSelectionInputType 열거형.
TextButtonStyleTextButtonStyleTextButtonStyle 열거형.
UpdateDraftBodyTypeUpdateDraftBodyTypeUpdateDraftBodyType 열거형.

메서드

메서드반환 유형간략한 설명
newAction()ActionAction를 만듭니다.
newActionResponseBuilder()ActionResponseBuilderActionResponseBuilder를 만듭니다.
newActionStatus()ActionStatusActionStatus를 만듭니다.
newAttachment()AttachmentAttachment를 만듭니다.
newAuthorizationAction()AuthorizationActionAuthorizationAction를 만듭니다.
newAuthorizationException()AuthorizationExceptionAuthorizationException를 만듭니다.
newBorderStyle()BorderStyleBorderStyle를 만듭니다.
newButtonSet()ButtonSetButtonSet를 만듭니다.
newCalendarEventActionResponseBuilder()CalendarEventActionResponseBuilderCalendarEventActionResponseBuilder를 만듭니다.
newCardAction()CardActionCardAction를 만듭니다.
newCardBuilder()CardBuilderCardBuilder를 만듭니다.
newCardHeader()CardHeaderCardHeader를 만듭니다.
newCardSection()CardSectionCardSection를 만듭니다.
newCardWithId()CardWithIdCardWithId를 만듭니다.
newChatActionResponse()ChatActionResponseChatActionResponse를 만듭니다.
newChatResponseBuilder()ChatResponseBuilderChatResponseBuilder를 만듭니다.
newColumn()ColumnColumn를 만듭니다.
newColumns()ColumnsColumns 세트를 만듭니다.
newComposeActionResponseBuilder()ComposeActionResponseBuilderComposeActionResponseBuilder를 만듭니다.
newDatePicker()DatePickerDatePicker를 만듭니다.
newDateTimePicker()DateTimePickerDateTimePicker를 만듭니다.
newDecoratedText()DecoratedTextDecoratedText를 만듭니다.
newDialog()DialogDialog를 만듭니다.
newDialogAction()DialogActionDialogAction를 만듭니다.
newDivider()DividerDivider를 만듭니다.
newDriveItemsSelectedActionResponseBuilder()DriveItemsSelectedActionResponseBuilderDriveItemsSelectedActionResponseBuilder를 만듭니다.
newEditorFileScopeActionResponseBuilder()EditorFileScopeActionResponseBuilderEditorFileScopeActionResponseBuilder를 만듭니다.
newFixedFooter()FixedFooterFixedFooter를 만듭니다.
newGrid()GridGrid를 만듭니다.
newGridItem()GridItemGridItem를 만듭니다.
newIconImage()IconImageIconImage를 만듭니다.
newImage()ImageImage를 만듭니다.
newImageButton()ImageButtonImageButton를 만듭니다.
newImageComponent()ImageComponentImageComponent를 만듭니다.
newImageCropStyle()ImageCropStyleImageCropStyle를 만듭니다.
newKeyValue()KeyValueKeyValue를 만듭니다.
newLinkPreview()LinkPreviewLinkPreview를 만듭니다.
newNavigation()NavigationNavigation를 만듭니다.
newNotification()NotificationNotification를 만듭니다.
newOpenLink()OpenLinkOpenLink를 만듭니다.
newSelectionInput()SelectionInputSelectionInput를 만듭니다.
newSuggestions()SuggestionsSuggestions를 만듭니다.
newSuggestionsResponseBuilder()SuggestionsResponseBuilderSuggestionsResponseBuilder를 만듭니다.
newSwitch()SwitchSwitch를 만듭니다.
newTextButton()TextButtonTextButton를 만듭니다.
newTextInput()TextInputTextInput를 만듭니다.
newTextParagraph()TextParagraphTextParagraph를 만듭니다.
newTimePicker()TimePickerTimePicker를 만듭니다.
newUniversalActionResponseBuilder()UniversalActionResponseBuilderUniversalActionResponseBuilder를 만듭니다.
newUpdateDraftActionResponseBuilder()UpdateDraftActionResponseBuilderUpdateDraftActionResponseBuilder를 만듭니다.
newUpdateDraftBccRecipientsAction()UpdateDraftBccRecipientsActionUpdateDraftBccRecipientsAction를 만듭니다.
newUpdateDraftBodyAction()UpdateDraftBodyActionUpdateDraftBodyAction를 만듭니다.
newUpdateDraftCcRecipientsAction()UpdateDraftCcRecipientsActionUpdateDraftCcRecipientsAction를 만듭니다.
newUpdateDraftSubjectAction()UpdateDraftSubjectActionUpdateDraftSubjectAction를 만듭니다.
newUpdateDraftToRecipientsAction()UpdateDraftToRecipientsActionUpdateDraftToRecipientsAction를 만듭니다.
newValidation()ValidationValidation를 만듭니다.

자세한 문서

newAction()

Action를 만듭니다.

리턴

Action - 빈 작업입니다.


newActionResponseBuilder()

ActionResponseBuilder를 만듭니다.

리턴

ActionResponseBuilder - 빈 ActionResponse 빌더입니다.


newActionStatus()

ActionStatus를 만듭니다.

Google Chat 앱에서만 사용할 수 있습니다. Google Workspace 부가기능에는 사용할 수 없습니다.

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

리턴

ActionStatus - 비어 있는 ActionStatus입니다.


newAttachment()

Attachment를 만듭니다.

리턴

Attachment - 빈 첨부파일입니다.


newAuthorizationAction()

AuthorizationAction를 만듭니다.

리턴

AuthorizationAction - 빈 AuthorizationAction입니다.


newAuthorizationException()

AuthorizationException를 만듭니다.

리턴

AuthorizationException - 빈 AuthorizationException입니다.


newBorderStyle()

BorderStyle를 만듭니다.

리턴

BorderStyle - 빈 BorderStyle입니다.


newButtonSet()

ButtonSet를 만듭니다.

리턴

ButtonSet - 빈 ButtonSet입니다.


newCalendarEventActionResponseBuilder()


newCardAction()

CardAction를 만듭니다.

리턴

CardAction - 빈 CardAction입니다.


newCardBuilder()

CardBuilder를 만듭니다.

리턴

CardBuilder - 빈 카드 빌더입니다.


newCardHeader()

CardHeader를 만듭니다.

리턴

CardHeader - 빈 CardHeader입니다.


newCardSection()

CardSection를 만듭니다.

리턴

CardSection - 빈 CardSection입니다.


newCardWithId()

CardWithId를 만듭니다. Google Chat 메시지로 카드를 전송하는 데 사용됩니다. 카드 ID 는 여러 카드를 전송할 때 메시지에 포함된 카드의 고유 식별자입니다.

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

리턴

CardWithId - 빈 CardWithId입니다.


newChatActionResponse()

ChatActionResponse를 만듭니다.

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

리턴

ChatActionResponse - 빈 ChatActionResponse입니다.


newChatResponseBuilder()

ChatResponseBuilder를 만듭니다.

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

리턴

ChatResponseBuilder - 빈 ChatResponseBuilder입니다.


newColumn()

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 - 빈 열입니다.


newColumns()

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(column)
    .addColumn(secondColumn)
    .setWrapStyle(CardService.WrapStyle.WRAP);

리턴

Columns - 빈 열 집합입니다.


newComposeActionResponseBuilder()

ComposeActionResponseBuilder를 만듭니다.

리턴

ComposeActionResponseBuilder - 빈 ComposeActionResponse 빌더입니다.


newDatePicker()

DatePicker를 만듭니다.

리턴

DatePicker - 빈 DatePicker입니다.


newDateTimePicker()

DateTimePicker를 만듭니다.

리턴

DateTimePicker - 빈 DateTimePicker입니다.


newDecoratedText()

DecoratedText를 만듭니다.

리턴

DecoratedText - 빈 DecoratedText입니다.


newDialog()

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입니다.


newDialogAction()

DialogAction를 만듭니다.

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)

리턴

DialogAction - 빈 DialogAction입니다.


newDivider()

Divider를 만듭니다. 다음 샘플은 두 단락으로 구성된 간단한 카드를 빌드합니다. 구분선으로 구분됩니다.

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;
}

리턴

Divider - 구분선.


newDriveItemsSelectedActionResponseBuilder()


newEditorFileScopeActionResponseBuilder()


newFixedFooter()

FixedFooter를 만듭니다.

리턴

FixedFooter - 빈 FixedFooter입니다.


newGrid()

Grid를 만듭니다.

리턴

Grid - 빈 그리드입니다.


newGridItem()

GridItem를 만듭니다.

리턴

GridItem - 빈 GridItem입니다.


newIconImage()

IconImage를 만듭니다.

리턴

IconImage - 빈 아이콘 이미지입니다.


newImage()

Image를 만듭니다.

리턴

Image - 빈 이미지입니다.


newImageButton()

ImageButton를 만듭니다.

리턴

ImageButton - 빈 ImageButton입니다.


newImageComponent()

ImageComponent를 만듭니다.

리턴

ImageComponent - 빈 ImageComponent입니다.


newImageCropStyle()

ImageCropStyle를 만듭니다.

리턴

ImageCropStyle - 빈 Image자르기 스타일입니다.


newKeyValue()

KeyValue를 만듭니다.

리턴

KeyValue - 빈 키 값입니다.


newLinkPreview()

LinkPreview를 만듭니다.

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

리턴

LinkPreview - 빈 LinkPreview입니다.


newNavigation()

Navigation를 만듭니다.

리턴

Navigation - 빈 탐색입니다.


newNotification()

Notification를 만듭니다.

리턴

Notification - 빈 알림입니다.


OpenLink를 만듭니다.

리턴

OpenLink - 빈 OpenLink입니다.


newSelectionInput()

SelectionInput를 만듭니다.

리턴

SelectionInput - 빈 SelectionInput입니다.


newSuggestions()

Suggestions를 만듭니다.

리턴

Suggestions - 비어 있는 추천 검색어입니다.


newSuggestionsResponseBuilder()

SuggestionsResponseBuilder를 만듭니다.

리턴

SuggestionsResponseBuilder - 빈 SuggestionsResponse 빌더입니다.


newSwitch()

Switch를 만듭니다.

리턴

Switch - 빈 스위치입니다.


newTextButton()

TextButton를 만듭니다.

리턴

TextButton - 빈 TextButton입니다.


newTextInput()

TextInput를 만듭니다.

리턴

TextInput - 빈 TextInput입니다.


newTextParagraph()

TextParagraph를 만듭니다.

리턴

TextParagraph - 빈 TextParagraph입니다.


newTimePicker()

TimePicker를 만듭니다.

리턴

TimePicker - 빈 TimePicker입니다.


newUniversalActionResponseBuilder()

UniversalActionResponseBuilder를 만듭니다.

리턴

UniversalActionResponseBuilder - 빈 UniversalActionResponse 빌더입니다.


newUpdateDraftActionResponseBuilder()

UpdateDraftActionResponseBuilder를 만듭니다.

리턴

UpdateDraftActionResponseBuilder - 빈 UpdateDraftActionResponseBuilder입니다.


newUpdateDraftBccRecipientsAction()

UpdateDraftBccRecipientsAction를 만듭니다.

리턴

UpdateDraftBccRecipientsAction - 빈 UpdateDraftBccRecipientsAction입니다.


newUpdateDraftBodyAction()

UpdateDraftBodyAction를 만듭니다.

리턴

UpdateDraftBodyAction - 빈 UpdateDraftBodyAction입니다.


newUpdateDraftCcRecipientsAction()

UpdateDraftCcRecipientsAction를 만듭니다.

리턴

UpdateDraftCcRecipientsAction - 빈 UpdateDraftCcRecipientsAction입니다.


newUpdateDraftSubjectAction()

UpdateDraftSubjectAction를 만듭니다.

리턴

UpdateDraftSubjectAction - 빈 UpdateDraftSubjectAction입니다.


newUpdateDraftToRecipientsAction()

UpdateDraftToRecipientsAction를 만듭니다.

리턴

UpdateDraftToRecipientsAction - 빈 UpdateDraftToRecipientsAction입니다.


newValidation()

Validation를 만듭니다.

Google Chat 앱 및 Google Workspace 부가기능에서 사용할 수 있습니다.

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

리턴

Validation - 빈 유효성 검사입니다.