Images now work for real!
This commit is contained in:
parent
c055773f67
commit
c13b587df5
45
main.js
45
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);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user