Документация по методам Google создает впечатление, что вы можете программно проверить наличие триггера другого пользователя с помощью такой функции:
function triggerLogger() {
// Read installed triggers for the project.
var triggers = ScriptApp.getProjectTriggers();
var installedReport = {};
triggers.forEach(function (t) { installedReport[t.getUniqueId()] = {
event: t.getEventType(),
calledFunction: t.getHandlerFunction(),
source: t.getTriggerSource(),
source_id: t.getTriggerSourceId() || "Time-based triggers have no source id."
}});
// Read "simple" triggers for the project by checking for globals that start with "on".
var simpleReport = {};
for (var thing in this)
if (thing.indexOf("on") === 0 && thing.length > 2)
simpleReport[String(thing)] = {def: this[thing]};
var possibleSimple = Object.keys(simpleReport).length,
message = "Trigger report: " + triggers.length + " installed";
if (possibleSimple) message += ", " + possibleSimple + " possible simple triggers";
message += ".";
// Log to Stackdriver (so the report can be viewed sensibly).
console.log({
message: message,
installed: Object.keys(installedReport).length ?
installedReport : "No detected installed triggers.",
simple: possibleSimple ?
simpleReport : "No simple triggers used",
reportRunAs: Session.getActiveUser().getEmail()
});
}
Но метод getProjectTriggers()
,несмотря на утверждение о получении всех установленных триггеров текущего проекта, вы получите ваши установленные триггеры для документа, даже если вы являетесь владельцем документа.
Обратите внимание, что это поведение принято как ошибка (имеется в виду кто-нибудь, когда-нибудь это исправит).Если вы хотите почувствовать, что вы внесли свой вклад в ускорение этой временной шкалы, пожалуйста, звездочка , эта проблема: