All Projects → HackSoc → slack-discord-bridge

HackSoc / slack-discord-bridge

Licence: other
Bridges a text channel between Slack and Discord

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to slack-discord-bridge

slack neuralyzer
Ruby gem for clean up messages and files on Slack.
Stars: ✭ 58 (+176.19%)
Mutual labels:  slack
react-slack-rtm
Demo Slack RTM chat built with ReactJS and Django
Stars: ✭ 17 (-19.05%)
Mutual labels:  slack
notify
推送通知 sdk(Bark、Chanify、钉钉群机器人、Discord、邮件、飞书群机器人、Gitter、Google Chat、iGot、Logger、Mattermost、Now Push、PushBack、Push、PushDeer、PushPlus、QQ 频道机器人、Rocket Chat、Server 酱、Showdoc Push、Slack、Telegram、Webhook、企业微信群机器人、息知、Zulip)。
Stars: ✭ 335 (+1495.24%)
Mutual labels:  slack
djangobot
Bridge between Slack and Django, via Channels
Stars: ✭ 66 (+214.29%)
Mutual labels:  slack
Stevenson
Stevenson is a Vapor framework designed to build integrations between Slack apps, GitHub, JIRA and CI services (CircleCI).
Stars: ✭ 57 (+171.43%)
Mutual labels:  slack
slack-web-api
Simple, convenient, and configurable HTTP client for making requests to Slack’s Web API. Deno port of @slack/web-api
Stars: ✭ 16 (-23.81%)
Mutual labels:  slack
github-issues-notice
Notify labeled issues to Slack
Stars: ✭ 20 (-4.76%)
Mutual labels:  slack
st2chatops
Packaging environment for building StackStorm chatops native packages
Stars: ✭ 26 (+23.81%)
Mutual labels:  slack
cheat-sheet-pdf
📜 A Cheat-Sheet Collection from the WWW
Stars: ✭ 728 (+3366.67%)
Mutual labels:  slack
Yasuf
Very simple way of controlling your Python application via Slack
Stars: ✭ 23 (+9.52%)
Mutual labels:  slack
vscode-chat
Chat with your team while you collaborate over code using VS Live Share
Stars: ✭ 496 (+2261.9%)
Mutual labels:  slack
slackdeletron
[DEPRECATED] - V3.0 of Slack Deletron
Stars: ✭ 35 (+66.67%)
Mutual labels:  slack
slack-term
Slack client for your terminal
Stars: ✭ 6,074 (+28823.81%)
Mutual labels:  slack
slack-ascii
ASCII Emoticons for Slack!
Stars: ✭ 15 (-28.57%)
Mutual labels:  slack
humhub-oauth
Social OAuths built for the Social Platform HumHub
Stars: ✭ 16 (-23.81%)
Mutual labels:  slack
captcha-generator
An NPM package to generate captcha images that can be used in Discord bots or various other projects
Stars: ✭ 45 (+114.29%)
Mutual labels:  slack
gmg
Green Mountain Grills web app.
Stars: ✭ 54 (+157.14%)
Mutual labels:  slack
kwatchman
Watch for k8s resources changes and trigger chains of handlers
Stars: ✭ 24 (+14.29%)
Mutual labels:  slack
emojibot
Emojibot is a Slack bot that announces new custom emoji to a specific channel.
Stars: ✭ 17 (-19.05%)
Mutual labels:  slack
enhanced-slack
🌴 PoC Slack enhancer/injector
Stars: ✭ 48 (+128.57%)
Mutual labels:  slack

slack-discord-bridge

Bridges a text channel between Slack and Discord

Setup

  1. Prerequisites

You need to have Node.js installed. This includes the runtime and the package manager required to install the dependencies.

  1. Clone the repository
git clone [email protected]:HackSoc/slack-discord-bridge.git
  1. Install dependencies
cd slack-discord-bridge
npm install
  1. Set up API keys

Make copies of discord.keys.js.example and slack.keys.js.example and remove the .example ending.

For Discord, you need to create an app, then click "create bot user". Copy the bot user token into the bot_token field of discord.keys.js.
Next you need to create a webhook for the Discord channel of your choice. Click "Edit channel" (gear icon next to a text channel) and go to the webhooks section of the menu. (Note you will need the "Manage Webhooks" permission on your Discord server). Copy the ID and token (explained in discord.keys.js) into the relevant fields.

For Slack, it's a little more complicated. Create a new app and choose your workspace from the list.
First go to OAuth & Permissions, and if you haven't already, add the bot to your workspace. Scroll to Scopes and add users.profile:read.
Save changes, then go to Bot Users and add a bot user.
Finally go back to OAuth & Permissions and install the app to your workspace.
Copy the OAuth and Bot tokens to the correct places in slack.keys.js.

Now you need to add an Incoming Webhook as a custom integration. Note that if you add this as part of the Slack app you created, the messages on Slack won't have the username or avatar of the Discord users sending them. Choose the channel you want the webhook to post in, and copy the URL to hook_url in slack.keys.js.

  1. Running

node bot.js will run the bot until you stop it with Ctrl-C, but you may wish to leave it running longer than you have a terminal window open. An application running in the background is called a daemon. One way of daemonising this bot is to use pm2. After you have installed it, just run pm2 start bot.js in the same directory as bot.js.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].