GithubHelp home page GithubHelp logo

terrorizer1980 / template-channel-naming Goto Github PK

View Code? Open in Web Editor NEW

This project forked from slackapi/template-channel-naming

0.0 0.0 0.0 140 KB

Sample Slack app that uses the Events API and interactive message to help enforce channel naming conventions

License: MIT License

JavaScript 100.00%

template-channel-naming's Introduction

Channel Naming Slack App Template

โœจ Updated October 2018: As we have introduced some new features, this tutorial and the code samples have been updated! All the changes from the previous version of this example, read the DIFF.md


An example app that helps enforce channel naming conventions.

channel-naming (The GIF image is outdated, however, the functionality of this sample app reminds the same! ๐Ÿ™‡โ€โ™€๏ธ)

Setup

1. Clone this repo, or remix this on Glitch

git clone https://github.com/slackapi/template-channel-naming.git

Remix on Glitch

2. Create a Slack app

  1. Create an app at https://api.slack.com/apps
  2. At Bot Users, add a new bot user.
  3. Click on OAuth & Permissions and select the following scopes: chat:write, channels:read, chat:write.public
  4. Enable the interactive messages (See below Enable Interactive Messages)
  5. Enable events (See below Enable the Events API)
  6. Click 'Save Changes' and install the app to all channels (You should get an OAuth access token after the installation

3. Run locally or Remix on Glitch

  1. Set the following environment variables in .env (copy from .env.sample):
    • SLACK_ACCESS_TOKEN: Your app's xoxa- token (available on the Install App page)
    • SLACK_SIGNING_SECRET: Your app's Verification Token (available on the Basic Information page)
    • PORT: The port that you want to run the web server on (Default: 5000)
  2. If you're running the app locally:
    • Start the app (npm start)

4. Enable Interactive Messages

  1. Click on Interactive Components and enable the feature.
  2. Set the Request URL to your server URL + /interactions

If you did "Remix" on Glitch, it auto-generate a new URL with two random words, so your Request URL should be like: https://fancy-feast.glitch.me/command.

Enable the Events API

  1. Click on Events Subscriptions and enable events.
  2. Set the Request URL to your server (e.g. https://yourname.ngrok.com) or Glitch URL + /events
  3. On the same page, scroll down to Subscribe to Bot Events and subscribe to the channel_created and channel_rename events.

template-channel-naming's People

Contributors

ascendbruce avatar colmdoyle avatar girliemac avatar sachinr avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.