#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 минуты после отправки приглашения для целей тестирования, и это не работает.