Slackbot: Monitoring Messages
A central Go service for posting Slack messages and tracking them to resolution via emoji reactions — one place instead of the same code in every job.
Grew out of the Azure DevOps PR monitor: instead of every job duplicating the “post a message and watch it” logic, this is one service that owns it.
How it works
Send it a payload:
{
"message": "Message",
"channel": "C05Q0F85EGZ",
"mentions": ["UD1QZGTSS"],
"reminderIntervals": 2
}
It posts the message, then polls for reactions: a configurable “reviewing” emoji
marks it in progress, an “approval” emoji marks it resolved. Emojis and the
default check interval are set in config.json, and any single message can
override the interval. Needs the reactions:read and emoji:read Slack scopes.
Runs in Docker.