diff --git a/main.js b/main.js index 0176155..97c7e9c 100644 --- a/main.js +++ b/main.js @@ -17,12 +17,11 @@ import { dirname } from 'path'; import request from 'request'; import FileType from 'file-type'; -import readChunk from 'read-chunk'; // Load settings from config.json const __filename = fileURLToPath(import.meta.url); -const __dirname = dirname(__filename); + const __dirname = dirname(__filename); let rawdata = fs.readFileSync(__dirname + '/config.json'); let settings = JSON.parse(rawdata); console.log(__dirname + "/config.json loaded."); @@ -130,26 +129,28 @@ function getAndUploadFile(url, callback) { logger.info("Downloading MMS media " + url); // download request({url, encoding: null}, (err, resp, buffer) => { - const buffer = readChunk.sync(buffer, 0, 4100); - var mimetype = (await FileType.fromBuffer(buffer)).mime; - // upload - logger.info("Uploading MMS media to Matrix " + url); - client.uploadContent(buffer, { - onlyContentUri: true, - rawResponse: false - }).then((res) => { - if (typeof callback == "function") { - callback(res, mimetype); - logger.info("Media URI: " + res); - } - }).catch((err) => { - if (typeof callback == "function") { - callback(false); - } - if (err.data.error == "Unknown room") { - return; - } - logger.error(err); + FileType.fromBuffer(buffer).then(function (mimeobj) { + logger.debug(mimeobj); + // upload + logger.info("Uploading MMS media to Matrix " + url); + client.uploadContent(buffer, { + onlyContentUri: true, + rawResponse: false, + type: mimeobj.mime + }).then((res) => { + if (typeof callback == "function") { + callback(res, mimeobj.mime); + logger.info("Media URI: " + res); + } + }).catch((err) => { + if (typeof callback == "function") { + callback(false); + } + if (err.data.error == "Unknown room") { + return; + } + logger.error(err); + }); }); }); }