Redo direct media access with URL refreshing (#135)
This commit is contained in:
10
portal.go
10
portal.go
@@ -1832,13 +1832,15 @@ func (portal *Portal) handleMatrixReaction(sender *User, evt *event.Event) {
|
||||
emojiID := reaction.RelatesTo.Key
|
||||
if strings.HasPrefix(emojiID, "mxc://") {
|
||||
uri, _ := id.ParseContentURI(emojiID)
|
||||
emojiFile := portal.bridge.DB.File.GetEmojiByMXC(uri)
|
||||
if emojiFile == nil || emojiFile.ID == "" || emojiFile.EmojiName == "" {
|
||||
emojiInfo := portal.bridge.DMA.GetEmojiInfo(uri)
|
||||
if emojiInfo != nil {
|
||||
emojiID = fmt.Sprintf("%s:%d", emojiInfo.Name, emojiInfo.EmojiID)
|
||||
} else if emojiFile := portal.bridge.DB.File.GetEmojiByMXC(uri); emojiFile != nil && emojiFile.ID != "" && emojiFile.EmojiName != "" {
|
||||
emojiID = fmt.Sprintf("%s:%s", emojiFile.EmojiName, emojiFile.ID)
|
||||
} else {
|
||||
go portal.sendMessageMetrics(evt, fmt.Errorf("%w %s", errUnknownEmoji, emojiID), "Ignoring")
|
||||
return
|
||||
}
|
||||
|
||||
emojiID = fmt.Sprintf("%s:%s", emojiFile.EmojiName, emojiFile.ID)
|
||||
} else {
|
||||
emojiID = variationselector.FullyQualify(emojiID)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user