Календарь Gmail / Google: отменить мероприятие с помощью отправленного по электронной почте файла ICS - PullRequest
0 голосов
/ 04 октября 2018

Я отправляю по электронной почте файлы ICS своим пользователям, чтобы помочь автоматически управлять встречами, когда одна из сторон нажимает ссылку отмены на моем веб-сайте, я отправляю новое письмо с файлом отмены ICS.

мой целевой рынокв основном использует gmail.

когда они получают первоначальное электронное письмо, они могут щелкнуть, чтобы добавить событие из файла ics в свой календарь Google.

когда они получают электронное письмо об отмене, обновить событие невозможно..

если это уместно, письмо приходит от support@domain.com

есть ли способ сделать это с файлами ICS по электронной почте?


Исходное событиеICS:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//sebbo.net//ical-generator//EN
METHOD:PUBLISH
BEGIN:VEVENT
UID:AUniqueIDThatMatches
SEQUENCE:0
DTSTAMP:20181004T184001Z
DTSTART:20181005T210000Z
DTEND:20181005T213000Z
SUMMARY:SESSION
LOCATION:Online session
DESCRIPTION:SESSION
ORGANIZER;CN="Admin":mailto:support@domain.com
ATTENDEE;ROLE=REQ-PARTICIPANT;CN="Admin":MAILTO:support@domain.com
ATTENDEE;ROLE=REQ-PARTICIPANT;CN="ben hart":MAILTO:attendee@domain.com
BEGIN:VALARM
ACTION:DISPLAY
TRIGGER:-PT10M
DESCRIPTION:SESSION
END:VALARM
BEGIN:VALARM
ACTION:AUDIO
TRIGGER:-PT5M
ATTACH;VALUE=URI:Basso
END:VALARM
STATUS:CONFIRMED
END:VEVENT
END:VCALENDAR

отмена ICS:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//sebbo.net//ical-generator//EN
METHOD:CANCEL
BEGIN:VEVENT
UID:AUniqueIDThatMatches
SEQUENCE:1
DTSTAMP:20181004T184057Z
DTSTART:20181005T210000Z
DTEND:20181005T213000Z
SUMMARY:SESSION
LOCATION:Online session
DESCRIPTION:SESSION
ORGANIZER;CN="Admin":mailto:support@domain.com
ATTENDEE;ROLE=REQ-PARTICIPANT;CN="Admin":MAILTO:support@domain.com
ATTENDEE;ROLE=REQ-PARTICIPANT;CN="ben hart":MAILTO:attendee@domain.com
BEGIN:VALARM
ACTION:DISPLAY
TRIGGER:-PT10M
DESCRIPTION:SSESSION
END:VALARM
BEGIN:VALARM
ACTION:AUDIO
TRIGGER:-PT5M
ATTACH;VALUE=URI:Basso
END:VALARM
STATUS:CANCELLED
END:VEVENT
END:VCALENDAR

1 Ответ

0 голосов
/ 18 октября 2018

Во-первых, если это приглашение, у вас должно быть

METHOD:REQUEST

вместо МЕТОДА: ОПУБЛИКОВАТЬ в исходном приглашении.Это важно, так как ОТМЕНА действительна, по крайней мере, теоретически, только после ЗАПРОСА.

Затем вы должны удалить ненужное сообщение VALARM из обоих сообщений.В любом случае они будут игнорироваться в запросе.

Наконец, включаете ли вы правильный МЕТОД в тип содержимого электронного письма об отмене?

...