Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Calendar Bot for mattermost


This bot is making use of


  • The calendarBot can be used to display events from an Microsoft Exchange 2007-2016 Server or Office365 account in Mattermost.
    • By using the category field of an event it is possible to which Mattermost group an event is posted.
    • If the Mattermost group cannot be found, a default channel is used.
    • A global setting exists to define in which time in advance an event is posted in Mattermost.
    • By default events are deleted for now after they have been posted to Mattermost. In the future, most likely an option will allow to just mask these events.
  • Furthermore, a plugin for the Mattermost_bot bot exists, which allows to create events in Mattermost itself. Have a look at
    • Using this plugin events and subcalendars can be created.
    • The events and calendars are stored in the online account and also saved in a local SQLite database.
    • The plugin also allows to show the agenda of today using all subcalendars or specifying only one subcalendar.


The configuration is done in the file:

  • mattermostSettings
    • URL: Url to your Mattermost installation
    • ApiKey: Key for incoming webhook, must created in Mattermost using the integrations settings. More information can be found in the Matterhook documentation
    • Username: Name of the calendarBot that is used in Mattermost
    • IconURL: Definition of an icon shown in Mattermost, e.g.
    • DefaultChannel: Channel in which events are posted if the group defined in the event cannot be found
  • outlookSettings
    • Email: Emailadress of account which is used to look up server, more documentation can be found in Exchangelib
    • Username: Username required to log into email account
    • Password: Password required to log into email account
  • calendarSettings
    • DatabaseName: Name of local SQLite database
    • CheckInterval: Amount of seconds between checks for upcoming events
    • TimespanToCheck: Definition of minute interval which is used for checking of upcoming events

Code structure

  • calendarBotModule
    • Module containing the shared python code.
  • calendarBotProgram
    • Python program which is used to check for upcoming events
  • calendarBotMattermostPlugin
    • Plugin used to create and display events manually in Mattermost

Example screenshot

Example screenshot


Calendar Bot for mattermost




No releases published


No packages published