Skip to content

matrix-hacks/matrix-puppet-mattermost

Repository files navigation

matrix-puppet-mattermost #matrix-puppet-bridge:matrix.org

This is a Matrix bridge for Mattermost.

It's based on mattermost-client, a Node.js client that uses the official Mattermost v4 API.

Features

  • login to your Mattermost account
  • send text messages to channel you subscribed to (group, public, direct)
  • user sync
  • channel sync
  • receive text messages
  • receive typing events
  • send files
  • receive files
  • support default emojis of mattermost (translating to unicode)

So the basic functionality should work but there is a lot of stuff like attachments, edits, quoting, events (user x joined, user y left) that may be added in the future.

requirements

  • Node.js installed on the system that runs the bridge.
  • An existing account on a Mattermost server.

installation

clone this repo

cd into the directory

run npm install

configure

Copy config.sample.json to config.json and update it to match your setup

register the app service

Generate an mattermost-registration.yaml file with node index.js -r -u "http://your-bridge-server:8090"

Note: The 'registration' setting in the config.json needs to set to the path of this file. By default, it already is.

Copy this mattermost-registration.yaml file to your home server, then edit it, setting its url to point to your bridge server. e.g. url: 'http://your-bridge-server.example.org:8090'

Edit your homeserver.yaml file and update the app_service_config_files with the path to the imessage-registration.yaml file.

Restart your HS.

Launch the bridge with start.sh or node index.js. If you want to run the bridge as a service you can use the matrix-puppet-signal.service file as a template for every systemd based operating system.

Discussion, Help and Support

Join us in the Matrix Puppet Bridge room