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();
在我的应用程序中,我可以像这样将参与者添加到日历事件中:
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();