توفّر 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();
أماكن إقامة
الموقع | النوع | الوصف |
---|---|---|
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()
لإنشاء ActionResponseBuilder
جديد.
الإرجاع
ActionResponseBuilder
- أداة إنشاء فارغة لعنصر ActionResponse
newActionStatus()
لإنشاء ActionStatus
جديد
لا تتوفّر هذه الميزة إلا لتطبيقات Google Chat. هذا الخيار غير متوفّر لإضافات Google Workspace.
const actionStatus = CardService.newActionStatus() .setStatusCode(CardService.Status.OK) .setUserFacingMessage('Success');
الإرجاع
ActionStatus
: حالة ActionStatus فارغة
newAttachment()
newAuthorizationAction()
newAuthorizationException()
لإنشاء AuthorizationException
جديد.
الإرجاع
AuthorizationException
— قيمة فارغة في AuthorizationException
newBorderStyle()
newCalendarEventActionResponseBuilder()
لإنشاء CalendarEventActionResponseBuilder
جديد.
الإرجاع
CalendarEventActionResponseBuilder
: CalendarEventActionResponseBuilder
فارغ
newCardAction()
newCardBuilder()
newCardHeader()
newCardSection()
newCardWithId()
لإنشاء CardWithId
جديد يُستخدَم هذا الحقل لإرسال بطاقة في رسالة على 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);
الإرجاع
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()
لإنشاء ChipList
جديد.
لا تتوفّر هذه الميزة إلا لتطبيقات Google Chat. هذا الخيار غير متوفّر لإضافات Google Workspace.
const chip = CardService.newChip(); // Finish building the text chip... const chipList = CardService.newChipList() .setLayout(CardService.ChipListLayout.WRAPPED) .addChip(chip);
الإرجاع
ChipList
: قائمة شرائح فارغة
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
جديد. ينشئ العيّنة التالية بطاقة بسيطة تتضمّن فقرتَين
مفصوفتَين بفاصل.
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()
لإنشاء EditorFileScopeActionResponseBuilder
جديد.
الإرجاع
EditorFileScopeActionResponseBuilder
: EditorFileScopeActionResponseBuilder
فارغ
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
: قائمة كاملة فارغة
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()
لإنشاء SuggestionsResponseBuilder
جديد.
الإرجاع
SuggestionsResponseBuilder
: أداة إنشاء فارغة لـ SuggestionsResponse
newTextButton()
newTextParagraph()
newTimePicker()
newUniversalActionResponseBuilder()
لإنشاء UniversalActionResponseBuilder
جديد.
الإرجاع
UniversalActionResponseBuilder
: أداة إنشاء UniversalActionResponse فارغة.
newUpdateDraftActionResponseBuilder()
لإنشاء UpdateDraftActionResponseBuilder
جديد.
الإرجاع
UpdateDraftActionResponseBuilder
- عنصر UpdateDraftActionResponseBuilder فارغ.
newUpdateDraftBccRecipientsAction()
إنشاء UpdateDraftBccRecipientsAction
جديد
الإرجاع
UpdateDraftBccRecipientsAction
— قيمة UpdateDraftBccRecipientsAction فارغة
newUpdateDraftBodyAction()
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
- عملية تحقق فارغة.