Very hacky matrix bot that nags about active kanboard tasks
Find a file
2020-02-03 09:41:53 +00:00
nagbot Fix scheduling (#2) 2020-02-03 09:41:53 +00:00
test Fix scheduling (#2) 2020-02-03 09:41:53 +00:00
.gitignore rewrite (#1) 2020-02-02 16:21:00 +00:00
base-config.yaml Fix scheduling (#2) 2020-02-03 09:41:53 +00:00
make-mbp.sh Fix scheduling (#2) 2020-02-03 09:41:53 +00:00
maubot.yaml rewrite (#1) 2020-02-02 16:21:00 +00:00
README.md Fix scheduling (#2) 2020-02-03 09:41:53 +00:00

nagbot

A maubot plugin that nags people about pending or ongoing kanban tasks from a board by reminding them on a matrix room.

Currently only compatible with Kanboard (https://github.com/kanboard/kanboard).

Usage

Package the relevant material in a zip file with an .mbp extension.

$ ./make-mbp.sh

Configuration

The presence of a configuration file is required. Configuration is written in YAML.

All settings are mandatory!

Sections

kanboard

Settigns pertaining to connecting to the Kanboard server.

Setting Description Example
server_url URL to the kanboard server "https://kanboard.example.com"
access_token An API access token from the Kanboard server "91fd8e66..."
project_ids Array of project IDs from the Kanboard server - 4

nags

Configures the different periodic reminders, or "nags". This section contains subsection (the subsection names is up to the bot's owner). Example:

nags:
  userchosenname:
    <settings...>
Setting Description Example
time Time of day at which to send the reminder. Only hours and minutes. "08:00"
timezone_offset Specify the timezone for the daily reminder's time, in the form +/-DDDD as per ISO 8601 "+0430"
nag_days Array of "day of the week" numbers during which to nag. 0 is Monday. -0
callback A fully qualified python function name to call on reminder's time. No arguments supported. "nagbot.remind_me"
room_id The mxid of a room of which the bot is already a member. Reminders will be sent there! !szVfk34...:domain.com

Complete configuration example

kanboard:
  server_url: "https://kanboard.example.com"
  access_token: "some_token"
  project_ids:
    - 3

nags:
  current_tasks:
    time: "14:30"
    timezone_offset: "+0100"
    nag_days:
      - 0
    callback: "module.function"
    room_id: "some room id"