Meeting Coordination
How BATbern organises the annual partner meetings and sends calendar invites
Last Updated: 2026-06-13
Implemented β Epic 8.3 (calendar invites) Β· Story 10-27 (iCal RSVP tracking)
Overview
BATbern holds two partner meetings per year β typically a Spring meeting tied to the Spring BATbern event and an Autumn meeting tied to the Autumn event. These are working lunches where organizers and partner representatives discuss upcoming events, topics, and the partnership.
The platform automates the calendar invite process: organisers create the meeting record, click Send Invite, and all partner contacts receive a single .ics calendar file containing both the partner lunch and the BATbern event itself.
What Partners Receive
When an organiser sends a meeting invite, all contacts listed on the partner record receive an email with an attached .ics calendar file. The file contains two calendar entries:
| Calendar Entry | What It Contains |
|---|---|
| Partner Lunch | Date, start/end time, location, agenda (free text) |
| BATbern Event | Full event date, time, venue β so attendees can block the whole day |
Partners can open the .ics file with any calendar application (Outlook, Apple Calendar, Google Calendar, etc.) and both events are added automatically.
Example email
Subject: Einladung: BATbern Partner-Meeting + BATbern 57
Dear Partner,
Please find attached a calendar invite for the upcoming
BATbern partner meeting and conference.
Partner Lunch: 15 March 2026, 12:00β14:00
Venue: Restaurant SchwellenmΓ€tteli, Bern
BATbern Event: 15 March 2026, 14:30β19:00
[Attachment: partner-meeting.ics]
Example calendar entries (from the .ics file)
BATbern Partner Meeting (SPRING)
When: Monday, 15 March 2026 12:00β14:00
Where: Restaurant SchwellenmΓ€tteli, Bern
Notes: Agenda:
1. Review of 2025 partnership
2. Preview of 2026 event topics
3. Partnership renewal discussion
BATbern 57
When: Monday, 15 March 2026 14:30β19:00
Where: Volkshaus Bern
Notes: BATbern Event β you are registered as a partner
For Organisers β Creating a Meeting
Navigate to Partner Meetings
Go to Partners β Meetings in the organiser navigation, or open a partnerβs detail page and click the Meetings tab.
Click βCreate Meetingβ
The meeting creation form opens.
Fill in the meeting details
| Field | Required | Notes |
|---|---|---|
| Linked Event | Yes | Select from upcoming BATbern events; date auto-fills from the event |
| Meeting Type | Yes | Spring or Autumn |
| Start Time | Yes | Time of partner lunch (e.g., 12:00) |
| End Time | Yes | End of lunch before the main event (e.g., 14:00) |
| Location | No | Venue name and/or address (shown in .ics invite if provided) |
| Agenda | No | Free text β included in the calendar invite description |
The meeting date is automatically set to the linked BATbern event date.
Save the meeting
Click Save to create the meeting record. The invite has not been sent yet at this point.
For Organisers β Sending the Invite
Open the meeting record
Find the meeting in the list (status: invite not sent) and open it.
Review the details
Confirm that the location, agenda, and linked event are correct before sending. Once sent, partners will have these details in their calendars.
Click βSend Calendar Inviteβ
The system sends the .ics file asynchronously to all contacts on all partner records. Each contact receives the invite at both their primary email AND every additional email they have registered in their profile (Story 10.32) β addresses are deduplicated case-insensitively so a contact who appears in two roles or shares an address across roles gets a single copy per inbox. The API responds with 202 Accepted immediately β the actual email delivery happens in the background (typically within a few seconds).
βββββββββββββββββββββββββββββββββββββββββββββββ
β β
Invite sending in progress β
β β
β Calendar invites are being sent to all β
β partner contacts via email. β
β β
β The "Invite Sent" timestamp will appear β
β once delivery is confirmed. β
βββββββββββββββββββββββββββββββββββββββββββββββ
Confirm sent status
The meeting list shows an Invite Sent timestamp once the emails have been dispatched.
For Organisers β Tracking RSVPs
Once an invite has been sent, the platform tracks who has accepted, declined, or marked themselves tentative β directly from the recipientsβ own calendar clients. No extra action is needed from partners: when they click Accept or Decline in Outlook, Apple Calendar, Gmail, etc., their calendar client emails an RSVP reply back to BATbern, and the response appears in the meeting detail.
How it works
The calendar invite is sent as a proper RFC 5545 METHOD:REQUEST with one ATTENDEE line per recipient and an ORGANIZER address (replies@batbern.ch) that BATbern monitors. When a recipient responds, their calendar client sends a METHOD:REPLY email to that address; BATbernβs inbound-email pipeline parses it and records the response against the meeting.
- Each attendee email gets a single tracked response; re-responding (e.g. changing Tentative to Accepted) updates the existing record in place.
- Responses are matched to the meeting via the inviteβs calendar
UID, so they attach to the correct meeting automatically.
The Attendee Responses panel
An Attendee Responses section appears in the meeting detail panel once the invite has been sent (it stays hidden before then). It shows a summary and a colour-coded list:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Attendee Responses β
β 2 Accepted Β· 1 Declined Β· 1 Tentative β
β β
β π’ ACCEPTED alice@partner.com responded 2 Feb 2026, 09:14 β
β π’ ACCEPTED dan@partner.com responded 2 Feb 2026, 11:02 β
β π΄ DECLINED bob@partner.com responded 3 Feb 2026, 08:40 β
β π‘ TENTATIVE carl@partner.com responded 3 Feb 2026, 15:21 β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
| Chip | Status | Meaning |
|---|---|---|
| π’ ACCEPTED | green | Attendee accepted the invite in their calendar |
| π΄ DECLINED | red | Attendee declined |
| π‘ TENTATIVE | amber | Attendee marked the invite as tentative |
The panel refreshes automatically when you (re)send the invite. RSVP tracking is organiser-only β partners see their own Accept/Decline buttons in their calendar client but do not see the aggregated response list.
For Organisers β Adding Meeting Notes
After the meeting takes place, organisers can record notes directly on the meeting record:
Open the completed meeting
Navigate to Partners β Meetings and open the past meeting.
Click βEditβ and add notes
The Notes field accepts free text. Common contents:
- Summary of discussion
- Action items with owners
- Follow-up decisions
- Attendance (who came from each partner)
Save
Notes are saved and visible to all organisers. They are not visible to partners.
404 Not Found.
Meeting List View
The meeting list shows past and upcoming meetings:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Partner Meetings [+ Create Meeting] β
β β
β Upcoming β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β BATbern 57 Partner Lunch β SPRING β β
β β 15 March 2026 Β· 12:00β14:00 Β· Restaurant Schwellen... β β
β β Invite: β
Sent on 1 Feb 2026 β β
β β [Edit] [View Details] β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β Past β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β BATbern 56 Partner Lunch β AUTUMN β β
β β 12 September 2025 Β· 12:00β14:00 Β· Hotel Bellevue β β
β β Invite: β
Sent on 20 Aug 2025 Β· Notes: β
Added β β
β β [Edit] [View Details] β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Technical Details
The .ics file follows RFC 5545 (iCalendar specification) and uses METHOD:REQUEST so the invite appears as an actionable calendar event in supported email clients. The calendar file contains exactly two VEVENT blocks β the partner lunch and the BATbern event. Times are stored in UTC (converted from Europe/Zurich).
Email delivery uses AWS SES with the .ics file attached as text/calendar; method=REQUEST.
For RSVP tracking (Story 10-27), the partner-lunch VEVENT includes an ORGANIZER:mailto:replies@batbern.ch line plus one ATTENDEE;PARTSTAT=NEEDS-ACTION;RSVP=TRUE:mailto:{email} line per recipient β these are what tell calendar clients to send a reply. Replies arrive as METHOD:REPLY emails at the monitored replies@batbern.ch address, are parsed by the inbound-email pipeline, and are matched back to the meeting by the calendar UID.
Troubleshooting
βA partner says they didnβt receive the inviteβ
- Verify the partner has at least one contact with a valid email address on their partner record
- Ask the partner to check their spam folder (calendar invites from unfamiliar senders can be filtered)
- If the partner expected the invite at an additional email they registered on their profile, confirm that address is listed under Settings β Account β Additional emails (Story 10.32)
- The invite can be resent by editing the meeting and clicking Send Calendar Invite again β partners who already added it to their calendar will see an update
βThe agenda in the invite is wrongβ
Update the meeting record (edit the Agenda field) and resend the invite. Partnersβ calendars will update when they accept the updated invite.
βThe meeting date is wrongβ
The meeting date is derived from the linked BATbern event. If the event date changed, update the linked event first, then re-save the meeting record and resend the invite.
βA partner accepted but their RSVP isnβt showingβ
RSVP tracking depends on the recipientβs calendar client actually sending a reply email back to replies@batbern.ch:
- Some clients (or some configurations) accept an invite silently without sending a reply. The response can only be recorded if a
METHOD:REPLYis sent. - The reply must come from the same address the invite was addressed to (the one listed as an
ATTENDEE). A response sent from a different alias may not match. - Replies are processed asynchronously through the inbound-email pipeline β allow a few minutes after the partner responds, then reopen the meeting detail (the panel refetches on open and on re-send).
- If the panel is missing entirely, confirm the invite has actually been sent β the Attendee Responses section only appears once Invite Sent is set.
Related
- Partner Management β β Managing partner records and contacts
- Partner Portal Overview β