Mattermost Microsoft Calendar plugin
Time formatting fixes and tests for the plugin that connects Mattermost to Microsoft 365 calendars: one merged pull request and three under review.
- Role
- Contributor
- When
- September 2026 to present
- Stack
- Go, Mattermost plugin API, Microsoft Graph
Context
Mattermost is an open source team chat platform. Its Microsoft Calendar plugin, written in Go, connects a user's Microsoft 365 calendar to Mattermost: daily summaries, event reminders and invitations arrive as chat messages.
What I contributed
Readable event times (#550, merged). Event times were formatted with Go's time.Kitchen layout, which prints 6:00PM with no space before the period. I introduced a single TimeFormat constant (3:04 PM) and used it everywhere the plugin renders events: daily summaries, event attachments, timezone options and notifications. A unit test checks the output, for example 6:00 PM - 6:15 PM (Europe/Madrid).
Under review.
- #553: respect each user's 12 or 24 hour preference instead of always using the 12 hour clock.
- #552: accept POST requests on the OAuth connect endpoint and answer with a
goto_location, so the interactive "connect" button in a message starts the Microsoft 365 sign in instead of failing with405 Method Not Allowed. - #554: unit tests for OAuth token refresh and the lifecycle of stored tokens.
Status
One pull request merged and three open, each focused on a single issue from the project's tracker.
Pull requests
1 merged, 3 open, 0 closed. Status synced from GitHub.
- openFix #316: Support POST action requests with goto_location for connect buttonOct 11, 2026
- openFix #358: Respect user time format preference in calendar views and notificationsOct 11, 2026
- openTest #423: Add comprehensive unit tests for token refresh and store lifecycleOct 11, 2026
- mergedFix #318: Add space between time and AM/PM for calendar eventsSep 27, 2026