Method: spaces.messages.create

پیامی در فضای Google Chat ایجاد می‌کند. برای مثال، ارسال پیام را ببینید.

از انواع اصالت‌سنجی زیر پشتیبانی می‌کند:

  • اصالت‌سنجی برنامه با دامنه مجوز:
    • https://www.googleapis.com/auth/chat.bot
  • اصالت‌سنجی کاربر با یکی از دامنه‌های مجوز زیر:
    • https://www.googleapis.com/auth/chat.messages.create
    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.import (فقط فضاهای حالت وارد کردن)

Chat بسته به نوع اصالت‌سنجی‌ای که در درخواستتان استفاده می‌کنید، فرستنده پیام را به‌طور متفاوتی نسبت می‌دهد.

تصویر زیر نشان می‌دهد وقتی از اصالت‌سنجی برنامه استفاده می‌کنید، Chat چگونه پیام را منسوب می‌کند. ‫Chat برنامه Chat را به‌عنوان فرستنده پیام نمایش می‌دهد. محتوای پیام می‌تواند شامل نوشتار (text)، کارت (cardsV2)، و ابزاره‌های جانبی (accessoryWidgets) باشد.

پیام با اصالت‌سنجی برنامه ارسال شد

تصویر زیر نشان می‌دهد که وقتی از اصالت‌سنجی کاربر استفاده می‌کنید، Chat چگونه پیام را منسوب می‌کند. Chat کاربر را به‌عنوان فرستنده پیام نمایش می‌دهد و برنامه Chat را با نمایش نام آن به پیام نسبت می‌دهد. محتوای پیام فقط می‌تواند حاوی نوشتار (text) باشد.

پیام با اصالت‌سنجی کاربر ارسال شد

حداکثر اندازه پیام، شامل محتوای پیام، ۳۲٬۰۰۰ بایت است.

برای درخواست‌های وب‌قلاب، پاسخ حاوی پیام کامل نیست. پاسخ فقط فیلدهای name و thread.name را علاوه‌بر اطلاعاتی که در درخواست بود پر می‌کند.

درخواست HTTP

POST https://chat.googleapis.com/v1/{parent=spaces/*}/messages

این نشانی وب از نحو تراتبدیل gRPC استفاده می‌کند.

پارامترهای مسیر

پارامترها
parent

string

الزامی. نام منبع فضایی که پیام در آن ایجاد می‌شود.

قالب: spaces/{space}

پارامترهای پُرسمان

پارامترها
threadKey
(deprecated)

string

اختیاری. منسوخ‌شده: درعوض از thread.thread_key استفاده کنید. شناسه رشته. حداکثر ۴۰۰۰ نویسه را پشتیبانی می‌کند. برای شروع یا افزودن به رشته، پیامی ایجاد کنید و threadKey یا thread.name را مشخص کنید. برای مثال استفاده، شروع یا پاسخ دادن به رشته پیام را ببینید.

requestId

string

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

برای استفاده مؤثر از این فیلد:

  • مطمئن شوید که درخواست‌های بعدی یکسان باشند و از همان اعتبارنامه‌های اصالت‌سنجی درخواست اصلی استفاده کنند.
  • اگر پیامی ازقبل با شناسه درخواست ارائه‌شده ایجاد شده باشد، درخواست آن پیام را برمی‌گرداند. توجه داشته باشید که پیام برگردانده‌شده ممکن است کاملاً پر نشده باشد؛ میانای برنامه‌سازی کاربردی پیام را در درخواست شما با نام‌های منبع اختصاص‌داده‌شده توسط سیستم تکرار می‌کند. برای بازیابی جدیدترین فراداده پیام، با messages.get تماس بگیرید.
  • استفاده مجدد از شناسه درخواست موجود با کاربر اصالت‌سنجی‌شده متفاوت منجر به خطا می‌شود.
messageReplyOption

enum (MessageReplyOption)

اختیاری. مشخص می‌کند که پیام رشته‌ای را شروع می‌کند یا به رشته‌ای پاسخ می‌دهد. فقط در فضاهای نام‌گذاری‌شده پشتیبانی می‌شود.

هنگام پاسخ دادن به تعاملات کاربر، این فیلد نادیده گرفته می‌شود. برای تعاملات درون رشته، پاسخ در همان رشته ایجاد می‌شود. درغیراین‌صورت، پاسخ به‌عنوان رشته جدیدی ایجاد می‌شود.

messageId

string

اختیاری. شناسه سفارشی برای پیام. به برنامه‌های Chat اجازه می‌دهد بدون نیاز به ذخیره کردن شناسه اختصاص‌یافته توسط سیستم در نام منبع پیام (که در فیلد پیام name نشان داده می‌شود)، پیام را دریافت، به‌روزرسانی، یا حذف کنند.

مقدار این فیلد باید شرایط زیر را داشته باشد:

  • با client- شروع می‌شود. برای مثال، client-custom-name یک شناسه سفارشی معتبر است، اما custom-name معتبر نیست.
  • حداکثر ۶۳ نویسه دارد و فقط شامل حروف کوچک، اعداد، و خط تیره است.
  • در فضا منحصربه‌فرد است. برنامه Chat نمی‌تواند از شناسه سفارشی یکسانی برای پیام‌های مختلف استفاده کند.

برای جزئیات، به نام‌گذاری پیام مراجعه کنید.

createMessageNotificationOptions

object (CreateMessageNotificationOptions)

اختیاری. رفتار اعلان را هنگام پست شدن پیام کنترل می‌کند. برای کسب اطلاعات بیشتر، به اجباری کردن اعلان‌ها یا ارسال پیام‌های بی‌صدا مراجعه کنید.

متن درخواست

بدنه درخواست حاوی نمونه‌ای از Message است.

بدنه پاسخ

اگر موفقیت‌آمیز باشد، بدنه پاسخ حاوی نمونه جدیدی از Message است.

دامنه‌های مجوز

به یکی از دامنه‌های OAuth زیر نیاز دارد:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.create

برای اطلاعات بیشتر، راهنمای مجوز را ببینید.

MessageReplyOption

نحوه پاسخ دادن به پیام را مشخص می‌کند. ممکن است در آینده ایالت‌های بیشتری اضافه شود.

شمارشی‌ها
MESSAGE_REPLY_OPTION_UNSPECIFIED پیش‌فرض. رشته جدیدی شروع می‌کند. بااستفاده از این گزینه، هرگونه thread ID یا threadKey موجود نادیده گرفته می‌شود.
REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD پیام را به‌عنوان پاسخی به رشته مشخص‌شده توسط thread ID یا threadKey ایجاد می‌کند. اگر ناموفق باشد، پیام رشته جدیدی را شروع می‌کند.
REPLY_MESSAGE_OR_FAIL پیام را به‌عنوان پاسخی به رشته مشخص‌شده توسط thread ID یا threadKey ایجاد می‌کند. اگر از threadKey جدیدی استفاده شود، رشته جدیدی ایجاد می‌شود. اگر ایجاد پیام ناموفق باشد، به‌جای آن خطای NOT_FOUND برگردانده می‌شود.

CreateMessageNotificationOptions

گزینه‌های مربوط به رفتار اعلان هنگام پست شدن پیام.

نمایش JSON
{
  "notificationType": enum (NotificationType)
}
فیلدها
notificationType

enum (NotificationType)

نوع اعلان برای پیام.

NotificationType

گزینه‌های انواع اعلان برای پیام.

شمارشی‌ها
NOTIFICATION_TYPE_NONE رفتار پیش‌فرض. رفتار اعلان مشابه زمانی است که کاربر انسانی پیام را بااستفاده از میانای کاربر Chat ارسال می‌کند: هیچ اعلانی برای فرستنده انسانی ارسال نمی‌شود.
NOTIFICATION_TYPE_FORCE_NOTIFY

اعلان اجباری به گیرندگان. این کار تنظیمات اعلان فضای کاربران و تنظیمات «مزاحم نشوید» Chat را دور می‌زند. این گزینه تنظیمات «مزاحم نشوید» در سطح دستگاه را دور نمی‌زند.

به اصالت‌سنجی برنامه نیاز دارد.

NOTIFICATION_TYPE_SILENT

به گیرندگان اطلاع داده نشود و پیام به‌عنوان خوانده‌نشده علامت‌گذاری نشود. این عملکرد مشابه زمانی است که کاربر مکالمه را بی‌صدا می‌کند یا مزاحم نشوید گپ را فعال می‌کند.

به اصالت‌سنجی برنامه نیاز دارد.