bridge between mattermost, IRC, gitter, xmpp, slack, discord, telegram, rocket.chat, steam, twitch, ssh-chat, zulip, whatsapp, keybase and matrix with REST API (mattermost not required!)
Go to file
Wim a1a11a88b3 Fix nil pointers 2016-08-14 23:04:28 +02:00
bridge Refactor bridge. Allows bridging between every protocol 2016-08-14 22:44:59 +02:00
matterclient Fix nil pointers 2016-08-14 23:04:28 +02:00
matterhook Do not check bindaddress when not using the server 2016-07-17 22:15:19 +02:00
vendor Refactor bridge. Allows bridging between every protocol 2016-08-14 22:44:59 +02:00
Dockerfile Fix docker build 2016-07-23 00:03:54 +02:00
LICENSE Initial commit 2015-10-23 17:07:05 +02:00
README.md Release v0.5.0 2016-07-27 22:42:59 +02:00
matterbridge.conf.sample Refactor bridge. Allows bridging between every protocol 2016-08-14 22:44:59 +02:00
matterbridge.go Refactor bridge. Allows bridging between every protocol 2016-08-14 22:44:59 +02:00
migration.md Add migration info 2016-07-12 01:23:36 +02:00

README.md

matterbridge

Simple bridge between mattermost and IRC.

  • Relays public channel messages between mattermost and IRC.
  • Supports multiple mattermost and irc channels.
  • Matterbridge -plus also works with private groups on your mattermost.

This project has now matterbridge-plus merged in. Breaking changes for matterbridge can be found in migration

Requirements:

Webhooks version

  • Configured incoming/outgoing webhooks on your mattermost instance.

Plus (API) version

  • A dedicated user(bot) on your mattermost instance.

binaries

Binaries can be found [here] (https://github.com/42wim/matterbridge/releases/tag/v0.5.0)

building

Go 1.6+ is required. Make sure you have Go properly installed, including setting up your [GOPATH] (https://golang.org/doc/code.html#GOPATH)

cd $GOPATH
go get github.com/42wim/matterbridge

You should now have matterbridge binary in the bin directory:

$ ls bin/
matterbridge

running

  1. Copy the matterbridge.conf.sample to matterbridge.conf in the same directory as the matterbridge binary.
  2. Edit matterbridge.conf with the settings for your environment. See below for more config information.
  3. Now you can run matterbridge.
Usage of ./matterbridge:
  -conf string
        config file (default "matterbridge.conf")
  -debug
        enable debug
  -plus
        running using API instead of webhooks
  -version
        show version

config

matterbridge

matterbridge looks for matterbridge.conf in current directory. (use -conf to specify another file)

Look at [matterbridge.conf.sample] (https://github.com/42wim/matterbridge/blob/master/matterbridge.conf.sample) for an example.

mattermost

webhooks version

You'll have to configure the incoming and outgoing webhooks.

  • incoming webhooks Go to "account settings" - integrations - "incoming webhooks".
    Choose a channel at "Add a new incoming webhook", this will create a webhook URL right below.
    This URL should be set in the matterbridge.conf in the [mattermost] section (see above)

  • outgoing webhooks Go to "account settings" - integrations - "outgoing webhooks".
    Choose a channel (the same as the one from incoming webhooks) and fill in the address and port of the server matterbridge will run on.

e.g. http://192.168.1.1:9999 (192.168.1.1:9999 is the BindAddress specified in [mattermost] section of matterbridge.conf)

plus version

You'll have to create a new dedicated user on your mattermost instance. Specify the login and password in [mattermost] section of matterbridge.conf

FAQ

Please look at [matterbridge.conf.sample] (https://github.com/42wim/matterbridge/blob/master/matterbridge.conf.sample) for more information first.

Mattermost doesn't show the IRC nicks

If you're running the webhooks version, this can be fixed by either:

  • enabling "override usernames". See mattermost documentation
  • setting PrefixMessagesWithNick to true in mattermost section of your matterbridge.conf.

If you're running the plus version you'll need to:

  • setting PrefixMessagesWithNick to true in mattermost section of your matterbridge.conf.

Also look at the RemoteNickFormat setting.