CardService を使用すると、Google Workspace アドオンなど、さまざまな Google 拡張機能プロダクトで使用される汎用カードを作成できます。
以下に、アドオン カードの例を示します。
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();
プロパティ
プロパティ | タイプ | 説明 |
---|---|---|
BorderType | BorderType | BorderType 列挙型。 |
ChipListLayout | ChipListLayout | ChipListLayout 列挙型。 |
ComposedEmailType | ComposedEmailType | ComposedEmailType 列挙型。 |
ContentType | ContentType | ContentType 列挙型。 |
GridItemLayout | GridItemLayout | GridItemLayout 列挙型。 |
HorizontalAlignment | HorizontalAlignment | HorizontalAlignment 列挙型。 |
Icon | Icon | Icon 列挙型。 |
ImageButtonStyle | ImageButtonStyle | ImageButtonStyle 列挙型。 |
ImageCropType | ImageCropType | ImageCropType 列挙型。 |
ImageStyle | ImageStyle | ImageStyle 列挙型。 |
InputType | InputType | InputType 列挙型。 |
LoadIndicator | LoadIndicator | LoadIndicator 列挙型。 |
OnClose | OnClose | OnClose 列挙型。 |
OpenAs | OpenAs | OpenAs 列挙型。 |
SelectionInputType | SelectionInputType | SelectionInputType 列挙型。 |
TextButtonStyle | TextButtonStyle | TextButtonStyle 列挙型。 |
UpdateDraftBodyType | UpdateDraftBodyType | UpdateDraftBodyType 列挙型。 |
メソッド
詳細なドキュメント
newActionResponseBuilder()
newActionStatus()
新しい ActionStatus
を作成します。
Google Chat アプリでのみ使用できます。Google Workspace アドオンには使用できません。
const actionStatus = CardService.newActionStatus() .setStatusCode(CardService.Status.OK) .setUserFacingMessage('Success');
戻る
ActionStatus
- 空の ActionStatus。
newAttachment()
newAuthorizationAction()
newAuthorizationException()
newBorderStyle()
newCalendarEventActionResponseBuilder()
newCardAction()
newCardBuilder()
newCardHeader()
newCardSection()
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);
戻る
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。
newChip()
newChipList()
newCollapseControl()
新しい CollapseControl
を作成します。
Google Chat アプリでのみ使用できます。Google Workspace アドオンには使用できません。
const collapseControl = CardService.newCollapseControl() .setHorizontalAlign(CardService.HorizontalAlignment.START) .setExpandButton(CardService.newTextButton().setText('Expand')) .setCollapseButton(CardService.newTextButton().setText('Collapse'));
戻る
CollapseControl
- 空の CollapseControl。
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()
newDateTimePicker()
newDecoratedText()
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);
戻る
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
を作成します。次のサンプルでは、2 つの段落が分割線で区切られたシンプルなカードを作成します。
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
- 区切り線。
newDriveItemsSelectedActionResponseBuilder()
newEditorFileScopeActionResponseBuilder()
newImageButton()
newImageComponent()
newImageCropStyle()
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。
newMaterialIcon()
新しい MaterialIcon
を作成します。
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();
戻る
MaterialIcon
- 空の MaterialIcon。
newNotification()
newOverflowMenu()
新しい OverflowMenu
を作成します。
Google Chat アプリでのみ使用できます。Google Workspace アドオンには使用できません。
const overflowMenuItem = CardService.newOverflowMenuItem(); // Finish building the overflow menu item... const overflowMenu = CardService.newOverflowMenu().addMenuItem(overflowMenuItem);
戻る
OverflowMenu
- 空の OverflowMenu。
newOverflowMenuItem()
新しい OverflowMenuItem
を作成します。
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'));
戻る
OverflowMenuItem
- 空の OverflowMenuItem。
newSelectionInput()
newSuggestions()
newSuggestionsResponseBuilder()
newTextButton()
newTextParagraph()
newTimePicker()
newUniversalActionResponseBuilder()
新しい UniversalActionResponseBuilder
を作成します。
戻る
UniversalActionResponseBuilder
- 空の UniversalActionResponse ビルダー。
newUpdateDraftActionResponseBuilder()
新しい UpdateDraftActionResponseBuilder
を作成します。
戻る
UpdateDraftActionResponseBuilder
- 空の UpdateDraftActionResponseBuilder。
newUpdateDraftBccRecipientsAction()
新しい UpdateDraftBccRecipientsAction
を作成します。
戻る
UpdateDraftBccRecipientsAction
- 空の UpdateDraftBccRecipientsAction。
newUpdateDraftBodyAction()
newUpdateDraftCcRecipientsAction()
新しい UpdateDraftCcRecipientsAction
を作成します。
戻る
UpdateDraftCcRecipientsAction
- 空の UpdateDraftCcRecipientsAction。
newUpdateDraftSubjectAction()
newUpdateDraftToRecipientsAction()
新しい UpdateDraftToRecipientsAction
を作成します。
戻る
UpdateDraftToRecipientsAction
- 空の UpdateDraftToRecipientsAction。
newValidation()
新しい Validation
を作成します。
Google Chat アプリと Google Workspace アドオンで利用できます。
const validation = CardService.newValidation().setCharacterLimit(5).setInputType( CardService.InputType.EMAIL);
戻る
Validation
- 空の検証。