mirror of
https://github.com/42wim/matterbridge.git
synced 2024-12-18 17:12:37 +01:00
Make our callbackid more unique. Fixes issue with running multiple matterbridge on the same channel (slack,mattermost)
This commit is contained in:
parent
8bfaa007d5
commit
68fbed9281
@ -366,7 +366,7 @@ func (b *Bmattermost) sendWebhook(msg config.Message) (string, error) {
|
|||||||
// this sends a message only if we received a config.EVENT_FILE_FAILURE_SIZE
|
// this sends a message only if we received a config.EVENT_FILE_FAILURE_SIZE
|
||||||
for _, rmsg := range helper.HandleExtra(&msg, b.General) {
|
for _, rmsg := range helper.HandleExtra(&msg, b.General) {
|
||||||
matterMessage := matterhook.OMessage{IconURL: b.GetString("IconURL"), Channel: rmsg.Channel, UserName: rmsg.Username, Text: rmsg.Text, Props: make(map[string]interface{})}
|
matterMessage := matterhook.OMessage{IconURL: b.GetString("IconURL"), Channel: rmsg.Channel, UserName: rmsg.Username, Text: rmsg.Text, Props: make(map[string]interface{})}
|
||||||
matterMessage.Props["matterbridge"] = true
|
matterMessage.Props["matterbridge_"+b.mc.User.Id] = true
|
||||||
b.mh.Send(matterMessage)
|
b.mh.Send(matterMessage)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -385,7 +385,7 @@ func (b *Bmattermost) sendWebhook(msg config.Message) (string, error) {
|
|||||||
if msg.Avatar != "" {
|
if msg.Avatar != "" {
|
||||||
matterMessage.IconURL = msg.Avatar
|
matterMessage.IconURL = msg.Avatar
|
||||||
}
|
}
|
||||||
matterMessage.Props["matterbridge"] = true
|
matterMessage.Props["matterbridge_"+b.mc.User.Id] = true
|
||||||
err := b.mh.Send(matterMessage)
|
err := b.mh.Send(matterMessage)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
b.Log.Info(err)
|
b.Log.Info(err)
|
||||||
@ -415,7 +415,7 @@ func (b *Bmattermost) skipMessage(message *matterclient.Message) bool {
|
|||||||
|
|
||||||
// Ignore messages sent from matterbridge
|
// Ignore messages sent from matterbridge
|
||||||
if message.Post.Props != nil {
|
if message.Post.Props != nil {
|
||||||
if _, ok := message.Post.Props["matterbridge"].(bool); ok {
|
if _, ok := message.Post.Props["matterbridge_"+b.mc.User.Id].(bool); ok {
|
||||||
b.Log.Debugf("sent by matterbridge, ignoring")
|
b.Log.Debugf("sent by matterbridge, ignoring")
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
@ -177,7 +177,7 @@ func (b *Bslack) Send(msg config.Message) (string, error) {
|
|||||||
np.IconURL = msg.Avatar
|
np.IconURL = msg.Avatar
|
||||||
}
|
}
|
||||||
// add a callback ID so we can see we created it
|
// add a callback ID so we can see we created it
|
||||||
np.Attachments = append(np.Attachments, slack.Attachment{CallbackID: "matterbridge"})
|
np.Attachments = append(np.Attachments, slack.Attachment{CallbackID: "matterbridge_" + b.si.User.ID})
|
||||||
// add file attachments
|
// add file attachments
|
||||||
np.Attachments = append(np.Attachments, b.createAttach(msg.Extra)...)
|
np.Attachments = append(np.Attachments, b.createAttach(msg.Extra)...)
|
||||||
// add slack attachments (from another slack bridge)
|
// add slack attachments (from another slack bridge)
|
||||||
@ -644,7 +644,7 @@ func (b *Bslack) skipMessageEvent(ev *slack.MessageEvent) bool {
|
|||||||
|
|
||||||
// skip messages we made ourselves
|
// skip messages we made ourselves
|
||||||
if len(ev.Attachments) > 0 {
|
if len(ev.Attachments) > 0 {
|
||||||
if ev.Attachments[0].CallbackID == "matterbridge" {
|
if ev.Attachments[0].CallbackID == "matterbridge_"+b.si.User.ID {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user