JeongHoon Byun (aka Outsider) 1a8b4235e2 Merge pull request #78 from samueldg/fix/typos | 7 years ago | |
---|---|---|
bin | 8 years ago | |
locales | 7 years ago | |
public | 8 years ago | |
routes | 8 years ago | |
screenshots | 9 years ago | |
views | 8 years ago | |
.gitignore | 8 years ago | |
Dockerfile | 8 years ago | |
LICENSE.md | 9 years ago | |
README.md | 7 years ago | |
app.js | 8 years ago | |
app.json | 8 years ago | |
azuredeploy.json | 8 years ago | |
config.js | 8 years ago | |
iisnode.yaml | 8 years ago | |
manifest.yml | 8 years ago | |
package.json | 8 years ago |
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 supports Heroku, Azure and Cloud Foundry.
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
: Your access token for Slack.
missing_scope
error may occur.inviteToken
: An optional security measure - if it is set, then that token will be required to get invited.locale
: Application language (currently de
, en
, es
, fr
, ja
, ko
, pl
, pt
, pt-BR
, tr
, zh-CN
and zh-TW
available).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.
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 de
, en
, es
, fr
, ja
, ko
, pl
, pt
, pt-BR
, tr
, zh-CN
and zh-TW
available).Sample
COMMUNITY_NAME=socketio
SLACK_URL=socketio.slack.com
SLACK_TOKEN=ffsdf-5411524512154-16875416847864648976-45641654654654654-444334f43b34566f
INVITE_TOKEN=abcdefg
LOCALE=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
Add the application settings that are defined in the environment variables above.
Node.js is required.
$ git clone git@github.com:outsideris/slack-invite-automation.git
$ cd slack-invite-automation
$ npm install
$ npm start
You can access http://localhost:3000 on your web browser.
It's easy to run this service if you have installed Docker on your system.
$ git clone git@github.com: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