From f8d6f712bdf7c6ea6b0265cd6001737c30f87cc4 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Tue, 5 Jul 2022 12:46:34 +0300 Subject: [PATCH] Get Matrix msgtype from WhatsApp type instead of mimetype --- portal.go | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/portal.go b/portal.go index fefeefc..f451476 100644 --- a/portal.go +++ b/portal.go @@ -2349,23 +2349,21 @@ func (portal *Portal) convertMediaMessageContent(intent *appservice.IntentAPI, m } } - _, isSticker := msg.(*waProto.StickerMessage) - switch strings.ToLower(strings.Split(msg.GetMimetype(), "/")[0]) { - case "image": - if !isSticker { - content.MsgType = event.MsgImage - } - case "video": - content.MsgType = event.MsgVideo - case "audio": - content.MsgType = event.MsgAudio - default: - content.MsgType = event.MsgFile - } - eventType := event.EventMessage - if isSticker { + switch msg.(type) { + case *waProto.ImageMessage: + content.MsgType = event.MsgImage + case *waProto.StickerMessage: eventType = event.EventSticker + case *waProto.VideoMessage: + content.MsgType = event.MsgVideo + case *waProto.AudioMessage: + content.MsgType = event.MsgAudio + case *waProto.DocumentMessage: + content.MsgType = event.MsgFile + default: + portal.log.Warnfln("Unexpected media type %T in convertMediaMessageContent", msg) + content.MsgType = event.MsgFile } audioMessage, ok := msg.(*waProto.AudioMessage)