4
0
mirror of https://github.com/cwinfo/matterbridge.git synced 2025-07-02 10:26:18 +00:00

Handle same account in multiple gateways better

This commit is contained in:
Wim
2017-07-30 16:09:05 +02:00
parent 38d09dba2e
commit 12989bbd99
2 changed files with 12 additions and 12 deletions

View File

@ -70,13 +70,14 @@ func (r *Router) getBridge(account string) *bridge.Bridge {
return nil
}
func (r *Router) getGatewayName(channelID string) string {
func (r *Router) getGatewayName(channelID string) []string {
var names []string
for _, gw := range r.Gateways {
if _, ok := gw.Channels[channelID]; ok {
return gw.Name
names = append(names, gw.Name)
}
}
return ""
return names
}
func (r *Router) handleReceive() {
@ -103,13 +104,11 @@ func (r *Router) handleReceive() {
}
}
for _, gw := range r.Gateways {
if gw.Name == r.getGatewayName(getChannelID(msg)) {
if !gw.ignoreMessage(&msg) {
msg.Timestamp = time.Now()
gw.modifyMessage(&msg)
for _, br := range gw.Bridges {
gw.handleMessage(msg, br)
}
if !gw.ignoreMessage(&msg) {
msg.Timestamp = time.Now()
gw.modifyMessage(&msg)
for _, br := range gw.Bridges {
gw.handleMessage(msg, br)
}
}
}