Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Tacobot

[

github.com

https://github.com/chrisjaber/tacobot

](https://github.com/chrisjaber/tacobot)

Tacobot is a slackbot inspired by Heytaco. It lets you reward the people you share your slack with thanks to tacos.

How does it work ?


  • Invite @tacobot in a public channel and make sure you are in this channel
  • Just ping any coworker with @ and add as many 🌮 as you want* in the message ! Tacobot will then take your tacos from your daily stash and give them to the coworker you just mentionned. So a message looks like this: Thanks @heytaco for creating this concept! :taco: :taco:. And @heyTaco taco counter will be incremented of 2 more tacos.
    • Well... up to 5 per day !

What can Tacobot do ?


Help

  • You can send a direct message to @tacobot and ask for help, he will be glad to answer you

Ranking

  • You can send a direct message to @tacobot and ask for score or ranking. Then he will display the names of the 5 most tacoed people in the slack. You can also ask Tacobot directly in a public channel, but be careful... It will ping 5 people !

Left tacos to give

  • You can send a direct message to @tacobot and ask for how many tacos to give you have left.

Slack Installation


Create a Slack App

  • Follow this link to create an app on Slack. On the field App Name chose Tacobot and select your WorkSpace according to where you want to install Tacobot.

Add features and functionality

  • Click Add features and functionality and select Bots. Then click Add a bot user. On Display Name write Tacobot and on Default username write tacobot. Then validate by clicking Add Bot User. A message will appear, select Authorize.
  • DON'T CLOSE THIS PAGE YET !

Config file

  • In your code, you need to create a file called config.js. Put it in the tacobot root directory. It looks like this:
const debug = process.env.NODE_ENV === "development";
const clientId = "**********.**********";
const clientSecret = "********************************";
const scopes = ["bot"];
const clientSigningSecret = "********************************";
const clientVerificationToken = "**********************";

const token = "****-************-*************-**********************";

const controller = {
  debug,
  clientId,
  clientSecret,
  scopes,
  clientVerificationToken,
  clientSigningSecret,
};

module.exports = {
  controller,
  token,
};
  • These are the values that can be found in the App Credentials section.
clientID -> Client ID
clientSecret -> Client Secret
clientVerificationToken -> Verification Token
clientSigningSecret -> Signing Secret (click `show` button)

token

  • The token value can be found in the Install App tab (on the left menu). In the OAuth Tokens for Your Team section, find Bot User OAuth Access Token value.
  • NOW YOU CAN CLOSE THIS PAGE, YOU'RE READY TO LAUNCH THE PROJECT

Run project

  • First you need to install dependencies:
  • yarn install
  • Then you can just run yarn start
  • The project will be launched with nodemon and reload on every changes.