DEV Community


What do I miss from Slack - Solution

Vasiliy Vanchuk
・2 min read

I like slack. Really. Mostly there is no mess, which I see in Telegram channels. Tree conversation is awesome. I like Slack so much, that even moved all my conversations with students to separate slack team (I'm a teacher, and teach how to use slack properly appeared an extra task =) ).

Slack bot

There are a few things I miss:

  • long history for Open Source / Dev communities (that's the way to earn money, I appreciate this, ok)
  • cli-tools

The last is most important for me. It allows us to use of slack for notifications, for automation with CI and even for dogged reminders (about doing something, like uploading avatars). Two years ago those tasks were not so common for me, so I was opening DevTools in Chrome, play a little with global TS variable and used those methods to do what I want. That's fine for 1-2-3 times.

But later it becomes annoying. Plus it's only for manual things. Not for automation. I discovered an awesome bash script slacktee. It helps a lot. BUT. I need to have an api-token to use it. And you can't get it till you have no permissions (due to limitations from team owner). That's the life of teams leading by paranoics =)

During some time it was possible to sniff that token from a browser in Network tab, but since they were moving to the newest version of API - that key is using on frontend doesn't fit slacktee anymore.

So I spend some time to create a puppeteer-based wrapper around the Slack UI. Currently, it allows to do just 2 things:

  • dump information about users
  • send message to channel/user

Both I used for the simple task - enforce people (with annoying messages, no other way found from slack settings) to upload profile images.

Probably not a good idea to use it with npx, cause puppeteer takes some time to download. But in my case, I'm using it daily, so install it globally solve this moment.

And for sure, due to the fact it works from UI perspective (you can use --debug option to see all the actions) it not as fast as slacktee, but it solves the problem. Without reversing API.

It's nice if you're interested in such a tool and can give me some feedback. Github repo is here:

Feedback, ideas and so on are welcome.

Best Regards.

Discussion (2)

vvscode profile image
Vasiliy Vanchuk Author

Here we need to say Thanks to Slack. It's not "open". But it created a niche and now we have plenty of open alternatives. The sad moment is to have a zoo from clients for multiple chat-systems