Add config option to prefix messages (IRC->MM) with nick

If username overriding isn't enabled on the Mattermost server, this is
required for Mattermost users to see who sent a message from IRC.
This commit is contained in:
Fredrik de Vibe 2016-03-18 06:09:29 -04:00
parent a64deb1238
commit 5ec94fdb43
4 changed files with 17 additions and 9 deletions

View File

@ -56,6 +56,8 @@ SkipTLSVerify=true
nick="matterbot" nick="matterbot"
channel="#matterbridge" channel="#matterbridge"
UseSlackCircumfix=false UseSlackCircumfix=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
PrefixMessagesWithNick=false
[mattermost] [mattermost]
#url is your incoming webhook url (account settings - integrations - incoming webhooks) #url is your incoming webhook url (account settings - integrations - incoming webhooks)

View File

@ -8,14 +8,15 @@ import (
type Config struct { type Config struct {
IRC struct { IRC struct {
UseTLS bool UseTLS bool
SkipTLSVerify bool SkipTLSVerify bool
Server string Server string
Port int Port int
Nick string Nick string
Password string Password string
Channel string Channel string
UseSlackCircumfix bool UseSlackCircumfix bool
PrefixMessagesWithNick bool
} }
Mattermost struct { Mattermost struct {
URL string URL string

View File

@ -6,6 +6,7 @@ SkipTLSVerify=true
nick="matterbot" nick="matterbot"
channel="#matterbridge" channel="#matterbridge"
UseSlackCircumfix=false UseSlackCircumfix=false
PrefixMessagesWithNick=false
[mattermost] [mattermost]
url="http://yourdomain/hooks/yourhookkey" url="http://yourdomain/hooks/yourhookkey"

View File

@ -92,8 +92,12 @@ func (b *Bridge) SendType(nick string, message string, channel string, mtype str
matterMessage := matterhook.OMessage{IconURL: b.Config.Mattermost.IconURL} matterMessage := matterhook.OMessage{IconURL: b.Config.Mattermost.IconURL}
matterMessage.Channel = channel matterMessage.Channel = channel
matterMessage.UserName = nick matterMessage.UserName = nick
matterMessage.Text = message
matterMessage.Type = mtype matterMessage.Type = mtype
if (b.Config.IRC.PrefixMessagesWithNick) {
matterMessage.Text = nick + ": " + message
} else {
matterMessage.Text = message
}
err := b.m.Send(matterMessage) err := b.m.Send(matterMessage)
if err != nil { if err != nil {
log.Println(err) log.Println(err)