Giter Site home page Giter Site logo

austinvernsonger / slack-invite-automation Goto Github PK

View Code? Open in Web Editor NEW

This project forked from outsideris/slack-invite-automation

0.0 1.0 0.0 1.93 MB

A tiny web application to invite a user into your slack team.

License: MIT License

JavaScript 58.51% CSS 20.03% HTML 21.46%

slack-invite-automation's Introduction

Slack Invite Automation

A tiny web application to invite a user into your slack team.

Inspired by How I hacked Slack into a community platform with Typeform and Socket.io's slack page.

This project support Heroku, Azure and Cloud Foundry.

Deploy to Heroku Deploy to Azure

Settings

You can set variables for your own purpose in config.js or environment variables.

config.js

Fill out config.js as your infomation.

  • community: your community or team name to display on join page.
  • slackUrl : your slack team url (ex: socketio.slack.com)
  • slacktoken : access token of slack. You can generate it in https://api.slack.com/web#auth. You should generate the token in admin user, not owner. If you generate the token in owner user, missing_scope error will be occurred.
  • inviteToken: an optional security measure - if it is set, then that token will be required to get invited.
  • locale: application language (currently en, de, es, fr, pt, pt-BR, zh-CN, zh-TW, ja and ko available).

Environment Variables

You can set environment variables directly or in .env file. If you want to use a .env file, create a file in the root called .env with the following key/value pairs. (.env files are added to the .gitignore.)

  • COMMUNITY_NAME : Your community or team name to display on join page.
  • SLACK_URL : Your slack team url (ex: socketio.slack.com)
  • SLACK_TOKEN : Your access token for slack.
    • You can generate it in https://api.slack.com/web#auth. You should generate the token as an admin user, not owner. If you generate the token in owner user, a missing_scope error may occur.
  • INVITE_TOKEN: An optional security measure - if it is set, then that token will be required to get invited.
  • LOCALE: Application language (currently en, de, es, fr, pt, zh-CN, zh-TW, ja and ko available).

Sample

COMMUNITY_NAME=socketio
SLACK_URL=socketio.slack.com
SLACK_TOKEN=ffsdf-5411524512154-16875416847864648976-45641654654654654-444334f43b34566f
INVITE_TOKEN=abcdefg
LOCAL=en

You can test your token via curl:

 curl -X POST 'https://YOUR-SLACK-TEAM.slack.com/api/users.admin.invite' \
 --data 'email=EMAIL&token=TOKEN&set_active=true' \
 --compressed

Heroku / Azure

Add the application settings that are defined above enviornment variables.

Run

Node.js is required.

$ git clone [email protected]:outsideris/slack-invite-automation.git
$ cd slack-invite-automation
$ npm install
$ npm start

You can access http://localhost:3000 on your web browser.

Run with Docker

It's easy to run this service if you have installed Docker on your system.

$ git clone [email protected]:outsideris/slack-invite-automation.git
$ cd slack-invite-automation
$ docker build -t slack-invite-automation .
$ docker run -it --rm -e COMMUNITY_NAME="YOUR-TEAM-NAME" -e SLACK_URL="YOUR-TEAM.slack.com" -e SLACK_TOKEN="YOUR-ACCESS-TOKEN" -p 3000:3000 slack-invite-automation

slack-invite-automation's People

Contributors

outsideris avatar camalot avatar shian48263 avatar lukaskollmer avatar nicastelo avatar xtuc avatar lira92 avatar peterkaminski avatar stevebyerly avatar ahmetsina avatar bjorand avatar bogidon avatar george-carlin avatar hsiliev avatar lookfirst avatar josecage avatar jules2689 avatar klaascuvelier avatar inkel avatar minidigger avatar sinesiobittencourt avatar avinassh avatar kenu avatar sot528 avatar

Watchers

James Cloos 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.