Skip to content

Commit

Permalink
Creating the DictatorBot
Browse files Browse the repository at this point in the history
  • Loading branch information
davidgs committed Mar 28, 2021
1 parent 303ee0d commit 075ae93
Show file tree
Hide file tree
Showing 7 changed files with 1,357 additions and 1 deletion.
315 changes: 315 additions & 0 deletions DictatorBot.bpmn

Large diffs are not rendered by default.

42 changes: 41 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,41 @@
DictatorBot
# DictatorBot

DictatorBot is used by the [DevRelCollective](https://devrelcollective.fun) to manage which moderator (Benevolent Dictator) is on-call at any given time.

It is build in GOLANG, using Camunda Platform BPM as an orchestration platform.

It was written by [David G. Simmons](https://github.com/davidgs).

## Configuration and building

Before attempting to run the Dictator bot you should make sure that you have created a Slack Application, that it has the proper permissions to write to channels and Direct Messages, etc.

App your APP_ID, TOKEN, Verification Secret, and Channel ID to the `dictator.yaml` file.

You will need to edit `dictator.yaml` for your installation and make sure that the `dictators`, etc. are all correct.

```
% go get
% go build dictator.go
% ./dictator
```
From that point on, you can use DictatorBot in your Slack Group.

## Deploying Dictator Bot

You will need an instance of [Camunda Platform BPM](https://camunda.com) running somewhere. It *must* be running on a secure (TLS/HTTPS) server, as *must* the `dictator` process described above.

Deploy the `DictatorBot.bpmn` file to your Camunda Platform instance.

Make sure that you have edited the proper server names in the `dictator.yaml` file to point to your servers.

## Using Dictator Bot

Available commands are:
1) help or ?
2) rotate or rotation to get the full rotation schedule
3) who to see who the current on-call person is
4) next to see who the next on-call person will be
5) @username to place someone on-call
6) auth or authorized to see who is authorized to use the DictatorBot
7) update to place the next person in the rotation on-call
Loading

0 comments on commit 075ae93

Please sign in to comment.