日本時間朝5時に時間トリガーを設定しようとしてハマったのでメモ。
setTrigger.gs
function setTrigger(){
ScriptApp.newTrigger("myFunction")
.timeBased()
.atHour(5)
.create();
}
条件で朝5時に一回だけ起動する予定だったのがなぜか起動しない。。。
うむむ。
デバッグしてみたところ、どうやらnewTriggerのところで止まってしまうらしい。。
Timezoneの設定なのかと悩んでいろいろ試してみた結果、everyDays(1)を挟むことで使えるようになるみたい。。。
setTrigger.gs
function setTrigger(){
ScriptApp.newTrigger("myFunction")
.timeBased()
.inTimezone("JST")
.everyDays(1)
.atHour(5)
.create();
}
トリガーは1回きりなのでmyFunction内でScriptApp.deleteTrigger()メソッドで削除で対応。