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

نموذج لبطاقة "تطبيقات في 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();

أماكن إقامة

الموقعالنوعالوصف
BorderTypeBorderTypeالتعداد BorderType
ComposedEmailTypeComposedEmailTypeالتعداد ComposedEmailType
ContentTypeContentTypeالتعداد ContentType
GridItemLayoutGridItemLayoutالتعداد GridItemLayout
HorizontalAlignmentHorizontalAlignmentالتعداد HorizontalAlignment
IconIconالتعداد Icon
ImageCropTypeImageCropTypeالتعداد ImageCropType
ImageStyleImageStyleالتعداد ImageStyle
LoadIndicatorLoadIndicatorالتعداد LoadIndicator
OnCloseOnCloseالتعداد OnClose
OpenAsOpenAsالتعداد OpenAs
SelectionInputTypeSelectionInputTypeالتعداد SelectionInputType
TextButtonStyleTextButtonStyleالتعداد TextButtonStyle
UpdateDraftBodyTypeUpdateDraftBodyTypeالتعداد UpdateDraftBodyType

الطُرق

الطريقةنوع الإرجاعوصف قصير
newAction()Actionلإنشاء Action جديد
newActionResponseBuilder()ActionResponseBuilderلإنشاء ActionResponseBuilder جديد
newActionStatus()ActionStatusلإنشاء ActionStatus جديد
newAttachment()Attachmentلإنشاء Attachment جديد
newAuthorizationAction()AuthorizationActionلإنشاء AuthorizationAction جديد
newAuthorizationException()AuthorizationExceptionلإنشاء AuthorizationException جديد
newBorderStyle()BorderStyleلإنشاء BorderStyle جديد
newButtonSet()ButtonSetلإنشاء ButtonSet جديد
newCalendarEventActionResponseBuilder()CalendarEventActionResponseBuilderلإنشاء CalendarEventActionResponseBuilder جديد
newCardAction()CardActionلإنشاء CardAction جديد
newCardBuilder()CardBuilderلإنشاء CardBuilder جديد
newCardHeader()CardHeaderلإنشاء CardHeader جديد
newCardSection()CardSectionلإنشاء CardSection جديد
newCardWithId()CardWithIdلإنشاء CardWithId جديد
newChatActionResponse()ChatActionResponseلإنشاء ChatActionResponse جديد
newChatResponseBuilder()ChatResponseBuilderلإنشاء ChatResponseBuilder جديد
newColumn()Columnلإنشاء Column جديد
newColumns()Columnsتنشئ مجموعة جديدة من Columns.
newComposeActionResponseBuilder()ComposeActionResponseBuilderلإنشاء ComposeActionResponseBuilder جديد
newDatePicker()DatePickerلإنشاء DatePicker جديد
newDateTimePicker()DateTimePickerلإنشاء DateTimePicker جديد
newDecoratedText()DecoratedTextلإنشاء DecoratedText جديد
newDialog()Dialogلإنشاء Dialog جديد
newDialogAction()DialogActionلإنشاء DialogAction جديد
newDivider()Dividerلإنشاء Divider جديد
newDriveItemsSelectedActionResponseBuilder()DriveItemsSelectedActionResponseBuilderلإنشاء DriveItemsSelectedActionResponseBuilder جديد
newEditorFileScopeActionResponseBuilder()EditorFileScopeActionResponseBuilderلإنشاء EditorFileScopeActionResponseBuilder جديد
newFixedFooter()FixedFooterلإنشاء FixedFooter جديد
newGrid()Gridلإنشاء Grid جديد
newGridItem()GridItemلإنشاء GridItem جديد
newIconImage()IconImageلإنشاء IconImage جديد
newImage()Imageلإنشاء Image جديد
newImageButton()ImageButtonلإنشاء ImageButton جديد
newImageComponent()ImageComponentلإنشاء ImageComponent جديد
newImageCropStyle()ImageCropStyleلإنشاء ImageCropStyle جديد
newKeyValue()KeyValueلإنشاء KeyValue جديد
newLinkPreview()LinkPreviewلإنشاء LinkPreview جديد
newNavigation()Navigationلإنشاء Navigation جديد
newNotification()Notificationلإنشاء Notification جديد
newOpenLink()OpenLinkلإنشاء OpenLink جديد
newSelectionInput()SelectionInputلإنشاء SelectionInput جديد
newSuggestions()Suggestionsلإنشاء Suggestions جديد
newSuggestionsResponseBuilder()SuggestionsResponseBuilderلإنشاء SuggestionsResponseBuilder جديد
newSwitch()Switchلإنشاء Switch جديد
newTextButton()TextButtonلإنشاء TextButton جديد
newTextInput()TextInputلإنشاء TextInput جديد
newTextParagraph()TextParagraphلإنشاء TextParagraph جديد
newTimePicker()TimePickerلإنشاء TimePicker جديد
newUniversalActionResponseBuilder()UniversalActionResponseBuilderلإنشاء UniversalActionResponseBuilder جديد
newUpdateDraftActionResponseBuilder()UpdateDraftActionResponseBuilderلإنشاء UpdateDraftActionResponseBuilder جديد
newUpdateDraftBccRecipientsAction()UpdateDraftBccRecipientsActionلإنشاء UpdateDraftBccRecipientsAction جديد
newUpdateDraftBodyAction()UpdateDraftBodyActionلإنشاء UpdateDraftBodyAction جديد
newUpdateDraftCcRecipientsAction()UpdateDraftCcRecipientsActionلإنشاء UpdateDraftCcRecipientsAction جديد
newUpdateDraftSubjectAction()UpdateDraftSubjectActionلإنشاء UpdateDraftSubjectAction جديد
newUpdateDraftToRecipientsAction()UpdateDraftToRecipientsActionلإنشاء UpdateDraftToRecipientsAction جديد
newValidation()Validationلإنشاء Validation جديد

الوثائق التفصيلية

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: حقل AuthenticationAction فارغ.


newAuthorizationException()

لإنشاء AuthorizationException جديد

الإرجاع

AuthorizationException — حقل AuthenticationException فارغ.


newBorderStyle()

لإنشاء BorderStyle جديد

الإرجاع

BorderStyle: نمط BorderStyle فارغ


newButtonSet()

لإنشاء ButtonSet جديد

الإرجاع

ButtonSet — ButtonSet فارغ.


newCalendarEventActionResponseBuilder()


newCardAction()

لإنشاء CardAction جديد

الإرجاع

CardAction — CardAction فارغ.


newCardBuilder()

لإنشاء CardBuilder جديد

الإرجاع

CardBuilder — أداة إنشاء بطاقات فارغة


newCardHeader()

لإنشاء CardHeader جديد

الإرجاع

CardHeader — عنوان CardHeader فارغ


newCardSection()

لإنشاء CardSection جديد

الإرجاع

CardSection — قسم Card Section فارغ.


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

الإرجاع

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: منتقي التاريخ فارغ.


newDateTimePicker()

لإنشاء DateTimePicker جديد

الإرجاع

DateTimePicker — أداة اختيار التاريخ والوقت فارغة.


newDecoratedText()

لإنشاء 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 - تذييل ثابت فارغ.


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اقتصاصStyle فارغة


newKeyValue()

لإنشاء KeyValue جديد

الإرجاع

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: معاينة رابط فارغة


newNavigation()

لإنشاء Navigation جديد

الإرجاع

Navigation: شريط تنقّل فارغ


newNotification()

لإنشاء Notification جديد

الإرجاع

Notification: إشعار فارغ


لإنشاء OpenLink جديد

الإرجاع

OpenLink — رابط OpenLink فارغ.


newSelectionInput()

لإنشاء SelectionInput جديد

الإرجاع

SelectionInput — حقل SelectionInput فارغ.


newSuggestions()

لإنشاء Suggestions جديد

الإرجاع

Suggestions — اقتراحات فارغة


newSuggestionsResponseBuilder()

لإنشاء SuggestionsResponseBuilder جديد

الإرجاع

SuggestionsResponseBuilder — أداة إنشاء الردود المقترَحة فارغة.


newSwitch()

لإنشاء Switch جديد

الإرجاع

Switch — مفتاح تبديل فارغ.


newTextButton()

لإنشاء TextButton جديد

الإرجاع

TextButton — زر نصي فارغ


newTextInput()

لإنشاء TextInput جديد

الإرجاع

TextInput — حقل TextInput فارغ.


newTextParagraph()

لإنشاء TextParagraph جديد

الإرجاع

TextParagraph — فقرة نصية فارغة.


newTimePicker()

لإنشاء 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: عملية تحقُّق فارغة