Note: bridging to Slack can also happen via the matrix-appservice-slack and mautrix-slack bridges supported by the playbook. Note that matrix-appservice-slack
is not available for new installation unless you have already created a classic Slack application, because the creation of classic Slack applications, which this bridge makes use of, has been discontinued.
The playbook can install and configure mx-puppet-slack for you.
See the project page to learn what it does and why it might be useful to you.
Follow the OAuth credentials instructions to create a new Slack app, setting the redirect URL to https://matrix.example.com/slack/oauth
.
To enable the Slack bridge, add the following configuration to your inventory/host_vars/matrix.example.com/vars.yml
file:
matrix_mx_puppet_slack_enabled: true
# Client ID must be quoted so YAML does not parse it as a float.
matrix_mx_puppet_slack_oauth_client_id: "<SLACK_APP_CLIENT_ID>"
matrix_mx_puppet_slack_oauth_client_secret: "<SLACK_APP_CLIENT_SECRET>"
After configuring the playbook, run it with playbook tags as below:
ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,ensure-matrix-users-created,start
Notes:
-
The
ensure-matrix-users-created
playbook tag makes the playbook automatically create the bot's user account. -
The shortcut commands with the
just
program are also available:just install-all
orjust setup-all
just install-all
is useful for maintaining your setup quickly (2x-5x faster thanjust setup-all
) when its components remain unchanged. If you adjust yourvars.yml
to remove other components, you'd need to runjust setup-all
, or these components will still remain installed.
To use the bridge, you need to start a chat with Slack Puppet Bridge
with the handle @_slackpuppet_bot:example.com
(where example.com
is your base domain, not the matrix.
domain).
Three authentication methods are available, Legacy Token, OAuth and xoxc token. See mx-puppet-slack documentation for more information about how to configure the bridge.
Once logged in, send list
to the bot user to list the available rooms.
Clicking rooms in the list will result in you receiving an invitation to the bridged room.
Also send help
to the bot to see the commands available.