Package google.apps.card.v1

الفهرس

الإجراء

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

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

الحقول
function

string

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

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

parameters[]

ActionParameter

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

loadIndicator

LoadIndicator

تُحدِّد مؤشر التحميل الذي يعرضه الإجراء أثناء تنفيذه.

persistValues

bool

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

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

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

interaction

Interaction

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

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

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

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

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

requiredWidgets[]

string

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

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

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

allWidgetsAreRequired

bool

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

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

ActionParameter

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

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

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

الحقول
key

string

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

value

string

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

التفاعل

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

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

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

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

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

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

عمليات التعداد
INTERACTION_UNSPECIFIED القيمة التلقائية يتم تنفيذ action كالمعتاد.
OPEN_DIALOG

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

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

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

LoadIndicator

تُحدِّد مؤشر التحميل الذي يعرضه الإجراء أثناء تنفيذه.

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

عمليات التعداد
SPINNER تعرِض هذه العلامة عنصر تحميل دوّار للإشارة إلى أنّه يتم تحميل المحتوى.
NONE لا يتم عرض أي محتوى.

BorderStyle

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

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

الحقول
type

BorderType

نوع الحد

strokeColor

Color

الألوان المُستخدَمة عندما يكون النوع BORDER_TYPE_STROKE

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

على سبيل المثال، يضبط الرمز البرمجي التالي اللون على الأحمر بأعلى كثافة:

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

لا يتوفّر حقل alpha للون الخطوط. يتم تجاهل هذا الحقل في حال تحديده.

cornerRadius

int32

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

BorderType

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

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

عمليات التعداد
BORDER_TYPE_UNSPECIFIED لا تستخدِم هذه الميزة. غير محدد
NO_BORDER القيمة التلقائية بدون حدود
STROKE مخطّط

زرّ

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

لجعل صورة زرًا يمكن النقر عليه، حدِّد Image (وليس ImageComponent) واضبط إجراء onClick.

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

الحقول
text

string

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

icon

Icon

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

color

Color

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

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

على سبيل المثال، يضبط الرمز البرمجي التالي اللون على الأحمر بأعلى كثافة:

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

لا يتوفّر الحقل alpha للون الزر. يتم تجاهل هذا الحقل في حال تحديده.

onClick

OnClick

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

disabled

bool

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

altText

string

النص البديل المستخدَم لتحسين إمكانية الاستخدام

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

type

Type

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

النوع

اختيارية: نوع الزر في حال ضبط الحقل color، يتم ضبط الحقل type على FILLED.

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

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

ButtonList

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

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

الحقول
buttons[]

Button

صفيف من الأزرار

بطاقة

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

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

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

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

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

ملاحظة: يمكنك إضافة ما يصل إلى 100 تطبيق مصغّر لكل بطاقة. ويتم تجاهل أي تطبيقات مصغّرة تتجاوز هذا الحدّ. ينطبق هذا الحدّ على كلّ من رسائل البطاقات ومحادثات البطاقات في تطبيقات 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"
                             }
                           ]
                         }
                       }
                     }
                   ]
                 }
               }
             ]
           }
         ]
       }
    }
  ]
}
الحقول
header

CardHeader

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

sections[]

Section

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

sectionDividerStyle

DividerStyle

نمط الفاصل بين العنوان والأقسام والتذييل

cardActions[]

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.

fixedFooter

CardFixedFooter

التذييل الثابت الذي يظهر في أسفل هذه البطاقة

يؤدي ضبط fixedFooter بدون تحديد primaryButton أو secondaryButton إلى حدوث خطأ. بالنسبة إلى تطبيقات Chat، يمكنك استخدام تذييلات ثابتة في مربّعات الحوار، ولكن ليس في رسائل البطاقات.

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

displayStyle

DisplayStyle

في إضافات Google Workspace، تُستخدَم لضبط سمات العرض الخاصة بـ peekCardHeader.

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

peekCardHeader

CardHeader

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

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

CardAction

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

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

الحقول
actionLabel

string

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

onClick

OnClick

إجراء onClick الخاص ببنود العمل هذه.

CardFixedFooter

تذييل ثابت (لاصق) يظهر في أسفل البطاقة

يؤدي ضبط fixedFooter بدون تحديد primaryButton أو secondaryButton إلى حدوث خطأ.

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

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

الحقول
primaryButton

Button

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

secondaryButton

Button

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

CardHeader

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

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

الحقول
title

string

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

subtitle

string

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

imageType

ImageType

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

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

imageUrl

string

عنوان URL لبروتوكول HTTPS للصورة في عنوان البطاقة.

imageAltText

string

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

DisplayStyle

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

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

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

DividerStyle

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

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

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

NestedWidget

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

الحقول

حقل الربط data

يمكن أن يكون data واحدًا فقط مما يلي:

textParagraph

TextParagraph

أداة فقرة نصية

buttonList

ButtonList

تطبيق مصغّر لقائمة الأزرار

image

Image

أداة صورة

القسم

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

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

الحقول
header

string

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

widgets[]

Widget

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

collapsible

bool

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

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

لتحديد التطبيقات المصغّرة المخفية، حدِّد uncollapsibleWidgetsCount.

uncollapsibleWidgetsCount

int32

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

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

collapseControl

CollapseControl

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

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

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

{
  "carouselCards": [
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "First text paragraph in carousel",
          }
        }
      ]
    },
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "Second text paragraph in carousel",
          }
        }
      ]
    },
    {
      "widgets": [
        {
          "textParagraph": {
            "text": "Third text paragraph in carousel",
          }
        }
      ]
    }
  ]
}

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

الحقول
carouselCards[]

CarouselCard

قائمة بالبطاقات المضمّنة في لوحة العرض الدوّارة

CarouselCard

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

الحقول
widgets[]

NestedWidget

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

footerWidgets[]

NestedWidget

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

شريحة

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

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

الحقول
icon

Icon

صورة الرمز إذا تم ضبط icon وtext، سيظهر الرمز قبل النص.

label

string

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

onClick

OnClick

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

enabled
(deprecated)

bool

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

disabled

bool

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

altText

string

النص البديل المستخدَم لتحسين إمكانية الاستخدام

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

ChipList

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

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

الحقول
layout

Layout

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

chips[]

Chip

صفيف من الشرائح

التنسيق

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

عمليات التعداد
LAYOUT_UNSPECIFIED لا تستخدِم هذه الميزة. غير محدد
WRAPPED القيمة التلقائية يتم عرض قائمة الشرائح في السطر التالي إذا لم تكن هناك مساحة أفقية كافية.
HORIZONTAL_SCROLLABLE يتم التمرير في الشرائح أفقيًا إذا لم تلائم المساحة المتوفّرة.

CollapseControl

يمثّل عنصر تحكّم في التوسيع والتصغير.

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

الحقول
horizontalAlignment

HorizontalAlignment

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

expandButton

Button

اختيارية: حدِّد زرًا قابلاً للتخصيص لتوسيع القسم. يجب ضبط الحقلين expandButton وcollapseButton. لن يتم تفعيل مجموعة حقول واحدة فقط. في حال عدم ضبط هذا الحقل، يتم استخدام الزر التلقائي.

collapseButton

Button

اختيارية: حدِّد زرًا قابلاً للتخصيص لتصغير القسم. يجب ضبط الحقلين expandButton وcollapseButton. لن يتم تفعيل مجموعة حقول واحدة فقط. في حال عدم ضبط هذا الحقل، يتم استخدام الزر التلقائي.

الأعمدة

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

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

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

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

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

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

  • مربّع الحوار الذي يظهر عندما يفتح المستخدمون الإضافة من مسودة رسالة إلكترونية
  • مربّع الحوار الذي يظهر عندما يفتح المستخدمون الإضافة من قائمة إضافة مرفق في حدث على "تقويم Google"
الحقول
columnItems[]

Column

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

العمود

عمود

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

الحقول
horizontalSizeStyle

HorizontalSizeStyle

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

horizontalAlignment

HorizontalAlignment

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

verticalAlignment

VerticalAlignment

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

widgets[]

Widgets

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

HorizontalSizeStyle

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

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

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

VerticalAlignment

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

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

عمليات التعداد
VERTICAL_ALIGNMENT_UNSPECIFIED لا تستخدِم هذه الميزة. غير محدد
CENTER القيمة التلقائية محاذاة التطبيقات المصغّرة في وسط عمود
TOP محاذاة التطبيقات المصغّرة في أعلى عمود
BOTTOM محاذاة التطبيقات المصغّرة في أسفل عمود

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

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

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

الحقول

حقل الربط data

يمكن أن يكون data واحدًا فقط مما يلي:

textParagraph

TextParagraph

أداة TextParagraph.

image

Image

أداة Image.

decoratedText

DecoratedText

أداة DecoratedText.

buttonList

ButtonList

أداة ButtonList.

textInput

TextInput

أداة TextInput.

selectionInput

SelectionInput

أداة SelectionInput.

dateTimePicker

DateTimePicker

أداة DateTimePicker.

chipList

ChipList

أداة ChipList.

DataActions

إجراء إضافة يؤدي إلى تعديل بيانات Google Workspace

الحقول
hostAppDataAction

HostAppDataActionMarkup

يحدِّد كيفية تعديل بيانات Google Workspace.

DateTimePicker

تتيح للمستخدمين إدخال تاريخ أو وقت أو تاريخ ووقت معًا. يتيح التحقّق من صحة عمليات إرسال النماذج. عند ضبط Action.all_widgets_are_required على true أو تحديد هذه الأداة في Action.required_widgets، يتم حظر إجراء الإرسال ما لم يتم اختيار قيمة. للحصول على مثال في تطبيقات Google Chat، يُرجى الاطّلاع على مقالة السماح للمستخدم باختيار تاريخ ووقت.

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

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

الحقول
name

string

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

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

label

string

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

type

DateTimePickerType

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

valueMsEpoch

int64

القيمة التلقائية المعروضة في التطبيق المصغّر، بالملي ثانية منذ وقت بدء حساب الفترة في نظام التشغيل يونكس

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

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

int32

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

onChangeAction

Action

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

DateTimePickerType

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

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

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

DecoratedText

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

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

الحقول
icon
(deprecated)

Icon

تمّ إيقاف هذا العمود نهائيًا واستبداله بالعمود startIcon.

startIcon

Icon

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

topLabel

string

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

text

string

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

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

wrapText

bool

إعداد التفاف النص إذا كان true، يتمّ عرض النص على عدّة أسطر. وإلا، يتم اقتطاع النص.

ينطبق التغيير على text فقط، وليس على topLabel وbottomLabel.

bottomLabel

string

النص الذي يظهر أسفل text يتم إغلاق المحتوى دائمًا.

onClick

OnClick

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

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

Button

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

switchControl

SwitchControl

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

endIcon

Icon

رمز يظهر بعد النص

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

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

إما مفتاح تبديل على غرار مفتاح التبديل أو مربّع اختيار داخل أداة decoratedText

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

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

الحقول
name

string

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

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

value

string

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

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

selected

bool

عندما يكون true، يكون المفتاح مفعّلاً.

onChangeAction

Action

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

controlType

ControlType

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

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

ControlType

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

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

عمليات التعداد
SWITCH مفتاح تبديل بنمط الإيقاف/التفعيل
CHECKBOX تمّ إيقاف هذا العمود نهائيًا واستبداله بالعمود CHECK_BOX.
CHECK_BOX مربّع اختيار

حاجز

لا يتضمّن هذا النوع أيّ حقول.

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

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

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

"divider": {}

EndNavigation

بالنسبة إلى الإضافات في Google Chat، يؤدي هذا الزر إلى إغلاق مربّع حوار.

الحقول
action

Action

بالنسبة إلى الإضافات في Google Chat، هو الإجراء الذي يؤدي إلى إغلاق مربّع حوار.

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

الإجراء

بالنسبة إلى الإضافات في Google Chat، الإجراءات التي تخصّ EndNavigation

عمليات التعداد
ACTION_UNSPECIFIED الإجراء غير محدّد.
CLOSE_DIALOG إغلاق مربّع حوار
CLOSE_DIALOG_AND_EXECUTE يُستخدَم لإغلاق مربّع حوار وإعادة تحميل البطاقة التي فتحت مربّع الحوار.

GetAutocompletionResponse

ردّ على الحصول على حاوية الإكمال التلقائي، والتي تتضمّن العناصر اللازمة لعرض عناصر الإكمال التلقائي لحقل النص

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

{
  "autoComplete": {
    "items": [
      {
        "text": "C++"
      },
      {
        "text": "Java"
      },
      {
        "text": "JavaScript"
      },
      {
        "text": "Python"
      }
    ]
  }
}
الحقول
autoComplete

Suggestions

schema

string

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

شبكة

تعرِض شبكة تتضمّن مجموعة من العناصر. يمكن أن تتضمّن العناصر نصًا أو صورًا فقط. بالنسبة إلى الأعمدة السريعة الاستجابة أو لتضمين أكثر من نص أو صور، استخدِم 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"
    }
  }
}
الحقول
title

string

النص الذي يظهر في عنوان الشبكة

items[]

GridItem

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

borderStyle

BorderStyle

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

columnCount

int32

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

onClick

OnClick

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

GridItem

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

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

الحقول
id

string

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

image

ImageComponent

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

title

string

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

subtitle

string

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

layout

GridItemLayout

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

GridItemLayout

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

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

عمليات التعداد
GRID_ITEM_LAYOUT_UNSPECIFIED لا تستخدِم هذه الميزة. غير محدد
TEXT_BELOW يظهر العنوان والعنوان الفرعي أسفل صورة عنصر الشبكة.
TEXT_ABOVE يظهر العنوان والعنوان الفرعي أعلى صورة عنصر الشبكة.

الرمز

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

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

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

الحقول
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

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

MaterialIcon

عرض أحد رموز Google Material

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

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

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

صورة

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

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

الحقول
imageUrl

string

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

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

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

OnClick

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

altText

string

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

ImageComponent

تمثّل صورة.

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

الحقول
imageUri

string

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

altText

string

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

cropStyle

ImageCropStyle

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

borderStyle

BorderStyle

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

ImageCropStyle

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

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

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

cropStyle {
 "type": "RECTANGLE_CUSTOM",
 "aspectRatio": 16/9
}
الحقول
type

ImageCropType

نوع المحصول

aspectRatio

double

نسبة العرض إلى الارتفاع التي سيتم استخدامها إذا كان نوع الاقتصاص هو 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.

LinkPreview

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

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

على سبيل المثال، يعرض ملف JSON التالي عنوانًا فريدًا لمعاينة الرابط وشيبته الذكية، وبطاقة معاينة تتضمّن عنوانًا ووصفًا نصيًا:

{
  "action": {
    "linkPreview": {
      "title": "Smart chip title",
      "linkPreviewTitle": "Link preview title",
      "previewCard": {
        "header": {
          "title": "Preview card header",
        },
        "sections": [
          {
            "widgets": [
              {
                "textParagraph": {
                  "text": "Description of the link."
                }
              }
            ]
          }
        ]
      }
    }
  }
}

يعرض المثال معاينة الرابط التالية:

مثال لمعاينة الرابط

الحقول
previewCard

Card

بطاقة تعرض معلومات عن رابط من خدمة تابعة لجهة خارجية

title

string

العنوان الذي يظهر في الشريحة الذكية لمعاينة الرابط. في حال عدم ضبط هذه السمة، ستعرض الشريحة الذكية العنوان الخاص بـ preview_card.

linkPreviewTitle

string

العنوان الذي يظهر في معاينة الرابط في حال عدم ضبط هذا الخيار، ستعرض معاينة الرابط العنوان الخاص بـ preview_card.

MaterialIcon

رمز Google Material Icon الذي يتضمّن أكثر من 2500 خيار

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

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

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

الحقول
name

string

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

fill

bool

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

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

weight

int32

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

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

grade

int32

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

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

ModifyCard

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

الحقول

حقل الربط operation

يمكن أن يكون operation واحدًا فقط مما يلي:

updateWidget

UpdateWidget

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

UpdateWidget

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

الحقول
حقل الربط updated_widget التحديثات التي تم إجراؤها على التطبيق المصغّر يمكن أن يكون updated_widget واحدًا فقط مما يلي:
selectionInputWidgetSuggestions

SelectionInputWidgetSuggestions

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

SelectionInputWidgetSuggestions

بالنسبة إلى تطبيق مصغّر selectionInput يستخدم قائمة اختيار متعدّد، يعرض هذا الحقل عناصر اختيار من مصدر بيانات ديناميكي خارجي.

الحقول
suggestions[]

SelectionItem

صفيف من العناصر القابلة للاختيار التي تظهر للمستخدم بعد أن يكتب في قائمة اختيار متعدّد.

تعديل البطاقات أو التنقّل بينها في حزمة بطاقات

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

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

1) عرض بطاقة جديدة (الانتقال إلى الأمام)

 navigations : {
    pushCard : CARD
  }

2) تعديل البطاقة في أعلى الحزمة (تحديث في مكانه)

  navigations : {
    popCard : true,
  }, {
    pushCard : CARD
  }

3) الرجوع خطوة واحدة بدون إجراء تعديل

  navigations : {
    popCard : true,
  }

4) الرجوع إلى عدة خطوات وتعديل تلك البطاقة

  navigations : {
    popCard : true,
  }, ... {
    pushCard : CARD
  }

5) الرجوع إلى عدة خطوات إلى CARD_NAME محدّد

  navigations : {
    popToCardName : CARD_NAME,
  }, {
    pushCard : CARD
  }

6) ارجع إلى الجذر وعدِّل تلك البطاقة.

  navigations : {
    popToRoot : true
  }, {
    pushCard : CARD
  }

7) انتقِل إلى البطاقة المحدّدة وانقر عليها أيضًا.

navigations : { popToCardName : CARD_NAME }, { popCard : true, }

8) استبدِل البطاقة العلوية ببطاقة جديدة.

  navigations : {
    updateCard : CARD
  }
الحقول

حقل الربط navigate_action

يمكن أن يكون navigate_action واحدًا فقط مما يلي:

popToRoot

bool

إزالة جميع البطاقات باستثناء البطاقة الجذر

pop

bool

إخراج بطاقة واحدة

popToCard

string

إخراج جميع البطاقات فوق البطاقة المحدّدة باستخدام اسم البطاقة المحدّد

pushCard

Card

تدفع البطاقة إلى أعلى حزمة البطاقات.

إصدار المطوّر: لفتح مربّع حوار أو تعديله في مربّعات الحوار في Google Chat

updateCard

Card

تعديل البطاقة العلوية ببطاقة جديدة والحفاظ على قيم حقول النموذج التي تم ملؤها بالنسبة إلى الحقل غير المكافئ، يتم إسقاط القيمة.

إصدار المطوّر: لفتح مربّع حوار أو تعديله في مربّعات الحوار في Google Chat

endNavigation

EndNavigation

بالنسبة إلى الإضافات في Google Chat، يؤدي هذا الزر إلى إغلاق مربّع حوار.

إشعار

إجراء يعرض إشعارًا في تطبيق Google Workspace المضيف عندما يتفاعل مستخدم مع بطاقة

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

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

الحقول
text

string

نص عادي لعرضه في الإشعار، بدون علامات HTML

OnClick

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

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

الحقول

حقل الربط data

يمكن أن يكون data واحدًا فقط مما يلي:

action

Action

إذا تم تحديده، يتم بدء إجراء من خلال هذا onClick.

openDynamicLinkAction

Action

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

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

card

Card

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

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

overflowMenu

OverflowMenu

يؤدي هذا الرمز onClick إلى فتح قائمة كاملة إذا تم تحديده.

OnClose

الإجراء الذي يتّخذه العميل عند إغلاق رابط تم فتحه من خلال إجراء OnClick

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

إذا تم ضبط معالِجَي OnOpen وOnClose، وتعذّر على منصة العميل إتاحة القيمتَين، تكون الأولوية لOnClose.

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

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

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

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

OpenAs

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

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

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

OverflowMenu

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

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

الحقول
items[]

OverflowMenuItem

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

OverflowMenuItem

خيار يمكن للمستخدمين تنفيذه في قائمة الخيارات الإضافية

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

الحقول
startIcon

Icon

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

text

string

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

onClick

OnClick

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

disabled

bool

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

RenderActions

مجموعة من تعليمات العرض التي تُطلب من الإضافة تنفيذ إجراء في بطاقة أو في التطبيق المضيف

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

الحقول
action

Action

الإجراء الذي يمكن للإضافات استخدامه لتعديل واجهة المستخدم.

إصدار المطوّرين: الإضافات في Google Chat

hostAppAction

HostAppActionMarkup

الإجراءات التي تعالجّها تطبيقات مضيفة فردية

schema

string

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

الإجراء

الإجراءات التي يمكن للمكونات الإضافية استخدامها في البطاقات أو التطبيق المضيف

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

الحقول
navigations[]

Navigation

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

إصدار المطوّرين: الإضافات في Google Chat

notification

Notification

تعرِض هذه القيمة إشعارًا في تطبيق Google Workspace المضيف عندما يتفاعل مستخدم مع بطاقة.

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

linkPreview

LinkPreview

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

modifyOperations[]

ModifyCard

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

SelectionInput

تطبيق مصغّر ينشئ عنصرًا واحدًا أو أكثر من عناصر واجهة المستخدم يمكن للمستخدمين اختيارها تتيح هذه الميزة التحقّق من صحة إرسال النماذج لقوائم الطعام في dropdown وmultiselect فقط. عند ضبط Action.all_widgets_are_required على true أو تحديد هذه الأداة في Action.required_widgets، يتم حظر إجراء الإرسال ما لم يتم اختيار قيمة. على سبيل المثال، قائمة منسدلة أو مربّعات اختيار. يمكنك استخدام هذه الأداة المصغّرة لجمع البيانات التي يمكن توقّعها أو تعدادها. للحصول على مثال في تطبيقات Google Chat، اطّلِع على إضافة عناصر واجهة مستخدم قابلة للاختيار.

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

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

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

الحقول
name

string

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

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

label

string

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

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

type

SelectionType

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

items[]

SelectionItem

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

onChangeAction

Action

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

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

multiSelectMaxSelectedItems

int32

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

multiSelectMinQueryLength

int32

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

في حال عدم ضبطها، تستخدم قائمة الاختيار المتعدّد القيم التلقائية التالية:

  • إذا كانت القائمة تستخدم صفيفًا ثابتًا من SelectionInput عنصر، تكون القيمة التلقائية هي 0 حرف ويتم تعبئة العناصر من الصفيف على الفور.
  • إذا كانت القائمة تستخدِم مصدر بيانات ديناميكيًا (multi_select_data_source)، يتم ضبط الإعداد التلقائي على 3 أحرف قبل طلب البحث من مصدر البيانات لعرض العناصر المقترَحة.

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

تتوفّر هذه الميزة لتطبيقات Google Chat ولا تتوفّر لإضافات Google Workspace. يمكن أن يكون multi_select_data_source واحدًا فقط مما يلي:

externalDataSource

Action

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

platformDataSource

PlatformDataSource

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

PlatformDataSource

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

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

الحقول
حقل الربط data_source مصدر البيانات يمكن أن يكون data_source واحدًا فقط مما يلي:
commonDataSource

CommonDataSource

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

hostAppDataSource

HostAppDataSourceMarkup

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

يتوافق هذا الحقل مع مكتبات Google API Client Libraries، ولكنّه غير متوفّر في مكتبات Cloud Client Libraries. لمزيد من المعلومات، يُرجى الاطّلاع على تثبيت مكتبات العملاء.

CommonDataSource

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

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

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

SelectionItem

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

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

الحقول
text

string

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

value

string

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

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

selected

bool

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

startIconUri

string

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

bottomText

string

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

SelectionType

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

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

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

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

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

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

  • بيانات Google Workspace: تتم تعبئة العناصر باستخدام بيانات من Google Workspace، مثل مستخدمي Google Workspace أو مساحات Google Chat.
  • البيانات الخارجية: يتم تعبئة العناصر من مصدر بيانات خارجي خارج Google Workspace.

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

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

SubmitFormResponse

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

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

{
  "renderActions": {
    "action": {
      "notification": {
        "text": "Email address is added: salam.heba@example.com"
      }
    },
    "hostAppAction": {
      "gmailAction": {
        "openCreatedDraftAction": {
          "draftId": "msg-a:r-79766936926021702",
          "threadServerPermId": "thread-f:15700999851086004"
        }
      }
    }
  }
}
الحقول
renderActions

RenderActions

مجموعة من تعليمات العرض التي تُطلب من البطاقة تنفيذ إجراء و/أو تُطلب من التطبيق المضيف للإضافة تنفيذ إجراء خاص بالتطبيق

stateChanged

bool

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

schema

string

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

اقتراحات

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

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

تساعد القيم المقترَحة المستخدمين في إدخال قيم يمكن لتطبيقك فهمها. عند الإشارة إلى JavaScript، قد يُدخِل بعض المستخدمين javascript والبعض الآخر java script. يمكن أن يؤدي اقتراح JavaScript إلى توحيد كيفية تفاعل المستخدمين مع تطبيقك.

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

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

الحقول
items[]

SuggestionItem

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

SuggestionItem

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

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

الحقول

حقل الربط content

يمكن أن يكون content واحدًا فقط مما يلي:

text

string

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

TextInput

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

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

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

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

الحقول
name

string

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

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

label

string

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

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

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

hintText

string

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

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

value

string

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

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

type

Type

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

onChangeAction

Action

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

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

initialSuggestions

Suggestions

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

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

تساعد القيم المقترَحة المستخدمين في إدخال قيم يمكن لتطبيقك فهمها. عند الإشارة إلى JavaScript، قد يُدخِل بعض المستخدمين javascript والبعض الآخر java script. يمكن أن يؤدي اقتراح JavaScript إلى توحيد كيفية تفاعل المستخدمين مع تطبيقك.

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

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

autoCompleteAction

Action

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

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

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

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

validation

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 يكون لـ "حقل إدخال النص" ارتفاع ثابت يتضمّن عدة أسطر.

TextParagraph

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

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

الحقول
text

string

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

maxLines

int32

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

القيمة التلقائية هي 0، وفي هذه الحالة يتم عرض كل السياق. ويتم تجاهل القيم السلبية.

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

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

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

الحقول
characterLimit

int32

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

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

inputType

InputType

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

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

InputType

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

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

أداة

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

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

الحقول
horizontalAlignment

HorizontalAlignment

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

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

TextParagraph

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

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

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

Image

لعرض صورة

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

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

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

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

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

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

DateTimePicker

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

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

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

Divider

تعرِض هذه السمة خطًا أفقيًا بين التطبيقات المصغّرة.

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

"divider": {
}
grid

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

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"
          }
        }
      ]
    }
  ]
}
carousel

Carousel

تحتوي لوحة العرض الدوّارة على مجموعة من التطبيقات المصغّرة المُدمجة. على سبيل المثال، هذا تمثيل بتنسيق JSON للوحة عرض دوّارة تحتوي على فقرتَين نصيتين.

{
  "widgets": [
    {
      "textParagraph": {
        "text": "First text paragraph in the carousel."
      }
    },
    {
      "textParagraph": {
        "text": "Second text paragraph in the carousel."
      }
    }
  ]
}
chipList

ChipList

قائمة بشرائح

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

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

HorizontalAlignment

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

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

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

ImageType

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

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

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