Slack integration that lets your team plot and share their locations on a map.
- You must be an admin for a Slack Workspace
- You must have a way to deploy this node.js app such as
- Zeit Now
- Host it yourself
- You must have team members in the same Slack Team/Workspace (optional 😜)
Create a Incoming Webhook
This is necessary for the GeoSlack app to post a message in slack with a map/location of the user.
- Login to your Slack workspace
- Go to api.slack.com/incoming-webhooks
- Click on incoming webhook integration near the top
- Select a channel and then click the big green Add Incoming WebHooks Integration button
- Scroll down to the Integration Settings
- Double check the channel name
- Copy the Webhook URL for later
- Assign a Custom Name such as "GeoSlack"
- Assign a Custom Icon such as the
- Click the Save Settings button
The following assumes you want to deploy GeoSlack to Heroku.
However, you can deploy to any server that can run Node.js and change environment variables.
- Click this button
- Type in a name for your app such as "geoslack"
- Click the Deploy App button
- Click the Settings tab at the top
- Click the Reveal Config Vars button to show environment variables
- Add the following key/value pairs:
APP_URL- From "domains", format:
SLACK_WEBHOOK_URL- From Step 1 above, format:
GMAPS_API_KEY- From Google Maps click to get api key
DESTINATION- optional address or coordinates of your team's workplace
(Optional) Create an Outgoing Webhook
This is optional but will allow you to type a keyword and get a link to the GeoSlack app.
- Go to api.slack.com/outgoing-webhooks
- Click on outgoing webhook integration near the top
- Click the big green Add Outgoing Webhook Integration button
- Add url
This code was forked from concurlabs/geoslack which is no longer maintained. Since forking, I added a couple new features including
- A page to show everyone's location
- ETA to your destination
- (future) Periodically update location