diff options
author | Bohdan Horbeshko <bodqhrohro@gmail.com> | 2023-09-19 14:31:24 +0300 |
---|---|---|
committer | Bohdan Horbeshko <bodqhrohro@gmail.com> | 2023-09-19 14:31:24 +0300 |
commit | e8bde731642f50c8d272c33343ec78ca70405377 (patch) | |
tree | 2284bfff27c5f9b5019e333123a5314b9d4f1a86 /telegram/utils.go | |
parent | e77caf2c42c079062ade31f928a40b7654ac9bfd (diff) |
Original sender JID in MUCs (why?)
Diffstat (limited to 'telegram/utils.go')
-rw-r--r-- | telegram/utils.go | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/telegram/utils.go b/telegram/utils.go index 036956b..fd7a433 100644 --- a/telegram/utils.go +++ b/telegram/utils.go @@ -1046,12 +1046,18 @@ func (c *Client) sendMessageToGateway(chatId int64, message *client.Message, del var isCarbon bool var jids []string var isGroupchat bool + var originalFrom string if len(groupChatTos) == 0 { isCarbon = gateway.MessageOutgoingPermissionVersion > 0 && c.Session.Carbons && message.IsOutgoing jids = c.getCarbonFullJids(isCarbon, "") } else { isGroupchat = true jids = groupChatTos + + senderId := c.getSenderId(message) + if senderId != 0 { + originalFrom = strconv.FormatInt(senderId, 10) + "@" + gateway.Jid.Full() + } } var text, oob, auxText string @@ -1138,9 +1144,9 @@ func (c *Client) sendMessageToGateway(chatId int64, message *client.Message, del } for _, jid := range jids { - gateway.SendMessageWithOOB(jid, from, text, sId, c.xmpp, reply, timestamp, oob, isCarbon, isGroupchat) + gateway.SendMessageWithOOB(jid, from, text, sId, c.xmpp, reply, timestamp, oob, isCarbon, isGroupchat, originalFrom) if auxText != "" { - gateway.SendMessage(jid, from, auxText, sId, c.xmpp, reply, timestamp, isCarbon, isGroupchat) + gateway.SendMessage(jid, from, auxText, sId, c.xmpp, reply, timestamp, isCarbon, isGroupchat, originalFrom) } } } @@ -1768,6 +1774,7 @@ func (c *Client) sendMessagesReverse(chatID int64, messages []*client.Message, p 0, false, false, + "", ) } else { c.sendMessageToGateway( |