dipak-demansol / mattermost-plugin-agenda

Mattermost plugin to handle meeting agendas

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Agenda Plugin

CircleCI Go Report Card Code Coverage Release HW

Maintainer: @jfrerich Co-Maintainer: @iomodo

The Agenda Plugin helps users queue and list items in a channel's meeting agenda. The agenda is identified by a hashtag based on the meeting date.

The plugin will create posts for the user preceding the agenda item with configured hashtag format and can open a search with that hashtag to view the agenda list.

Initial development as part of Mattermost Hackathon 2019 which was demoed here.

Usage

Meeting Settings Configuration

The meeting settings for each channel can be configured in the Channel Header Dropdown.

channel_header_menu

settings_dialog

Meeting settings include:

  • Schedule Day: Day of the week when the meeting is scheduled.
  • Hashtag Format: The format of the hashtag for the meeting date. The date format is based on Go date and time formatting. The date format must be wrapped in double Braces ( {{ }} ). A default is generated from the first 15 characters of the channel's name with the short name of the month and day (i.e. Dev-{{ Jan02 }}).

Slash Commands to manage the meeting agenda:

/agenda queue [meetingDay] message

Creates a post for the user with the given message for the next meeting date or the specified meetingDay (optional). The configured hashtag will precede the message. The meeting day supports long (Monday, Tuesday), short name (Mon Tue), number (0-6) or next-week. If next-week is indicated, it will use the date of the first meeting in the next calendar week.

post_example

/agenda list [meetingDay]

Executes a search of the hashtag of the next meeting or the specified meetingDay (optional), opening the RHS with all the posts with that hashtag. The meeting day supports long (Monday, Tuesday), short name (Mon Tue), number (0-6) or next-week. If next-week is indicated, it will use the date of the first meeting in the next calendar week.

/agenda setting field value

Updates the given setting with the provided value for the meeting settings of that channel.

Field can be one of:

  • schedule: Day of the week of the meeting. It is an int based on time.Weekday
  • hashtag: Format of the hashtag for the meeting date. It is based on the format used in time.Format

Future Improvements

  • Mark items as resolved or queue for next week.
  • Queue a post using a menu option in the post dot menu.
  • Handle time in meeting schedule.

Contributing

If you would like to make contributions to this plugin, please checkout the open issues labeled Help Wanted and Up For Grabs

About

Mattermost plugin to handle meeting agendas

License:Apache License 2.0


Languages

Language:Go 59.0%Language:JavaScript 26.6%Language:Makefile 14.5%