diff --git a/sat/core/xmpp.py b/sat/core/xmpp.py index d86daa5f..04a68a08 100644 --- a/sat/core/xmpp.py +++ b/sat/core/xmpp.py @@ -1302,11 +1302,12 @@ class SatMessageProtocol(xmppim.MessageProtocol): def completeAttachments(self, data): """Complete missing metadata of attachments""" for attachment in data['extra'].get(C.MESS_KEY_ATTACHMENTS, []): - if "name" not in attachment: + if "name" not in attachment and "url" in attachment: name = (Path(unquote(urlparse(attachment['url']).path)).name or C.FILE_DEFAULT_NAME) attachment["name"] = name - if C.MESS_KEY_ATTACHMENTS_MEDIA_TYPE not in attachment: + if ((C.MESS_KEY_ATTACHMENTS_MEDIA_TYPE not in attachment + and "name" in attachment)): media_type = mimetypes.guess_type(attachment['name'], strict=False)[0] if media_type: attachment[C.MESS_KEY_ATTACHMENTS_MEDIA_TYPE] = media_type