REST Resource: spaces.messages

منبع: پیام

پیامی در فضای چت Google.

نمایندگی JSON
{
  "name": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "lastUpdateTime": string,
  "deleteTime": string,
  "text": string,
  "formattedText": string,
  "cards": [
    {
      object (Card)
    }
  ],
  "cardsV2": [
    {
      object (CardWithId)
    }
  ],
  "annotations": [
    {
      object (Annotation)
    }
  ],
  "thread": {
    object (Thread)
  },
  "space": {
    object (Space)
  },
  "fallbackText": string,
  "actionResponse": {
    object (ActionResponse)
  },
  "argumentText": string,
  "slashCommand": {
    object (SlashCommand)
  },
  "attachment": [
    {
      object (Attachment)
    }
  ],
  "matchedUrl": {
    object (MatchedUrl)
  },
  "threadReply": boolean,
  "clientAssignedMessageId": string,
  "emojiReactionSummaries": [
    {
      object (EmojiReactionSummary)
    }
  ],
  "privateMessageViewer": {
    object (User)
  },
  "deletionMetadata": {
    object (DeletionMetadata)
  },
  "quotedMessageMetadata": {
    object (QuotedMessageMetadata)
  },
  "attachedGifs": [
    {
      object (AttachedGif)
    }
  ],
  "accessoryWidgets": [
    {
      object (AccessoryWidget)
    }
  ]
}
فیلدها
name

string

شناسه. نام منبع پیام

قالب: spaces/{space}/messages/{message}

جایی که {space} شناسه فضایی است که پیام در آن پست شده است و {message} یک شناسه اختصاص داده شده توسط سیستم برای پیام است. برای مثال، spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB .

اگر هنگام ایجاد پیام، یک شناسه سفارشی تنظیم کنید، می‌توانید با جایگزین کردن {message} با مقدار فیلد clientAssignedMessageId ، از این شناسه برای تعیین پیام در یک درخواست استفاده کنید. به عنوان مثال، spaces/AAAAAAAAAAA/messages/client-custom-name . برای جزئیات، به نام پیام مراجعه کنید.

sender

object ( User )

فقط خروجی کاربری که پیام را ایجاد کرده است. اگر برنامه چت شما به عنوان کاربر احراز هویت شود ، خروجی name و type کاربر را پر می کند.

createTime

string ( Timestamp format)

اختیاری. تغییرناپذیر. برای فضاهای ایجاد شده در چت، زمانی که پیام ایجاد شده است. این فیلد فقط خروجی است، مگر زمانی که در فضاهای حالت واردات استفاده می شود.

برای فضاهای حالت واردات، این فیلد را روی مهر زمانی تاریخی که پیام در منبع ایجاد شده است تنظیم کنید تا زمان ایجاد اصلی حفظ شود.

lastUpdateTime

string ( Timestamp format)

فقط خروجی زمانی که پیام آخرین بار توسط یک کاربر ویرایش شده است. اگر پیام هرگز ویرایش نشده است، این قسمت خالی است.

deleteTime

string ( Timestamp format)

فقط خروجی زمانی که پیام در چت گوگل حذف شد. اگر پیام هرگز حذف نشود، این قسمت خالی است.

text

string

اختیاری. متن ساده متن پیام اولین پیوند به یک تصویر، ویدیو یا صفحه وب، یک تراشه پیش‌نمایش تولید می‌کند. همچنین می‌توانید از یک کاربر گپ Google یا همه افراد حاضر در فضا @ نام ببرید .

برای آشنایی با ایجاد پیام های متنی، به ارسال پیام مراجعه کنید.

formattedText

string

فقط خروجی حاوی text پیام با نشانه‌گذاری‌هایی است که برای قالب‌بندی ارتباط اضافه شده است. این فیلد ممکن است تمام قالب‌بندی‌های قابل مشاهده در UI را ثبت نکند، اما شامل موارد زیر است:

  • نحو نشانه گذاری برای پررنگ، مورب، خط خطی، تک فاصله، بلوک تک فضا، و لیست گلوله‌ای.

  • نام کاربر با استفاده از قالب <users/{user}> .

  • ابرپیوندهای سفارشی با استفاده از قالب <{url}|{rendered_text}> که در آن اولین رشته URL و رشته دوم متن ارائه شده است — برای مثال، <http://example.com|custom text> .

  • شکلک سفارشی با استفاده از قالب :{emojiName}: —به عنوان مثال، :smile: . این مورد برای شکلک‌های یونیکد، مانند U+1F600 برای شکلک‌های چهره خندان، صدق نمی‌کند.

  • موارد را با استفاده از ستاره ( * ) فهرست کنید—مثلاً * item .

برای اطلاعات بیشتر، مشاهده قالب بندی متن ارسال شده در پیام را ببینید

cards[]
(deprecated)

object ( Card )

منسوخ شده: به جای آن از cardsV2 استفاده کنید.

کارت‌های غنی، قالب‌بندی‌شده و تعاملی که می‌توانید برای نمایش عناصر رابط کاربری مانند: متون قالب‌بندی شده، دکمه‌ها و تصاویر قابل کلیک استفاده کنید. کارت‌ها معمولاً در زیر متن ساده پیام نمایش داده می‌شوند. cards و cardsV2 می‌توانند حداکثر اندازه 32 کیلوبایت داشته باشند.

cardsV2[]

object ( CardWithId )

اختیاری. آرایه ای از کارت ها

فقط برنامه‌های چت می‌توانند کارت ایجاد کنند. اگر برنامه چت شما به عنوان کاربر احراز هویت شود ، پیام ها نمی توانند حاوی کارت باشند.

برای یادگیری نحوه ایجاد پیام حاوی کارت، به ارسال پیام مراجعه کنید.

طراحی و پیش نمایش کارت ها با Card Builder.

کارت ساز را باز کنید

annotations[]

object ( Annotation )

فقط خروجی حاشیه نویسی ها را می توان با متن ساده پیام یا با تراشه هایی مرتبط کرد که به منابع Google Workspace مانند Google Docs یا Sheets با startIndex و length 0 پیوند دارند.

thread

object ( Thread )

موضوعی که پیام به آن تعلق دارد. برای مثال استفاده، شروع یا پاسخ دادن به رشته پیام را ببینید.

space

object ( Space )

فقط خروجی اگر برنامه چت شما به عنوان کاربر احراز هویت شود ، خروجی فقط name فضا را پر می کند.

fallbackText

string

اختیاری. شرح متن ساده کارت‌های پیام، که زمانی استفاده می‌شود که کارت‌های واقعی نمایش داده نمی‌شوند - به عنوان مثال، اعلان‌های تلفن همراه.

actionResponse

object ( ActionResponse )

فقط ورودی پارامترهایی که یک برنامه چت می تواند برای پیکربندی نحوه ارسال پاسخ خود استفاده کند.

argumentText

string

فقط خروجی متن ساده پیام با تمام اشاره‌های برنامه Chat حذف شده است.

slashCommand

object ( SlashCommand )

فقط خروجی اطلاعات فرمان را در صورت وجود بریده بریده کنید.

attachment[]

object ( Attachment )

اختیاری. پیوست بارگذاری شده توسط کاربر.

matchedUrl

object ( MatchedUrl )

فقط خروجی URL در spaces.messages.text که با الگوی پیش‌نمایش پیوند مطابقت دارد. برای اطلاعات بیشتر، پیش‌نمایش پیوندها را ببینید.

threadReply

boolean

فقط خروجی وقتی true ، پیام پاسخی در یک رشته پاسخ است. هنگامی که false ، پیام در مکالمه سطح بالای فضا به عنوان اولین پیام یک رشته یا پیام بدون پاسخ رشته قابل مشاهده است.

اگر فضا از پاسخ در رشته ها پشتیبانی نمی کند، این فیلد همیشه false است.

clientAssignedMessageId

string

اختیاری. یک شناسه سفارشی برای پیام. می توانید از فیلد برای شناسایی پیام یا دریافت، حذف یا به روز رسانی یک پیام استفاده کنید. برای تنظیم یک شناسه سفارشی، هنگام ایجاد پیام، قسمت messageId را مشخص کنید. برای جزئیات، به نام پیام مراجعه کنید.

emojiReactionSummaries[]

object ( EmojiReactionSummary )

فقط خروجی فهرست خلاصه‌های واکنش ایموجی روی پیام.

privateMessageViewer

object ( User )

اختیاری. تغییرناپذیر. ورودی برای ایجاد یک پیام، در غیر این صورت فقط خروجی. کاربری که می تواند پیام را مشاهده کند. پس از تنظیم، پیام خصوصی است و فقط برای کاربر مشخص شده و برنامه چت قابل مشاهده است. برای گنجاندن این فیلد در درخواست خود، باید با استفاده از احراز هویت برنامه با Chat API تماس بگیرید و موارد زیر را حذف کنید:

برای جزئیات، به ارسال پیام خصوصی مراجعه کنید.

deletionMetadata

object ( DeletionMetadata )

فقط خروجی اطلاعاتی در مورد پیام حذف شده زمانی که deleteTime تنظیم شده باشد، پیامی حذف می شود.

quotedMessageMetadata

object ( QuotedMessageMetadata )

اختیاری. اطلاعاتی در مورد پیامی که پیام دیگری نقل می کند.

وقتی پیامی ایجاد می‌کنید، می‌توانید پیام‌هایی را در همان رشته نقل‌قول کنید، یا از یک پیام ریشه برای ایجاد یک پیام ریشه جدید نقل قول کنید. با این حال، شما نمی توانید یک پاسخ پیام را از یک موضوع دیگر نقل قول کنید.

وقتی پیامی را به‌روزرسانی می‌کنید، نمی‌توانید فیلد quotedMessageMetadata اضافه یا جایگزین کنید، اما می‌توانید آن را حذف کنید.

برای مثال استفاده، نقل قول پیام دیگری را ببینید.

attachedGifs[]

object ( AttachedGif )

فقط خروجی تصاویر GIF که به پیام پیوست شده اند.

accessoryWidgets[]

object ( AccessoryWidget )

اختیاری. یک یا چند ویجت تعاملی که در پایین یک پیام ظاهر می شود. می‌توانید ویجت‌های جانبی را به پیام‌هایی که حاوی متن، کارت یا هر دو متن و کارت هستند اضافه کنید. برای پیام هایی که حاوی گفتگو هستند پشتیبانی نمی شود. برای جزئیات، به افزودن ویجت‌های تعاملی در پایین پیام رجوع کنید.

ایجاد پیام با ویجت های جانبی نیاز به احراز هویت برنامه دارد.

CardWithId

کارتی در پیام چت Google.

فقط برنامه‌های چت می‌توانند کارت ایجاد کنند. اگر برنامه چت شما به عنوان کاربر احراز هویت شود ، پیام نمی‌تواند حاوی کارت باشد.

طراحی و پیش نمایش کارت ها با Card Builder.

کارت ساز را باز کنید

نمایندگی JSON
{
  "cardId": string,
  "card": {
    object (Card)
  }
}
فیلدها
cardId

string

اگر پیام حاوی چندین کارت باشد، الزامی است. یک شناسه منحصر به فرد برای یک کارت در یک پیام.

card

object ( Card )

یک کارت حداکثر حجم 32 کیلوبایت است.

حاشیه نویسی

فقط خروجی حاشیه نویسی ها را می توان با متن ساده پیام یا تراشه هایی مرتبط کرد که به منابع Google Workspace مانند Google Docs یا Sheets با startIndex و length 0 پیوند می خورد. برای افزودن قالب بندی اولیه به پیام نوشتاری، به قالب بندی پیام های متنی مراجعه کنید.

مثال متن پیام ساده:

Hello @FooBot how are you!"

فراداده حاشیه نویسی مربوطه:

"annotations":[{
  "type":"USER_MENTION",
  "startIndex":6,
  "length":7,
  "userMention": {
    "user": {
      "name":"users/{user}",
      "displayName":"FooBot",
      "avatarUrl":"https://goo.gl/aeDtrS",
      "type":"BOT"
    },
    "type":"MENTION"
   }
}]
نمایندگی JSON
{
  "type": enum (AnnotationType),
  "length": integer,
  "startIndex": integer,

  // Union field metadata can be only one of the following:
  "userMention": {
    object (UserMentionMetadata)
  },
  "slashCommand": {
    object (SlashCommandMetadata)
  },
  "richLinkMetadata": {
    object (RichLinkMetadata)
  },
  "customEmojiMetadata": {
    object (CustomEmojiMetadata)
  }
  // End of list of possible types for union field metadata.
}
فیلدها
type

enum ( AnnotationType )

نوع این حاشیه نویسی

length

integer

طول رشته فرعی در متن پیام متنی ساده با این حاشیه نویسی مطابقت دارد. اگر وجود نداشته باشد، طول 0 را نشان می دهد.

startIndex

integer

نمایه شروع (بر اساس 0، شامل) در متن پیام متنی ساده که این حاشیه نویسی با آن مطابقت دارد.

metadata میدان اتحادیه فراداده اضافی در مورد حاشیه نویسی. metadata تنها می تواند یکی از موارد زیر باشد:
userMention

object ( UserMentionMetadata )

فراداده ذکر کاربر.

slashCommand

object ( SlashCommandMetadata )

ابرداده برای یک دستور اسلش.

customEmojiMetadata

object ( CustomEmojiMetadata )

ابرداده برای یک ایموجی سفارشی.

AnnotationType

نوع حاشیه نویسی

Enums
ANNOTATION_TYPE_UNSPECIFIED مقدار پیش فرض برای enum. استفاده نکنید.
USER_MENTION یک کاربر ذکر شده است.
SLASH_COMMAND یک دستور اسلش فراخوانی می شود.
CUSTOM_EMOJI حاشیه نویسی ایموجی سفارشی.

UserMentionMetadata

فراداده حاشیه نویسی برای اشاره های کاربر (@).

نمایندگی JSON
{
  "user": {
    object (User)
  },
  "type": enum (Type)
}
فیلدها
user

object ( User )

کاربر اشاره کرد.

type

enum ( Type )

نوع ذکر کاربر

تایپ کنید

Enums
TYPE_UNSPECIFIED مقدار پیش فرض برای enum. استفاده نکنید.
ADD کاربر را به فضا اضافه کنید.
MENTION نام کاربر در فضا

SlashCommandMetadata

فراداده حاشیه نویسی برای دستورات اسلش (/).

نمایندگی JSON
{
  "bot": {
    object (User)
  },
  "type": enum (Type),
  "commandName": string,
  "commandId": string,
  "triggersDialog": boolean
}
فیلدها
bot

object ( User )

برنامه چت که دستور آن فراخوانی شده است.

type

enum ( Type )

نوع دستور اسلش.

commandName

string

نام دستور اسلش فراخوانی شده.

commandId

string ( int64 format)

شناسه فرمان دستور اسلش فراخوانی شده.

triggersDialog

boolean

نشان می دهد که آیا دستور اسلش برای یک گفتگو است یا خیر.

تایپ کنید

Enums
TYPE_UNSPECIFIED مقدار پیش فرض برای enum. استفاده نکنید.
ADD برنامه چت را به فضا اضافه کنید.
INVOKE فراخوانی دستور اسلش در فضا.

RichLink Metadata

یک پیوند غنی به یک منبع. پیوندهای غنی می توانند با متن ساده پیام مرتبط شوند یا نشان دهنده تراشه هایی باشند که به منابع Google Workspace مانند Google Docs یا Sheets با startIndex و length 0 پیوند دارند.

نمایندگی JSON
{
  "uri": string,
  "richLinkType": enum (RichLinkType),

  // Union field data can be only one of the following:
  "driveLinkData": {
    object (DriveLinkData)
  },
  "chatSpaceLinkData": {
    object (ChatSpaceLinkData)
  },
  "meetSpaceLinkData": {
    object (MeetSpaceLinkData)
  },
  "calendarEventLinkData": {
    object (CalendarEventLinkData)
  }
  // End of list of possible types for union field data.
}
فیلدها
uri

string

URI این لینک.

data میدان اتحادیه داده برای منبع پیوند داده شده. data فقط می توانند یکی از موارد زیر باشند:

RichLinkType

نوع پیوند غنی ممکن است در آینده انواع بیشتری اضافه شود.

Enums
DRIVE_FILE یک نوع پیوند غنی از Google Drive.
CHAT_SPACE نوع پیوند غنی از فضای چت. به عنوان مثال، یک تراشه هوشمند فضایی.
MEET_SPACE نوع پیوند غنی از پیام Meet. به عنوان مثال، یک تراشه Meet.
CALENDAR_EVENT نوع پیوند غنی از پیام تقویم. به عنوان مثال، یک تراشه تقویم.

DriveLinkData

داده برای پیوندهای Google Drive.

نمایندگی JSON
{
  "driveDataRef": {
    object (DriveDataRef)
  },
  "mimeType": string
}
فیلدها
driveDataRef

object ( DriveDataRef )

یک DriveDataRef که به یک فایل Google Drive ارجاع می دهد.

mimeType

string

نوع mime منبع Google Drive پیوند شده.

ChatSpaceLinkData

داده برای پیوندهای فضای چت.

نمایندگی JSON
{
  "space": string,
  "thread": string,
  "message": string
}
فیلدها
space

string

فضای منبع فضای چت پیوند شده.

قالب: spaces/{space}

thread

string

رشته منبع فضای چت پیوند شده.

قالب: spaces/{space}/threads/{thread}

message

string

پیام منبع فضای چت پیوند شده.

قالب: spaces/{space}/messages/{message}

MeetSpaceLinkData

داده‌های پیوندهای فضای Meet.

نمایندگی JSON
{
  "meetingCode": string,
  "type": enum (Type),
  "huddleStatus": enum (HuddleStatus)
}
فیلدها
meetingCode

string

کد جلسه فضای Meet پیوند داده شده.

type

enum ( Type )

نوع فضای Meet را نشان می دهد.

huddleStatus

enum ( HuddleStatus )

اختیاری. فقط خروجی اگر Meet یک Huddle باشد، وضعیت huddle را نشان می دهد. در غیر این صورت، این تنظیم نشده است.

تایپ کنید

نوع فضای Meet.

Enums
TYPE_UNSPECIFIED مقدار پیش فرض برای enum. استفاده نکنید.
MEETING فضای Meet یک جلسه است.
HUDDLE فضای Meet یک جمع است.

وضعیت Huddle

وضعیت ازدحام

Enums
HUDDLE_STATUS_UNSPECIFIED مقدار پیش فرض برای enum. استفاده نکنید.
STARTED شلوغی شروع شده است.
ENDED جمع و جور تمام شد. در این صورت URI فضای Meet و شناسه‌ها دیگر معتبر نخواهند بود.
MISSED جمع از دست رفته است. در این صورت URI فضای Meet و شناسه‌ها دیگر معتبر نخواهند بود.

CalendarEventLinkData

داده برای پیوندهای رویداد تقویم.

نمایندگی JSON
{
  "calendarId": string,
  "eventId": string
}
فیلدها
calendarId

string

شناسه تقویم تقویم پیوند شده.

eventId

string

شناسه رویداد رویداد تقویم پیوند شده.

CustomEmoji Metadata

فراداده حاشیه نویسی برای ایموجی های سفارشی.

نمایندگی JSON
{
  "customEmoji": {
    object (CustomEmoji)
  }
}
فیلدها
customEmoji

object ( CustomEmoji )

ایموجی سفارشی

موضوع

یک رشته در فضای چت Google. برای مثال استفاده، شروع یا پاسخ دادن به رشته پیام را ببینید.

اگر در هنگام ایجاد یک پیام، رشته ای را مشخص کنید، می توانید فیلد messageReplyOption را تنظیم کنید تا تعیین کنید اگر رشته منطبقی پیدا نشد چه اتفاقی می افتد.

نمایندگی JSON
{
  "name": string,
  "threadKey": string
}
فیلدها
name

string

شناسه. نام منبع موضوع.

مثال: spaces/{space}/threads/{thread}

threadKey

string

اختیاری. ورودی برای ایجاد یا به روز رسانی یک موضوع. در غیر این صورت فقط خروجی. شناسه تاپیک پشتیبانی از حداکثر 4000 کاراکتر

این شناسه منحصر به برنامه چت است که آن را تنظیم می کند. برای مثال، اگر چندین برنامه چت با استفاده از یک کلید رشته پیامی ایجاد کنند، پیام‌ها در رشته‌های مختلف پست می‌شوند. برای پاسخ دادن به رشته ای که توسط شخص یا برنامه گپ دیگری ایجاد شده است، به جای آن قسمت name رشته را مشخص کنید.

ActionResponse

پارامترهایی که یک برنامه چت می تواند برای پیکربندی نحوه ارسال پاسخ خود استفاده کند.

نمایندگی JSON
{
  "type": enum (ResponseType),
  "url": string,
  "dialogAction": {
    object (DialogAction)
  },
  "updatedWidget": {
    object (