summaryrefslogtreecommitdiffstats
path: root/bridge
diff options
context:
space:
mode:
authorWim <wim@42.be>2022-05-06 23:32:25 +0200
committerGitHub <noreply@github.com>2022-05-06 23:32:25 +0200
commit2fa96ec0ed5d78357a11dee158cac9a9e6d7090d (patch)
treec506ad59e6ec320a52477709525844cf6859c9f7 /bridge
parent81e6f75aa491c7bfa11780dd622587cf5fff3c8f (diff)
downloadmatterbridge-msglm-2fa96ec0ed5d78357a11dee158cac9a9e6d7090d.tar.gz
matterbridge-msglm-2fa96ec0ed5d78357a11dee158cac9a9e6d7090d.tar.bz2
matterbridge-msglm-2fa96ec0ed5d78357a11dee158cac9a9e6d7090d.zip
Add KeepQuotedReply option for matrix to fix regression (#1823)
Matrix quotes replies and as of matterbridge 1.24.0 we strip those as this causes issues with bridges support threading and have PreserveThreading enabled. Introduced via https://github.com/42wim/matterbridge/commit/9a8ce9b17e560433731eb5efa3cee7ced0b93605 But if you for example use mattermost or discord with webhooks you'll need to enable this if you want something that looks like a reply from matrix. See issues: - https://github.com/42wim/matterbridge/issues/1819 - https://github.com/42wim/matterbridge/issues/1780
Diffstat (limited to 'bridge')
-rw-r--r--bridge/discord/discord.go2
-rw-r--r--bridge/matrix/matrix.go15
-rw-r--r--bridge/mattermost/helpers.go1
3 files changed, 10 insertions, 8 deletions
diff --git a/bridge/discord/discord.go b/bridge/discord/discord.go
index cd3db76d..ad08cd30 100644
--- a/bridge/discord/discord.go
+++ b/bridge/discord/discord.go
@@ -272,8 +272,6 @@ func (b *Bdiscord) Send(msg config.Message) (string, error) {
// Handle prefix hint for unthreaded messages.
if msg.ParentNotFound() {
msg.ParentID = ""
- msg.Text = strings.TrimPrefix(msg.Text, "\n")
- msg.Text = fmt.Sprintf("> %s %s", msg.Username, msg.Text)
}
// Use webhook to send the message
diff --git a/bridge/matrix/matrix.go b/bridge/matrix/matrix.go
index a2525358..702f4c8d 100644
--- a/bridge/matrix/matrix.go
+++ b/bridge/matrix/matrix.go
@@ -428,12 +428,15 @@ func (b *Bmatrix) handleReply(ev *matrix.Event, rmsg config.Message) bool {
}
body := rmsg.Text
- for strings.HasPrefix(body, "> ") {
- lineIdx := strings.IndexRune(body, '\n')
- if lineIdx == -1 {
- body = ""
- } else {
- body = body[(lineIdx + 1):]
+
+ if !b.GetBool("keepquotedreply") {
+ for strings.HasPrefix(body, "> ") {
+ lineIdx := strings.IndexRune(body, '\n')
+ if lineIdx == -1 {
+ body = ""
+ } else {
+ body = body[(lineIdx + 1):]
+ }
}
}
diff --git a/bridge/mattermost/helpers.go b/bridge/mattermost/helpers.go
index 23700a0c..c69d94fb 100644
--- a/bridge/mattermost/helpers.go
+++ b/bridge/mattermost/helpers.go
@@ -183,6 +183,7 @@ func (b *Bmattermost) sendWebhook(msg config.Message) (string, error) {
if b.GetBool("PrefixMessagesWithNick") {
msg.Text = msg.Username + msg.Text
}
+
if msg.Extra != nil {
// this sends a message only if we received a config.EVENT_FILE_FAILURE_SIZE
for _, rmsg := range helper.HandleExtra(&msg, b.General) {