Warm tip: This article is reproduced from serverfault.com, please click

其他-用于事件的Webhooks从Google Calendar API开始

(其他 - Webhooks for Event start on Google Calendar API)

发布于 2020-12-16 13:00:43

当事件开始时或事件开始之前不久,是否有办法获得网络挂接?

Google Calendar API允许创建事件提醒。激活或启动事件时是否可以获取Webhook?

例如,如果我为“ Dec 15 2020 15:45 +0530”创建活动,我是否可以在那个时候或几分钟前获得一个Webhook?

Google可能正在使用这样的Webhook发送提醒电子邮件或警报。我想使用它在我的应用程序中发送通知。

Questioner
rajeev
Viewed
0
ale13 2020-12-17 19:22:15

Google问题跟踪工具上当前有一个开放的功能请求,用于添加日历提醒的API。

在这种情况下,你可以做的是在此处加注星标,并最终添加评论。

解决方法

你可以使用Apps脚本创建脚本,该脚本将获取特定日期的所有事件并检查其开始时间。

function getEvents() {
    let today = new Date();
    let calendar = CalendarApp.getCalendarById(id);
    let events = calendar.getEventsForDay(today);
    let startTime = today.getHours();
    for (let i = 0; i < events.length; i++) {
        if (events[0].getStartTime() <= startTime) {
            // send email, notification etc;
        }
    }
}

之后,你可以添加一个可安装的时间驱动触发器,该触发器可以每15分钟运行一次,例如触发上述功能的执行。

function createTrigger() {
  ScriptApp.newTrigger('getEvents')
      .timeBased()
      .everyMinutes(15)
      .create();
}

笔记

请记住,你可以根据自己的需要自定义脚本和触发器。

参考