While I’ve known about Slackbots for almost as long as I’ve used the service, they’ve mostly fallen into the “nice to have but not mission-critical” category.
Do I really need to spam the rest of the team every time a commit or pull request comes through? Do I need to know when an item has been checked off on trello if it wasn’t blocking my progress? Will I never get tired of DJ Khaled’s quotes randomly inserted into my conversations?
The answer’s almost always no, and as a result I’ve never really given Slackbots serious thought. Not until I discovered the bot I couldn’t live without.
I’m not a real dev-ops guy. I’m just a guy who can write enough code to do what needs to be done.
After building an integration between Sprout Invoices (WordPress plugin) and PayStand (payment processor), I needed a way to surface any errors or unexpected scenarios.
Not being a real ops guy and worse yet, having all of my ops experience in node.js apps, I did what any reasonable person would do: chat with a much smarter developer about what to do.
I was expecting a full-fledged solution like papertrail or rollbar, and he did suggest something like that, but his strongest recommendation was writing a simple slackbot.
“Since your team primarily communicates through Slack, bring the errors where everyone is”
It didn’t take long to write a bot that watched clients sign up to process payments on our platform and reported their progress and any errors to the right slack channel.
When PayStand assessed our integration to determine if we were ready to receive live credentials, it was the Slack integration, not our custom interfaces that really blew them away.
The slackbot has been so useful that we’re currently updating it to report on actual payments and other critical parts of our platform.
If your team uses Slack a lot, the one bot you can’t live without is one that notifies you of things happening in your app.
Nothing like a prompt message to the right channel or at the right person to help your team to catch a problem while it’s still small.