@tiledesk/tiledesk-server 2.3.95 → 2.3.97

Sign up to get free protection for your applications and to get access to all the features.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tiledesk/tiledesk-server",
3
3
  "description": "The Tiledesk server module",
4
- "version": "2.3.95",
4
+ "version": "2.3.97",
5
5
  "scripts": {
6
6
  "start": "node ./bin/www",
7
7
  "pretest": "mongodb-runner start",
@@ -43,7 +43,7 @@
43
43
  "@tiledesk/tiledesk-json-rules-engine": "^4.0.3",
44
44
  "@tiledesk/tiledesk-kaleyra-proxy": "^0.1.7",
45
45
  "@tiledesk/tiledesk-rasa-connector": "^1.0.10",
46
- "@tiledesk/tiledesk-tybot-connector": "^0.1.59",
46
+ "@tiledesk/tiledesk-tybot-connector": "^0.1.62",
47
47
  "@tiledesk/tiledesk-whatsapp-connector": "^0.1.33",
48
48
  "amqplib": "^0.5.5",
49
49
  "app-root-path": "^3.0.0",
package/routes/images.js CHANGED
@@ -422,15 +422,22 @@ router.get('/thumbnails', (req, res) => {
422
422
  })
423
423
 
424
424
 
425
- router.get("/", (req, res) => {
425
+ router.get("/", async (req, res) => {
426
426
  winston.debug('path', req.query.path);
427
427
 
428
428
  if (req.query.as_attachment) {
429
429
  res.set({ "Content-Disposition": "attachment; filename=\""+req.query.path+"\"" });
430
+
430
431
  }
431
432
 
432
433
 
433
434
  // try {
435
+ let file = await fileService.find(req.query.path);
436
+ // console.log("file", file);
437
+
438
+ res.set({ "Content-Length": file.length});
439
+ res.set({ "Content-Type": file.contentType});
440
+
434
441
  fileService.getFileDataAsStream(req.query.path).on('error', (e)=> {
435
442
  if (e.code == "ENOENT") {
436
443
  winston.debug('Image not found: '+req.query.path);
@@ -56,6 +56,17 @@ class FileGridFsService extends FileService {
56
56
  });
57
57
  }
58
58
 
59
+ async find(filename) {
60
+ return new Promise(async (resolve, reject) => {
61
+ let files = await this.gfs.find({filename: filename}).toArray();
62
+ winston.debug("files", files);
63
+ if (files.length>0) {
64
+ return resolve(files[0]);
65
+ } else {
66
+ return reject({msg:"File not found"});
67
+ }
68
+ });
69
+ }
59
70
  async deleteFile(filename) {
60
71
  return new Promise(async (resolve, reject) => {
61
72
  let files = await this.gfs.find({filename: filename}).toArray();