Git Product home page Git Product logo

mattermost-plugin-mscalendar's Introduction

Mattermost Microsoft Calendar Plugin

Build Status Code Coverage Release HW

Maintainer: @mickmister Co-Maintainer: @larkox

Help Wanted tickets can be found here.

Table of Contents

  1. License
  2. Overview
  3. Features
  4. Configuration

License

This repository is licensed under the Mattermost Source Available License, and requires a valid Mattermost E20, Professional, or Enterprise license. See our documentation to learn more. If you are contributing to the project, please enable ServiceSettings.EnableDeveloper in your server's config. The plugin will not start and show an error message in your server logs, if you are the missing the Enterprise License.

Overview

This plugin supports a two-way integration between Mattermost and Microsoft Outlook Calendar. For a stable production release, please download the latest version from the Plugin Marketplace and follow these instructions to install and configure the plugin.

Features

  • Daily summary of calendar events.
  • Automatic user status synchronization into Mattermost.
  • Accept or decline calendar event invites from Mattermost.

Configuration

Step 1: Create Mattermost App in Azure

  1. Sign into portal.azure.com using an admin Azure account.
  2. Navigate to App Registrations
  3. Click New registration at the top of the page.

  1. Then fill out the form with the following values:
  • Name: Mattermost MS Calendar Plugin
  • Supported account types: Default value (Single tenant)
  • Redirect URI: https://(MM_SITE_URL)/plugins/com.mattermost.mscalendar/oauth2/complete

Replace (MM_SITE_URL) with your Mattermost server's Site URL. Select Register to submit the form.

  1. Navigate to Certificates & secrets in the left pane.

  1. Click New client secret. Then click Add, and copy the new secret on the bottom right corner of the screen. We'll use this value later in the Mattermost admin console.

  1. Navigate to API permissions in the left pane.

  1. Click Add a permission, then Microsoft Graph in the right pane.

  1. Click Delegated permissions, and scroll down to select the following permissions:
  • Calendars.ReadWrite
  • Calendars.ReadWrite.Shared
  • MailboxSettings.Read

  1. Click Add permissions to submit the form.

  2. Next, add application permissions via Add a permission > Microsoft Graph > Application permissions.

  3. Select the following permissions:

  • Calendars.Read
  • MailboxSettings.Read
  • User.ReadAll
  1. Click Add permissions to submit the form.

  1. Click Grant admin consent for... to grant the permissions for the application.

You're all set for configuration inside of Azure.

Step 2: Configure Plugin Settings

  1. Copy the Client ID and Tenant ID from the Azure portal.

  1. Navigate to System Console > PLUGINS (BETA) > Microsoft Calendar. Fill in the following fields:
  • Admin User IDs - List of user IDs to manage the plugin.
  • tenantID - Copy from Azure App.
  • clientID - Copy from Azure App.
  • Client Secret - Copy from Azure App (Generated in Certificates & secrets, earlier in these instructions).

mattermost-plugin-mscalendar's People

Contributors

aaronrothschild avatar augustasv avatar avddvd avatar chetanyakan avatar cjmartian avatar cpurta avatar dependabot[bot] avatar hanzei avatar jfrerich avatar justinegeffen avatar larkox avatar levb avatar matthewdorner avatar mickmister avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.