Cards v2

কার্ড

Google Chat মেসেজে বা Google Workspace অ্যাড-অনে দেখানো কার্ড ইন্টারফেস।

কার্ডগুলি একটি সংজ্ঞায়িত লেআউট, বোতামগুলির মতো ইন্টারেক্টিভ UI উপাদান এবং ছবির মতো সমৃদ্ধ মিডিয়া সমর্থন করে৷ বিস্তারিত তথ্য উপস্থাপন করতে, ব্যবহারকারীদের কাছ থেকে তথ্য সংগ্রহ করতে এবং পরবর্তী পদক্ষেপ নিতে ব্যবহারকারীদের গাইড করতে কার্ড ব্যবহার করুন।

কার্ড নির্মাতার সাথে কার্ড ডিজাইন এবং পূর্বরূপ দেখুন।

কার্ড বিল্ডার খুলুন

কিভাবে কার্ড তৈরি করতে হয় তা জানতে, নিম্নলিখিত ডকুমেন্টেশন দেখুন:

দ্রষ্টব্য: আপনি প্রতি কার্ডে 100টি পর্যন্ত উইজেট যোগ করতে পারেন। এই সীমার বাইরে যেকোন উইজেট উপেক্ষা করা হয়। এই সীমাটি Google Chat অ্যাপে কার্ড মেসেজ এবং ডায়ালগ এবং Google Workspace অ্যাড-অন-এর কার্ডের ক্ষেত্রেই প্রযোজ্য।

উদাহরণ: একটি Google চ্যাট অ্যাপের জন্য কার্ড বার্তা

উদাহরণ যোগাযোগ কার্ড

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": "[email protected]"
                 }
               },
               {
                 "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 অ্যাপগুলির জন্য অনুপলব্ধ।

কার্ড হেডার

একটি কার্ড হেডার প্রতিনিধিত্ব করে। Google চ্যাট অ্যাপের উদাহরণের জন্য, একটি শিরোনাম যোগ করুন দেখুন।

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

কার্ড হেডারে ছবির HTTPS URL।

imageAltText

string

এই চিত্রের বিকল্প পাঠ্য যা অ্যাক্সেসযোগ্যতার জন্য ব্যবহৃত হয়।

ইমেজ টাইপ

ছবি ক্রপ করতে ব্যবহৃত আকৃতি।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

এনামস
SQUARE ডিফল্ট মান। ছবিতে একটি বর্গাকার মুখোশ প্রয়োগ করুন। উদাহরণস্বরূপ, একটি 4x3 চিত্র 3x3 হয়ে যায়।
CIRCLE ছবিতে একটি বৃত্তাকার মুখোশ প্রয়োগ করুন। উদাহরণস্বরূপ, একটি 4x3 চিত্র 3 ব্যাস সহ একটি বৃত্তে পরিণত হয়।

ধারা

একটি বিভাগে উইজেটগুলির একটি সংগ্রহ রয়েছে যা উল্লম্বভাবে উল্লম্বভাবে রেন্ডার করা হয় যেগুলি নির্দিষ্ট করা হয়েছে৷

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

JSON প্রতিনিধিত্ব
{
  "header": string,
  "widgets": [
    {
      object (Widget)
    }
  ],
  "collapsible": boolean,
  "uncollapsibleWidgetsCount": integer,
  "collapseControl": {
    object (CollapseControl)
  }
}
ক্ষেত্র
header

string

একটি বিভাগের শীর্ষে প্রদর্শিত পাঠ্য। সহজ এইচটিএমএল ফরম্যাটেড টেক্সট সমর্থন করে। টেক্সট ফর্ম্যাট করার বিষয়ে আরও তথ্যের জন্য, Google Chat অ্যাপে টেক্সট ফর্ম্যাটিং এবং Google Workspace অ্যাড-অনগুলিতে টেক্সট ফর্ম্যাটিং দেখুন।

widgets[]

object ( Widget )

বিভাগে সব উইজেট. কমপক্ষে একটি উইজেট থাকতে হবে।

collapsible

boolean

এই বিভাগটি সংকোচনযোগ্য কিনা তা নির্দেশ করে৷

সংকোচনযোগ্য বিভাগগুলি কিছু বা সমস্ত উইজেট লুকিয়ে রাখে, তবে ব্যবহারকারীরা আরও দেখান ক্লিক করে লুকানো উইজেটগুলি প্রকাশ করতে বিভাগটি প্রসারিত করতে পারে। ব্যবহারকারীরা কম দেখান ক্লিক করে আবার উইজেটগুলি লুকিয়ে রাখতে পারেন৷

কোন উইজেটগুলি লুকানো আছে তা নির্ধারণ করতে, uncollapsibleWidgetsCount নির্দিষ্ট করুন।

uncollapsibleWidgetsCount

integer

অসংলগ্ন উইজেটের সংখ্যা যা একটি বিভাগ ভেঙে গেলেও দৃশ্যমান থাকে।

উদাহরণস্বরূপ, যখন একটি বিভাগে পাঁচটি উইজেট থাকে এবং uncollapsibleWidgetsCount 2 তে সেট করা হয়, প্রথম দুটি উইজেট সর্বদা দেখানো হয় এবং শেষ তিনটি ডিফল্টরূপে ভেঙে ফেলা হয়। uncollapsibleWidgetsCount শুধুমাত্র তখনই বিবেচনা করা হয় যখন collapsible true হয়।

collapseControl

object ( CollapseControl )

ঐচ্ছিক। বিভাগের প্রসারিত এবং সঙ্কুচিত বোতামটি সংজ্ঞায়িত করুন। বিভাগটি সংকোচনযোগ্য হলেই এই বোতামটি দেখানো হবে। এই ক্ষেত্র সেট না থাকলে, ডিফল্ট বোতাম ব্যবহার করা হয়।

উইজেট

প্রতিটি কার্ড উইজেট দিয়ে তৈরি।

একটি উইজেট হল একটি যৌগিক বস্তু যা পাঠ্য, চিত্র, বোতাম এবং অন্যান্য অবজেক্ট প্রকারের একটিকে উপস্থাপন করতে পারে।

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)
  },
  "carousel": {
    object (Carousel)
  },
  "chipList": {
    object (ChipList)
  }
  // End of list of possible types for union field data.
}
ক্ষেত্র
horizontalAlignment

enum ( HorizontalAlignment )

উইজেটগুলি একটি কলামের বাম, ডান বা কেন্দ্রে সারিবদ্ধ কিনা তা নির্দিষ্ট করে৷

ইউনিয়ন ফিল্ড data । একটি উইজেটে শুধুমাত্র নিম্নলিখিত আইটেমগুলির একটি থাকতে পারে৷ আপনি আরও আইটেম প্রদর্শন করতে একাধিক উইজেট ক্ষেত্র ব্যবহার করতে পারেন। data নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
textParagraph

object ( TextParagraph )

একটি পাঠ্য অনুচ্ছেদ প্রদর্শন করে। সহজ এইচটিএমএল ফরম্যাটেড টেক্সট সমর্থন করে। টেক্সট ফর্ম্যাট করার বিষয়ে আরও তথ্যের জন্য, 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": "[email protected]",
  "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টি আইটেম এবং 2টি কলাম সহ একটি গ্রিডে 5টি সারি রয়েছে৷ 11টি আইটেম এবং 2টি কলাম সহ একটি গ্রিডে 6টি সারি রয়েছে।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

উদাহরণস্বরূপ, নিম্নলিখিত JSON একটি একক আইটেম সহ একটি 2 কলাম গ্রিড তৈরি করে:

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

2টি কলাম পর্যন্ত প্রদর্শন করে।

2টির বেশি কলাম অন্তর্ভুক্ত করতে বা সারি ব্যবহার করতে, Grid উইজেট ব্যবহার করুন।

উদাহরণস্বরূপ, নিম্নলিখিত JSON 2টি কলাম তৈরি করে যার প্রতিটিতে পাঠ্য অনুচ্ছেদ রয়েছে:

"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

object ( Carousel )

একটি ক্যারোজেলে নেস্টেড উইজেটগুলির একটি সংগ্রহ রয়েছে৷ উদাহরণস্বরূপ, এটি একটি ক্যারোজেলের একটি JSON উপস্থাপনা যাতে দুটি পাঠ্য অনুচ্ছেদ রয়েছে৷

{
  "widgets": [
    {
      "textParagraph": {
        "text": "First text paragraph in the carousel."
      }
    },
    {
      "textParagraph": {
        "text": "Second text paragraph in the carousel."
      }
    }
  ]
}
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 Chat অ্যাপে টেক্সট ফর্ম্যাটিং এবং Google Workspace অ্যাড-অনগুলিতে টেক্সট ফর্ম্যাটিং দেখুন।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

JSON প্রতিনিধিত্ব
{
  "text": string,
  "maxLines": integer,
  "textSyntax": enum (TextSyntax)
}
ক্ষেত্র
text

string

উইজেটে দেখানো টেক্সট।

maxLines

integer

উইজেটে প্রদর্শিত পাঠ্যের সর্বোচ্চ সংখ্যক লাইন। যদি পাঠ্যটি নির্দিষ্ট সর্বোচ্চ সংখ্যক লাইন অতিক্রম করে, অতিরিক্ত বিষয়বস্তু একটি শো মোর বোতামের পিছনে লুকিয়ে রাখা হয়। পাঠ্যটি নির্দিষ্ট সর্বোচ্চ সংখ্যক লাইনের চেয়ে সমান বা ছোট হলে, একটি আরও দেখান বোতাম প্রদর্শিত হবে না।

ডিফল্ট মান হল 0, এই ক্ষেত্রে সমস্ত প্রসঙ্গ প্রদর্শিত হয়। নেতিবাচক মান উপেক্ষা করা হয়.

textSyntax

enum ( TextSyntax )

পাঠ্যের সিনট্যাক্স। সেট করা না থাকলে, পাঠ্যটি HTML হিসাবে রেন্ডার করা হয়।

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

টেক্সটসিনট্যাক্স

টেক্সট ফর্ম্যাট করার জন্য ব্যবহার করার জন্য সিনট্যাক্স।

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

এনামস
TEXT_SYNTAX_UNSPECIFIED অনির্দিষ্ট থাকলে পাঠ্যটি HTML হিসাবে রেন্ডার করা হয়।
HTML পাঠ্যটি HTML হিসাবে রেন্ডার করা হয়। এটি ডিফল্ট মান।
MARKDOWN পাঠ্যটি মার্কডাউন হিসাবে রেন্ডার করা হয়েছে।

ছবি

একটি URL দ্বারা নির্দিষ্ট করা একটি চিত্র এবং একটি onClick অ্যাকশন থাকতে পারে৷ একটি উদাহরণের জন্য, একটি ছবি যোগ করুন দেখুন।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

JSON প্রতিনিধিত্ব
{
  "imageUrl": string,
  "onClick": {
    object (OnClick)
  },
  "altText": string
}
ক্ষেত্র
imageUrl

string

HTTPS URL যেটি ছবিটি হোস্ট করে।

যেমন:

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

object ( OnClick )

যখন একজন ব্যবহারকারী ছবিটিতে ক্লিক করেন, তখন ক্লিকটি এই ক্রিয়াকে ট্রিগার করে।

altText

string

এই চিত্রের বিকল্প পাঠ্য যা অ্যাক্সেসযোগ্যতার জন্য ব্যবহৃত হয়।

অনক্লিক

ব্যবহারকারীরা একটি কার্ডে একটি ইন্টারেক্টিভ উপাদান, যেমন একটি বোতামে ক্লিক করলে কীভাবে প্রতিক্রিয়া জানাবেন তা প্রতিনিধিত্ব করে৷

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 একটি ওভারফ্লো মেনু খোলে।

অ্যাকশন

ফর্ম জমা দেওয়ার সময় আচরণের বর্ণনা দেয় এমন একটি ক্রিয়া। উদাহরণস্বরূপ, আপনি ফর্মটি পরিচালনা করতে একটি Apps স্ক্রিপ্ট স্ক্রিপ্ট আহ্বান করতে পারেন৷ যদি ক্রিয়াটি ট্রিগার করা হয়, ফর্মের মানগুলি সার্ভারে পাঠানো হয়।

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 । চ্যাট অ্যাপ্লিকেশানগুলিতে কার্ড বার্তাগুলির জন্য, আপনাকে অবশ্যই অ্যাকশনের ResponseType UPDATE_MESSAGE এ সেট করতে হবে এবং যে কার্ডটিতে অ্যাকশন রয়েছে সেই কার্ড থেকে একই cardId ব্যবহার করতে হবে৷

false হলে, ক্রিয়াটি ট্রিগার হলে ফর্মের মানগুলি সাফ করা হয়। ক্রিয়াটি প্রক্রিয়াকরণের সময় ব্যবহারকারীকে পরিবর্তন করা থেকে বিরত রাখতে, LoadIndicator SPINNER এ সেট করুন।

interaction

enum ( Interaction )

ঐচ্ছিক। একটি ডায়ালগ খোলার সময় প্রয়োজন।

একজন ব্যবহারকারীর সাথে ইন্টারঅ্যাকশনের প্রতিক্রিয়ায় কী করবেন, যেমন একজন ব্যবহারকারী কার্ড বার্তায় একটি বোতামে ক্লিক করছেন।

অনির্দিষ্ট থাকলে, অ্যাপটি একটি action সম্পাদন করে সাড়া দেয় - যেমন একটি লিঙ্ক খোলা বা একটি ফাংশন চালানো - স্বাভাবিক হিসাবে।

একটি interaction নির্দিষ্ট করে, অ্যাপটি বিশেষ ইন্টারেক্টিভ উপায়ে প্রতিক্রিয়া জানাতে পারে। উদাহরণস্বরূপ, OPEN_DIALOGinteraction সেট করে, অ্যাপটি একটি ডায়ালগ খুলতে পারে। নির্দিষ্ট করা হলে, একটি লোডিং সূচক দেখানো হয় না। একটি অ্যাড-অনের জন্য নির্দিষ্ট করা হলে, পুরো কার্ডটি ছিনতাই করা হয় এবং ক্লায়েন্টে কিছুই দেখানো হয় না।

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

requiredWidgets[]

string

ঐচ্ছিক। একটি বৈধ জমা দেওয়ার জন্য এই অ্যাকশনের প্রয়োজন এমন উইজেটের নাম দিয়ে এই তালিকাটি পূরণ করুন।

এই অ্যাকশনটি চালু করার সময় এখানে তালিকাভুক্ত উইজেটগুলির একটি মান না থাকলে, ফর্ম জমা দেওয়া বাতিল করা হয়।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

allWidgetsAreRequired

boolean

ঐচ্ছিক। যদি এটি সত্য হয়, তাহলে সমস্ত উইজেট এই কর্মের জন্য প্রয়োজনীয় বলে বিবেচিত হয়।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

অ্যাকশন প্যারামিটার

যখন অ্যাকশন পদ্ধতি চালু করা হয় তখন সরবরাহ করার জন্য স্ট্রিং প্যারামিটারের তালিকা। উদাহরণস্বরূপ, তিনটি স্নুজ বোতাম বিবেচনা করুন: এখনই স্নুজ করুন, একদিন স্নুজ করুন বা পরের সপ্তাহে স্নুজ করুন৷ আপনি action method = snooze() , স্ট্রিং প্যারামিটারের তালিকায় স্নুজ টাইপ এবং স্নুজ সময় পাস করে।

আরও জানতে, CommonEventObject দেখুন।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

JSON প্রতিনিধিত্ব
{
  "key": string,
  "value": string
}
ক্ষেত্র
key

string

অ্যাকশন স্ক্রিপ্টের জন্য প্যারামিটারের নাম।

value

string

প্যারামিটারের মান।

লোড ইন্ডিকেটর

অ্যাকশনে কল করার সময় অ্যাকশনটি যে লোডিং সূচকটি প্রদর্শন করে তা নির্দিষ্ট করে।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

এনামস
SPINNER কন্টেন্ট লোড হচ্ছে তা নির্দেশ করতে একটি স্পিনার দেখায়।
NONE কিছুই প্রদর্শিত হয় না.

মিথস্ক্রিয়া

ঐচ্ছিক। একটি ডায়ালগ খোলার সময় প্রয়োজন।

একজন ব্যবহারকারীর সাথে ইন্টারঅ্যাকশনের প্রতিক্রিয়ায় কী করবেন, যেমন একজন ব্যবহারকারী কার্ড বার্তায় একটি বোতামে ক্লিক করছেন।

অনির্দিষ্ট থাকলে, অ্যাপটি একটি action সম্পাদন করে সাড়া দেয় - যেমন একটি লিঙ্ক খোলা বা একটি ফাংশন চালানো - স্বাভাবিক হিসাবে।

একটি interaction নির্দিষ্ট করে, অ্যাপটি বিশেষ ইন্টারেক্টিভ উপায়ে প্রতিক্রিয়া জানাতে পারে। উদাহরণস্বরূপ, OPEN_DIALOGinteraction সেট করে, অ্যাপটি একটি ডায়ালগ খুলতে পারে।

নির্দিষ্ট করা হলে, একটি লোডিং সূচক দেখানো হয় না। একটি অ্যাড-অনের জন্য নির্দিষ্ট করা হলে, পুরো কার্ডটি ছিনতাই করা হয় এবং ক্লায়েন্টে কিছুই দেখানো হয় না।

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

এনামস
INTERACTION_UNSPECIFIED ডিফল্ট মান। action স্বাভাবিক হিসাবে সঞ্চালিত হয়।
OPEN_DIALOG

একটি ডায়ালগ খোলে, একটি উইন্ডোযুক্ত, কার্ড-ভিত্তিক ইন্টারফেস যা চ্যাট অ্যাপ ব্যবহারকারীদের সাথে ইন্টারঅ্যাক্ট করতে ব্যবহার করে।

কার্ড বার্তাগুলিতে বোতাম-ক্লিকগুলির প্রতিক্রিয়া হিসাবে শুধুমাত্র চ্যাট অ্যাপগুলি দ্বারা সমর্থিত৷ একটি অ্যাড-অনের জন্য নির্দিষ্ট করা হলে, পুরো কার্ডটি ছিনতাই করা হয় এবং ক্লায়েন্টে কিছুই দেখানো হয় না।

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

OpenAs

যখন একটি OnClick অ্যাকশন একটি লিঙ্ক খোলে, তখন ক্লায়েন্ট এটিকে একটি পূর্ণ-আকারের উইন্ডো হিসাবে খুলতে পারে (যদি এটি ক্লায়েন্ট দ্বারা ব্যবহৃত ফ্রেম হয়), অথবা একটি ওভারলে (যেমন একটি পপ-আপ)। বাস্তবায়ন ক্লায়েন্ট প্ল্যাটফর্মের ক্ষমতার উপর নির্ভর করে এবং নির্বাচিত মান উপেক্ষা করা হতে পারে যদি ক্লায়েন্ট এটি সমর্থন না করে। FULL_SIZE সমস্ত ক্লায়েন্ট দ্বারা সমর্থিত।

Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ এবং Google Chat অ্যাপগুলির জন্য অনুপলব্ধ।

এনামস
FULL_SIZE লিঙ্কটি একটি পূর্ণ-আকারের উইন্ডো হিসাবে খোলে (যদি এটি ক্লায়েন্ট দ্বারা ব্যবহৃত ফ্রেম হয়)।
OVERLAY লিঙ্কটি একটি ওভারলে হিসাবে খোলে, যেমন একটি পপ-আপ৷

অনক্লোজ

একটি OnClick অ্যাকশন দ্বারা খোলা একটি লিঙ্ক বন্ধ হলে ক্লায়েন্ট কী করে।

বাস্তবায়ন ক্লায়েন্ট প্ল্যাটফর্ম ক্ষমতার উপর নির্ভর করে। উদাহরণস্বরূপ, একটি ওয়েব ব্রাউজার একটি OnClose হ্যান্ডলারের সাথে একটি পপ-আপ উইন্ডোতে একটি লিঙ্ক খুলতে পারে।

যদি OnOpen এবং OnClose উভয় হ্যান্ডলার সেট করা থাকে এবং ক্লায়েন্ট প্ল্যাটফর্ম উভয় মানকে সমর্থন করতে না পারে, তাহলে OnClose অগ্রাধিকার নেয়।

Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ এবং Google Chat অ্যাপগুলির জন্য অনুপলব্ধ।

এনামস
NOTHING ডিফল্ট মান। কার্ডটি পুনরায় লোড হয় না; কিছুই হয় না
RELOAD

চাইল্ড উইন্ডো বন্ধ হওয়ার পরে কার্ডটি পুনরায় লোড করে।

OpenAs.OVERLAY এর সাথে ব্যবহার করা হলে, চাইল্ড উইন্ডোটি একটি মডেল ডায়ালগ হিসেবে কাজ করে এবং যতক্ষণ না চাইল্ড উইন্ডো বন্ধ হয় ততক্ষণ পর্যন্ত প্যারেন্ট কার্ড ব্লক করা হয়।

ওভারফ্লো মেনু

একটি উইজেট যা এক বা একাধিক ক্রিয়া সহ একটি পপ-আপ মেনু উপস্থাপন করে যা ব্যবহারকারীরা আহ্বান করতে পারে৷ উদাহরণস্বরূপ, একটি কার্ডে নন-প্রামারি অ্যাকশন দেখানো। আপনি এই উইজেটটি ব্যবহার করতে পারেন যখন অ্যাকশনগুলি উপলব্ধ জায়গায় ফিট না হয়। ব্যবহার করতে, এই উইজেটটিকে সমর্থন করে এমন উইজেটগুলির OnClick অ্যাকশনে এই উইজেটটি নির্দিষ্ট করুন৷ উদাহরণস্বরূপ, একটি Button

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

JSON প্রতিনিধিত্ব
{
  "items": [
    {
      object (OverflowMenuItem)
    }
  ]
}
ক্ষেত্র
items[]

object ( 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

মেনু বিকল্প নিষ্ক্রিয় কিনা। ডিফল্ট থেকে মিথ্যা.

আইকন

একটি কার্ডে একটি উইজেটে প্রদর্শিত একটি আইকন৷ 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

একটি HTTPS URL এ হোস্ট করা একটি কাস্টম আইকন প্রদর্শন করুন৷

যেমন:

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

সমর্থিত ফাইল প্রকারের মধ্যে রয়েছে .png এবং .jpg

materialIcon

object ( MaterialIcon )

গুগল ম্যাটেরিয়াল আইকনগুলির একটি প্রদর্শন করুন।

উদাহরণস্বরূপ, একটি চেকবক্স আইকন প্রদর্শন করতে, ব্যবহার করুন

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

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

ম্যাটেরিয়াল আইকন

একটি Google ম্যাটেরিয়াল আইকন , যাতে 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 ম্যাটেরিয়াল আইকনে সংজ্ঞায়িত আইকনের নাম, উদাহরণস্বরূপ, check_box । যেকোন অবৈধ নাম পরিত্যাগ করা হয় এবং খালি স্ট্রিং দিয়ে প্রতিস্থাপিত হয় এবং এর ফলে আইকন রেন্ডার করতে ব্যর্থ হয়।

fill

boolean

আইকনটি ভরাট হিসাবে রেন্ডার করা হয় কিনা। ডিফল্ট মান মিথ্যা।

বিভিন্ন আইকন সেটিংসের পূর্বরূপ দেখতে, Google ফন্ট আইকনগুলিতে যান এবং কাস্টমাইজের অধীনে সেটিংস সামঞ্জস্য করুন।

weight

integer

আইকনের স্ট্রোকের ওজন। {100, 200, 300, 400, 500, 600, 700} থেকে বেছে নিন। অনুপস্থিত থাকলে, ডিফল্ট মান 400 হয়। অন্য কোনো মান নির্দিষ্ট করা থাকলে, ডিফল্ট মান ব্যবহার করা হয়।

বিভিন্ন আইকন সেটিংসের পূর্বরূপ দেখতে, Google ফন্ট আইকনগুলিতে যান এবং কাস্টমাইজের অধীনে সেটিংস সামঞ্জস্য করুন।

grade

integer

ওজন এবং গ্রেড একটি প্রতীকের বেধকে প্রভাবিত করে। গ্রেডের সামঞ্জস্যগুলি ওজনের সামঞ্জস্যের চেয়ে বেশি দানাদার এবং প্রতীকের আকারের উপর একটি ছোট প্রভাব ফেলে। {-25, 0, 200} থেকে বেছে নিন। অনুপস্থিত থাকলে, ডিফল্ট মান 0। অন্য কোনো মান নির্দিষ্ট করা থাকলে, ডিফল্ট মান ব্যবহার করা হয়।

বিভিন্ন আইকন সেটিংসের পূর্বরূপ দেখতে, Google ফন্ট আইকনগুলিতে যান এবং কাস্টমাইজের অধীনে সেটিংস সামঞ্জস্য করুন।

সজ্জিত পাঠ্য

একটি উইজেট যা ঐচ্ছিক সজ্জা সহ পাঠ্য প্রদর্শন করে যেমন পাঠ্যের উপরে বা নীচে একটি লেবেল, পাঠ্যের সামনে একটি আইকন, একটি নির্বাচন উইজেট বা পাঠ্যের পরে একটি বোতাম। Google চ্যাট অ্যাপের উদাহরণের জন্য, শোভাকর পাঠ্য সহ প্রদর্শন পাঠ্য দেখুন।

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

JSON প্রতিনিধিত্ব
{
  "icon": {
    object (Icon)
  },
  "startIcon": {
    object (Icon)
  },
  "startIconVerticalAlignment": enum (VerticalAlignment),
  "topLabel": string,
  "topLabelText": {
    object (TextParagraph)
  },
  "text": string,
  "contentText": {
    object (TextParagraph)
  },
  "wrapText": boolean,
  "bottomLabel": string,
  "bottomLabelText": {
    object (TextParagraph)
  },
  "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 )

পাঠ্যের সামনে প্রদর্শিত আইকন।

startIconVerticalAlignment

enum ( VerticalAlignment )

ঐচ্ছিক। স্টার্ট আইকনের উল্লম্ব প্রান্তিককরণ। সেট না থাকলে, আইকনটি উল্লম্বভাবে কেন্দ্রীভূত হবে।

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

topLabel

string

text উপরে প্রদর্শিত টেক্সট. সবসময় ছোট করে।

topLabelText

object ( TextParagraph )

topLabel এর সমতুল্য TextParagraph । সবসময় ছোট করে। topLabel চেয়ে জটিল বিন্যাসের জন্য অনুমতি দেয়।

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

text

string

প্রয়োজন। প্রাথমিক পাঠ্য।

সহজ বিন্যাস সমর্থন করে। টেক্সট ফর্ম্যাট করার বিষয়ে আরও তথ্যের জন্য, Google Chat অ্যাপে টেক্সট ফর্ম্যাটিং এবং Google Workspace অ্যাড-অনগুলিতে টেক্সট ফর্ম্যাটিং দেখুন।

contentText

object ( TextParagraph )

TextParagraph text সমতুল্য। text চেয়ে জটিল বিন্যাসের জন্য অনুমতি দেয়৷

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

wrapText

boolean

মোড়ানো পাঠ্য সেটিং। true হলে, টেক্সট মোড়ানো হয় এবং একাধিক লাইনে প্রদর্শিত হয়। অন্যথায়, টেক্সট কাটা হয়.

শুধুমাত্র text ক্ষেত্রে প্রযোজ্য, topLabel এবং bottomLabel নয়।

bottomLabel

string

যে টেক্সট text নিচে প্রদর্শিত হবে. সবসময় wraps.

bottomLabelText

object ( TextParagraph )

bottomLabel সমতুল্য TextParagraph । সবসময় wraps. bottomLabel চেয়ে আরও জটিল বিন্যাসের অনুমতি দেয়।

Google Chat অ্যাপের জন্য উপলভ্য এবং Google Workspace অ্যাড-অনগুলির জন্য অনুপলব্ধ।

onClick

object ( OnClick )

ব্যবহারকারীরা topLabel বা bottomLabel ক্লিক করলে এই ক্রিয়াটি ট্রিগার হয়।

ইউনিয়ন ক্ষেত্র control । একটি বোতাম, সুইচ, চেকবক্স বা চিত্র যা decoratedText উইজেটে পাঠ্যের ডানদিকে প্রদর্শিত হয়। control নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
button

object ( Button )

একটি বোতাম যা একজন ব্যবহারকারী একটি অ্যাকশন ট্রিগার করতে ক্লিক করতে পারেন।

switchControl

object ( SwitchControl )

একটি সুইচ উইজেট যা একজন ব্যবহারকারী তার অবস্থা পরিবর্তন করতে এবং একটি ক্রিয়া ট্রিগার করতে ক্লিক করতে পারে৷

endIcon

object ( Icon )

পাঠ্যের পরে প্রদর্শিত একটি আইকন।

অন্তর্নির্মিত এবং কাস্টম আইকন সমর্থন করে।

উল্লম্ব সারিবদ্ধকরণ

উল্লম্ব প্রান্তিককরণ বৈশিষ্ট্য প্রতিনিধিত্ব করে।

এনামস
VERTICAL_ALIGNMENT_UNSPECIFIED অনির্দিষ্ট প্রকার। ব্যবহার করবেন না।
TOP শীর্ষ অবস্থানে প্রান্তিককরণ.
MIDDLE মধ্যম অবস্থানে প্রান্তিককরণ।
BOTTOM নীচের অবস্থানে প্রান্তিককরণ।

বোতাম

একটি পাঠ্য, আইকন, বা পাঠ্য এবং আইকন বোতাম যা ব্যবহারকারীরা ক্লিক করতে পারেন। 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 ক্ষেত্রের জন্য একটি মান নির্দিষ্ট করুন। RGB রঙের মানের উপর ভিত্তি করে মানটি অবশ্যই 0 এবং 1 এর মধ্যে একটি ফ্লোট নম্বর হতে হবে, যেখানে 0 (0/255) রঙের অনুপস্থিতিকে প্রতিনিধিত্ব করে এবং 1 (255/255) রঙের সর্বাধিক তীব্রতা উপস্থাপন করে।

উদাহরণস্বরূপ, নিম্নোক্তটি তার সর্বাধিক তীব্রতায় রঙটিকে লালে সেট করে:

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

alpha ক্ষেত্রটি বোতামের রঙের জন্য অনুপলব্ধ৷ নির্দিষ্ট করা হলে, এই ক্ষেত্রটি উপেক্ষা করা হয়।

onClick

object ( OnClick )

প্রয়োজন। যখন কোনো ব্যবহারকারী বোতামে ক্লিক করে, যেমন একটি হাইপারলিঙ্ক খোলা বা একটি কাস্টম ফাংশন চালানোর মতো ক্রিয়া সম্পাদন করা হয়।

disabled

boolean

true হলে, বোতামটি একটি নিষ্ক্রিয় অবস্থায় প্রদর্শিত হয় এবং ব্যবহারকারীর ক্রিয়াকলাপে সাড়া দেয় না।

altText

string

বিকল্প পাঠ্য যা অ্যাক্সেসযোগ্যতার জন্য ব্যবহৃত হয়।

বর্ণনামূলক পাঠ্য সেট করুন যা ব্যবহারকারীদের বোতামটি কী করে তা জানতে দেয়। উদাহরণস্বরূপ, যদি একটি বোতাম একটি হাইপারলিঙ্ক খোলে, আপনি লিখতে পারেন: "একটি নতুন ব্রাউজার ট্যাব খোলে এবং https://developers.google.com/workspace/chat-এ Google চ্যাট বিকাশকারী ডকুমেন্টেশনে নেভিগেট করুন"

type

enum ( Type )

ঐচ্ছিক। একটি বোতামের ধরন। যদি সেট না করা হয়, বাটন টাইপ ডিফল্ট হিসাবে OUTLINED । যদি color ক্ষেত্রটি সেট করা থাকে, বোতামের ধরনটি FILLED করতে বাধ্য করা হয় এবং এই ক্ষেত্রের জন্য সেট করা যেকোনো মান উপেক্ষা করা হয়।

রঙ

RGBA রঙের জায়গায় একটি রঙের প্রতিনিধিত্ব করে। এই উপস্থাপনাটি কম্প্যাক্টনেসের উপর বিভিন্ন ভাষায় রঙের উপস্থাপনা থেকে এবং রূপান্তরের সরলতার জন্য ডিজাইন করা হয়েছে। উদাহরণস্বরূপ, এই উপস্থাপনার ক্ষেত্রগুলি জাভাতে java.awt.Color এর কন্সট্রাকটরকে তুচ্ছভাবে প্রদান করা যেতে পারে; এটি তুচ্ছভাবে UIColor এর +colorWithRed:green:blue:alpha পদ্ধতিতেও প্রদান করা যেতে পারে iOS এ; এবং, সামান্য পরিশ্রমের মাধ্যমে, এটি সহজেই জাভাস্ক্রিপ্টের একটি CSS rgba() স্ট্রিং-এ ফরম্যাট করা যায়।

এই রেফারেন্স পৃষ্ঠাটিতে সম্পূর্ণ রঙের স্থান সম্পর্কে তথ্য নেই যা RGB মানকে ব্যাখ্যা করতে ব্যবহার করা উচিত—উদাহরণস্বরূপ, sRGB, Adobe RGB, DCI-P3, এবং BT.2020। ডিফল্টরূপে, অ্যাপ্লিকেশনগুলিকে sRGB রঙের স্থান অনুমান করা উচিত।

যখন রঙের সমতার সিদ্ধান্ত নেওয়ার প্রয়োজন হয়, তখন বাস্তবায়নগুলি, যদি না অন্যথায় নথিভুক্ত করা হয়, দুটি রঙকে সমান হিসাবে বিবেচনা করুন যদি তাদের সমস্ত লাল, সবুজ, নীল এবং আলফা মান প্রতিটির মধ্যে সর্বাধিক 1e-5 দ্বারা পৃথক হয়।

উদাহরণ (জাভা):

 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;
}
// ...

উদাহরণ (জাভাস্ক্রিপ্ট):

// ...

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 আউটলাইন করা বোতাম হল মাঝারি-জোর বোতাম। এগুলিতে সাধারণত গুরুত্বপূর্ণ অ্যাকশন থাকে, কিন্তু চ্যাট অ্যাপ বা অ্যাড-অনের প্রাথমিক অ্যাকশন নয়।
FILLED একটি ভরাট বোতাম একটি কঠিন রং সঙ্গে একটি ধারক আছে. এটির সবচেয়ে চাক্ষুষ প্রভাব রয়েছে এবং একটি চ্যাট অ্যাপ বা একটি অ্যাড-অনে গুরুত্বপূর্ণ এবং প্রাথমিক অ্যাকশনের জন্য এটি সুপারিশ করা হয়।
FILLED_TONAL একটি ভরাট টোনাল বোতাম হল ভরাট এবং রূপরেখাযুক্ত বোতামগুলির মধ্যে একটি বিকল্প মাঝারি স্থল। এগুলি এমন প্রেক্ষাপটে দরকারী যেখানে একটি নিম্ন-অগ্রাধিকার বোতামের জন্য একটি আউটলাইন বোতামের চেয়ে সামান্য বেশি জোর দেওয়া প্রয়োজন৷
BORDERLESS একটি বোতামের ডিফল্ট অবস্থায় একটি অদৃশ্য ধারক নেই। এটি প্রায়ই সর্বনিম্ন অগ্রাধিকার ক্রিয়াগুলির জন্য ব্যবহৃত হয়, বিশেষ করে যখন একাধিক বিকল্প উপস্থাপন করা হয়।

সুইচ কন্ট্রোল

হয় একটি টগল-স্টাইল সুইচ বা একটি decoratedText উইজেটের ভিতরে একটি চেকবক্স৷

Google Chat অ্যাপ এবং Google Workspace অ্যাড-অনগুলির জন্য উপলব্ধ।

শুধুমাত্র decoratedText উইজেটে সমর্থিত।

JSON প্রতিনিধিত্ব
{
  "name": string,
  "value": string,
  "selected": boolean,
  "onChangeAction": {
    object (Action)
  },
  "controlType": enum (ControlType)
}
ক্ষেত্র
name

string

একটি ফর্ম ইনপুট ইভেন্টে সুইচ উইজেটটি চিহ্নিত করা হয় এমন নাম।

ফর্ম ইনপুটগুলির সাথে কাজ করার বিষয়ে বিস্তারিত জানার জন্য,