5
0
mirror of https://github.com/cwinfo/matterbridge.git synced 2024-09-19 15:49:36 +00:00

Make goconst linter happy

This commit is contained in:
Wim 2018-11-08 22:20:03 +01:00
parent 1e0bb3da95
commit b2a07aba3a
4 changed files with 58 additions and 41 deletions

View File

@ -10,6 +10,7 @@ import (
"github.com/42wim/matterbridge/bridge/helper"
"github.com/42wim/matterbridge/matterclient"
"github.com/42wim/matterbridge/matterhook"
"github.com/mattermost/platform/model"
"github.com/rs/xid"
)
@ -239,11 +240,11 @@ func (b *Bmattermost) handleMatterClient(messages chan *config.Message) {
}
// create a text for bridges that don't support native editing
if message.Raw.Event == "post_edited" && !b.GetBool("EditDisable") {
if message.Raw.Event == model.WEBSOCKET_EVENT_POST_EDITED && !b.GetBool("EditDisable") {
rmsg.Text = message.Text + b.GetString("EditSuffix")
}
if message.Raw.Event == "post_deleted" {
if message.Raw.Event == model.WEBSOCKET_EVENT_POST_DELETED {
rmsg.Event = config.EVENT_MSG_DELETE
}
@ -434,7 +435,7 @@ func (b *Bmattermost) skipMessage(message *matterclient.Message) bool {
}
// Handle edited messages
if (message.Raw.Event == "post_edited") && b.GetBool("EditDisable") {
if (message.Raw.Event == model.WEBSOCKET_EVENT_POST_EDITED) && b.GetBool("EditDisable") {
return true
}
@ -462,7 +463,7 @@ func (b *Bmattermost) skipMessage(message *matterclient.Message) bool {
}
// only handle posted, edited or deleted events
if !(message.Raw.Event == "posted" || message.Raw.Event == "post_edited" || message.Raw.Event == "post_deleted") {
if !(message.Raw.Event == "posted" || message.Raw.Event == model.WEBSOCKET_EVENT_POST_EDITED || message.Raw.Event == model.WEBSOCKET_EVENT_POST_DELETED) {
return true
}
return false

View File

@ -12,6 +12,12 @@ import (
"github.com/go-telegram-bot-api/telegram-bot-api"
)
const (
unknownUser = "unknown"
HTMLFormat = "HTML"
HTMLNick = "htmlnick"
)
type Btelegram struct {
c *tgbotapi.BotAPI
*bridge.Config
@ -64,7 +70,7 @@ func (b *Btelegram) Send(msg config.Message) (string, error) {
return b.cacheAvatar(&msg)
}
if b.GetString("MessageFormat") == "HTML" {
if b.GetString("MessageFormat") == HTMLFormat {
msg.Text = makeHTML(msg.Text)
}
@ -98,12 +104,12 @@ func (b *Btelegram) Send(msg config.Message) (string, error) {
if err != nil {
return "", err
}
if strings.ToLower(b.GetString("MessageFormat")) == "htmlnick" {
if strings.ToLower(b.GetString("MessageFormat")) == HTMLNick {
b.Log.Debug("Using mode HTML - nick only")
msg.Text = html.EscapeString(msg.Text)
}
m := tgbotapi.NewEditMessageText(chatid, msgid, msg.Username+msg.Text)
if b.GetString("MessageFormat") == "HTML" {
if b.GetString("MessageFormat") == HTMLFormat {
b.Log.Debug("Using mode HTML")
m.ParseMode = tgbotapi.ModeHTML
}
@ -111,7 +117,7 @@ func (b *Btelegram) Send(msg config.Message) (string, error) {
b.Log.Debug("Using mode markdown")
m.ParseMode = tgbotapi.ModeMarkdown
}
if strings.ToLower(b.GetString("MessageFormat")) == "htmlnick" {
if strings.ToLower(b.GetString("MessageFormat")) == HTMLNick {
b.Log.Debug("Using mode HTML - nick only")
m.ParseMode = tgbotapi.ModeHTML
}
@ -187,7 +193,7 @@ func (b *Btelegram) handleRecv(updates <-chan tgbotapi.Update) {
// if we really didn't find a username, set it to unknown
if rmsg.Username == "" {
rmsg.Username = "unknown"
rmsg.Username = unknownUser
}
// handle any downloads
@ -209,7 +215,7 @@ func (b *Btelegram) handleRecv(updates <-chan tgbotapi.Update) {
}
}
if usernameForward == "" {
usernameForward = "unknown"
usernameForward = unknownUser
}
rmsg.Text = "Forwarded from " + usernameForward + ": " + rmsg.Text
}
@ -229,7 +235,7 @@ func (b *Btelegram) handleRecv(updates <-chan tgbotapi.Update) {
}
}
if usernameReply == "" {
usernameReply = "unknown"
usernameReply = unknownUser
}
if !b.GetBool("QuoteDisable") {
rmsg.Text = b.handleQuote(rmsg.Text, usernameReply, message.ReplyToMessage.Text)
@ -401,7 +407,7 @@ func (b *Btelegram) handleUploadFile(msg *config.Message, chatid int64) (string,
func (b *Btelegram) sendMessage(chatid int64, username, text string) (string, error) {
m := tgbotapi.NewMessage(chatid, "")
m.Text = username + text
if b.GetString("MessageFormat") == "HTML" {
if b.GetString("MessageFormat") == HTMLFormat {
b.Log.Debug("Using mode HTML")
m.ParseMode = tgbotapi.ModeHTML
}
@ -409,7 +415,7 @@ func (b *Btelegram) sendMessage(chatid int64, username, text string) (string, er
b.Log.Debug("Using mode markdown")
m.ParseMode = tgbotapi.ModeMarkdown
}
if strings.ToLower(b.GetString("MessageFormat")) == "htmlnick" {
if strings.ToLower(b.GetString("MessageFormat")) == HTMLNick {
b.Log.Debug("Using mode HTML - nick only")
m.Text = username + html.EscapeString(text)
m.ParseMode = tgbotapi.ModeHTML

View File

@ -70,6 +70,10 @@ var bridgeMap = map[string]bridge.Factory{
"zulip": bzulip.New,
}
const (
apiProtocol = "api"
)
func init() {
flog = log.WithFields(log.Fields{"prefix": "gateway"})
}
@ -158,7 +162,7 @@ RECONNECT:
func (gw *Gateway) mapChannelConfig(cfg []config.Bridge, direction string) {
for _, br := range cfg {
if isApi(br.Account) {
br.Channel = "api"
br.Channel = apiProtocol
}
// make sure to lowercase irc channels in config #348
if strings.HasPrefix(br.Account, "irc.") {
@ -191,7 +195,7 @@ func (gw *Gateway) getDestChannel(msg *config.Message, dest bridge.Bridge) []con
var channels []config.ChannelInfo
// for messages received from the api check that the gateway is the specified one
if msg.Protocol == "api" && gw.Name != msg.Gateway {
if msg.Protocol == apiProtocol && gw.Name != msg.Gateway {
return channels
}
@ -310,7 +314,7 @@ func (gw *Gateway) handleMessage(msg config.Message, dest *bridge.Bridge) []*BrM
msg.ID = gw.getDestMsgID(origmsg.ID, dest, channel)
// for api we need originchannel as channel
if dest.Protocol == "api" {
if dest.Protocol == apiProtocol {
msg.Channel = originchannel
}
@ -459,7 +463,7 @@ func (gw *Gateway) modifyMessage(msg *config.Message) {
}
// messages from api have Gateway specified, don't overwrite
if msg.Protocol != "api" {
if msg.Protocol != apiProtocol {
msg.Gateway = gw.Name
}
}

View File

@ -152,6 +152,12 @@ enable=true
channel="--333333333333"
`)
const (
ircTestAccount = "irc.zzz"
tgTestAccount = "telegram.zzz"
slackTestAccount = "slack.zzz"
)
func maketestRouter(input []byte) *Router {
cfg := config.NewConfigFromString(input)
r, err := NewRouter(cfg)
@ -248,31 +254,31 @@ func TestGetDestChannelAdvanced(t *testing.T) {
switch gw.Name {
case "bridge":
if (msg.Channel == "#main" || msg.Channel == "-1111111111111" || msg.Channel == "irc") &&
(msg.Account == "irc.zzz" || msg.Account == "telegram.zzz" || msg.Account == "slack.zzz") {
(msg.Account == ircTestAccount || msg.Account == tgTestAccount || msg.Account == slackTestAccount) {
hits[gw.Name]++
switch br.Account {
case "irc.zzz":
case ircTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "#main",
Account: "irc.zzz",
Account: ircTestAccount,
Direction: "inout",
ID: "#mainirc.zzz",
SameChannel: map[string]bool{"bridge": false},
Options: config.ChannelOptions{Key: ""},
}}, channels)
case "telegram.zzz":
case tgTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "-1111111111111",
Account: "telegram.zzz",
Account: tgTestAccount,
Direction: "inout",
ID: "-1111111111111telegram.zzz",
SameChannel: map[string]bool{"bridge": false},
Options: config.ChannelOptions{Key: ""},
}}, channels)
case "slack.zzz":
case slackTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "irc",
Account: "slack.zzz",
Account: slackTestAccount,
Direction: "inout",
ID: "ircslack.zzz",
SameChannel: map[string]bool{"bridge": false},
@ -282,22 +288,22 @@ func TestGetDestChannelAdvanced(t *testing.T) {
}
case "bridge2":
if (msg.Channel == "#main-help" || msg.Channel == "--444444444444") &&
(msg.Account == "irc.zzz" || msg.Account == "telegram.zzz") {
(msg.Account == ircTestAccount || msg.Account == tgTestAccount) {
hits[gw.Name]++
switch br.Account {
case "irc.zzz":
case ircTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "#main-help",
Account: "irc.zzz",
Account: ircTestAccount,
Direction: "inout",
ID: "#main-helpirc.zzz",
SameChannel: map[string]bool{"bridge2": false},
Options: config.ChannelOptions{Key: ""},
}}, channels)
case "telegram.zzz":
case tgTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "--444444444444",
Account: "telegram.zzz",
Account: tgTestAccount,
Direction: "inout",
ID: "--444444444444telegram.zzz",
SameChannel: map[string]bool{"bridge2": false},
@ -307,22 +313,22 @@ func TestGetDestChannelAdvanced(t *testing.T) {
}
case "bridge3":
if (msg.Channel == "#main-telegram" || msg.Channel == "--333333333333") &&
(msg.Account == "irc.zzz" || msg.Account == "telegram.zzz") {
(msg.Account == ircTestAccount || msg.Account == tgTestAccount) {
hits[gw.Name]++
switch br.Account {
case "irc.zzz":
case ircTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "#main-telegram",
Account: "irc.zzz",
Account: ircTestAccount,
Direction: "inout",
ID: "#main-telegramirc.zzz",
SameChannel: map[string]bool{"bridge3": false},
Options: config.ChannelOptions{Key: ""},
}}, channels)
case "telegram.zzz":
case tgTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "--333333333333",
Account: "telegram.zzz",
Account: tgTestAccount,
Direction: "inout",
ID: "--333333333333telegram.zzz",
SameChannel: map[string]bool{"bridge3": false},
@ -337,11 +343,11 @@ func TestGetDestChannelAdvanced(t *testing.T) {
}
hits[gw.Name]++
switch br.Account {
case "irc.zzz":
case ircTestAccount:
assert.Len(t, channels, 2)
assert.Contains(t, channels, config.ChannelInfo{
Name: "#main",
Account: "irc.zzz",
Account: ircTestAccount,
Direction: "out",
ID: "#mainirc.zzz",
SameChannel: map[string]bool{"announcements": false},
@ -349,25 +355,25 @@ func TestGetDestChannelAdvanced(t *testing.T) {
})
assert.Contains(t, channels, config.ChannelInfo{
Name: "#main-help",
Account: "irc.zzz",
Account: ircTestAccount,
Direction: "out",
ID: "#main-helpirc.zzz",
SameChannel: map[string]bool{"announcements": false},
Options: config.ChannelOptions{Key: ""},
})
case "slack.zzz":
case slackTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "general",
Account: "slack.zzz",
Account: slackTestAccount,
Direction: "out",
ID: "generalslack.zzz",
SameChannel: map[string]bool{"announcements": false},
Options: config.ChannelOptions{Key: ""},
}}, channels)
case "telegram.zzz":
case tgTestAccount:
assert.Equal(t, []config.ChannelInfo{{
Name: "--333333333333",
Account: "telegram.zzz",
Account: tgTestAccount,
Direction: "out",
ID: "--333333333333telegram.zzz",
SameChannel: map[string]bool{"announcements": false},