Class Session

جلسه

کلاس Session دسترسی به اطلاعات جلسه، مانند آدرس ایمیل کاربر (در برخی شرایط) و تنظیمات زبان را فراهم می کند.

روش ها

روش نوع برگشت شرح مختصر
get Active User() User اطلاعات کاربر فعلی را دریافت می کند.
get Active User Locale() String تنظیمات زبان کاربر فعلی را به عنوان یک رشته دریافت می کند - به عنوان مثال، en برای انگلیسی.
get Effective User() User اطلاعاتی در مورد کاربری که اسکریپت تحت اختیار او اجرا می شود را دریافت می کند.
get Script Time Zone() String منطقه زمانی اسکریپت را دریافت می کند.
get Temporary Active User Key() String یک کلید موقت دریافت می کند که منحصر به کاربر فعال است اما هویت کاربر را آشکار نمی کند.

مستندات دقیق

get Active User()

اطلاعات کاربر فعلی را دریافت می کند. اگر سیاست های امنیتی اجازه دسترسی به هویت کاربر را نمی دهد، User.getEmail() یک رشته خالی برمی گرداند. شرایطی که در آن آدرس ایمیل در دسترس است متفاوت است: برای مثال، آدرس ایمیل کاربر در هیچ زمینه‌ای که اجازه می‌دهد یک اسکریپت بدون مجوز آن کاربر اجرا شود، مانند یک راه‌انداز ساده on Open(e) یا on Edit(e) در دسترس نیست. ، یک تابع سفارشی در Google Sheets یا یک برنامه وب استقرار یافته برای "اجرا به عنوان من" (یعنی توسط توسعه دهنده به جای کاربر مجاز شده است). با این حال، اگر توسعه‌دهنده خود اسکریپت را اجرا کند یا به همان دامنه Google Workspace با کاربر تعلق داشته باشد، این محدودیت‌ها معمولا اعمال نمی‌شوند.

// Log the email address of the person running the script.
const email = Session.getActiveUser().getEmail();
Logger.log(email);

بازگشت

User - کاربر فعلی

مجوز

اسکریپت هایی که از این روش استفاده می کنند نیاز به مجوز با یک یا چند مورد از حوزه های زیر دارند:

  • https://www.googleapis.com/auth/userinfo.email

get Active User Locale()

تنظیمات زبان کاربر فعلی را به عنوان یک رشته دریافت می کند - به عنوان مثال، en برای انگلیسی.

// Log the language setting of the person running the script.
Logger.log(Session.getActiveUserLocale());

بازگشت

String - رشته ای که تنظیم زبان کاربر را نشان می دهد


get Effective User()

اطلاعاتی در مورد کاربری که اسکریپت تحت اختیار او اجرا می شود را دریافت می کند. اگر اسکریپت یک برنامه وب باشد که روی «اجرا به‌عنوان من» (توسعه‌دهنده) تنظیم شده است، حساب کاربری توسعه‌دهنده را برمی‌گرداند. اگر اسکریپت تحت یک تریگر قابل نصب اجرا شود، حساب کاربری که تریگر را ایجاد کرده است را برمی گرداند. در اکثر سناریوهای دیگر، این همان حساب کاربری get Active User() برمی گرداند.

// Log the email address of the user under whose authority the script is
// running.
const email = Session.getEffectiveUser().getEmail();
Logger.log(email);

بازگشت

User - کاربری که اسکریپت تحت اختیار او اجرا می شود

مجوز

اسکریپت هایی که از این روش استفاده می کنند نیاز به مجوز با یک یا چند مورد از حوزه های زیر دارند:

  • https://www.googleapis.com/auth/userinfo.email

get Script Time Zone()

منطقه زمانی اسکریپت را دریافت می کند. اسکریپت‌های جدید به‌طور پیش‌فرض منطقه زمانی مالک را انتخاب می‌کنند، اما منطقه زمانی اسکریپت را می‌توان با کلیک کردن روی فایل > ویژگی‌های پروژه در ویرایشگر اسکریپت تغییر داد. توجه داشته باشید که صفحه‌گسترده‌ها منطقه زمانی جداگانه‌ای دارند که می‌توانید با کلیک کردن روی File > تنظیمات صفحه‌گسترده در Google Sheets، آن را تغییر دهید. مناطق زمانی صفحه‌گسترده که با منطقه زمانی اسکریپت متفاوت است، منبع مکرر اشکالات برنامه‌نویسی هستند.

// Log the time zone of the script.
const timeZone = Session.getScriptTimeZone();
Logger.log(timeZone);

بازگشت

String - منطقه زمانی اسکریپت


get Temporary Active User Key()

یک کلید موقت دریافت می کند که منحصر به کاربر فعال است اما هویت کاربر را آشکار نمی کند. کلید موقت هر 30 روز یکبار می چرخد ​​و منحصر به اسکریپت است.

// Log the temporary key of the person running the script.
Logger.log(Session.getTemporaryActiveUserKey());

بازگشت

String - کلید کاربر فعال موقت

روش های منسوخ شده