def fromFilePath(fpath, url, mediaType, ip, to, mimeType = None, preview = None, filehash = None, filesize = None): mediaType = mediaType or MimeTools.getMIME(fpath) filehash = filehash or WATools.getFileHashForUpload2(fpath) size = filesize or os.path.getsize(fpath) fileName = os.path.basename(fpath) return DownloadableMediaMessageProtocolEntity(mediaType, mimeType, filehash, url, ip, size, fileName, to=to, preview= preview)
def fromBuilder(builder): url = builder.get("url") ip = builder.get("ip") assert url, "Url is required" mimeType = builder.get("mimetype", MimeTools.getMIME(builder.getOriginalFilepath())) filehash = WATools.getFileHashForUpload2(builder.getFilepath()) size = os.path.getsize(builder.getFilepath()) fileName = os.path.basename(builder.getFilepath()) return DownloadableMediaMessageProtocolEntity(builder.mediaType, mimeType, filehash, url, ip, size, fileName, to = builder.jid, preview = builder.get("preview"))