Java Google 日历 Api: 将与会者添加到周期性事件的单个事件中

Java Google Calendar Api: Adding attendee into single event of recurrent event

在我的应用程序中,我可以像这样将参与者添加到日历事件中:

Calendar.Events.Get calendarEventGet = calendar.events().get(calendarId, event.getId());
Event eventToUpdate = calendarEventGet.execute();
List<EventAttendee> attendees = CollectionUtils.isEmpty(eventToUpdate.getAttendees()) ?
                                        new ArrayList<>() : eventToUpdate.getAttendees();
attendees.add(testAttendee);
eventToUpdate.setAttendees(attendees);
calendar.events()
        .update(calendarId, eventToUpdate.getId(), eventToUpdate)
        .execute();

现在我有经常性事件,例如。每个星期一,我想为即将到来的星期一添加新的与会者(例如,仅限 2021 年 8 月 30 日)。因此,在 eventToUpdate 中,我将获得具有以下内容的事件:RRULE:FREQ=WEEKLY;BYDAY=MO;INTERVAL=1。我需要以某种方式获得 30.8.2021 事件的表示。

感谢任何建议!

使用Events:instances检索所需的实例并对其进行修改

按照 Modifying or deleting instances 的指南进行操作。

在你的情况下应该是这样的:

Events instances = service.events().instances(calendarId, event.getId()).execute();

// Select the instance to modify - if in your case it is not the first one - modify the "0" accordingly

Event instance = instances.getItems().get(0);
instance.setAttendees(attendees);

Event updatedInstance = service.events().update(calendarId, instance.getId(), instance).execute();