Как отправлять электронное письмо с напоминанием о событии Google раз в ДВЕ НЕДЕЛИ

#java #spring-boot #email #google-meet #biweekly

Вопрос:

Я отправляю электронное письмо с использованием javax.mail.internet и Biweekly и в этом письме есть вложение приглашения на встречу Google. Отправляется электронное письмо, и к нему также прилагается приглашение(встреча также отображается в календаре Google). Но проблема в том, что электронное письмо с напоминанием(сигналом тревоги) не отправляется до начала события. Я пытаюсь отправить электронное письмо с напоминанием за 15 минут до начала мероприятия. Вот мой код:

 private String generateICalData(AddCalendarEventDto addCalendarEventDto, String fromEmailName) {
        ICalendar ical = new ICalendar();
        ical.addProperty(new Method(Method.REQUEST));
        VEvent event = new VEvent();
        event.setSummary("invite summary");
        event.setDescription("Please use this Zoom link: "   addCalendarEventDto.getMeetingLink());
        event.setLocation("Zoom");
        event.setDateStart(addCalendarEventDto.getDateStart());
        event.setDateEnd(addCalendarEventDto.getDateEnd());
        event.setDuration(new Duration.Builder()
                .minutes(addCalendarEventDto.getDurationMinutes())
                .build());
        String eventUid = addCalendarEventDto.getEventUid();
        if(eventUid != null amp;amp; !"".equals(eventUid)){
            event.setUid(eventUid);
            event.setSequence(2);
        }
        event.setRecurrenceRule(new Recurrence.Builder(Frequency.WEEKLY).count(5).build());
        event.setOrganizer(new Organizer(fromEmailName, USERNAME));
        Attendee attendee = new Attendee(addCalendarEventDto.getMemberName(), addCalendarEventDto.getToEmail());
        attendee.setParticipationLevel(ParticipationLevel.REQUIRED);
        Duration reminder = Duration.builder().prior(true).minutes(15).build();
        Trigger trigger = new Trigger(reminder, Related.START);
        //Date date  = new Date(System.currentTimeMillis()   4*60*1000L);
        //Trigger trigger = new Trigger(date);
        String subject = "Reminder: Meeting at 1pm";
        String body = "Team,nnThe team meeting scheduled for 1pm is about to start.  Snacks will be served!nnThanks,nJohn";
        VAlarm valarm = VAlarm.email(trigger, subject, body, Arrays.asList(addCalendarEventDto.getToEmail(), "test1@gmail.com", "test2@gmail.com"));
        event.addAlarm(valarm);

        ical.addEvent(event);
        return Biweekly.write(ical).go();
    }
 

Я также попытался прокомментировать часть, чтобы создать Trigger объект, но результат тот же.
У меня что-то не так в коде или в чем должна быть проблема ?

Я хочу, чтобы электронное письмо с напоминанием с определенным текстом было отправлено за 15 минут до начала мероприятия. В этом случае я установил отправку напоминания по электронной почте через 2 минуты после отправки приглашения для целей тестирования, и это не работает.