2015-01-22 2 views
0

Ситуация у меня такая:Google Script Run ClockTrigger Несколько сценариев

  • форма регистрацию Google, где люди могут подписаться на уведомления
  • ряд сценариев, которые я хотел бы работать по ночам, что просматривает ответы на формы и сообщения электронной почты соответствующим образом, Emailer()
  • сценарий отписки, который идеально работает часто (каждый час или около того будет достаточно), а также непосредственно перед отправкой уведомлений . Это выглядит через почтовый ящик для писем и удаляет соответствующие записи из ответов формы, Unsubscriber()

У меня возникли проблемы придумать способ координации, как эти два сценария будет работать. Я бы хотел, чтобы Unsubscriber() запускался каждый час или около того в течение дня. В полночь или в какой-то поздний ночной час я хотел бы запустить Emailer() один раз и теперь функция Unsubscriber() не будет запущена. Как только функция Emailer() завершится, я бы хотел, чтобы функция Unsubscriber() возобновлялась с регулярным интервалом. Я чувствую, что это должно быть возможно с помощью ClockTrigger, но я не могу представить, как это произошло.

Мне также интересно, если функция Unsubscriber() будет запускаться каждый час с помощью ClockTrigger, но занимает больше часа в определенном экземпляре, ClockTrigger начнет второй экземпляр скрипта?

ответ

0

Here - это документация о том, как вручную создать триггер времени, вы можете настроить функцию для запуска каждый час.

Этот триггер может быть связан с основной функцией, в которой вы могли бы оценить текущее время, если его в диапазоне от полуночи (например, 12am < текущего времени> 1 утра) вызывают функцию Emailer(), для каждого другого времени день вызова Unsuscriber().

Надеюсь, это поможет.

+0

Спасибо Херардо .. Я подумал об этом. Моя единственная проблема заключается в том, что скрипт Emailer() завершается до того, как час истечет, не будет ли он снова запущен? – Paul

+0

ждать, невзирая. Он будет называться только один раз в час. Тогда, я думаю, мой вопрос в том, что, если Emailer() занимает больше часа? Будет ли Unsubscriber() работать в 1 утра, а затем одновременно возиться с электронной таблицей? – Paul

+0

Я полагаю, что не столь изящное решение состоит в том, чтобы вызвать триггер вызова в течение более длительного периода ожидания, например, 4-6 часов. Я знаю, что для относительно небольшого числа ответов формы (<1000, вероятно) это было бы более чем достаточно. Я могу отслеживать, сколько времени потребуется для выполнения скрипта, и соответственно отрегулировать интервал. – Paul