5
0
mirror of https://github.com/cwinfo/matterbridge.git synced 2024-11-25 22:31:35 +00:00

Update documentation

This commit is contained in:
Wim 2016-07-12 01:02:56 +02:00
parent 3bc25f4707
commit c879f79456
2 changed files with 79 additions and 37 deletions

View File

@ -1,14 +1,20 @@
# matterbridge # matterbridge
Simple bridge between mattermost and IRC. Uses the in/outgoing webhooks. Simple bridge between mattermost and IRC.
Relays public channel messages between mattermost and IRC.
Requires mattermost 1.2.0+ * Relays public channel messages between mattermost and IRC.
* Supports multiple mattermost and irc channels.
* Matterbridge -plus also works with private groups on your mattermost.
There is also [matterbridge-plus] (https://github.com/42wim/matterbridge-plus) which uses the mattermost API and needs a dedicated user (bot). But requires no incoming/outgoing webhook setup. ## Requirements:
* [Mattermost] (https://github.com/mattermost/platform/) 3.x (stable, not a dev build)
### Webhooks version
* Configured incoming/outgoing [webhooks](https://www.mattermost.org/webhooks/) on your mattermost instance.
### Plus (API) version
* A dedicated user(bot) on your mattermost instance.
## binaries ## binaries
Binaries can be found [here] (https://github.com/42wim/matterbridge/releases/tag/v0.4.2) Binaries can be found [here] (https://github.com/42wim/matterbridge/releases/tag/v0.5)
## building ## building
Go 1.6+ is required. Make sure you have [Go](https://golang.org/doc/install) properly installed, including setting up your [GOPATH] (https://golang.org/doc/code.html#GOPATH) Go 1.6+ is required. Make sure you have [Go](https://golang.org/doc/install) properly installed, including setting up your [GOPATH] (https://golang.org/doc/code.html#GOPATH)
@ -42,11 +48,6 @@ Usage of ./matterbridge:
show version show version
``` ```
Matterbridge will:
* start a webserver listening on the port specified in the configuration.
* connect to specified irc server and channel.
* send messages from mattermost to irc and vice versa, messages in mattermost will appear with irc-nick
## config ## config
### matterbridge ### matterbridge
matterbridge looks for matterbridge.conf in current directory. (use -conf to specify another file) matterbridge looks for matterbridge.conf in current directory. (use -conf to specify another file)
@ -54,7 +55,8 @@ matterbridge looks for matterbridge.conf in current directory. (use -conf to spe
Look at [matterbridge.conf.sample] (https://github.com/42wim/matterbridge/blob/master/matterbridge.conf.sample) for an example. Look at [matterbridge.conf.sample] (https://github.com/42wim/matterbridge/blob/master/matterbridge.conf.sample) for an example.
### mattermost ### mattermost
You'll have to configure the incoming en outgoing webhooks. #### webhooks version
You'll have to configure the incoming and outgoing webhooks.
* incoming webhooks * incoming webhooks
Go to "account settings" - integrations - "incoming webhooks". Go to "account settings" - integrations - "incoming webhooks".
@ -65,5 +67,8 @@ This URL should be set in the matterbridge.conf in the [mattermost] section (see
Go to "account settings" - integrations - "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. 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 (9999 is the port specified in [mattermost] section of matterbridge.conf) 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

View File

@ -3,24 +3,36 @@
#IRC section #IRC section
################################################################### ###################################################################
[IRC] [IRC]
#irc server to connect to. REQUIRED #irc server to connect to.
#REQUIRED
Server="irc.freenode.net:6667" Server="irc.freenode.net:6667"
#Enable to use TLS connection to your irc server. OPTIONAL (default false) #Enable to use TLS connection to your irc server.
#OPTIONAL (default false)
UseTLS=false UseTLS=false
#Enable to not verify the certificate on your irc server. OPTIONAL (default false) #Enable to not verify the certificate on your irc server. i
#e.g. when using selfsigned certificates #e.g. when using selfsigned certificates
#OPTIONAL (default false)
SkipTLSVerify=true SkipTLSVerify=true
#Your nick on irc. REQUIRED #Your nick on irc.
#REQUIRED
Nick="matterbot" Nick="matterbot"
#If you registered your bot with a service like Nickserv on freenode. OPTIONAL #If you registered your bot with a service like Nickserv on freenode.
#OPTIONAL
NickServNick="nickserv" NickServNick="nickserv"
NickServPassword="secret" NickServPassword="secret"
#Nicks you want to ignore. Messages from those users will not be sent to mattermost. OPTIONAL #RemoteNickFormat defines how Mattermost users appear on irc
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#OPTIONAL (default NICK:)
RemoteNickFormat="{NICK}: "
#Nicks you want to ignore.
#Messages from those users will not be sent to mattermost.
#OPTIONAL
IgnoreNicks="ircspammer1 ircspammer2" IgnoreNicks="ircspammer1 ircspammer2"
################################################################### ###################################################################
@ -29,64 +41,88 @@ IgnoreNicks="ircspammer1 ircspammer2"
[mattermost] [mattermost]
#### Settings for webhook matterbridge. #### Settings for webhook matterbridge.
#### These settings will not be used when using -plus switch which doesn't use webhooks. #### These settings will not be used when using -plus switch which doesn't use
#### webhooks.
#Url is your incoming webhook url as specified in mattermost. REQUIRED #Url is your incoming webhook url as specified in mattermost.
#See account settings - integrations - incoming webhooks on mattermost. #See account settings - integrations - incoming webhooks on mattermost.
#REQUIRED
URL="https://yourdomain/hooks/yourhookkey" URL="https://yourdomain/hooks/yourhookkey"
#Address to listen on for outgoing webhook requests from mattermost. REQUIRED #Address to listen on for outgoing webhook requests from mattermost.
#See account settings - integrations - outgoing webhooks on mattermost. #See account settings - integrations - outgoing webhooks on mattermost.
#This setting will not be used when using -plus switch which doesn't use webhooks #This setting will not be used when using -plus switch which doesn't use
#webhooks
#REQUIRED
BindAddress="0.0.0.0:9999" BindAddress="0.0.0.0:9999"
#Icon that will be showed in mattermost. OPTIONAL #Icon that will be showed in mattermost.
#This setting will not be used when using -plus switch which doesn't use webhooks #OPTIONAL
IconURL="http://youricon.png" IconURL="http://youricon.png"
#### Settings for matterbridge -plus #### Settings for matterbridge -plus
#### Thse settings will only be used when using the -plus switch. #### Thse settings will only be used when using the -plus switch.
#The mattermost hostname. REQUIRED #The mattermost hostname.
#REQUIRED
Server="yourmattermostserver.domain" Server="yourmattermostserver.domain"
#Your team on mattermost. REQUIRED #Your team on mattermost.
#REQUIRED
Team="yourteam" Team="yourteam"
#login/pass of your bot. Use a dedicated user for this and not your own! REQUIRED #login/pass of your bot.
#Use a dedicated user for this and not your own!
#REQUIRED
Login="yourlogin" Login="yourlogin"
Password="yourpass" Password="yourpass"
#https by default. Disable to make a http connection to your mattermost. OPTIONAL (default false) #Disable to make a http connection to your mattermost.
#OPTIONAL (default false)
NoTLS=false NoTLS=false
#### Shared settings for matterbridge and -plus #### Shared settings for matterbridge and -plus
#Enable to not verify the certificate on your mattermost server. OPTIONAL (default false) #Enable to not verify the certificate on your mattermost server.
#e.g. when using selfsigned certificates #e.g. when using selfsigned certificates
#OPTIONAL (default false)
SkipTLSVerify=true SkipTLSVerify=true
#Enable to show IRC joins/parts in mattermost. OPTIONAL (default false) #Enable to show IRC joins/parts in mattermost.
#OPTIONAL (default false)
ShowJoinPart=false ShowJoinPart=false
#Whether to prefix messages from IRC to mattermost with the sender's nick. OPTIONAL (default false) #Whether to prefix messages from IRC to mattermost with the sender's nick.
#Useful if username overrides for incoming webhooks isn't enabled on the mattermost server #Useful if username overrides for incoming webhooks isn't enabled on the
#mattermost server. If you set PrefixMessagesWithNick to true, each message
#from IRC to Mattermost will by default be prefixed by "irc-" + nick. You can,
#however, modify how the messages appear, by setting (and modifying) RemoteNickFormat
#OPTIONAL (default false)
PrefixMessagesWithNick=false PrefixMessagesWithNick=false
#how to format the list of IRC nicks when displayed in mattermost. OPTIONAL (default plain) #RemoteNickFormat defines how IRC users appear on Mattermost.
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#OPTIONAL (default irc-NICK)
RemoteNickFormat="irc-{NICK}"
#how to format the list of IRC nicks when displayed in mattermost.
#Possible options are "table" and "plain" #Possible options are "table" and "plain"
#OPTIONAL (default plain)
NickFormatter=plain NickFormatter=plain
#How many nicks to list per row for formatters that support this. OPTIONAL (default 4) #How many nicks to list per row for formatters that support this.
#OPTIONAL (default 4)
NicksPerRow=4 NicksPerRow=4
#Nicks you want to ignore. Messages from those users will not be sent to IRC. OPTIONAL #Nicks you want to ignore. Messages from those users will not be sent to IRC.
#OPTIONAL
IgnoreNicks="mmbot spammer2" IgnoreNicks="mmbot spammer2"
################################################################### ###################################################################
#multiple channel config #multiple channel config
################################################################### ###################################################################
#You can specify multiple channels. REQUIRED (at least 1 channel) #You can specify multiple channels.
#The name is just an identifier for you. #The name is just an identifier for you.
#REQUIRED (at least 1 channel)
[Channel "channel1"] [Channel "channel1"]
#Choose the IRC channel to send mattermost messages to. #Choose the IRC channel to send mattermost messages to.
IRC="#off-topic" IRC="#off-topic"
@ -101,5 +137,6 @@ mattermost="testing"
#general #general
################################################################### ###################################################################
[general] [general]
#request your API key on https://github.com/giphy/GiphyAPI. This is a public beta key. OPTIONAL #request your API key on https://github.com/giphy/GiphyAPI. This is a public beta key.
#OPTIONAL
GiphyApiKey="dc6zaTOxFJmzC" GiphyApiKey="dc6zaTOxFJmzC"