277 lines
8.1 KiB
Plaintext
277 lines
8.1 KiB
Plaintext
# Send initial request
|
|
> put a@gmail.com 1qnf39p0m9h6n1cm9qa9d8mocv@google.com
|
|
BEGIN:VCALENDAR
|
|
PRODID:-//Google Inc//Google Calendar 70.9054//EN
|
|
VERSION:2.0
|
|
CALSCALE:GREGORIAN
|
|
BEGIN:VTIMEZONE
|
|
TZID:America/Los_Angeles
|
|
X-LIC-LOCATION:America/Los_Angeles
|
|
BEGIN:DAYLIGHT
|
|
TZOFFSETFROM:-0800
|
|
TZOFFSETTO:-0700
|
|
TZNAME:PDT
|
|
DTSTART:19700308T020000
|
|
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
|
|
END:DAYLIGHT
|
|
BEGIN:STANDARD
|
|
TZOFFSETFROM:-0700
|
|
TZOFFSETTO:-0800
|
|
TZNAME:PST
|
|
DTSTART:19701101T020000
|
|
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
|
|
END:STANDARD
|
|
END:VTIMEZONE
|
|
BEGIN:VEVENT
|
|
DTSTART;TZID=America/Los_Angeles:20250619T060000
|
|
DTEND;TZID=America/Los_Angeles:20250619T064500
|
|
RRULE:FREQ=WEEKLY;WKST=SU;COUNT=2;BYDAY=TH
|
|
DTSTAMP:20250616T182403Z
|
|
ORGANIZER;CN=John Doe:mailto:a@gmail.com
|
|
UID:1qnf39p0m9h6n1cm9qa9d8mocv@google.com
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
|
|
TRUE;CN=b@gmail.com;X-NUM-GUESTS=0:mailto:b@gmail.com
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE
|
|
;CN=John Doe;X-NUM-GUESTS=0:mailto:a@gmail.com
|
|
X-MICROSOFT-CDO-OWNERAPPTID:299828133
|
|
CREATED:20250616T182358Z
|
|
LAST-MODIFIED:20250616T182358Z
|
|
LOCATION:
|
|
SEQUENCE:0
|
|
STATUS:CONFIRMED
|
|
SUMMARY:Meet me maybe
|
|
DESCRIPTION:This is the event description
|
|
TRANSP:OPAQUE
|
|
BEGIN:VALARM
|
|
ACTION:DISPLAY
|
|
DESCRIPTION:This is an event reminder
|
|
TRIGGER:-P0DT0H10M0S
|
|
END:VALARM
|
|
END:VEVENT
|
|
END:VCALENDAR
|
|
|
|
> expect
|
|
from: a@gmail.com
|
|
to: b@gmail.com
|
|
summary: invite
|
|
summary.attendee: Participants([ItipParticipant { email: "a@gmail.com", name: Some("John Doe"), is_organizer: true }, ItipParticipant { email: "b@gmail.com", name: Some("b@gmail.com"), is_organizer: false }])
|
|
summary.description: Text("This is the event description")
|
|
summary.dtstart: Time(ItipTime { start: 1750338000, tz_id: 148 })
|
|
summary.rrule: Rrule(ICalendarRecurrenceRule { freq: Weekly, until: None, count: Some(2), interval: None, bysecond: [], byminute: [], byhour: [], byday: [ICalendarDay { ordwk: None, weekday: Thursday }], bymonthday: [], byyearday: [], byweekno: [], bymonth: [], bysetpos: [], wkst: Some(Sunday), rscale: None, skip: None })
|
|
summary.summary: Text("Meet me maybe")
|
|
BEGIN:VCALENDAR
|
|
METHOD:REQUEST
|
|
PRODID:-//Stalwart Labs LLC//Stalwart Server//EN
|
|
VERSION:2.0
|
|
BEGIN:VEVENT
|
|
X-MICROSOFT-CDO-OWNERAPPTID:299828133
|
|
DESCRIPTION:This is the event description
|
|
LOCATION:
|
|
STATUS:CONFIRMED
|
|
SUMMARY:Meet me maybe
|
|
DTEND;TZID=America/Los_Angeles:20250619T064500
|
|
DTSTART;TZID=America/Los_Angeles:20250619T060000
|
|
TRANSP:OPAQUE
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;
|
|
CN=b@gmail.com;X-NUM-GUESTS=0:mailto:b@gmail.com
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE;
|
|
CN="John Doe";X-NUM-GUESTS=0:mailto:a@gmail.com
|
|
ORGANIZER;CN="John Doe":mailto:a@gmail.com
|
|
UID:1qnf39p0m9h6n1cm9qa9d8mocv@google.com
|
|
RRULE:FREQ=WEEKLY;COUNT=2;BYDAY=TH;WKST=SU
|
|
CREATED:20250616T182358Z
|
|
DTSTAMP:0
|
|
LAST-MODIFIED:20250616T182358Z
|
|
SEQUENCE:1
|
|
BEGIN:VALARM
|
|
DESCRIPTION:This is an event reminder
|
|
ACTION:DISPLAY
|
|
TRIGGER:-PT10M
|
|
END:VALARM
|
|
END:VEVENT
|
|
BEGIN:VTIMEZONE
|
|
X-LIC-LOCATION:America/Los_Angeles
|
|
TZID:America/Los_Angeles
|
|
BEGIN:DAYLIGHT
|
|
DTSTART:19700308T020000
|
|
TZNAME:PDT
|
|
TZOFFSETFROM:-0800
|
|
TZOFFSETTO:-0700
|
|
RRULE:FREQ=YEARLY;BYDAY=2SU;BYMONTH=3
|
|
END:DAYLIGHT
|
|
BEGIN:STANDARD
|
|
DTSTART:19701101T020000
|
|
TZNAME:PST
|
|
TZOFFSETFROM:-0700
|
|
TZOFFSETTO:-0800
|
|
RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=11
|
|
END:STANDARD
|
|
END:VTIMEZONE
|
|
END:VCALENDAR
|
|
|
|
# Send iTIP
|
|
> send
|
|
|
|
# Update the event, expect no changes
|
|
> put a@gmail.com 1qnf39p0m9h6n1cm9qa9d8mocv@google.com
|
|
BEGIN:VCALENDAR
|
|
PRODID:-//Google Inc//Google Calendar 70.9054//EN
|
|
VERSION:2.0
|
|
CALSCALE:GREGORIAN
|
|
BEGIN:VTIMEZONE
|
|
TZID:America/Los_Angeles
|
|
X-LIC-LOCATION:America/Los_Angeles
|
|
BEGIN:DAYLIGHT
|
|
TZOFFSETFROM:-0800
|
|
TZOFFSETTO:-0700
|
|
TZNAME:PDT
|
|
DTSTART:19700308T020000
|
|
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
|
|
END:DAYLIGHT
|
|
BEGIN:STANDARD
|
|
TZOFFSETFROM:-0700
|
|
TZOFFSETTO:-0800
|
|
TZNAME:PST
|
|
DTSTART:19701101T020000
|
|
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
|
|
END:STANDARD
|
|
END:VTIMEZONE
|
|
BEGIN:VEVENT
|
|
DTSTART;TZID=America/Los_Angeles:20250619T060000
|
|
DTEND;TZID=America/Los_Angeles:20250619T064500
|
|
RRULE:FREQ=WEEKLY;WKST=SU;COUNT=2;BYDAY=TH
|
|
DTSTAMP:20250616T182416Z
|
|
ORGANIZER;CN=John Doe:mailto:a@gmail.com
|
|
UID:1qnf39p0m9h6n1cm9qa9d8mocv@google.com
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
|
|
TRUE;CN=b@gmail.com;X-NUM-GUESTS=0:mailto:b@gmail.com
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE
|
|
;CN=John Doe;X-NUM-GUESTS=0:mailto:a@gmail.com
|
|
X-MICROSOFT-CDO-OWNERAPPTID:299828133
|
|
CREATED:20250616T182358Z
|
|
LAST-MODIFIED:20250616T182415Z
|
|
LOCATION:
|
|
SEQUENCE:1
|
|
STATUS:CONFIRMED
|
|
SUMMARY:Meet me maybe
|
|
DESCRIPTION:This is the updated event description
|
|
TRANSP:OPAQUE
|
|
BEGIN:VALARM
|
|
ACTION:DISPLAY
|
|
DESCRIPTION:This is an event reminder
|
|
TRIGGER:-P0DT0H10M0S
|
|
END:VALARM
|
|
END:VEVENT
|
|
END:VCALENDAR
|
|
|
|
> expect
|
|
from: a@gmail.com
|
|
to: b@gmail.com
|
|
summary: update REQUEST
|
|
summary.attendee: Participants([ItipParticipant { email: "a@gmail.com", name: Some("John Doe"), is_organizer: true }, ItipParticipant { email: "b@gmail.com", name: Some("b@gmail.com"), is_organizer: false }])
|
|
summary.description: Text("This is the updated event description")
|
|
summary.dtstart: Time(ItipTime { start: 1750338000, tz_id: 148 })
|
|
summary.rrule: Rrule(ICalendarRecurrenceRule { freq: Weekly, until: None, count: Some(2), interval: None, bysecond: [], byminute: [], byhour: [], byday: [ICalendarDay { ordwk: None, weekday: Thursday }], bymonthday: [], byyearday: [], byweekno: [], bymonth: [], bysetpos: [], wkst: Some(Sunday), rscale: None, skip: None })
|
|
summary.summary: Text("Meet me maybe")
|
|
~summary.description: Text("This is the event description")
|
|
BEGIN:VCALENDAR
|
|
METHOD:REQUEST
|
|
PRODID:-//Stalwart Labs LLC//Stalwart Server//EN
|
|
VERSION:2.0
|
|
BEGIN:VEVENT
|
|
X-MICROSOFT-CDO-OWNERAPPTID:299828133
|
|
DESCRIPTION:This is the updated event description
|
|
LOCATION:
|
|
STATUS:CONFIRMED
|
|
SUMMARY:Meet me maybe
|
|
DTEND;TZID=America/Los_Angeles:20250619T064500
|
|
DTSTART;TZID=America/Los_Angeles:20250619T060000
|
|
TRANSP:OPAQUE
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;
|
|
CN=b@gmail.com;X-NUM-GUESTS=0:mailto:b@gmail.com
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE;
|
|
CN="John Doe";X-NUM-GUESTS=0:mailto:a@gmail.com
|
|
ORGANIZER;CN="John Doe":mailto:a@gmail.com
|
|
UID:1qnf39p0m9h6n1cm9qa9d8mocv@google.com
|
|
RRULE:FREQ=WEEKLY;COUNT=2;BYDAY=TH;WKST=SU
|
|
CREATED:20250616T182358Z
|
|
DTSTAMP:0
|
|
LAST-MODIFIED:20250616T182415Z
|
|
SEQUENCE:1
|
|
END:VEVENT
|
|
BEGIN:VTIMEZONE
|
|
X-LIC-LOCATION:America/Los_Angeles
|
|
TZID:America/Los_Angeles
|
|
BEGIN:DAYLIGHT
|
|
DTSTART:19700308T020000
|
|
TZNAME:PDT
|
|
TZOFFSETFROM:-0800
|
|
TZOFFSETTO:-0700
|
|
RRULE:FREQ=YEARLY;BYDAY=2SU;BYMONTH=3
|
|
END:DAYLIGHT
|
|
BEGIN:STANDARD
|
|
DTSTART:19701101T020000
|
|
TZNAME:PST
|
|
TZOFFSETFROM:-0700
|
|
TZOFFSETTO:-0800
|
|
RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=11
|
|
END:STANDARD
|
|
END:VTIMEZONE
|
|
END:VCALENDAR
|
|
|
|
> send
|
|
|
|
# Make sure the original alarms are preserved
|
|
> get b@gmail.com 1qnf39p0m9h6n1cm9qa9d8mocv@google.com
|
|
BEGIN:VCALENDAR
|
|
PRODID:-//Stalwart Labs LLC//Stalwart Server//EN
|
|
VERSION:2.0
|
|
BEGIN:VEVENT
|
|
X-MICROSOFT-CDO-OWNERAPPTID:299828133
|
|
DESCRIPTION:This is the updated event description
|
|
LOCATION:
|
|
STATUS:CONFIRMED
|
|
SUMMARY:Meet me maybe
|
|
DTEND;TZID=America/Los_Angeles:20250619T064500
|
|
DTSTART;TZID=America/Los_Angeles:20250619T060000
|
|
TRANSP:OPAQUE
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;
|
|
CN=b@gmail.com;X-NUM-GUESTS=0:mailto:b@gmail.com
|
|
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE;
|
|
CN="John Doe";X-NUM-GUESTS=0:mailto:a@gmail.com
|
|
ORGANIZER;CN="John Doe":mailto:a@gmail.com
|
|
UID:1qnf39p0m9h6n1cm9qa9d8mocv@google.com
|
|
RRULE:FREQ=WEEKLY;COUNT=2;BYDAY=TH;WKST=SU
|
|
CREATED:20250616T182358Z
|
|
DTSTAMP:0
|
|
LAST-MODIFIED:20250616T182358Z
|
|
SEQUENCE:1
|
|
BEGIN:VALARM
|
|
DESCRIPTION:This is an event reminder
|
|
ACTION:DISPLAY
|
|
TRIGGER:-PT10M
|
|
END:VALARM
|
|
END:VEVENT
|
|
BEGIN:VTIMEZONE
|
|
X-LIC-LOCATION:America/Los_Angeles
|
|
TZID:America/Los_Angeles
|
|
BEGIN:DAYLIGHT
|
|
DTSTART:19700308T020000
|
|
TZNAME:PDT
|
|
TZOFFSETFROM:-0800
|
|
TZOFFSETTO:-0700
|
|
RRULE:FREQ=YEARLY;BYDAY=2SU;BYMONTH=3
|
|
END:DAYLIGHT
|
|
BEGIN:STANDARD
|
|
DTSTART:19701101T020000
|
|
TZNAME:PST
|
|
TZOFFSETFROM:-0700
|
|
TZOFFSETTO:-0800
|
|
RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=11
|
|
END:STANDARD
|
|
END:VTIMEZONE
|
|
END:VCALENDAR
|
|
|
|
|
|
|