将 Google 日历事件 Free/Busy 更改为日历 API
Change Google Calendar Event Free/Busy with Calendar API
我有一个用于预订房间的 GAS 网络应用程序。当应用程序创建事件时,它当前默认为事件 "Busy"。我正在尝试将默认值设置为 "Free"。
我找到了一个 GAS 论坛条目,该条目建议使用高级 Google 日历 API 来编辑透明度字段(来源:https://code.google.com/p/google-apps-script-issues/issues/detail?id=2341)。
他们建议的剧本是
var changes = {
transparency: "transparent"
};
Calendar.Events.patch(changes, cal_id, event_id);
我启用了高级 API,但由于某种原因,当函数执行时,我在 Chrome 控制台中收到未捕获的错误提示。关于此错误的来源有任何想法吗?
环顾四周后,以下似乎可行。我忘记了在向 CalendarApi 发出请求之前,您需要从 CalendarApp 返回的事件 ID 中删除“@google.com”。 calendarId 可以设置为 'primary' 因为用户只是在他们自己的日历上编辑一个事件
var eventId= event_id.slice(0,event_id.length-11);
var calendarId = 'primary';
Logger.log(eventId)
var changes = {
transparency: "transparent"
};
Calendar.Events.patch(changes,calendarId,eventId);
我有一个用于预订房间的 GAS 网络应用程序。当应用程序创建事件时,它当前默认为事件 "Busy"。我正在尝试将默认值设置为 "Free"。
我找到了一个 GAS 论坛条目,该条目建议使用高级 Google 日历 API 来编辑透明度字段(来源:https://code.google.com/p/google-apps-script-issues/issues/detail?id=2341)。
他们建议的剧本是
var changes = {
transparency: "transparent"
};
Calendar.Events.patch(changes, cal_id, event_id);
我启用了高级 API,但由于某种原因,当函数执行时,我在 Chrome 控制台中收到未捕获的错误提示。关于此错误的来源有任何想法吗?
环顾四周后,以下似乎可行。我忘记了在向 CalendarApi 发出请求之前,您需要从 CalendarApp 返回的事件 ID 中删除“@google.com”。 calendarId 可以设置为 'primary' 因为用户只是在他们自己的日历上编辑一个事件
var eventId= event_id.slice(0,event_id.length-11);
var calendarId = 'primary';
Logger.log(eventId)
var changes = {
transparency: "transparent"
};
Calendar.Events.patch(changes,calendarId,eventId);