- درخواست HTTP
- پارامترهای مسیر
- پارامترهای پرس و جو
- درخواست بدنه
- بدنه پاسخ
- دامنههای مجوز
- گزینه پاسخ به پیام
- گزینههای اعلان ایجادپیام
- نوع اعلان
- امتحانش کن!
پیامی را در فضای چت گوگل ایجاد میکند. برای مثال، به «ارسال پیام» مراجعه کنید.
از انواع احراز هویت زیر پشتیبانی میکند:
- احراز هویت برنامه با دامنه مجوز:
-
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(فقط فاصلهها در حالت واردات)
-
چت بسته به نوع احراز هویتی که در درخواست خود استفاده میکنید، فرستنده پیام را به طور متفاوتی نسبت میدهد.
تصویر زیر نشان میدهد که چگونه چت هنگام استفاده از احراز هویت برنامه، یک پیام را نسبت میدهد. چت، برنامه چت را به عنوان فرستنده پیام نمایش میدهد. محتوای پیام میتواند شامل متن ( text )، کارتها ( cardsV2 ) و ابزارکهای لوازم جانبی ( accessoryWidgets ) باشد.
تصویر زیر نشان میدهد که چگونه چت هنگام استفاده از احراز هویت کاربر، یک پیام را نسبت میدهد. چت، کاربر را به عنوان فرستنده پیام نمایش میدهد و با نمایش نام آن، برنامه چت را به پیام نسبت میدهد. محتوای پیام فقط میتواند شامل متن ( text ) باشد.
حداکثر اندازه پیام، شامل محتوای پیام، ۳۲۰۰۰ بایت است.
برای درخواستهای webhook ، پاسخ شامل کل پیام نیست. پاسخ علاوه بر اطلاعات موجود در درخواست، فقط فیلدهای name و thread.name را پر میکند.
درخواست HTTP
POST https://chat.googleapis.com/v1/{parent=spaces/*}/messages
این URL از سینتکس Transcoding در gRPC استفاده میکند.
پارامترهای مسیر
| پارامترها | |
|---|---|
parent | الزامی. نام منبع فضایی که قرار است در آن پیام ایجاد شود. قالب: |
پارامترهای پرس و جو
| پارامترها | |
|---|---|
threadKey | اختیاری. منسوخ شده: به جای آن |
requestId | اختیاری. یک شناسه درخواست منحصر به فرد برای این پیام. تعیین یک شناسه درخواست موجود، پیام ایجاد شده با آن شناسه را به جای ایجاد یک پیام جدید، برمیگرداند. |
messageReplyOption | اختیاری. مشخص میکند که آیا یک پیام، یک رشته را شروع میکند یا به رشتهای پاسخ میدهد. فقط در فضاهای نامگذاری شده پشتیبانی میشود. هنگام پاسخ به تعاملات کاربر ، این فیلد نادیده گرفته میشود. برای تعاملات درون یک رشته، پاسخ در همان رشته ایجاد میشود. در غیر این صورت، پاسخ به عنوان یک رشته جدید ایجاد میشود. |
messageId | اختیاری. یک شناسه سفارشی برای یک پیام. به برنامههای چت اجازه میدهد بدون نیاز به ذخیره شناسه اختصاص داده شده توسط سیستم در نام منبع پیام (که در فیلد مقدار این فیلد باید شرایط زیر را داشته باشد:
برای جزئیات، به «نامگذاری یک پیام» مراجعه کنید. |
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
برای اطلاعات بیشتر، به راهنمای مجوز مراجعه کنید.
گزینه پاسخ به پیام
نحوه پاسخ به یک پیام را مشخص میکند. ممکن است در آینده حالتهای بیشتری اضافه شود.
| انومها | |
|---|---|
MESSAGE_REPLY_OPTION_UNSPECIFIED | پیشفرض. یک رشته جدید را شروع میکند. استفاده از این گزینه هرگونه thread ID یا که شامل شود را نادیده میگیرد. |
REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD | پیام را به عنوان پاسخی به رشتهی مشخص شده توسط thread ID یا ایجاد میکند. در صورت عدم موفقیت، پیام به جای آن یک رشتهی جدید را آغاز میکند. |
REPLY_MESSAGE_OR_FAIL | پیام را به عنوان پاسخی به رشتهی مشخص شده توسط thread ID یا ایجاد میکند. اگر از threadKey جدید استفاده شود، یک رشتهی جدید ایجاد میشود. اگر ایجاد پیام با شکست مواجه شود، به جای آن خطای NOT_FOUND بازگردانده میشود. |
گزینههای اعلان ایجادپیام
گزینههایی برای رفتار اعلان هنگام ارسال پیام.
| نمایش JSON |
|---|
{
"notificationType": enum ( |
| فیلدها | |
|---|---|
notificationType | نوع اعلان برای پیام. |
نوع اعلان
گزینههای نوع اعلان برای پیام.
| انومها | |
|---|---|
NOTIFICATION_TYPE_NONE | رفتار پیشفرض. رفتار اعلان مشابه زمانی است که کاربر انسانی پیام را با استفاده از رابط کاربری چت ارسال میکند: هیچ اعلانی به فرستنده انسانی ارسال نمیشود. |
NOTIFICATION_TYPE_FORCE_NOTIFY | دریافتکنندگان را مجبور به دریافت اعلان کنید. این گزینه تنظیمات اعلان فضای کاربران و تنظیمات «مزاحم نشوید چت» را نادیده میگیرد. این گزینه تنظیمات «مزاحم نشوید» در سطح دستگاه را نادیده نمیگیرد. نیاز به احراز هویت برنامه دارد. |
NOTIFICATION_TYPE_SILENT | اعلان را بیصدا کنید، انگار که گیرندگان ، «مزاحم نشوید چت» را فعال کردهاند یا فضای آن را بیصدا کردهاند. نیاز به احراز هویت برنامه دارد. |