Skip to content

dangersalad/mx-puppet-slack

 
 

Repository files navigation

Support room on Matrix donate

mx-puppet-slack

This is a slack puppeting bridge for matrix. It is based on mx-puppet-bridge and provide multi-user instances.

Quick start using Docker

Docker image can be found at https://hub.docker.com/r/sorunome/mx-puppet-slack

For docker you probably want the following changes in config.yaml:

bindAddress: '0.0.0.0'
filename: '/data/database.db'
file: '/data/bridge.log'

Also check the config for other values, like your homeserver domain.

Direct launch as Node.js app:

git clone https://github.com/Sorunome/mx-puppet-slack.git
cd sample.config.yaml
npm install
cp sample.config.yaml config.yaml
# fill info about your homeserver and Slack app credentials to config.yaml manually
npm run start -- -r # generate registration file
npm run start

How to get Slack app credentials

Legacy Token

Get a legacy token from https://api.slack.com/custom-integrations/legacy-tokens and then chat with the bot user (@_slackpuppet_bot:domain.tld unless you changed the config):

link <token>

OAuth

To use OAuth set up a slack app and fill in oauth block in your config. Be sure to forward the oauth.redirectUri to the bridge. Then just run:

link

xoxc token

Warning: Linking your xoxc account's token is against Slack's Terms of Service.

First you must retrieve your xoxc token: In the network manager, filter for type WS/WebSocket, and the xoxc token is there as URL parameter of that request.

Next you will need to get the contents of your d cookie.

After that, run:

link <token> <d cookie contents>

About

Slack puppeting bridge for matrix

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 97.1%
  • Dockerfile 1.7%
  • Shell 1.2%