سرویس چت پیشرفته به شما امکان میدهد از API چت گوگل در Apps Script استفاده کنید. این API به اسکریپتها اجازه میدهد فضاهای چت را پیدا، ایجاد و تغییر دهند، اعضا را به فضاها اضافه یا حذف کنند و پیامهای حاوی متن، کارت، پیوست و واکنش را بخوانند یا ارسال کنند.
پیشنیازها
- یک برنامه Google Chat با اسکریپت Apps که در صفحه پیکربندی Chat API در کنسول Google Cloud پیکربندی شده است. پروژه Apps Script برنامه باید از یک پروژه استاندارد Google Cloud به جای پروژه پیشفرض ایجاد شده به صورت خودکار برای پروژههای Apps Script استفاده کند. برای ایجاد یک برنامه Google Chat سازگار، به بخش «ساخت یک برنامه Google Chat با اسکریپت Google Apps» مراجعه کنید.
- احراز هویت برای برنامه چت پیکربندی شده است. انجام یک عمل از طرف یک کاربر نیاز به احراز هویت کاربر دارد. انجام یک عمل به عنوان برنامه چت نیاز به احراز هویت برنامه با یک حساب سرویس دارد. برای بررسی اینکه کدام نوع احراز هویت توسط یک روش API چت پشتیبانی میشود، به انواع احراز هویت مورد نیاز برای فراخوانیهای API چت گوگل مراجعه کنید.
مرجع
برای اطلاعات بیشتر در مورد این سرویس، به مستندات مرجع Chat API مراجعه کنید. مانند تمام سرویسهای پیشرفته در Apps Script، سرویس Chat از همان اشیاء، متدها و پارامترهای API عمومی استفاده میکند.
کد نمونه
این نمونهها به شما نشان میدهند که چگونه میتوانید اقدامات رایج Google Chat API را با استفاده از سرویس پیشرفته انجام دهید.
ارسال پیام با اطلاعات کاربری
مثال زیر نحوه ارسال پیام به فضای چت از طرف کاربر را نشان میدهد.
دامنهی مجوز
chat.messages.createرا به فایلappsscript.jsonپروژهی Apps Script اضافه کنید:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]تابعی مانند این را به کد پروژه Apps Script اضافه کنید:
ارسال پیام با اطلاعات برنامه
مثال زیر نحوه ارسال پیام به فضای چت از طرف برنامه را نشان میدهد. استفاده از سرویس چت پیشرفته با یک حساب سرویس نیازی به تعیین محدوده مجوز در appsscript.json ندارد. برای جزئیات بیشتر در مورد احراز هویت با حسابهای سرویس، به بخش احراز هویت به عنوان یک برنامه چت گوگل مراجعه کنید.
فضایی بدست آورید
مثال زیر نحوه دریافت اطلاعات در مورد یک فضای چت را نشان میدهد.
دامنهی مجوز
chat.spaces.readonlyرا به فایلappsscript.jsonپروژهی Apps Script اضافه کنید:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]تابعی مانند این را به کد پروژه Apps Script اضافه کنید:
ایجاد یک فضا
مثال زیر نحوه ایجاد یک فضای چت را نشان میدهد.
دامنهی مجوز
chat.spaces.createرا به فایلappsscript.jsonپروژهی Apps Script اضافه کنید:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]تابعی مانند این را به کد پروژه Apps Script اضافه کنید:
فهرست عضویتها
مثال زیر نحوه فهرست کردن تمام اعضای یک فضای چت را نشان میدهد.
دامنهی مجوز
chat.memberships.readonlyرا به فایلappsscript.jsonپروژهی Apps Script اضافه کنید:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]تابعی مانند این را به کد پروژه Apps Script اضافه کنید:
عیبیابی
اگر با Error 400: invalid_scope به همراه پیام خطای « Some requested scopes cannot be shown مواجه شدید، به این معنی است که شما هیچ حوزه مجوزی را در فایل appsscript.json پروژه Apps Script مشخص نکردهاید. در بیشتر موارد، Apps Script به طور خودکار تعیین میکند که یک اسکریپت به چه حوزههایی نیاز دارد، اما وقتی از سرویس پیشرفته Chat استفاده میکنید، باید حوزههای مجوزی را که اسکریپت شما استفاده میکند، به صورت دستی به فایل مانیفست پروژه Apps Script خود اضافه کنید. به بخش «تنظیم حوزههای صریح» مراجعه کنید.
برای رفع خطا، محدودههای مجوزدهی مناسب را به عنوان بخشی از آرایه oauthScopes به فایل appsscript.json پروژه Apps Script اضافه کنید. برای مثال، برای فراخوانی متد spaces.messages.create ، کد زیر را اضافه کنید:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
محدودیتها و ملاحظات
سرویس چت پیشرفته از موارد زیر پشتیبانی نمیکند:
- متد API چت
media.download. - متدهای API چت در پیشنمایش توسعهدهندگان موجود است
برای دانلود پیوست پیام یا فراخوانی متد پیشنمایش توسعهدهنده، به جای آن از UrlFetchApp استفاده کنید.