我想让Google日历(来自我付费的G-Suite)与我的Cliniko诊所日历(有iCal供稿网址)同步(可以接受5分钟)。
默认情况下,同步时间似乎在12到24小时左右,对我来说无法正常工作。
我试图在G-Suite上使用Derek Antrican的this script。我添加了我的信息。
最初它没有用,但当我将脚本中的条目从名称[My first and last name]
更改为[my email address with G Suite hosted domain]
时,它开始同步。
然而,它给了我错误信息(我只包括许多中的前/后几项):
apps-scripts-notifications@google.com 06:19(8小时前) 给我
您的脚本ICS / ICAL同步副本最近未能完成 成功。故障摘要如下所示。配置 此脚本的触发器,或更改您的接收设置 未来的失败通知,请点击这里。
摘要:错误消息计数服务在一天内调用了太多次:电子邮件。
(第143行,文件"代码")108我们很抱歉,发生了服务器错误。请稍等一下再试一次。
(第143行,文件"代码")1启动功能错误消息触发结束4/7/18 5:41 PM main我们很抱歉,服务器错误 发生了。请稍等一下再试一次。
(第143行,文件"代码") 基于时间的4/7/18 5:41 PM 4/7/18 5:42 PM主服务也被调用 一天多次:电子邮件。
(第143行,文件"代码")基于时间 4/7/18 5:43 PM
我认为时间戳不是英国时间 - 这些时间在英国或清晨一夜之间发生。
然后我更改了脚本并再次运行/安装它,其中一个更改是时间间隔从1分钟到5分钟。
我还没有收到任何错误消息(但是他们可能正在某处建立,而不是通过电子邮件发送给我)。
然而,我注意到事件正在添加多个实例:
所以一个重要的目标是阻止这种重复发生(非常感谢任何帮助):
答案 0 :(得分:0)
我建议您先查看日志进行实验。该脚本具有以下选项:
var addEventsToCalendar = true;
将此设置为false,然后查看日志。您还可以让脚本向您发送电子邮件提醒,以便及时获得有关正在发生的事情的信息。参见:
var emailWhenAdded = false; //Will email you when an event is added to your calendar
var email = ""; //OPTIONAL: If "emailWhenAdded" is set to true, you will need to provide your email
答案 1 :(得分:0)
我有同样的问题。问题出在每一次检索.ics文件时,外部服务都会生成新的事件UID(或多或少违反了iCal UID的目的)。
(公认的,不太优雅的)解决方法是连接开始时间和结束时间,位置和描述(从而创建或多或少的唯一标识符),并在FID标签中使用此值而不是iCal UID。除非您需要重复发生的事件的支持,否则此方法应该起作用,但是如果您的服务不断生成新的UID,则该功能可能会被破坏。
换句话说,替换为:
awk ' BEGIN{ FS=OFS="|"}
{
{ if ( $1 ~ /$3/ ) { print $0 } }
} '
与此:
if (item.includes("UID")){
currentEvent.id = item.split("UID:")[1];
feedEventIds.push(currentEvent.id);
}
此外,请删除脚本中与修改现有事件有关的部分,因为这将在每次ID更改时发生。