You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建Google App Script每日特定时间触发且限运行15-20分钟的触发器?

Google App Script 定时触发器设置与函数运行时长控制

一、你的触发器代码说明

你当前的触发器代码是有效的,它会创建一个**每日上午10点左右(接近2分)**触发的时间驱动触发器:

function trigger_Create() {
  ScriptApp.newTrigger('SendWhatsappSMS')
    .timeBased()
    .everyDays(1)
    .atHour(10)
    .nearMinute(2)
    .create();
}

注意:nearMinute(2) 表示触发器会在10:02前后的一个随机短窗口内触发(误差通常在几分钟内),Google官方不支持绝对精确到某一分的定时触发,这个写法是日常场景下最接近需求的实现方式。

二、函数运行时长控制方案

要让SendWhatsappSMS仅运行15-20分钟,你需要在函数内部添加超时检测逻辑,记录函数启动时间,在业务循环中定期检查已运行时长,达到上限就终止函数。

示例代码如下:

function SendWhatsappSMS() {
  // 设置最长运行时长(这里设为20分钟,可根据需求调整为15-20之间的数值)
  const MAX_RUN_DURATION = 20 * 60 * 1000; // 转换为毫秒
  const startTime = Date.now();

  // 你的核心业务逻辑(示例为循环执行任务)
  while (true) {
    // 检查是否已达到最长运行时长
    if (Date.now() - startTime >= MAX_RUN_DURATION) {
      console.log('已达到预设运行时长,终止函数');
      break;
    }

    // --------------------------
    // 这里写你的实际业务代码,比如发送WhatsApp消息
    // 例如:sendSingleMessage(recipient, content);
    // --------------------------

    // 可选:如果是批量任务,可添加短延迟避免触发频率限制
    // Utilities.sleep(3000); // 等待3秒
  }
}

关键注意事项

  • Google App Script有默认运行时长限制:个人免费账户单脚本最长运行6分钟,Workspace账户最长30分钟。如果你的目标是运行15-20分钟,必须使用Workspace账户,否则会被系统强制终止。
  • 若业务逻辑是单次执行而非循环,可在关键步骤前后检查时长,确保总运行时间不超过上限。

内容的提问来源于stack exchange,提问作者Deep Thumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 21:46:04