Script Service

指令碼

這項服務提供指令碼觸發條件和指令碼發布的存取權。

類別

名稱簡短說明
AuthMode列舉項目,指出 Apps Script 能透過已觸發的函式執行的授權服務類別。
AuthorizationInfo這個物件是用於判斷使用者是否需要授權此指令碼使用一或多項服務,並提供授權對話方塊的網址。
AuthorizationStatus列舉表示指令碼授權狀態的列舉。
CalendarTriggerBuilder日曆觸發條件的建構工具。
ClockTriggerBuilder時鐘觸發條件的建構工具。
DocumentTriggerBuilder文件觸發條件的建構工具。
EventType列舉,表示觸發事件的類型。
FormTriggerBuilder表單觸發條件的建構工具。
InstallationSource列舉,指出指令碼如何安裝為目前使用者的外掛程式。
ScriptApp存取及操控指令碼發布和觸發條件。
Service存取及操控指令碼發布。
SpreadsheetTriggerBuilder試算表觸發條件的建構工具。
StateTokenBuilder允許指令碼建立可用於回呼 API (例如 OAuth 流程) 的狀態權杖。
Trigger指令碼觸發條件。
TriggerBuilder指令碼觸發條件的通用建構工具。
TriggerSource列舉,用來表示導致觸發條件觸發的事件來源。

AuthMode

屬性

屬性類型說明
NONEEnum不允許存取任何需要授權的服務。
CUSTOM_FUNCTIONEnum這種模式允許存取部分服務,以便在自訂試算表函式中使用。
LIMITEDEnum允許存取部分服務模式的模式。
FULLEnum這種模式允許存取所有需要授權的服務。

AuthorizationInfo

方法

方法傳回類型簡短說明
getAuthorizationStatus()AuthorizationStatus取得一個值,指出使用者是否需要授權這個指令碼使用一或多項服務,例如 ScriptApp.AuthorizationStatus.REQUIRED
getAuthorizationUrl()String取得可用於授予指令碼存取權的授權網址。

AuthorizationStatus

屬性

屬性類型說明
REQUIREDEnum使用者必須授權這個指令碼使用一或多項服務。
NOT_REQUIREDEnum使用者已授予這個指令碼目前所需的所有授權。

CalendarTriggerBuilder

方法

方法傳回類型簡短說明
create()Trigger建立並傳回觸發條件。
onEventUpdated()CalendarTriggerBuilder指定在建立、更新或刪除日曆項目時觸發的觸發條件。

ClockTriggerBuilder

方法

方法傳回類型簡短說明
after(durationMilliseconds)ClockTriggerBuilder指定觸發條件執行後經過的最短持續時間 (以毫秒為單位)。
at(date)ClockTriggerBuilder指定觸發條件的執行時機。
atDate(year, month, day)ClockTriggerBuilder指定觸發條件在指定日期當天啟動,預設為接近午夜 (+/- 15 分鐘)。
atHour(hour)ClockTriggerBuilder指定觸發條件的執行時間 (以小時為單位)。
create()Trigger建立觸發條件。
everyDays(n)ClockTriggerBuilder指定每 n 天執行觸發條件。
everyHours(n)ClockTriggerBuilder指定每 n 小時執行觸發條件。
everyMinutes(n)ClockTriggerBuilder指定每 n 分鐘執行觸發條件。
everyWeeks(n)ClockTriggerBuilder指定每 n 週執行觸發條件。
inTimezone(timezone)ClockTriggerBuilder指定觸發條件執行時指定的日期/時間的時區。
nearMinute(minute)ClockTriggerBuilder指定觸發條件執行的分鐘數 (加上或減去 15 分鐘)。
onMonthDay(day)ClockTriggerBuilder指定觸發條件在月份中執行的日期。
onWeekDay(day)ClockTriggerBuilder指定要在星期幾執行觸發條件。

DocumentTriggerBuilder

方法

方法傳回類型簡短說明
create()Trigger建立並傳回新的觸發條件。
onOpen()DocumentTriggerBuilder指定在文件開啟時啟動的觸發條件。

EventType

屬性

屬性類型說明
CLOCKEnum時間導向事件到達特定時間時,觸發條件就會啟動。
ON_OPENEnum使用者開啟 Google 文件、試算表或表單檔案時,就會觸發觸發條件。
ON_EDITEnum系統會在使用者編輯 Google 試算表檔案時啟動觸發條件 (例如在儲存格中輸入新值,這會視為編輯內容,而非變更)。
ON_FORM_SUBMITEnum使用者回應 Google 表單後,觸發條件就會啟動。
ON_CHANGEEnum當使用者變更 Google 試算表檔案 (例如新增資料列,視為變更,而非編輯內容) 時,就會觸發觸發條件。
ON_EVENT_UPDATEDEnum在指定 Google 日曆中建立、更新或刪除事件後,觸發條件就會啟動。

FormTriggerBuilder

方法

方法傳回類型簡短說明
create()Trigger建立並傳回新的觸發條件。
onFormSubmit()FormTriggerBuilder指定觸發條件,在使用者提交回應並提交表單時啟動。
onOpen()FormTriggerBuilder指定在表單編輯檢視畫面開啟時觸發的觸發條件。

InstallationSource

屬性

屬性類型說明
APPS_MARKETPLACE_DOMAIN_ADD_ONEnum外掛程式是由系統管理員為使用者安裝的網域安裝。
NONEEnum指令碼並非以外掛程式的形式執行,
WEB_STORE_ADD_ONEnum使用者是從 Chrome 線上應用程式商店安裝外掛程式。

ScriptApp

屬性

屬性類型說明
AuthModeAuthMode列舉項目,指出 Apps Script 能透過已觸發的函式執行的授權服務類別。
AuthorizationStatusAuthorizationStatus列舉表示指令碼授權狀態的列舉。
EventTypeEventType列舉,表示觸發事件的類型。
InstallationSourceInstallationSource列舉表示外掛程式是以外掛程式的形式安裝給使用者。
TriggerSourceTriggerSource列舉,用來表示導致觸發條件觸發的事件來源。
WeekDayWeekday列舉代表星期幾。

方法

方法傳回類型簡短說明
deleteTrigger(trigger)void移除指定的觸發條件,使其不再執行。
getAuthorizationInfo(authMode)AuthorizationInfo取得用於判斷使用者是否需要授權此指令碼使用一或多項服務的物件,並提供授權對話方塊的網址。
getIdentityToken()String如果已授予 openid 範圍,請為有效使用者取得 OpenID Connect 識別權杖。
getInstallationSource()InstallationSource傳回列舉值,指出指令碼如何安裝為目前使用者的外掛程式 (例如,使用者是否透過 Chrome 線上應用程式商店自行安裝,或網域管理員是否為所有使用者安裝)。
getOAuthToken()String取得有效使用者的 OAuth 2.0 存取權杖
getProjectTriggers()Trigger[]取得與目前專案和目前使用者相關聯的所有可安裝觸發條件。
getScriptId()String取得指令碼專案的專屬 ID。
getService()Service取得用於控制將指令碼發布為網頁應用程式的物件。
getUserTriggers(document)Trigger[]針對此指令碼或外掛程式,取得這位使用者在指定文件中擁有的所有可安裝觸發條件。
getUserTriggers(form)Trigger[]根據這個指令碼或外掛程式,以指定表單取得這位使用者擁有的所有可安裝觸發條件。
getUserTriggers(spreadsheet)Trigger[]取得這位使用者在指定試算表 (僅限此指令碼或外掛程式) 內擁有的所有可安裝觸發條件。
invalidateAuth()void讓有效使用者必須執行目前的指令碼,才能取得授權。
newStateToken()StateTokenBuilder建立可用於回呼 API 的狀態權杖 (例如 OAuth 流程) 的建構工具。
newTrigger(functionName)TriggerBuilder開始建立可安裝觸發條件,觸發時就會呼叫指定函式。

Service

方法

方法傳回類型簡短說明
getUrl()String如果網頁應用程式已部署,則傳回網址;否則會傳回 null
isEnabled()Boolean如果指令碼可做為網頁應用程式存取,系統會傳回 true

SpreadsheetTriggerBuilder

方法

方法傳回類型簡短說明
create()Trigger建立並傳回觸發條件。
onChange()SpreadsheetTriggerBuilder指定在試算表內容或結構變更時觸發的觸發條件。
onEdit()SpreadsheetTriggerBuilder指定在編輯試算表時啟動的觸發條件。
onFormSubmit()SpreadsheetTriggerBuilder指定觸發條件,當試算表有人提交表單時就會觸發。
onOpen()SpreadsheetTriggerBuilder指定會在開啟試算表時觸發的觸發條件。

StateTokenBuilder

方法

方法傳回類型簡短說明
createToken()String建構狀態權杖的加密字串表示法。
withArgument(name, value)StateTokenBuilder將引數新增至權杖。
withMethod(method)StateTokenBuilder設定回呼函式。
withTimeout(seconds)StateTokenBuilder設定權杖的有效期間 (以秒為單位)。

Trigger

方法

方法傳回類型簡短說明
getEventType()EventType傳回觸發觸發條件的事件類型。
getHandlerFunction()String傳回觸發條件觸發時要呼叫的函式。
getTriggerSource()TriggerSource傳回會導致觸發條件啟動的事件來源。
getTriggerSourceId()String傳回來源專屬的 ID。
getUniqueId()String傳回一組專屬 ID,用來區分不同觸發條件。

TriggerBuilder

方法

方法傳回類型簡短說明
forDocument(document)DocumentTriggerBuilder建立並傳回與指定文件繫結的 DocumentTriggerBuilder
forDocument(key)DocumentTriggerBuilder建立並傳回與文件繫結的 DocumentTriggerBuilder
forForm(form)FormTriggerBuilder建立並傳回與指定表單繫結的 FormTriggerBuilder
forForm(key)FormTriggerBuilder建立並傳回與指定 ID 相連結的 FormTriggerBuilder
forSpreadsheet(sheet)SpreadsheetTriggerBuilder建立並傳回與指定試算表相連結的 SpreadsheetTriggerBuilder
forSpreadsheet(key)SpreadsheetTriggerBuilder建立並傳回與試算表相連結的 SpreadsheetTriggerBuilder
forUserCalendar(emailId)CalendarTriggerBuilder傳回建立日曆觸發條件的建構工具。
timeBased()ClockTriggerBuilder建立並傳回 ClockTriggerBuilder,用於建構時間型觸發條件。

TriggerSource

屬性

屬性類型說明
SPREADSHEETSEnumGoogle 試算表就會觸發觸發條件。
CLOCKEnum時間導向事件會導致觸發條件啟動。
FORMSEnumGoogle 表單會導致觸發條件啟動。
DOCUMENTSEnumGoogle 文件會觸發觸發條件。
CALENDAREnumGoogle 日曆會觸發觸發條件。