Cards v2

بطاقة

واجهة بطاقة معروضة في رسالة على Google Chat أو إضافة Google Workspace

تتيح البطاقات تصميمًا محددًا وعناصر واجهة مستخدم تفاعلية مثل الأزرار والوسائط التفاعلية المتقدّمة مثل الصور. استخدِم البطاقات لتقديم معلومات مفصّلة وجمع معلومات من المستخدمين وإرشادهم إلى اتّخاذ الخطوة التالية.

تصميم البطاقات ومعاينتها باستخدام "أداة إنشاء البطاقات".

فتح "أداة إنشاء البطاقات"

لمعرفة كيفية إنشاء بطاقات، يمكنك الاطّلاع على المستندات التالية:

مثال: رسالة بطاقة لتطبيق Google Chat

مثال لبطاقة جهة اتصال

لإنشاء نموذج لرسالة البطاقة في Google Chat، استخدِم ملف JSON التالي:

{
  "cardsV2": [
    {
      "cardId": "unique-card-id",
      "card": {
        "header": {
           "title": "Sasha",
           "subtitle": "Software Engineer",
           "imageUrl":
           "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
           "imageType": "CIRCLE",
           "imageAltText": "Avatar for Sasha"
         },
         "sections": [
           {
             "header": "Contact Info",
             "collapsible": true,
             "uncollapsibleWidgetsCount": 1,
             "widgets": [
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "EMAIL"
                   },
                   "text": "sasha@example.com"
                 }
               },
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "PERSON"
                   },
                   "text": "<font color=\"#80e27e\">Online</font>"
                 }
               },
               {
                 "decoratedText": {
                   "startIcon": {
                     "knownIcon": "PHONE"
                   },
                   "text": "+1 (555) 555-1234"
                 }
               },
               {
                 "buttonList": {
                   "buttons": [
                     {
                       "text": "Share",
                       "onClick": {
                        "openLink": {
                           "url": "https://example.com/share"
                         }
                       }
                     },
                     {
                       "text": "Edit",
                       "onClick": {
                         "action": {
                           "function": "goToView",
                           "parameters": [
                             {
                               "key": "viewType",
                               "value": "EDIT"
                             }
                           ]
                         }
                       }
                     }
                   ]
                 }
               }
             ]
           }
         ]
       }
    }
  ]
}
تمثيل JSON
{
  "header": {
    object (CardHeader)
  },
  "sections": [
    {
      object (Section)
    }
  ],
  "sectionDividerStyle": enum (DividerStyle),
  "cardActions": [
    {
      object (CardAction)
    }
  ],
  "name": string,
  "fixedFooter": {
    object (CardFixedFooter)
  },
  "displayStyle": enum (DisplayStyle),
  "peekCardHeader": {
    object (CardHeader)
  }
}
الحقول
header

object (CardHeader)

عنوان البطاقة يحتوي العنوان عادةً على صورة رئيسية وعنوان. تظهر الرؤوس دائمًا في أعلى البطاقة.

sections[]

object (Section)

يحتوي على مجموعة من التطبيقات المصغّرة. يحتوي كل قسم على عنوان اختياري خاص به. يتم فصل الأقسام بصريًا بواسطة مُقسّم خطي. للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة تحديد قسم في البطاقة

sectionDividerStyle

enum (DividerStyle)

نمط الفاصل بين الأقسام

cardActions[]

object (CardAction)

إجراءات البطاقة تتم إضافة الإجراءات إلى قائمة شريط أدوات البطاقة.

متاحة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

على سبيل المثال، ينشئ JSON التالي قائمة إجراءات بطاقة تحتوي على Settings أو Send Feedback الخيارات:

"cardActions": [
  {
    "actionLabel": "Settings",
    "onClick": {
      "action": {
        "functionName": "goToView",
        "parameters": [
          {
            "key": "viewType",
            "value": "SETTING"
         }
        ],
        "loadIndicator": "LoadIndicator.SPINNER"
      }
    }
  },
  {
    "actionLabel": "Send Feedback",
    "onClick": {
      "openLink": {
        "url": "https://example.com/feedback"
      }
    }
  }
]
name

string

اسم البطاقة يُستخدَم كمعرِّف للبطاقة في التنقّل بين البطاقات.

متاحة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

displayStyle

enum (DisplayStyle)

في إضافات Google Workspace، يتم ضبط خصائص عرض peekCardHeader

تتوفّر هذه الميزة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

peekCardHeader

object (CardHeader)

عند عرض المحتوى السياقي، يعمل عنوان البطاقة السريعة كعنصر نائب حتى يتمكن المستخدم من التنقل للأمام بين بطاقات الصفحة الرئيسية والبطاقات السياقية.

متاحة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

CardHeader

عنوان بطاقة للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة أضِف عنوانًا.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "title": string,
  "subtitle": string,
  "imageType": enum (ImageType),
  "imageUrl": string,
  "imageAltText": string
}
الحقول
title

string

مطلوب. عنوان رأس البطاقة العنوان له ارتفاع ثابت: إذا تم تحديد كل من العنوان والعنوان الفرعي، يستغرق كل منهما سطرًا واحدًا. إذا تم تحديد العنوان فقط، سيشغل كلا السطرين.

subtitle

string

العنوان الفرعي لعنوان البطاقة في حالة تحديد هذا الخيار، يظهر في السطر المخصص له أسفل title

imageType

enum (ImageType)

الشكل المستخدم لاقتصاص الصورة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

imageUrl

string

عنوان URL يستخدم HTTPS للصورة في عنوان البطاقة.

imageAltText

string

تمثّل هذه السمة النص البديل لهذه الصورة المستخدَم لتسهيل الاستخدام.

ImageType

الشكل المستخدم لاقتصاص الصورة.

تتوفّر هذه الميزة لتطبيقات Google Chat و"إضافات Google Workspace".

عمليات التعداد
SQUARE القيمة التلقائية. يتم تطبيق قناع مربّع على الصورة. على سبيل المثال، تصبح صورة بحجم 4×3 بحجم 3×3.
CIRCLE يتم تطبيق قناع دائري على الصورة. على سبيل المثال، تصبح الصورة التي تبلغ نسبتها ‎4×3 دائرة قطرها 3.

القسم

يحتوي القسم على مجموعة من الأدوات التي يتم عرضها رأسيًا بالترتيب الذي تم تحديدها.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "header": string,
  "widgets": [
    {
      object (Widget)
    }
  ],
  "collapsible": boolean,
  "uncollapsibleWidgetsCount": integer,
  "collapseControl": {
    object (CollapseControl)
  }
}
الحقول
header

string

النص الذي يظهر في أعلى القسم دعم نص بسيط بتنسيق HTML. لمزيد من المعلومات عن تنسيق النصوص، يُرجى الاطّلاع على مقالتَي: تنسيق النصوص في تطبيقات Google Chat وتنسيق النصوص في إضافات Google Workspace.

widgets[]

object (Widget)

جميع التطبيقات المصغّرة في القسم يجب أن يحتوي على تطبيق مصغّر واحد على الأقل.

collapsible

boolean

يشير إلى ما إذا كان هذا القسم قابلاً للتصغير.

تخفي الأقسام القابلة للتصغير بعض الأدوات أو جميعها، لكن يمكن للمستخدمين توسيع القسم لكشف التطبيقات المصغّرة المخفية من خلال النقر على عرض المزيد يمكن للمستخدمين إخفاء الأدوات مرة أخرى عن طريق النقر عرض معلومات أقلّ

لتحديد الأدوات المخفية، حدِّد uncollapsibleWidgetsCount

uncollapsibleWidgetsCount

integer

عدد التطبيقات المصغّرة غير القابلة للتصغير التي تبقى مرئية حتى عند تصغير قسم.

على سبيل المثال، عندما يحتوي أحد الأقسام على خمس أدوات uncollapsibleWidgetsCount تم ضبطه على 2، يتم عرض أول أداتَين دائمًا ويتم تصغير الأداتَين الأخيرتَين تلقائيًا. تشير رسالة الأشكال البيانية uncollapsibleWidgetsCount لا يتم أخذهما في الاعتبار إلا عندما collapsible CANNOT TRANSLATE true

collapseControl

object (CollapseControl)

اختياريّ. حدِّد زر التوسيع والتصغير في القسم. لن يظهر هذا الزر إلا إذا كان القسم قابلاً للطي. وفي حال عدم ضبط هذا الحقل، يتم استخدام الزرّ التلقائي. متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

أداة

تتألّف كل بطاقة من تطبيقات مصغّرة.

الأداة هي كائن مركب يمكن أن يمثل أحد النصوص والصور والأزرار وأنواع أخرى من الكائنات.

تمثيل JSON
{
  "horizontalAlignment": enum (HorizontalAlignment),

  // Union field data can be only one of the following:
  "textParagraph": {
    object (TextParagraph)
  },
  "image": {
    object (Image)
  },
  "decoratedText": {
    object (DecoratedText)
  },
  "buttonList": {
    object (ButtonList)
  },
  "textInput": {
    object (TextInput)
  },
  "selectionInput": {
    object (SelectionInput)
  },
  "dateTimePicker": {
    object (DateTimePicker)
  },
  "divider": {
    object (Divider)
  },
  "grid": {
    object (Grid)
  },
  "columns": {
    object (Columns)
  },
  "chipList": {
    object (ChipList)
  }
  // End of list of possible types for union field data.
}
الحقول
horizontalAlignment

enum (HorizontalAlignment)

لتحديد ما إذا كانت الأدوات تتم محاذاة إلى اليسار أو اليمين أو منتصف العمود.

حقل الاتحاد data يمكن أن يحتوي التطبيق المصغّر على عنصر واحد فقط من العناصر التالية. يمكنك استخدام حقول متعدّدة في التطبيق المصغّر لعرض المزيد من العناصر. data يمكن أن يكون أحد القيم التالية فقط:
textParagraph

object (TextParagraph)

عرض فقرة نصية دعم نص بسيط بتنسيق HTML. لمزيد من المعلومات عن تنسيق النص، يُرجى الاطّلاع على مقالتَي: تنسيق النص في تطبيقات Google Chat و تنسيق النص في إضافات Google Workspace.

على سبيل المثال، ينشئ ملف JSON التالي نصًا بخط غامق:

"textParagraph": {
  "text": "  <b>bold text</b>"
}
image

object (Image)

لعرض صورة

على سبيل المثال، ينشئ ملف JSON التالي صورة بنص بديل:

"image": {
  "imageUrl":
  "https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png",
  "altText": "Chat app avatar"
}
decoratedText

object (DecoratedText)

تعرِض هذه الدالة عنصر نص مزخرف.

على سبيل المثال، ينشئ ملف JSON التالي أداة نصية مزخرفة تعرض عنوان البريد الإلكتروني:

"decoratedText": {
  "icon": {
    "knownIcon": "EMAIL"
  },
  "topLabel": "Email Address",
  "text": "sasha@example.com",
  "bottomLabel": "This is a new Email address!",
  "switchControl": {
    "name": "has_send_welcome_email_to_sasha",
    "selected": false,
    "controlType": "CHECKBOX"
  }
}
buttonList

object (ButtonList)

قائمة بالأزرار

على سبيل المثال، ينشئ JSON التالي زرَّين. الأول زر نص أزرق والثاني زر صورة يفتح رابطًا:

"buttonList": {
  "buttons": [
    {
      "text": "Edit",
      "color": {
        "red": 0,
        "green": 0,
        "blue": 1,
      },
      "disabled": true,
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}
textInput

object (TextInput)

تعرِض هذه السمة مربّع نص يمكن للمستخدمين الكتابة فيه.

على سبيل المثال، ينشئ ملف JSON التالي إدخال نص لعنوان بريد إلكتروني:

"textInput": {
  "name": "mailing_address",
  "label": "Mailing Address"
}

كمثال آخر، ينشئ رمز JSON التالي إدخالاً نصيًا للغة برمجة يحتوي على اقتراحات ثابتة:

"textInput": {
  "name": "preferred_programing_language",
  "label": "Preferred Language",
  "initialSuggestions": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
selectionInput

object (SelectionInput)

عرض عنصر تحكّم في التحديد يتيح للمستخدمين اختيار العناصر يمكن أن تكون عناصر التحكم في التحديد مربعات اختيار أو أزرار اختيار أو مفاتيح تبديل أو قوائم منسدلة.

على سبيل المثال، ينشئ ملف JSON التالي قائمة منسدلة تتيح للمستخدمين اختيار مقاس:

"selectionInput": {
  "name": "size",
  "label": "Size"
  "type": "DROPDOWN",
  "items": [
    {
      "text": "S",
      "value": "small",
      "selected": false
    },
    {
      "text": "M",
      "value": "medium",
      "selected": true
    },
    {
      "text": "L",
      "value": "large",
      "selected": false
    },
    {
      "text": "XL",
      "value": "extra_large",
      "selected": false
    }
  ]
}
dateTimePicker

object (DateTimePicker)

تعرِض أداةً تتيح للمستخدمين إدخال تاريخ أو وقت أو تاريخ ووقت.

على سبيل المثال، ينشئ ملف JSON التالي أداة اختيار التاريخ والوقت لجدولة موعد:

"dateTimePicker": {
  "name": "appointment_time",
  "label": "Book your appointment at:",
  "type": "DATE_AND_TIME",
  "valueMsEpoch": "796435200000"
}
divider

object (Divider)

عرض مُقسّم خط أفقي بين الأدوات.

على سبيل المثال، ينشئ JSON التالي فاصلاً:

"divider": {
}
grid

object (Grid)

تعرض شبكة بها مجموعة من العناصر.

تتيح الشبكة استخدام أي عدد من الأعمدة والعناصر. يتم تحديد عدد الصفوف من خلال الحدود العليا لعدد السلع مقسومًا على عدد الأعمدة. الشبكة التي تحتوي على 10 عناصر وعمودين تحتوي على 5 صفوف. الشبكة التي تتكون من 11 عنصرًا وعمودين بها 6 صفوف.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

على سبيل المثال، ينشئ ملف JSON التالي شبكة من عمودَين يتضمّنان عنصرًا واحدًا:

"grid": {
  "title": "A fine collection of items",
  "columnCount": 2,
  "borderStyle": {
    "type": "STROKE",
    "cornerRadius": 4
  },
  "items": [
    {
      "image": {
        "imageUri": "https://www.example.com/image.png",
        "cropStyle": {
          "type": "SQUARE"
        },
        "borderStyle": {
          "type": "STROKE"
        }
      },
      "title": "An item",
      "textAlignment": "CENTER"
    }
  ],
  "onClick": {
    "openLink": {
      "url": "https://www.example.com"
    }
  }
}
columns

object (Columns)

تعرض عمودين كحد أقصى.

لتضمين أكثر من عمودين، أو لاستخدام صفوف، استخدم Grid التطبيق المصغّر.

على سبيل المثال، ينشئ ملف JSON التالي عمودَين يحتوي كل منهما على فقرات نصية:

"columns": {
  "columnItems": [
    {
      "horizontalSizeStyle": "FILL_AVAILABLE_SPACE",
      "horizontalAlignment": "CENTER",
      "verticalAlignment": "CENTER",
      "widgets": [
        {
          "textParagraph": {
            "text": "First column text paragraph"
          }
        }
      ]
    },
    {
      "horizontalSizeStyle": "FILL_AVAILABLE_SPACE",
      "horizontalAlignment": "CENTER",
      "verticalAlignment": "CENTER",
      "widgets": [
        {
          "textParagraph": {
            "text": "Second column text paragraph"
          }
        }
      ]
    }
  ]
}
chipList

object (ChipList)

قائمة بالشرائح

على سبيل المثال، ينشئ JSON التالي شريحتَين. الشريحة الأولى هي شريحة نص والثانية هي شريحة أيقونة تفتح رابطًا:

"chipList": {
  "chips": [
    {
      "text": "Edit",
      "disabled": true,
    },
    {
      "icon": {
        "knownIcon": "INVITE",
        "altText": "check calendar"
      },
      "onClick": {
        "openLink": {
          "url": "https://example.com/calendar"
        }
      }
    }
  ]
}

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

TextParagraph

فقرة نصية تدعم التنسيق. للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة إضافة فقرة تتضمّن نصًا منسَّقًا لمزيد من المعلومات عن تنسيق النص، يمكنك الاطّلاع على تنسيق النص في تطبيقات Google Chat أو تنسيق النص في إضافات Google Workspace

تتوفّر هذه الميزة لتطبيقات Google Chat و"إضافات Google Workspace".

تمثيل JSON
{
  "text": string,
  "maxLines": integer
}
الحقول
text

string

النص الذي يظهر في التطبيق المصغّر.

maxLines

integer

الحد الأقصى لعدد أسطر النص المعروضة في الأداة. إذا تجاوز النص الحد الأقصى المحدد من السطور، فسيتم إخفاء المحتوى الزائد خلف عرض المزيد . إذا كان النص مساويًا أو أقصر من الحد الأقصى المحدد من الأسطر، عرض المزيد الزر.

القيمة التلقائية هي 0، وفي هذه الحالة يتم عرض كل السياق. ويتم تجاهل القيم السلبية. متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

صورة

صورة يتم تحديدها من خلال عنوان URL ويمكن أن تتضمّن إجراءً بعنوان onClick . على سبيل المثال، يُرجى الاطّلاع على مقالة إضافة صورة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "imageUrl": string,
  "onClick": {
    object (OnClick)
  },
  "altText": string
}
الحقول
imageUrl

string

عنوان URL لبروتوكول HTTPS الذي يستضيف الصورة

على سبيل المثال:

https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png
onClick

object (OnClick)

عندما ينقر المستخدم على الصورة، تؤدي النقرة إلى تنفيذ هذا الإجراء.

altText

string

تمثّل هذه السمة النص البديل لهذه الصورة المستخدَم لتسهيل الاستخدام.

OnClick

يمثّل كيفية الردّ عندما ينقر المستخدِمون على عنصر تفاعلي في البطاقة، مثل زر.

تتوفّر هذه الميزة لتطبيقات Google Chat و"إضافات Google Workspace".

تمثيل JSON
{

  // Union field data can be only one of the following:
  "action": {
    object (Action)
  },
  "openLink": {
    object (OpenLink)
  },
  "openDynamicLinkAction": {
    object (Action)
  },
  "card": {
    object (Card)
  },
  "overflowMenu": {
    object (OverflowMenu)
  }
  // End of list of possible types for union field data.
}
الحقول

حقل الاتحاد data

data واحد فقط مما يلي:

action

object (Action)

إذا تم تحديد قيمة، فسيتم تنفيذ إجراء من خلال هذا onClick

card

object (Card)

يتم دفع بطاقة جديدة إلى حزمة البطاقات بعد النقر عليها إذا تم تحديدها.

تتوفّر هذه الميزة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

overflowMenu

object (OverflowMenu)

إذا تم تحديد قيمة السمة، سيتم onClick لفتح قائمة كاملة. متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

الإجراء

إجراء يصف السلوك عند إرسال النموذج. على سبيل المثال، يمكنك استدعاء نص برمجي لبرمجة التطبيقات لمعالجة النموذج. وفي حال بدء الإجراء، يتم إرسال قيم النموذج إلى الخادم.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "function": string,
  "parameters": [
    {
      object (ActionParameter)
    }
  ],
  "loadIndicator": enum (LoadIndicator),
  "persistValues": boolean,
  "interaction": enum (Interaction),
  "requiredWidgets": [
    string
  ],
  "allWidgetsAreRequired": boolean
}
الحقول
function

string

دالة مخصصة يتم استدعاؤها عند النقر على العنصر المتضمّن أو تنشيطه بأي شكل آخر.

للاطّلاع على أمثلة على الاستخدام، يمكنك الاطّلاع على قراءة بيانات النموذج.

parameters[]

object (ActionParameter)

قائمة مَعلمات الإجراء

loadIndicator

enum (LoadIndicator)

تحدِّد هذه السياسة مؤشر التحميل الذي يعرضه الإجراء أثناء تطبيق عبارة الحث على اتّخاذ إجراء.

persistValues

boolean

يشير إلى ما إذا كانت قيم النموذج تظلّ بعد الإجراء. القيمة التلقائية هي false.

في حال حذف true، تظل قيم النموذج بعد تشغيل الإجراء. للسماح للمستخدم بإجراء تغييرات أثناء معالجة الإجراء، اضبط LoadIndicator إلى NONE بالنسبة رسائل البطاقة في تطبيقات Chat، عليك أيضًا ضبط ResponseType إلى UPDATE_MESSAGE ونستخدم نفس cardId من البطاقة التي تحتوي على الإجراء.

إذا كانت القيمة false، يتم محو قيم النموذج عند بدء الإجراء. لمنع المستخدم من إجراء تغييرات أثناء معالجة الإجراء، يمكنك ضبط LoadIndicator إلى SPINNER

interaction

enum (Interaction)

اختياريّ. مطلوب عند فتح مربع حوار.

الإجراءات التي يجب اتّخاذها استجابةً للتفاعل مع مستخدم، مثل النقر على زر في رسالة بطاقة

في حال عدم تحديد الإجراء، يستجيب التطبيق عن طريق تنفيذ action كالمعتاد، مثل فتح رابط أو تشغيل وظيفة.

من خلال تحديد interaction، يمكن للتطبيق الردّ بطرق تفاعلية خاصة. على سبيل المثال، من خلال ضبط قيمة interaction على OPEN_DIALOG، يمكن للتطبيق فتح مربّع حوار. ولا يظهر مؤشر تحميل عند تحديده. إذا تم تحديدها لإحدى الإضافات، سيتم إزالة البطاقة بالكامل ولن يتم عرض أي شيء في البرنامج.

تتوفّر هذه الميزة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

requiredWidgets[]

string

اختيارية. املأ هذه القائمة بأسماء التطبيقات المصغّرة التي يحتاج إليها هذا الإجراء لإرسال بيانات صالحة.

إذا لم تكن التطبيقات المصغّرة المدرَجة هنا تحتوي على قيمة عند استدعاء هذا الإجراء، سيتم إلغاء عملية إرسال النموذج.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

allWidgetsAreRequired

boolean

اختياري. إذا كان هذا صحيحًا، تُعتبر جميع التطبيقات المصغّرة مطلوبة لهذا الإجراء.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

ActionParameter

قائمة بمَعلمات السلاسل التي يجب تقديمها عند استدعاء طريقة الإجراء على سبيل المثال، يمكنك التفكير في ثلاثة أزرار للتأجيل الآن أو الإزالة مؤقتًا لمدة يوم واحد أو التأجيل من الأسبوع المقبل. يمكنك استخدام action method = snooze()، مع تمرير نوع التأجيل ووقته في قائمة معلَمات السلسلة.

لمزيد من المعلومات، يُرجى الاطّلاع على CommonEventObject.

تتوفّر هذه الميزة لتطبيقات Google Chat و"إضافات Google Workspace".

تمثيل JSON
{
  "key": string,
  "value": string
}
الحقول
key

string

اسم المَعلمة لنص الإجراء

value

string

قيمة المَعلمة

LoadIndicator

تحدِّد هذه السياسة مؤشر التحميل الذي يعرضه الإجراء أثناء تطبيق عبارة الحث على اتّخاذ إجراء.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
SPINNER عرض مؤشر سريان العمل للإشارة إلى أنّه جارٍ تحميل المحتوى
NONE لا يتم عرض أي محتوى.

التفاعل

اختياريّ. مطلوب عند فتح مربّع حوار.

الإجراءات التي يجب اتّخاذها استجابةً لتفاعل مع مستخدِم، مثل نقر المستخدم على زر في رسالة بطاقة

وفي حال عدم تحديد ذلك، يستجيب التطبيق من خلال تنفيذ action —مثل فتح رابط أو تشغيل دالة — كالعادة.

من خلال تحديد interaction، يمكن للتطبيق الردّ بطرق تفاعلية خاصة. على سبيل المثال، من خلال ضبط قيمة interaction على OPEN_DIALOG، يمكن للتطبيق فتح مربّع حوار.

ولا يظهر مؤشر تحميل عند تحديده. إذا تم تحديدها لإضافة، تتم إزالة البطاقة بالكامل ولا يظهر أي شيء في البرنامج.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

عمليات التعداد
INTERACTION_UNSPECIFIED القيمة التلقائية. تشير رسالة الأشكال البيانية action وتنفيذه كالمعتاد.
OPEN_DIALOG

يفتح dialog، وهي واجهة تتضمّن بطاقة في النافذة تستخدمها تطبيقات Chat للتفاعل مع المستخدمين.

لا يتوفّر هذا الخيار إلا في تطبيقات Chat استجابةً للنقر على الأزرار في رسائل البطاقات. إذا تم تحديدها لإضافة، تتم إزالة البطاقة بالكامل ولا يظهر أي شيء في البرنامج.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

OpenAs

عندما يفتح إجراء OnClick رابطًا، يمكن للعميل فتحه إما كنافذة بالحجم الكامل (إذا كان هذا هو الإطار المستخدَم من قِبل العميل) أو كعنصر تراكبي (مثل نافذة منبثقة). تعتمد عملية التنفيذ على إمكانات النظام الأساسي للعميل، وقد يتم تجاهل القيمة المحدّدة إذا كان العميل لا يتيح استخدامها. FULL_SIZE متاح لجميع العملاء.

تتوفّر هذه الميزة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

عمليات التعداد
FULL_SIZE يتم فتح الرابط كنافذة بالحجم الكامل (إذا كان هذا هو الإطار الذي يستخدمه العميل).
OVERLAY يتم فتح الرابط على شكل عنصر متراكب، مثل نافذة منبثقة.

OnClose

ما يفعله العميل عند فتح رابط بواسطة OnClick الإجراء مغلق.

يعتمد التنفيذ على إمكانات النظام الأساسي للعميل. على سبيل المثال، قد يفتح متصفح ويب رابطًا في نافذة منبثقة به رابط OnClose .

إذا كان كلاهما OnOpen أو OnClose ولا يمكن للنظام الأساسي العميل إتاحة كلتا القيمتين، OnClose لها الأسبقية.

تتوفّر هذه الميزة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

عمليات التعداد
NOTHING القيمة التلقائية. لا تتم إعادة تحميل البطاقة ولا يحدث أي شيء.
RELOAD

تُعيد تحميل البطاقة بعد إغلاق نافذة الطفل.

إذا تم استخدامه مع OpenAs.OVERLAY، تعمل النافذة الفرعية كمربّع حوار مشروط ويتم حظر البطاقة الرئيسية إلى أن يتم إغلاق النافذة الفرعية.

OverflowMenu

تطبيق مصغّر يعرض قائمة منبثقة تتضمّن إجراءً واحدًا أو أكثر يمكن للمستخدمين تنفيذه على سبيل المثال، عرض الإجراءات غير الأساسية في إحدى البطاقات. يمكنك استخدام هذا التطبيق المصغّر في حال عدم ملاءمة الإجراءات للمساحة المتاحة. لاستخدامه، حدِّد هذا التطبيق المصغّر في OnClick عناصر واجهة المستخدم التي تتوافق معه. على سبيل المثال، في إحدى Button

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{
  "items": [
    {
      object (OverflowMenuItem)
    }
  ]
}
الحقول
items[]

object (OverflowMenuItem)

مطلوب. قائمة خيارات القائمة

OverflowMenuItem

خيار يمكن للمستخدمين استدعاءه في قائمة كاملة.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{
  "startIcon": {
    object (Icon)
  },
  "text": string,
  "onClick": {
    object (OnClick)
  },
  "disabled": boolean
}
الحقول
startIcon

object (Icon)

الرمز المعروض أمام النص

text

string

مطلوب. النص الذي يعرّف المستخدمين على السلعة أو يصفها

onClick

object (OnClick)

مطلوب. تم تنفيذ الإجراء عند تحديد أحد خيارات القائمة. هذا النمط OnClick لا يمكن أن يحتوي على OverflowMenu، أي قيمة محدّدة OverflowMenu ويتم تجاهل العنصر وتعطيل عنصر القائمة.

disabled

boolean

ما إذا كان خيار القائمة غير مفعَّل القيمة التلقائية هي false.

الرمز

رمز معروض في تطبيق مصغّر على بطاقة للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة إضافة رمز

يدعم مدمجة أو مخصّص الأيقونات.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "altText": string,
  "imageType": enum (ImageType),

  // Union field icons can be only one of the following:
  "knownIcon": string,
  "iconUrl": string,
  "materialIcon": {
    object (MaterialIcon)
  }
  // End of list of possible types for union field icons.
}
الحقول
altText

string

اختياريّ. تمثّل هذه السمة وصف الرمز المستخدَم لإمكانية الوصول. في حال عدم تحديد القيمة، يتم استخدام القيمة التلقائية Button على السطح. كأفضل ممارسة، يجب عليك إعداد وصف مفيد لما يعرضه الأيقونة، وما يفعله إن أمكن. على سبيل المثال: A user's account portrait، أو Opens a new browser tab and navigates to the Google Chat developer documentation at https://developers.google.com/workspace/chat

إذا تم تعيين الأيقونة في Button، altText يظهر كنص مساعد عندما يمرِّر المستخدم مؤشر الماوس فوق الزر. ومع ذلك، إذا ضبط الزر أيضًا text، الرمز altText تجاهله.

imageType

enum (ImageType)

نمط الاقتصاص المطبّق على الصورة في بعض الحالات، يؤدي تطبيق عملية اقتصاص CIRCLE إلى رسم الصورة بحجم أكبر من الرمز المضمّن.

حقل الاتحاد icons الرمز المعروض في التطبيق المصغّر على البطاقة icons واحد فقط مما يلي:
knownIcon

string

عرض أحد الرموز المضمّنة التي يوفّرها Google Workspace

على سبيل المثال، لعرض رمز طائرة، حدد AIRPLANE بالنسبة للحافلة، حدد BUS

للحصول على قائمة كاملة بالرموز المتوافقة، راجِع الرموز المضمّنة.

iconUrl

string

عرض رمز مخصّص مستضاف على عنوان URL يستخدم HTTPS

على سبيل المثال:

"iconUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png"

تشمل أنواع الملفات المتوافقة .png و .jpg.

materialIcon

object (MaterialIcon)

عرض أحد رموز المواد في Google:

على سبيل المثال، لعرض رمز مربع الاختيار، استخدم

"materialIcon": {
  "name": "check_box"
}

تتوفّر هذه الميزة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

MaterialIcon

حاسمة رمز Google Material الذي يضم أكثر من 2500 خيار

على سبيل المثال، لعرض رمز مربّع اختيار بدرجة ووزن مخصّصَين، اكتب ما يلي:

{
  "name": "check_box",
  "fill": true,
  "weight": 300,
  "grade": -25
}

تتوفّر هذه الميزة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{
  "name": string,
  "fill": boolean,
  "weight": integer,
  "grade": integer
}
الحقول
name

string

اسم الرمز المحدّد في رمز Google Material، على سبيل المثال، check_box. يتم تجاهل أي أسماء غير صالحة واستبدالها بسلسلة فارغة، ما يؤدّي إلى تعذُّر عرض الرمز.

fill

boolean

ما إذا كان سيتم عرض الرمز كممتلئ. القيمة التلقائية هي "خطأ".

لمعاينة الإعدادات المختلفة للرموز، انتقِل إلى رموز خطوط Google وضبط الإعدادات ضمن تخصيص

weight

integer

كثافة خط الرمز اختَر من بين {100, 200, 300, 400, 500, 600, 700}. في حال عدم توفّر هذه المعلومات، تكون القيمة التلقائية 400. إذا تم تحديد أي قيمة أخرى، يتم استخدام القيمة التلقائية.

لمعاينة الإعدادات المختلفة للرموز، انتقِل إلى رموز خطوط Google وضبط الإعدادات ضمن تخصيص

grade

integer

يؤثر الوزن والدرجة على سُمك الرمز. وتعد التعديلات التي يتم إجراؤها على الدرجة أكثر دقة من التعديلات التي يتم إجراؤها على الوزن، كما أن لها تأثير بسيط في حجم الرمز. اختَر من بين {-25, 0, 200}. إذا لم تكن متوفّرة، تكون القيمة التلقائية هي 0. إذا تم تحديد أي قيمة أخرى، يتم استخدام القيمة التلقائية.

لمعاينة الإعدادات المختلفة للرموز، انتقِل إلى رموز خطوط Google وضبط الإعدادات ضمن تخصيص

DecoratedText

تطبيق مصغّر يعرض نصًا مع زخارف اختيارية، مثل تصنيف أعلى النص أو أسفله أو رمز أمام النص أو تطبيق مصغّر للاختيار أو زر بعد النص للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة عرض نص مع نص مزخرف:

تتوفّر هذه الميزة لتطبيقات Google Chat و"إضافات Google Workspace".

تمثيل JSON
{
  "icon": {
    object (Icon)
  },
  "startIcon": {
    object (Icon)
  },
  "topLabel": string,
  "text": string,
  "wrapText": boolean,
  "bottomLabel": string,
  "onClick": {
    object (OnClick)
  },

  // Union field control can be only one of the following:
  "button": {
    object (Button)
  },
  "switchControl": {
    object (SwitchControl)
  },
  "endIcon": {
    object (Icon)
  }
  // End of list of possible types for union field control.
}
الحقول
icon
(deprecated)

object (Icon)

تمّ إيقافه نهائيًا وحلّ محلّه startIcon.

startIcon

object (Icon)

الرمز المعروض أمام النص

topLabel

string

النص الذي يظهر أعلاه text يتم اقتطاع النص دائمًا.

text

string

مطلوب. النص الأساسي

إتاحة التنسيق البسيط. لمزيد من المعلومات عن تنسيق النص، يُرجى الاطّلاع على مقالتَي: تنسيق النص في تطبيقات Google Chat و تنسيق النص في إضافات Google Workspace.

wrapText

boolean

إعداد التفاف النص. في حال حذف true، يلتف النص ويظهر على عدة أسطر. وإلا، سيتم اقتطاع النص.

ينطبق على text، ليس topLabel أو bottomLabel

bottomLabel

string

النص الذي يظهر أدناه text التفاف النص دائمًا

onClick

object (OnClick)

يتم تشغيل هذا الإجراء عندما ينقر المستخدِمون على topLabel أو bottomLabel

حقل الاتحاد control زر أو مفتاح تبديل أو مربّع اختيار أو صورة تظهر على يسار النص في أداة decoratedText control واحد فقط مما يلي:
button

object (Button)

زر يمكن للمستخدم النقر عليه لتشغيل إجراء.

switchControl

object (SwitchControl)

أداة للتبديل يمكن للمستخدم النقر عليها لتغيير حالته وتنفيذ إجراء.

endIcon

object (Icon)

رمز يتم عرضه بعد النص.

تتيح استخدام رموزاً مضمّنة و مخصّصة .

زرّ

نص أو رمز أو نص وزر يمكن للمستخدمين النقر عليه. للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة إضافة زر

لجعل صورة زرًا قابلاً للنقر، حدد Image (ليس ImageComponent) وضبط onClick اتخاذ القرار.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "text": string,
  "icon": {
    object (Icon)
  },
  "color": {
    object (Color)
  },
  "onClick": {
    object (OnClick)
  },
  "disabled": boolean,
  "altText": string,
  "type": enum (Type)
}
الحقول
text

string

النص المعروض داخل الزر.

icon

object (Icon)

رمز معروض داخل الزرّ. إذا كان كلاهما icon أو text البيانات، ثم يظهر الرمز قبل النص.

color

object (Color)

اختياريّ. لون الزر إذا تم تعيينها، فإن الزر type تم ضبطه على FILLED ولون text أو icon أن يتم تعيين الحقول على لون متباين لسهولة القراءة. على سبيل المثال، إذا تم تعيين لون الزر على اللون الأزرق، فسيتم تعيين أي نص أو رموز في الزر على اللون الأبيض.

لضبط لون الزر، حدّد قيمة red, green و blue الحقول. يجب أن تكون القيمة رقمًا عائمًا بين 0 و1 استنادًا إلى قيمة اللون أحمر أخضر أزرق، حيث يشير 0 (0/255) يمثل غياب اللون 1 (255/255) يمثل الحد الأقصى لكثافة اللون.

على سبيل المثال، يؤدي ما يلي إلى ضبط اللون على اللون الأحمر عند أقصى كثافة له:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
}

تشير رسالة الأشكال البيانية alpha لا يتوفّر الحقل للون الزر. وفي حال تحديد هذا الحقل، سيتم تجاهل هذا الحقل.

onClick

object (OnClick)

مطلوب. الإجراء الذي سيتم تنفيذه عندما ينقر المستخدم على الزر، مثل فتح رابط تشعبي أو تشغيل دالة مخصّصة.

disabled

boolean

في حال حذف true، يظهر الزر في حالة غير نشط ولا يستجيب لإجراءات المستخدم.

altText

string

تمثّل هذه السمة النص البديل المستخدم في تسهيل الاستخدام.

قم بتعيين نص وصفي يتيح للمستخدمين معرفة وظيفة الزر. على سبيل المثال، إذا كان أحد الأزرار يفتح رابطًا تشعّبيًا، فيمكنك كتابة: "يفتح علامة تبويب متصفح جديدة وينتقل إلى وثائق مطور Google Chat على https://developers.google.com/workspace/chat&quot;.

type

enum (Type)

اختياريّ. نوع الزر في حال ترك السياسة بدون ضبط، يتم ضبط نوع الزر تلقائيًا على OUTLINED إذا كانت color فسيتم فرض نوع الزر FILLED ويتم تجاهل أي قيمة تم تحديدها لهذا الحقل.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

اللون

يمثل لونًا في مساحة ألوان RGBA. تم تصميم هذا التمثيل لتسهيل التحويل من تمثيلات الألوان وإليها بلغات مختلفة بدلاً من جعله أكثر كثافة. على سبيل المثال، يمكن تقديم حقول هذا التمثيل بشكل بسيط إلى الدالة الإنشائية java.awt.Color في Java؛ يمكن أيضًا تقديمه بشكل تافه إلى ألوان UIColor +colorWithRed:green:blue:alpha في iOS؛ ومن خلال القليل من العمل، يمكن تنسيقها بسهولة في CSS rgba() سلسلة في JavaScript.

لا تحتوي هذه الصفحة المرجعية على معلومات عن مساحة اللون المطلقة التي يجب استخدامها لتفسير قيمة النموذج اللوني أحمر أخضر أزرق، على سبيل المثال، sRGB وAdobe RGB وDCI-P3 وBT.2020. وبشكل تلقائي، يجب أن تفترض التطبيقات مساحة اللون sRGB.

عندما يلزم تحديد مساواة الألوان، فإن عمليات التنفيذ، ما لم يوثق خلاف ذلك، تعامل لونين على قدم المساواة إذا كانت جميع قيم الأحمر والأخضر والأزرق وألفا تختلف على الأكثر 1e-5

مثال (Java):

 import com.google.type.Color;

 // ...
 public static java.awt.Color fromProto(Color protocolor) {
   float alpha = protocolor.hasAlpha()
       ? protocolor.getAlpha().getValue()
       : 1.0;

   return new java.awt.Color(
       protocolor.getRed(),
       protocolor.getGreen(),
       protocolor.getBlue(),
       alpha);
 }

 public static Color toProto(java.awt.Color color) {
   float red = (float) color.getRed();
   float green = (float) color.getGreen();
   float blue = (float) color.getBlue();
   float denominator = 255.0;
   Color.Builder resultBuilder =
       Color
           .newBuilder()
           .setRed(red / denominator)
           .setGreen(green / denominator)
           .setBlue(blue / denominator);
   int alpha = color.getAlpha();
   if (alpha != 255) {
     result.setAlpha(
         FloatValue
             .newBuilder()
             .setValue(((float) alpha) / denominator)
             .build());
   }
   return resultBuilder.build();
 }
 // ...

مثال (iOS / Obj-C):

 // ...
 static UIColor* fromProto(Color* protocolor) {
    float red = [protocolor red];
    float green = [protocolor green];
    float blue = [protocolor blue];
    FloatValue* alpha_wrapper = [protocolor alpha];
    float alpha = 1.0;
    if (alpha_wrapper != nil) {
      alpha = [alpha_wrapper value];
    }
    return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
 }

 static Color* toProto(UIColor* color) {
     CGFloat red, green, blue, alpha;
     if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
       return nil;
     }
     Color* result = [[Color alloc] init];
     [result setRed:red];
     [result setGreen:green];
     [result setBlue:blue];
     if (alpha <= 0.9999) {
       [result setAlpha:floatWrapperWithValue(alpha)];
     }
     [result autorelease];
     return result;
}
// ...

مثال (JavaScript):

// ...

var protoToCssColor = function(rgb_color) {
   var redFrac = rgb_color.red || 0.0;
   var greenFrac = rgb_color.green || 0.0;
   var blueFrac = rgb_color.blue || 0.0;
   var red = Math.floor(redFrac * 255);
   var green = Math.floor(greenFrac * 255);
   var blue = Math.floor(blueFrac * 255);

   if (!('alpha' in rgb_color)) {
      return rgbToCssColor(red, green, blue);
   }

   var alphaFrac = rgb_color.alpha.value || 0.0;
   var rgbParams = [red, green, blue].join(',');
   return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};

var rgbToCssColor = function(red, green, blue) {
  var rgbNumber = new Number((red << 16) | (green << 8) | blue);
  var hexString = rgbNumber.toString(16);
  var missingZeros = 6 - hexString.length;
  var resultBuilder = ['#'];
  for (var i = 0; i < missingZeros; i++) {
     resultBuilder.push('0');
  }
  resultBuilder.push(hexString);
  return resultBuilder.join('');
};

// ...
تمثيل JSON
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
الحقول
red

number

مقدار اللون الأحمر في اللون كقيمة في الفاصل [0, 1].

green

number

مقدار اللون الأخضر في اللون كقيمة في النطاق [0, 1].

blue

number

مقدار اللون الأزرق في اللون كقيمة في الفاصل [0, 1].

alpha

number

الجزء من هذا اللون الذي يجب تطبيقه على البكسل. أي أن لون البكسل النهائي يتم تحديده من خلال المعادلة:

pixel color = alpha * (this color) + (1.0 - alpha) * (background color)

وهذا يعني أن القيمة 1.0 تتجاوب مع لون خالص، في حين تتجاوب القيمة 0.0 مع لون شفاف تمامًا. ويستخدم هذا الإجراء رسالة غلاف بدلاً من عدد صحيح عادي حتى يصبح من الممكن التمييز بين القيمة التلقائية والقيمة التي لم يتم ضبطها. في حال حذفه، يتم عرض عنصر اللون هذا كلون صلب (كما لو تم منح قيمة ألفا قيمة 1.0 صراحةً).

النوع

اختياريّ. تشير رسالة الأشكال البيانية النوع الزر. في حال حذف color البيانات، type مجبر على FILLED

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

عمليات التعداد
TYPE_UNSPECIFIED لا تستخدِم هذه الميزة. غير محدد
OUTLINED الأزرار المخططة هي أزرار متوسطة التوكيد. وعادةً ما تحتوي على إجراءات مهمة، ولكنها ليست الإجراء الأساسي في تطبيق Chat أو إحدى الإضافات.
FILLED يحتوي الزرّ المعبأ على حاوية بلون خالص. ويُعدّ هذا اللون الأكثر تأثيرًا من الناحية المرئية، ويُنصح به للإجراءات المهمة والأساسية في تطبيق Chat أو إحدى الإضافات.
FILLED_TONAL زر الدرجات اللونية المملوء هو أرض متوسطة بديلة بين الأزرار المملوءة والمحددة. وهي مفيدة في السياقات التي يتطلب فيها زر الأولوية الأقل توكيدًا أكثر قليلاً مما قد يعطيه زر المخطط التفصيلي.
BORDERLESS لا يحتوي الزر على حاوية غير مرئية في حالته التلقائية. يُستخدَم عادةً لتنفيذ الإجراءات ذات الأولوية الأدنى، خاصةً عند عرض خيارات متعددة.

عنصر تحكم التبديل

إما أن يكون مفتاح تبديل بنمط التبديل أو مربع اختيار داخل decoratedText التطبيق المصغّر.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

لا تتوفّر هذه الميزة إلا في decoratedText التطبيق المصغّر.

تمثيل JSON
{
  "name": string,
  "value": string,
  "selected": boolean,
  "onChangeAction": {
    object (Action)
  },
  "controlType": enum (ControlType)
}
الحقول
name

string

الاسم الذي يتم من خلاله تعريف التطبيق المصغّر للتبديل في حدث إدخال النموذج.

للحصول على تفاصيل حول التعامل مع إدخالات النماذج، راجِع تلقّي بيانات النموذج:

value

string

القيمة التي أدخلها المستخدم، ويتم عرضها كجزء من حدث إدخال النموذج.

للحصول على تفاصيل حول التعامل مع إدخالات النماذج، راجِع تلقّي بيانات النموذج:

selected

boolean

فعندما true، تم اختيار مفتاح التبديل.

onChangeAction

object (Action)

الإجراء الذي يتم تنفيذه عند تغيير حالة مفتاح التبديل، مثل الدالة المطلوب تشغيلها.

controlType

enum (ControlType)

كيفية ظهور مفتاح التبديل في واجهة المستخدم

تتوفّر هذه الميزة لتطبيقات Google Chat وإضافات Google Workspace.

ControlType

كيفية ظهور مفتاح التبديل في واجهة المستخدم

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
SWITCH مفتاح تبديل بنمط الإيقاف/التفعيل
CHECKBOX تم إيقافها لصالح CHECK_BOX
CHECK_BOX مربّع اختيار

ButtonList

قائمة بالأزرار الموضوعة أفقيًا. للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة إضافة زر

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "buttons": [
    {
      object (Button)
    }
  ]
}
الحقول
buttons[]

object (Button)

مصفوفة من الأزرار.

TextInput

حقل يمكن للمستخدمين إدخال نص فيه. دعم الاقتراحات والإجراءات عند التغيير. للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة أضِف حقلاً يمكن للمستخدم إدخال نص فيه.

تتلقّى تطبيقات Chat قيمة النص الذي تم إدخاله ويمكنها معالجتها أثناء أحداث إدخال النماذج. للحصول على تفاصيل حول التعامل مع إدخالات النماذج، راجِع تلقّي بيانات النموذج:

عندما تحتاج إلى جمع بيانات غير محددة أو مجردة من المستخدمين، استخدم إدخالاً نصيًا. لجمع بيانات محدّدة أو محدَّدة من المستخدمين، استخدِم تطبيقات المصغّرة SelectionInput .

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "name": string,
  "label": string,
  "hintText": string,
  "value": string,
  "type": enum (Type),
  "onChangeAction": {
    object (Action)
  },
  "initialSuggestions": {
    object (Suggestions)
  },
  "autoCompleteAction": {
    object (Action)
  },
  "validation": {
    object (Validation)
  },
  "placeholderText": string
}
الحقول
name

string

الاسم الذي يتم به تعريف إدخال النص في حدث إدخال النموذج.

للحصول على تفاصيل حول التعامل مع إدخالات النماذج، راجِع تلقّي بيانات النموذج:

label

string

النص الذي يظهر أعلى حقل إدخال النص في واجهة المستخدم

يمكنك تحديد نص يساعد المستخدم في إدخال المعلومات التي يحتاجها تطبيقك. فعلى سبيل المثال، إذا كنت تسأل عن اسم شخص ما، ولكنك تحتاج تحديدًا إلى اسمه، فاكتب surname بدلاً من name

مطلوبة إذا hintText غير محدد. وبخلاف ذلك، اختياري.

hintText

string

النص الذي يظهر أسفل حقل إدخال النص والمخصّص لمساعدة المستخدمين من خلال مطالبتهم بإدخال قيمة معيّنة ويكون هذا النص مرئيًا دائمًا.

مطلوبة إذا label غير محدد. وإلا، يكون اختياريًا.

value

string

القيمة التي أدخلها المستخدم، ويتم عرضها كجزء من حدث إدخال النموذج.

للحصول على تفاصيل حول التعامل مع إدخالات النماذج، راجِع تلقّي بيانات النموذج:

type

enum (Type)

طريقة ظهور حقل إدخال نص في واجهة المستخدم على سبيل المثال، ما إذا كان الحقل فرديًا أم متعدّد الأسطر.

onChangeAction

object (Action)

ما يجب فعله عند حدوث تغيير في حقل إدخال النص على سبيل المثال، يضيف مستخدم إلى الحقل أو يحذف نصًا.

تشمل أمثلة الإجراءات التي يجب اتخاذها تشغيل دالة مخصصة أو فتح مربّع حوار في Google Chat

initialSuggestions

object (Suggestions)

القيم المقترَحة التي يمكن للمستخدمين إدخالها. تظهر هذه القيم عندما ينقر المستخدمون داخل حقل إدخال النص. أثناء الكتابة، تتم فلترة القيم المقترَحة ديناميكيًا لتتطابق مع ما كتبه المستخدمون.

على سبيل المثال، قد يقترح حقل إدخال النص للغة البرمجة Java وJavaScript وPython وC++. عندما يبدأ المستخدمون في الكتابة Jav، قائمة فلاتر الاقتراحات التي يتم عرضها فقط Java أو JavaScript

تساعد القيم المقترَحة في توجيه المستخدمين لإدخال قيم يمكن لتطبيقك فهمها. فعند الإشارة إلى JavaScript، قد يدخل بعض المستخدمين javascript وغير ذلك java script الاقتراح JavaScript توحيد كيفية تفاعل المستخدمين مع تطبيقك.

عند تحديدها، TextInput.type دائمًا SINGLE_LINE، حتى إذا تم ضبطها على MULTIPLE_LINE

متاحة لتطبيقات Google Chat وإضافات Google Workspace

autoCompleteAction

object (Action)

اختياريّ. حدِّد الإجراء الذي يجب اتخاذه عندما يقدّم حقل إدخال النص اقتراحات للمستخدمين الذين يتفاعلون معه.

إذا لم يتم تحديد الاقتراحات، يتم ضبط الاقتراحات من خلال initialSuggestions ومعالجتها من قبل العميل.

يتضمّن التطبيق، في حال تحديده، الإجراء المحدّد هنا، مثل تشغيل دالة مخصّصة.

متاحة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

validation

object (Validation)

حدِّد عملية التحقّق اللازمة لحقل إدخال النص هذا.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

placeholderText

string

النص الذي يظهر في حقل إدخال النص عندما يكون الحقل فارغًا استخدِم هذا النص لتوجيه المستخدمين إلى إدخال قيمة. على سبيل المثال: Enter a number from 0 to 100

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

النوع

طريقة ظهور حقل إدخال نص في واجهة المستخدم على سبيل المثال، ما إذا كان حقل إدخال سطر واحد أو حقل إدخال سطور متعددة. في حال حذف initialSuggestions المحدد، type دائمًا SINGLE_LINE، حتى إذا تم ضبطها على MULTIPLE_LINE

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
SINGLE_LINE يكون ارتفاع حقل إدخال النص ثابتًا لسطر واحد.
MULTIPLE_LINE يحتوي حقل إدخال النص على ارتفاع ثابت لعدة أسطر.

RenderActions

يشير هذا المصطلح إلى مجموعة من تعليمات العرض التي تطلب من البطاقة تنفيذ إجراء. توجيه تطبيق مضيف الإضافة أو تطبيق Chat لتنفيذ إجراء خاص بالتطبيق.

متاحة لتطبيقات Google Chat وإضافات Google Workspace.

الحقول
action

Action

الإجراء

الحقول
navigations[]

Navigation

دفع البطاقات المعروضة أو تعديلها

إضافة بطاقة جديدة إلى الحزمة (الانتقال للأمام) بالنسبة إلى تطبيقات Chat، لا يتوفّر هذا الخيار إلا في الصفحة الرئيسية للتطبيق.

متاحة لتطبيقات Google Chat وإضافات Google Workspace.

navigations: {
  pushCard: CARD
}

استبدِل البطاقة العلوية ببطاقة جديدة. بالنسبة إلى تطبيقات Chat، لا يتوفّر هذا الخيار إلا في الصفحة الرئيسية للتطبيق.

تتوفّر هذه الميزة لتطبيقات Google Chat وإضافات Google Workspace.

navigations: {
  updateCard: CARD
}

اقتراحات

القيم المقترَحة التي يمكن للمستخدمين إدخالها. تظهر هذه القيم عندما ينقر المستخدمون داخل حقل إدخال النص. أثناء الكتابة، تتم فلترة القيم المقترَحة ديناميكيًا لتتطابق مع ما كتبه المستخدمون.

على سبيل المثال، قد يقترح حقل إدخال نص للغة البرمجة Java وJavaScript وPython وC++. عندما يبدأ المستخدمون في كتابة Jav، يتم فلترة قائمة الاقتراحات لعرض Java و JavaScript.

تساعد القيم المقترَحة في توجيه المستخدمين لإدخال قيم يمكن لتطبيقك فهمها. فعند الإشارة إلى JavaScript، قد يدخل بعض المستخدمين javascript وغير ذلك java script الاقتراح JavaScript توحيد كيفية تفاعل المستخدمين مع تطبيقك.

عند تحديدها، TextInput.type دائمًا SINGLE_LINE، حتى إذا تم ضبطها على MULTIPLE_LINE

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "items": [
    {
      object (SuggestionItem)
    }
  ]
}
الحقول
items[]

object (SuggestionItem)

قائمة بالاقتراحات المستخدمة لاقتراحات الإكمال التلقائي في حقول إدخال النص

SuggestionItem

قيمة مقترَحة يمكن للمستخدمين إدخالها في حقل إدخال نص.

تتوفّر هذه الميزة لتطبيقات Google Chat و"إضافات Google Workspace".

تمثيل JSON
{

  // Union field content can be only one of the following:
  "text": string
  // End of list of possible types for union field content.
}
الحقول

حقل الربط content.

content يمكن أن تكون إحدى القيم التالية فقط:

text

string

قيمة الإدخال المقترَح في حقل إدخال نص. ويعادل ذلك ما يُدخله المستخدمون بأنفسهم.

التحقّق من الصحة

يمثل البيانات اللازمة للتحقق من التطبيق المصغّر المرفق به.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "characterLimit": integer,
  "inputType": enum (InputType)
}
الحقول
characterLimit

integer

حدِّد عدد الأحرف المسموح به لأدوات إدخال النص. يُرجى العِلم أنّه لا يتم استخدام هذه القيمة إلا لإدخال النصوص، ويتم تجاهلها في التطبيقات المصغّرة الأخرى.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

inputType

enum (InputType)

حدد نوع أدوات الإدخال.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

InputType

نوع التطبيق المصغّر للإدخال

عمليات التعداد
INPUT_TYPE_UNSPECIFIED نوع غير محدَّد. لا تستخدِم هذه الطريقة.
TEXT نص عادي يقبل جميع الأحرف
INTEGER قيمة عدد صحيح.
FLOAT قيمة عائمة.
EMAIL عنوان بريد إلكتروني.
EMOJI_PICKER رمز تعبيري تم اختياره من أداة اختيار الرموز التعبيرية التي يوفّرها النظام.

SelectionInput

هو تطبيق مصغّر ينشئ عنصرًا واحدًا أو أكثر في واجهة المستخدم يمكن للمستخدمين اختياره. على سبيل المثال، قائمة منسدلة أو مربّعات اختيار. ويمكنك استخدام هذه الأداة لجمع البيانات التي يمكن توقُّعها أو تعدادها. للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة إضافة عناصر واجهة مستخدم قابلة للاختيار:

يمكن للتطبيقات في Chat معالجة قيمة العناصر التي يختارها المستخدمون أو يُدخلونها. لمعرفة التفاصيل حول التعامل مع مدخلات النماذج، يُرجى الاطّلاع على تلقّي بيانات النماذج.

لجمع بيانات غير محددة أو مجردة من المستخدمين، استخدم TextInput التطبيق المصغّر.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "name": string,
  "label": string,
  "type": enum (SelectionType),
  "items": [
    {
      object (SelectionItem)
    }
  ],
  "onChangeAction": {
    object (Action)
  },
  "multiSelectMaxSelectedItems": integer,
  "multiSelectMinQueryLength": integer,
  "validation": {
    object (Validation)
  },

  // Union field multi_select_data_source can be only one of the following:
  "externalDataSource": {
    object (Action)
  },
  "platformDataSource": {
    object (PlatformDataSource)
  }
  // End of list of possible types for union field multi_select_data_source.
}
الحقول
name

string

مطلوب. الاسم الذي يحدد الإدخال المحدد في حدث إدخال نموذج.

للحصول على تفاصيل حول التعامل مع إدخالات النماذج، راجِع تلقّي بيانات النموذج:

label

string

النص الذي يظهر أعلى حقل إدخال التحديد في واجهة المستخدم

يمكنك تحديد نص يساعد المستخدم في إدخال المعلومات التي يحتاجها تطبيقك. على سبيل المثال، إذا كان المستخدمون يختارون إلحاحًا لتذكرة العمل من قائمة منسدلة، فقد يكون التصنيف "الإلحاح" أو "تحديد درجة الأهمية".

type

enum (SelectionType)

هو نوع العناصر التي يتم عرضها للمستخدمين في SelectionInput التطبيق المصغّر. تتيح أنواع الاختيارات أنواعًا مختلفة من التفاعلات. على سبيل المثال، يمكن للمستخدمين تحديد مربع اختيار واحد أو أكثر، ولكن يمكنهم فقط تحديد قيمة واحدة من قائمة منسدلة.

items[]

object (SelectionItem)

مصفوفة من العناصر القابلة للاختيار. على سبيل المثال، مصفوفة من أزرار الاختيار أو مربّعات الاختيار. يمكن إدخال ما يصل إلى 100 عنصر.

onChangeAction

object (Action)

إذا تم تحديد هذا الخيار، يتم إرسال النموذج عند تغيير الاختيار. وإذا لم يتم تحديده، يجب تحديد زر منفصل لإرسال النموذج.

للحصول على تفاصيل حول التعامل مع إدخالات النماذج، راجِع تلقّي بيانات النموذج:

multiSelectMaxSelectedItems

integer

بالنسبة إلى قوائم التحديد المتعدد، يكون الحد الأقصى لعدد العناصر التي يمكن للمستخدم اختيارها. الحد الأدنى للقيمة هو سلعة واحدة. وفي حال عدم تحديد قيمة، يتم ضبط الإعدادات التلقائية على 3 عناصر.

multiSelectMinQueryLength

integer

بالنسبة إلى قوائم التحديد المتعدد، يتم الإكمال التلقائي لعدد الأحرف النصية التي يُدخلها المستخدم قبل طلبات البحث في التطبيق ويعرض العناصر المقترحة في القائمة.

إذا لم يتم تحديدها، يتم ضبطها تلقائيًا على 0 أحرف لمصادر البيانات الثابتة و3 أحرف لمصادر البيانات الخارجية.

validation

object (Validation)

التحقق من صحة حقل إدخال التحديد هذا بالنسبة إلى القوائم المنسدلة.

تتوفّر هذه الميزة لتطبيقات Google Chat وإضافات Google Workspace.

حقل الربط multi_select_data_source. بالنسبة إلى قائمة الاختيار المتعدد، يكون مصدر البيانات الذي يملأ عناصر الاختيار.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace. multi_select_data_source واحد فقط مما يلي:

externalDataSource

object (Action)

مصدر بيانات خارجي، مثل قاعدة بيانات ارتباطية.

platformDataSource

object (PlatformDataSource)

مصدر بيانات من Google Workspace

SelectionType

تمثّل هذه السمة تنسيق العناصر التي يمكن للمستخدمين اختيارها. تتيح الخيارات المختلفة أنواعًا مختلفة من التفاعلات. على سبيل المثال، يمكن للمستخدمين تحديد عدة مربعات اختيار، ولكن يمكنهم فقط تحديد عنصر واحد من القائمة المنسدلة.

يتيح كل إدخال اختيار نوعًا واحدًا من التحديد. على سبيل المثال، لا تتوفّر إمكانية مزج مربّعات الاختيار ومفاتيح التبديل.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
CHECK_BOX مجموعة من مربعات الاختيار. يمكن للمستخدمين تحديد مربّع اختيار واحد أو أكثر.
RADIO_BUTTON مجموعة من أزرار الاختيار يمكن للمستخدمين اختيار زر اختيار واحد.
SWITCH مجموعة من مفاتيح التبديل يمكن للمستخدمين تفعيل مفتاح تحكّم واحد أو أكثر.
DROPDOWN قائمة منسدلة يمكن للمستخدمين اختيار عنصر واحد من القائمة.
MULTI_SELECT

قائمة تحديد متعدد للبيانات الثابتة أو الديناميكية. من شريط القوائم، يختار المستخدمون عنصرًا واحدًا أو أكثر. يمكن للمستخدمين أيضًا إدخال قيم لتعبئة البيانات الديناميكية. على سبيل المثال، يمكن للمستخدمين بدء كتابة اسم مساحة في Google Chat، ويقترح التطبيق المصغّر المساحة تلقائيًا.

لتعبئة العناصر لقائمة اختيار متعدّد، يمكنك استخدام أحد الأنواع التالية من مصادر البيانات:

  • البيانات الثابتة: يتم تحديد العناصر كـ SelectionItem الكائنات في التطبيق المصغَّر. يمكنك الاستفادة من ما يصل إلى 100 عنصر.
  • بيانات Google Workspace: تتم تعبئة العناصر باستخدام بيانات من Google Workspace، مثل مستخدمي Google Workspace أو مساحات Google Chat.
  • البيانات الخارجية: تتم تعبئة العناصر من مصدر بيانات خارجي خارج Google Workspace.

للحصول على أمثلة حول طريقة تنفيذ قوائم تحديد متعدّدة، يُرجى الاطّلاع على: إضافة قائمة اختيار متعدّدة

متاحة لتطبيقات Google Chat وإضافات Google Workspace

SelectionItem

يشير ذلك المصطلح إلى عنصر يمكن للمستخدمين اختياره في حقل إدخال محدَّد، مثل مربّع اختيار أو مفتاح تبديل.

تتوفّر هذه الميزة لتطبيقات Google Chat و"إضافات Google Workspace".

تمثيل JSON
{
  "text": string,
  "value": string,
  "selected": boolean,
  "startIconUri": string,
  "bottomText": string
}
الحقول
text

string

النص الذي يعرّف المستخدمين على السلعة أو يصفها

value

string

القيمة المرتبطة بهذا العنصر. يجب أن يستخدم العميل هذا كقيمة إدخال للنموذج.

لمعرفة التفاصيل حول التعامل مع مدخلات النماذج، يُرجى الاطّلاع على تلقّي بيانات النماذج.

selected

boolean

ما إذا كان قد تم اختيار العنصر تلقائيًا. إذا كان حقل الإدخال للاختيار يقبل قيمة واحدة فقط (مثل أزرار الاختيار أو القائمة المنسدلة)، اضبط هذا الحقل لعنصر واحد فقط.

startIconUri

string

بالنسبة إلى القوائم التي تتيح الاختيار المتعدّد، يكون عنوان URL للرمز معروضًا بجانب حقل text العنصر. يمكن استخدام الملفات بتنسيق PNG وJPEG. يجب أن تكون HTTPS عنوان URL. على سبيل المثال: https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png

bottomText

string

بالنسبة إلى قوائم الاختيار المتعدّد، يشير ذلك إلى وصف نصي أو تصنيف يتم عرضه أسفل حقل text العنصر.

PlatformDataSource

بالنسبة إلى SelectionInput تطبيق مصغّر يستخدم قائمة اختيار متعدّدة ومصدر بيانات من Google Workspace. تُستخدَم لتعبئة العناصر في قائمة اختيار متعدّد.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{

  // Union field data_source can be only one of the following:
  "commonDataSource": enum (CommonDataSource),
  "hostAppDataSource": {
    object (HostAppDataSourceMarkup)
  }
  // End of list of possible types for union field data_source.
}
الحقول
حقل الاتحاد data_source مصدر البيانات. data_source واحد فقط مما يلي:
commonDataSource

enum (CommonDataSource)

مصدر بيانات تشاركه جميع تطبيقات Google Workspace، مثل المستخدمين في مؤسسة Google Workspace.

hostAppDataSource

object (HostAppDataSourceMarkup)

مصدر بيانات فريد لتطبيق مضيف Google Workspace، مثل المساحات في Google Chat.

يتيح هذا الحقل استخدام "مكتبات برامج Google API"، ولكنه غير متوفّر في "مكتبات عميل Cloud". لمزيد من المعلومات، يُرجى مراجعة تثبيت مكتبات البرامج

CommonDataSource

مصدر بيانات يشاركه الجميع تطبيقات Google Workspace.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

عمليات التعداد
UNKNOWN القيمة التلقائية. يُرجى عدم استخدامها.
USER مستخدمو Google Workspace لا يمكن للمستخدم عرض المستخدمين واختيارهم إلا من مؤسسته على Google Workspace.

HostAppDataSourceMarkup

بالنسبة إلى تطبيقات الويب المصغرة SelectionInput التي تستخدم قائمة اختيار متعدّد، يجب توفير مصدر بيانات من تطبيق Google Workspace. يعبّئ مصدر البيانات عناصر الاختيار لقائمة الاختيار المتعدّد.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{

  // Union field data_source can be only one of the following:
  "chatDataSource": {
    object (ChatClientDataSourceMarkup)
  }
  // End of list of possible types for union field data_source.
}
الحقول
حقل الاتحاد data_source تطبيق Google Workspace الذي يعبّئ العناصر لقائمة متعددة الاختيارات data_source يمكن أن يكون أحد القيم التالية فقط:
chatDataSource

object (ChatClientDataSourceMarkup)

مصدر بيانات من Google Chat

ChatClientDataSourceMarkup

بالنسبة إلى SelectionInput تطبيق مصغّر يستخدم قائمة اختيار متعدّدة ومصدر بيانات من Google Chat يعبّئ مصدر البيانات عناصر الاختيار لقائمة الاختيار المتعدّد. على سبيل المثال، يمكن للمستخدم اختيار مساحات Google Chat التي يكون عضوًا فيها.

تتوفّر هذه الميزة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{

  // Union field source can be only one of the following:
  "spaceDataSource": {
    object (SpaceDataSource)
  }
  // End of list of possible types for union field source.
}
الحقول
حقل الاتحاد source مصدر بيانات Google Chat. source واحد فقط مما يلي:
spaceDataSource

object (SpaceDataSource)

مساحات Google Chat التي يكون المستخدم عضوًا فيها

SpaceDataSource

مصدر بيانات يملأ مساحات Google Chat كعناصر اختيار لقائمة اختيار متعدّدة لا يتمّ تعبئة سوى المساحات التي يكون المستخدم عضوًا فيها.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{
  "defaultToCurrentSpace": boolean
}
الحقول
defaultToCurrentSpace

boolean

في حال الضبط على true، تختار قائمة الاختيار المتعدد مساحة Google Chat الحالية كعنصر تلقائيًا.

DateTimePicker

يسمح للمستخدمين بإدخال تاريخ أو وقت أو تاريخ ووقت معًا. للحصول على مثال في تطبيقات Google Chat، يُرجى الاطّلاع على السماح للمستخدم باختيار تاريخ ووقت.

يمكن للمستخدمين إدخال نص أو استخدام أداة الاختيار لتحديد التواريخ والأوقات. إذا أدخل المستخدمون تاريخًا أو وقتًا غير صالحين، تعرض أداة الاختيار خطأً يطلب من المستخدمين إدخال المعلومات بشكل صحيح.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "name": string,
  "label": string,
  "type": enum (DateTimePickerType),
  "valueMsEpoch": string,
  "timezoneOffsetDate": integer,
  "onChangeAction": {
    object (Action)
  },
  "validation": {
    object (Validation)
  }
}
الحقول
name

string

الاسم الذي DateTimePicker في حدث إدخال النموذج.

للحصول على تفاصيل حول التعامل مع إدخالات النماذج، راجِع تلقّي بيانات النموذج:

label

string

النص الذي يطلب من المستخدمين إدخال تاريخ أو وقت أو تاريخ ووقت. على سبيل المثال، إذا كان المستخدمون يحدّدون موعدًا، استخدِم تصنيفًا مثل Appointment date أو Appointment date and time.

type

enum (DateTimePickerType)

ما إذا كانت الأداة تتيح إدخال التاريخ أو الوقت أو التاريخ والوقت

valueMsEpoch

string (int64 format)

القيمة التلقائية المعروضة في الأداة بالمللي ثانية منذ وقت حقبة يونكس

حدِّد القيمة استنادًا إلى نوع أداة الاختيار ( DateTimePickerType):

  • DATE_AND_TIME : تاريخ تقويمي ووقت بالتوقيت العالمي المنسق على سبيل المثال، لتمثيل 1 كانون الثاني (يناير) 2023 في الساعة 12:00 بعد الظهر بالتوقيت العالمي المتفق عليه، استخدِم 1672574400000
  • DATE_ONLY : تاريخ تقويم في الساعة 00:00:00 بالتوقيت العالمي المنسق (UTC). على سبيل المثال، لتمثيل 1 يناير 2023، استخدم 1672531200000
  • TIME_ONLY : وقت بالتوقيت العالمي المنسق (UTC). على سبيل المثال، للإشارة إلى الساعة 12:00 مساءً، استخدِم 43200000 (أو 12 * 60 * 60 * 1000).
timezoneOffsetDate

integer

الرقم الذي يمثّل معادلة المنطقة الزمنية من التوقيت العالمي المتفق عليه (UTC) بالدقائق. في حال ضبطها، valueMsEpoch يظهر في المنطقة الزمنية المحددة. في حال عدم ضبطها، تكون القيمة التلقائية هي إعداد المنطقة الزمنية للمستخدم.

onChangeAction

object (Action)

يتم تشغيله عندما ينقر المستخدِم على حفظ أو محو من واجهة DateTimePicker .

validation

object (Validation)

اختياري. حدِّد عملية التحقّق المطلوبة لأداة اختيار التاريخ والوقت هذه.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

DateTimePickerType

تنسيق التاريخ والوقت في التطبيق المصغّر DateTimePicker . يحدِّد هذا الإعداد ما إذا كان يمكن للمستخدمين إدخال تاريخ أو وقت أو تاريخ ووقت معًا.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
DATE_AND_TIME يُدخِل المستخدمون التاريخ والوقت.
DATE_ONLY يُدخِل المستخدمون تاريخًا.
TIME_ONLY يُدخِل المستخدمون وقتًا.

حاجز

لا يحتوي هذا النوع على أي حقول.

تعرِض هذه السمة فاصلاً بين التطبيقات المصغّرة على شكل خط أفقي. للاطّلاع على مثال في تطبيقات Google Chat، يُرجى الاطّلاع على إضافة فاصل أفقي بين التطبيقات المصغّرة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

على سبيل المثال، ينشئ JSON التالي فاصلاً:

"divider": {}

شبكة

تعرض شبكة بها مجموعة من العناصر. يمكن أن تتضمن العناصر نصًا أو صورًا فقط. بالنسبة للأعمدة المتجاوبة، أو لتضمين أكثر من نص أو صور، استخدم Columns للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة عرض شبكة بها مجموعة من العناصر:

تدعم الشبكة أي عدد من الأعمدة والعناصر. يتم تحديد عدد الصفوف من خلال قسمة العناصر على الأعمدة. الشبكة التي تحتوي على 10 عناصر وعمودين تحتوي على 5 صفوف. الشبكة التي تتكون من 11 عنصرًا وعمودين بها 6 صفوف.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

على سبيل المثال، ينشئ ملف JSON التالي شبكة من عمودَين يتضمّنان عنصرًا واحدًا:

"grid": {
  "title": "A fine collection of items",
  "columnCount": 2,
  "borderStyle": {
    "type": "STROKE",
    "cornerRadius": 4
  },
  "items": [
    {
      "image": {
        "imageUri": "https://www.example.com/image.png",
        "cropStyle": {
          "type": "SQUARE"
        },
        "borderStyle": {
          "type": "STROKE"
        }
      },
      "title": "An item",
      "textAlignment": "CENTER"
    }
  ],
  "onClick": {
    "openLink": {
      "url": "https://www.example.com"
    }
  }
}
تمثيل JSON
{
  "title": string,
  "items": [
    {
      object (GridItem)
    }
  ],
  "borderStyle": {
    object (BorderStyle)
  },
  "columnCount": integer,
  "onClick": {
    object (OnClick)
  }
}
الحقول
title

string

النص الذي يتم عرضه في رأس الشبكة.

items[]

object (GridItem)

العناصر المراد عرضها في الشبكة.

borderStyle

object (BorderStyle)

نمط الحد المراد تطبيقه على كل عنصر من عناصر الشبكة.

columnCount

integer

عدد الأعمدة المراد عرضها في الشبكة. يتم استخدام قيمة تلقائية إذا لم يتم تحديد هذا الحقل، وتختلف هذه القيمة التلقائية بناءً على مكان عرض الشبكة (مربع حوار في مقابل الإعلان المصاحب).

onClick

object (OnClick)

تتم إعادة استخدام دالة الاستدعاء هذه بواسطة كل عنصر شبكة فردي، ولكن مع معرّف العنصر والفهرس في قائمة العناصر التي تمت إضافتها إلى مَعلمات معاودة الاتصال.

GridItem

يمثّل عنصرًا في تنسيق شبكة. يمكن أن تحتوي العناصر على نص أو صورة أو نصًا وصورة معًا.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "id": string,
  "image": {
    object (ImageComponent)
  },
  "title": string,
  "subtitle": string,
  "layout": enum (GridItemLayout)
}
الحقول
id

string

معرّف محدد من جانب المستخدم لعنصر الشبكة هذا يتم عرض هذا المعرّف في الشبكة الرئيسية onClick مَعلمات معاودة الاتصال.

image

object (ImageComponent)

الصورة التي يتم عرضها في عنصر الشبكة

title

string

عنوان عنصر الشبكة

subtitle

string

العنوان الفرعي لعنصر الشبكة.

layout

enum (GridItemLayout)

التنسيق الذي سيتم استخدامه لعنصر الشبكة.

ImageComponent

يمثل هذا العنصر صورة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "imageUri": string,
  "altText": string,
  "cropStyle": {
    object (ImageCropStyle)
  },
  "borderStyle": {
    object (BorderStyle)
  }
}
الحقول
imageUri

string

عنوان URL الخاص بالصورة

altText

string

تصنيف تسهيل الاستخدام للصورة

cropStyle

object (ImageCropStyle)

نمط الاقتصاص المراد تطبيقه على الصورة

borderStyle

object (BorderStyle)

نمط الحدود المطلوب تطبيقه على الصورة.

ImageCropStyle

تمثّل نمط الاقتصاص الذي تم تطبيقه على صورة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

على سبيل المثال، إليك كيفية تطبيق نسبة العرض إلى الارتفاع 16:9:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}
تمثيل JSON
{
  "type": enum (ImageCropType),
  "aspectRatio": number
}
الحقول
type

enum (ImageCropType)

نوع الاقتصاص

aspectRatio

number

نسبة العرض إلى الارتفاع المراد استخدامها إذا كان نوع الاقتصاص RECTANGLE_CUSTOM

على سبيل المثال، إليك كيفية تطبيق نسبة العرض إلى الارتفاع 16:9:

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}

ImageCropType

يمثل هذا الخيار نمط الاقتصاص المطبّق على صورة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
IMAGE_CROP_TYPE_UNSPECIFIED يُرجى عدم استخدامها. غير محدد
SQUARE القيمة التلقائية. يُطبّق اقتصاصًا مربّعًا.
CIRCLE يطبّق اقتصاصًا دائريًا.
RECTANGLE_CUSTOM تُطبِّق اقتصاصًا مستطيلاً بنسبة عرض إلى ارتفاع مخصّصة. يمكنك ضبط نسبة العرض إلى الارتفاع المخصّصة باستخدام aspectRatio
RECTANGLE_4_3 لتطبيق اقتصاص مستطيل بنسبة عرض إلى ارتفاع 4:3.

BorderStyle

خيارات النمط لحدود البطاقة أو التطبيق المصغّر، بما في ذلك نوع الحدود ولونها.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "type": enum (BorderType),
  "strokeColor": {
    object (Color)
  },
  "cornerRadius": integer
}
الحقول
type

enum (BorderType)

نوع الحد.

strokeColor

object (Color)

الألوان التي يتم استخدامها عند النوع BORDER_TYPE_STROKE

لضبط لون الخطوط، حدِّد قيمة لحقول red، green، blue . يجب أن تكون القيمة رقمًا عائمًا بين 0 و1 استنادًا إلى قيمة اللون أحمر أخضر أزرق، حيث يشير 0 (0/255) يمثل غياب اللون 1 (255/255) يمثل الحد الأقصى لكثافة اللون.

على سبيل المثال، يؤدي ما يلي إلى ضبط اللون على اللون الأحمر عند أقصى كثافة له:

"color": {
   "red": 1,
   "green": 0,
   "blue": 0,
}

تشير رسالة الأشكال البيانية alpha لا يتوفر الحقل للون الخط. يتم تجاهل هذا الحقل في حال تحديده.

cornerRadius

integer

نصف قطر الزاوية للحدود.

BorderType

تمثل هذه السمة أنواع الحدود المطبَّقة على التطبيقات المصغّرة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
BORDER_TYPE_UNSPECIFIED يُرجى عدم استخدامها. غير محدد
NO_BORDER القيمة التلقائية بدون حدود
STROKE مخطط تفصيلي.

GridItemLayout

تمثل خيارات التنسيق المختلفة المتاحة لعنصر الشبكة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
GRID_ITEM_LAYOUT_UNSPECIFIED يُرجى عدم استخدامها. غير محدد
TEXT_BELOW يتم عرض العنوان والعنوان الفرعي أسفل صورة عنصر الشبكة.
TEXT_ABOVE يتم عرض العنوان والعنوان الفرعي أعلى صورة عنصر الشبكة.

الأعمدة

تشير رسالة الأشكال البيانية Columns يعرض التطبيق المصغّر ما يصل إلى عمودين في بطاقة أو مربع حوار. يمكنك إضافة تطبيقات مصغّرة إلى كل عمود، وستظهر التطبيقات المصغّرة بالترتيب المحدّد. للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة عرض البطاقات ومربّعات الحوار في أعمدة:

يتم تحديد ارتفاع كل عمود من خلال العمود الأطول. على سبيل المثال، إذا كان العمود الأول أطول من العمود الثاني، فسيكون لكلا العمودين ارتفاع العمود الأول. ونظرًا لأن كل عمود يمكن أن يحتوي على عدد مختلف من الأدوات، فلا يمكنك تحديد صفوف أو محاذاة الأدوات بين الأعمدة.

يتم عرض الأعمدة جنبًا إلى جنب. يمكنك تخصيص عرض كل عمود باستخدام HorizontalSizeStyle . إذا كان عرض شاشة المستخدم ضيقًا جدًا، فسيتم التفاف العمود الثاني أسفل الأول:

  • على الويب، يتم التفاف العمود الثاني إذا كان عرض الشاشة أقل من أو يساوي 480 بكسل.
  • في أجهزة iOS، يتم التفاف العمود الثاني إذا كان عرض الشاشة أقل من أو يساوي 300 نقطة.
  • في أجهزة Android، يتم التفاف العمود الثاني إذا كان عرض الشاشة أقل من أو يساوي 320 وحدة بكسل مستقلة الكثافة (dp).

لتضمين أكثر من عمودين، أو لاستخدام صفوف، استخدم Grid التطبيق المصغّر.

متاحة لتطبيقات Google Chat وإضافات Google Workspace تشمل واجهات مستخدم الإضافات التي تتيح الأعمدة ما يلي:

  • مربّع الحوار الذي يظهر عندما يفتح المستخدمون الإضافة من مسودة رسالة إلكترونية
  • مربّع الحوار الذي يتم عرضه عندما يفتح المستخدمون الإضافة من إضافة مرفق في حدث على تقويم Google.
تمثيل JSON
{
  "columnItems": [
    {
      object (Column)
    }
  ]
}
الحقول
columnItems[]

object (Column)

مصفوفة من الأعمدة. يمكنك تضمين ما يصل إلى عمودين في بطاقة أو مربع حوار.

العمود

عمود.

إضافات Google Workspace وتطبيقات Chat

تمثيل JSON
{
  "horizontalSizeStyle": enum (HorizontalSizeStyle),
  "horizontalAlignment": enum (HorizontalAlignment),
  "verticalAlignment": enum (VerticalAlignment),
  "widgets": [
    {
      object (Widgets)
    }
  ]
}
الحقول
horizontalSizeStyle

enum (HorizontalSizeStyle)

تحدِّد هذه السياسة كيفية ملء العمود بعرض البطاقة.

horizontalAlignment

enum (HorizontalAlignment)

لتحديد ما إذا كانت الأدوات تتم محاذاة إلى اليسار أو اليمين أو منتصف العمود.

verticalAlignment

enum (VerticalAlignment)

لتحديد ما إذا كانت التطبيقات المصغّرة تتم محاذاتها في أعلى أو أسفل أو وسط عمود

widgets[]

object (Widgets)

مصفوفة من التطبيقات المصغّرة التي يتم تضمينها في عمود. تظهر التطبيقات المصغّرة بالترتيب الذي تم تحديدها به.

HorizontalSizeStyle

تُحدِّد كيفية ملء عمود لعرض البطاقة. يعتمد عرض كل عمود على كلاً من HorizontalSizeStyle وعرض التطبيقات المصغّرة ضمن العمود.

إضافات Google Workspace وتطبيقات Chat

عمليات التعداد
HORIZONTAL_SIZE_STYLE_UNSPECIFIED يُرجى عدم استخدامها. غير محدد
FILL_AVAILABLE_SPACE القيمة التلقائية. يملأ العمود المساحة المتاحة، بما يصل إلى 70% من عرض البطاقة. إذا تم تعيين كلا العمودين على FILL_AVAILABLE_SPACE، يملأ كل عمود 50% من المساحة.
FILL_MINIMUM_SPACE يملأ العمود أقل مساحة ممكنة ولا تزيد عن 30% من عرض البطاقة.

HorizontalAlignment

لتحديد ما إذا كانت الأدوات تتم محاذاة إلى اليسار أو اليمين أو منتصف العمود.

تتوفّر هذه الميزة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

عمليات التعداد
HORIZONTAL_ALIGNMENT_UNSPECIFIED يُرجى عدم استخدامها. غير محدد
START القيمة التلقائية. لمحاذاة الأدوات مع موضع بداية العمود. بالنسبة للتخطيطات من اليسار إلى اليمين، تتم المحاذاة إلى اليسار. بالنسبة للتخطيطات من اليمين إلى اليسار، تتم المحاذاة إلى اليمين.
CENTER لمحاذاة الأدوات في منتصف العمود.
END لمحاذاة الأدوات مع موضع نهاية العمود. بالنسبة إلى التنسيقات من اليسار إلى اليمين، تتم محاذاة الأدوات إلى اليمين. بالنسبة إلى التنسيقات من اليمين إلى اليسار، تتم محاذاة الأدوات إلى اليسار.

VerticalAlignment

لتحديد ما إذا كانت الأدوات تتم محاذاة إلى أعلى العمود أو أسفله أو وسطه.

إضافات Google Workspace وتطبيقات Chat

عمليات التعداد
VERTICAL_ALIGNMENT_UNSPECIFIED يُرجى عدم استخدامها. غير محدد
CENTER القيمة التلقائية. لمحاذاة الأدوات في منتصف العمود.
TOP لمحاذاة الأدوات مع أعلى عمود.
BOTTOM لمحاذاة الأدوات إلى أسفل العمود.

التطبيقات المصغَّرة

التطبيقات المصغّرة المتوافقة التي يمكنك تضمينها في عمود

إضافات Google Workspace وتطبيقات Chat

تمثيل JSON
{

  // Union field data can be only one of the following:
  "textParagraph": {
    object (TextParagraph)
  },
  "image": {
    object (Image)
  },
  "decoratedText": {
    object (DecoratedText)
  },
  "buttonList": {
    object (ButtonList)
  },
  "textInput": {
    object (TextInput)
  },
  "selectionInput": {
    object (SelectionInput)
  },
  "dateTimePicker": {
    object (DateTimePicker)
  },
  "chipList": {
    object (ChipList)
  }
  // End of list of possible types for union field data.
}
الحقول

حقل الاتحاد data

data واحد فقط مما يلي:

textParagraph

object (TextParagraph)

TextParagraph التطبيق المصغّر.

image

object (Image)

Image التطبيق المصغّر.

decoratedText

object (DecoratedText)

DecoratedText التطبيق المصغّر.

buttonList

object (ButtonList)

ButtonList التطبيق المصغّر.

textInput

object (TextInput)

TextInput التطبيق المصغّر.

selectionInput

object (SelectionInput)

SelectionInput التطبيق المصغّر.

dateTimePicker

object (DateTimePicker)

DateTimePicker التطبيق المصغّر.

chipList

object (ChipList)

ChipList التطبيق المصغّر. متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

ChipList

قائمة شرائح معروضة أفقيًا، ويمكن التمرير فيها أفقيًا أو لفها إلى السطر التالي.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{
  "layout": enum (Layout),
  "chips": [
    {
      object (Chip)
    }
  ]
}
الحقول
layout

enum (Layout)

تنسيق قائمة الشرائح المحدّد.

chips[]

object (Chip)

مصفوفة من الشرائح.

التنسيق

تنسيق قائمة الشرائح

عمليات التعداد
LAYOUT_UNSPECIFIED يُرجى عدم استخدامها. غير محدد
WRAPPED القيمة التلقائية. يتم التفاف قائمة الشرائح مع السطر التالي إذا لم تكن هناك مساحة أفقية كافية.
HORIZONTAL_SCROLLABLE يتم تمرير الشرائح أفقيًا في حال عدم تناسبها مع المساحة المتاحة.

شريحة

نص أو رمز أو نص وشريحة رمز يمكن للمستخدمين النقر عليها.

متاحة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{
  "icon": {
    object (Icon)
  },
  "label": string,
  "onClick": {
    object (OnClick)
  },
  "enabled": boolean,
  "disabled": boolean,
  "altText": string
}
الحقول
icon

object (Icon)

صورة الرمز إذا كان كلاهما icon أو text البيانات، ثم يظهر الرمز قبل النص.

label

string

النص المعروض داخل الشريحة

onClick

object (OnClick)

اختياريّ. الإجراء الذي يتم تنفيذه عندما ينقر المستخدم على الشريحة، مثل فتح رابط تشعّبي أو تشغيل دالة مخصّصة

enabled
(deprecated)

boolean

ما إذا كانت الشريحة في حالة نشطة وتستجيب لإجراءات المستخدم الإعدادات التلقائية على true تمّ الإيقاف. استخدام disabled بدلاً من ذلك.

disabled

boolean

ما إذا كانت الشريحة في حالة غير نشطة وتتجاهل إجراءات المستخدم الإعدادات التلقائية على false

altText

string

تمثّل هذه السمة النص البديل المستخدم في تسهيل الاستخدام.

حدِّد نصًا وصفيًا يتيح للمستخدمين معرفة وظيفة الشريحة. على سبيل المثال، إذا كانت الشريحة تفتح رابطًا تشعبيًا، اكتب: "يفتح علامة تبويب جديدة في المتصفّح وينتقل إلى مستندات مطوّري Google Chat على الرابط https://developers.google.com/workspace/chat".

CollapseControl

يمثّل عنصر تحكّم في التوسيع والتصغير. تتوفّر هذه الميزة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace.

تمثيل JSON
{
  "horizontalAlignment": enum (HorizontalAlignment),
  "expandButton": {
    object (Button)
  },
  "collapseButton": {
    object (Button)
  }
}
الحقول
horizontalAlignment

enum (HorizontalAlignment)

المحاذاة الأفقية لزرّ التوسيع والتصغير

expandButton

object (Button)

اختياريّ. ويمكنك تحديد زر قابل للتخصيص لتوسيع القسم. يجب ضبط كل من حقل generateButton وzoomButton. لن يتم تطبيق مجموعة حقول واحدة فقط. في حال عدم ضبط هذا الحقل، يتم استخدام الزر التلقائي.

collapseButton

object (Button)

اختياريّ. تحديد زر قابل للتخصيص لتصغير القسم. يجب ضبط كل من حقل generateButton وzoomButton. لن يتم تفعيل مجموعة حقول واحدة فقط. وفي حال عدم ضبط هذا الحقل، يتم استخدام الزرّ التلقائي.

DividerStyle

نمط الفاصل لبطاقة. لا تُستخدَم حاليًا إلا للفواصل بين أقسام البطاقة.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

عمليات التعداد
DIVIDER_STYLE_UNSPECIFIED يُرجى عدم استخدامها. غير محدد
SOLID_DIVIDER الخيار التلقائي. اعرض مُقسّمًا مصمتًا.
NO_DIVIDER في حال ضبطه، لن يتم عرض أي فاصل. يزيل هذا النمط المقسم تمامًا من التنسيق. والنتيجة تساوي عدم إضافة مُقسّم على الإطلاق.

CardAction

الإجراء المرتبط بالبطاقة هو الإجراء المرتبط بالبطاقة. على سبيل المثال، قد تتضمّن بطاقة فواتير إجراءات مثل حذف الفاتورة أو إرسالها عبر البريد الإلكتروني أو فتح الفاتورة في متصفّح.

متاحة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

تمثيل JSON
{
  "actionLabel": string,
  "onClick": {
    object (OnClick)
  }
}
الحقول
actionLabel

string

التصنيف الذي يظهر كعنصر في قائمة الإجراءات

onClick

object (OnClick)

تشير رسالة الأشكال البيانية onClick الإجراء لبند العمل هذا.

CardFixedFooter

تذييل (ثابت) ثابت يظهر في الجزء السفلي من البطاقة.

الإعداد fixedFooter بدون تحديد primaryButton أو a secondaryButton إلى حدوث خطأ.

بالنسبة إلى تطبيقات Chat، يمكنك استخدام التذييلات الثابتة في مربعات الحوار، ولكن لا رسائل البطاقة للاطّلاع على مثال في تطبيقات Google Chat، يُرجى مراجعة إضافة تذييل دائم.

متاحة لتطبيقات Google Chat وإضافات Google Workspace

تمثيل JSON
{
  "primaryButton": {
    object (Button)
  },
  "secondaryButton": {
    object (Button)
  }
}
الحقول
primaryButton

object (Button)

الزر الأساسي للتذييل الثابت. يجب أن يكون الزر زر نص مع ضبط النص واللون.

secondaryButton

object (Button)

الزر الثانوي للجزء السفلي الثابت يجب أن يكون الزرّ زرًا نصيًا يتضمّن مجموعة من الألوان والألوان. في حال حذف secondaryButton تم تعيينها، فيجب عليك أيضًا تعيين primaryButton

DisplayStyle

في "إضافات Google Workspace"، تحدِّد طريقة عرض البطاقة.

متاحة لإضافات Google Workspace ولا تتوفّر لتطبيقات Google Chat.

عمليات التعداد
DISPLAY_STYLE_UNSPECIFIED لا تستخدِم هذه الميزة. غير محدد
PEEK يظهر عنوان البطاقة أسفل الشريط الجانبي، ويغطي جزئيًا البطاقة العلوية الحالية في الحزمة. يؤدي النقر على العنوان إلى ظهور البطاقة في حزمة البطاقات. وإذا لم تكن البطاقة تحتوي على عنوان، يتم استخدام رأس تم إنشاؤه بدلاً من ذلك.
REPLACE القيمة التلقائية. يتم عرض البطاقة من خلال استبدال عرض البطاقة العلوية في حزمة البطاقات.