این صفحه تفاوتهای بین پیامهای متنی و کارتی را توضیح میدهد.
وقتی برنامههای چت برای انتقال اطلاعات اولیه، پیامهای متنی ارسال میکنند، پیامها به صورت درونخطی ظاهر میشوند، درست مانند نحوه نوشتن پیامها در گوگل چت. برای ایجاد پیامهایی که حاوی چیزی بیش از متن هستند یا برای ایجاد پیامهایی که کاربران میتوانند با آنها تعامل داشته باشند، برنامههای چت میتوانند از کارتها استفاده کنند. برنامههای چت همچنین میتوانند یک کارت را به یک پیام متنی اضافه کنند. برای اینکه کاربران را به تکمیل فرآیندهای چند مرحلهای مانند تکمیل فرم ترغیب کنند، برنامههای چت همچنین میتوانند کارتهایی ایجاد کنند که در یک پنجره جدید به عنوان کادر محاورهای باز میشوند.
آناتومی یک پیام متنی
در API چت گوگل، پیامها به صورت اشیاء JSON نمایش داده میشوند. درون یک پیام، یک پیام متنی به صورت یک شیء text نمایش داده میشود.
در مثال زیر، یک برنامه چت، یک پیام متنی را در فضایی برای تیمی از توسعهدهندگان نرمافزار ایجاد میکند که در آن، توقف کد نزدیک است:
{
"text": "Attention <users/all>: Code freeze starts at `11:59 am` Pacific Standard Time! If you need a little more time, type `/moreTime` and I'll push the code freeze back one hour."
}
JSON پیام زیر را برمیگرداند:

آناتومی یک پیام کارتی
در API چت گوگل، پیامها به صورت اشیاء JSON نمایش داده میشوند. در داخل یک پیام، یک کارت به صورت آرایه cardsV2 نمایش داده میشود و شامل موارد زیر است:
- یک یا چند شیء
CardWithId. - یک
cardIdکه برای شناسایی کارت استفاده میشود و در یک پیام مشخص قرار میگیرد. (کارتهای موجود در پیامهای مختلف میتوانند ID یکسانی داشته باشند.) یک شیء
card، که شامل موارد زیر است:- یک شیء
headerکه مواردی مانند عنوان، زیرنویس و تصویر به سبک آواتار را مشخص میکند. - یک یا چند
sectionکه هر کدام حداقل شامل یک ویجت هستند. - یک یا چند شیء
widget. هر ویجت یک شیء مرکب است که میتواند متن، تصاویر، دکمهها و انواع دیگر اشیاء را نشان دهد.
- یک شیء
به عنوان مثال، پیام کارت زیر شامل اشیاء header ، section و widget است:

کد زیر JSON مربوط به پیام کارت را نشان میدهد:
جیسون
{
"cardsV2": [
{
"cardId": "unique-card-id",
"card": {
"header": {
"title": "Sasha",
"subtitle": "Software Engineer",
"imageUrl": "https://developers.google.com/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"
}
]
}
}
}
]
}
}
]
}
]
}
}
]
}
از Card Builder برای طراحی و پیشنمایش پیامرسانی و رابطهای کاربری برای برنامههای چت استفاده کنید:
سازنده کارت را باز کنید