@tiledesk/tiledesk-server 2.3.24 → 2.3.25

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md CHANGED
@@ -1,4 +1,17 @@
1
-
1
+ # 2.3.25
2
+ - Emebedded DialogFlow connector to 1.7.4
3
+
4
+ # 2.3.24
5
+ - Increased cache TTL from: standardTTL from 120 to 300, longTTL from 1200 to 3600
6
+ - Added cache request.create.simple, + cacheEnabler. name fix
7
+ - Disabled unapplicable cache for updateWaitingTimeByRequestId and find request by id REST API
8
+ - Updated dependency @tiledesk/tiledesk-tybot-connector to 0.1.14
9
+ - Restored populateMessageWithRequest. Bug with \agent command. Try to resolve performance with cache
10
+ - Added cache for chat21 webhook event type message. The cache key is without the project id
11
+ - Disabled cache for chat21 webhook conversation archived method
12
+ - Added cache for message event lookup
13
+ - Added cache for chat21 webhook event type message
14
+ - Added cache for getoperator method of department service
2
15
 
3
16
  💥 TILEDESK SERVER v2.3.23 💥
4
17
  🚀 TAGGED AND PUBLISHED ON NPM 🚀
@@ -30,7 +43,7 @@
30
43
  - Moved route-queue to public module
31
44
  - Disable queue module if JOB_WORKER_ENABLED is true
32
45
 
33
- # 2.3.18.2
46
+ # 2.3.18.6 -> PROD
34
47
  - logfix
35
48
 
36
49
  # 2.3.18.1
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.24",
4
+ "version": "2.3.25",
5
5
  "scripts": {
6
6
  "start": "node ./bin/www",
7
7
  "pretest": "mongodb-runner start",
@@ -29,7 +29,6 @@
29
29
  "tiledesk-server": "./bin/www"
30
30
  },
31
31
  "optionalDependencies": {
32
- "@tiledesk-ent/tiledesk-server-dialogflow": "^1.1.6",
33
32
  "@tiledesk-ent/tiledesk-server-jwthistory": "^1.1.9",
34
33
  "@tiledesk-ent/tiledesk-server-payments": "^1.1.6",
35
34
  "@tiledesk-ent/tiledesk-server-request-history": "^1.1.5",
@@ -42,6 +41,7 @@
42
41
  "@tiledesk/tiledesk-json-rules-engine": "^4.0.3",
43
42
  "@tiledesk/tiledesk-rasa-connector": "^1.0.10",
44
43
  "@tiledesk/tiledesk-tybot-connector": "^0.1.14",
44
+ "@tiledesk/tiledesk-dialogflow-connector": "^1.7.4",
45
45
  "app-root-path": "^3.0.0",
46
46
  "bcrypt-nodejs": "0.0.3",
47
47
  "body-parser": "^1.20.0",
@@ -13,7 +13,7 @@
13
13
 
14
14
  var cachegoose = require('cachegoose');
15
15
 
16
- var defaultTTL = process.env.CACHE_DEFAULT_TTL || 120;
16
+ var defaultTTL = process.env.CACHE_DEFAULT_TTL || 300;
17
17
 
18
18
 
19
19
  function listen(client) {
@@ -0,0 +1,10 @@
1
+ const listener = require("./listener");
2
+
3
+ const dialogflow = require("@tiledesk/tiledesk-dialogflow-connector");
4
+ const dialogflowRoute = dialogflow.router;
5
+
6
+
7
+
8
+
9
+
10
+ module.exports = { listener: listener, dialogflowRoute: dialogflowRoute };
@@ -0,0 +1,66 @@
1
+ const botEvent = require('../../event/botEvent');
2
+ var Faq_kb = require("../../models/faq_kb");
3
+ var winston = require('../../config/winston');
4
+ const df = require("@tiledesk/tiledesk-dialogflow-connector");
5
+ var configGlobal = require('../../config/global');
6
+
7
+ var port = process.env.PORT || '3000';
8
+
9
+ const BOT_DIALOGFLOW_ENDPOINT = process.env.BOT_DIALOGFLOW_ENDPOINT || "http://localhost:" + port+ "/modules/dialogflow";
10
+ winston.debug("BOT_DIALOGFLOW_ENDPOINT: " + BOT_DIALOGFLOW_ENDPOINT);
11
+
12
+ // if (BOT_DIALOGFLOW_ENDPOINT) {
13
+ winston.info("Dialogflow endpoint: " + BOT_DIALOGFLOW_ENDPOINT);
14
+ // } else {
15
+ // winston.info("Dialogflow endpoint not configured");
16
+ // }
17
+
18
+
19
+ const apiUrl = process.env.API_URL || configGlobal.apiUrl;
20
+ winston.info('Dialogflow apiUrl: '+ apiUrl);
21
+
22
+ class Listener {
23
+
24
+ listen(config) {
25
+
26
+ winston.debug('dialogflow Listener listen');
27
+
28
+ var that = this;
29
+
30
+
31
+ df.startApp(
32
+ {
33
+ MONGODB_URI: config.databaseUri,
34
+ API_ENDPOINT: apiUrl,
35
+ log: process.env.DIALOGFLOW_LOG
36
+ }, () => {
37
+ winston.info("Dialogflow route successfully started.");
38
+ }
39
+ );
40
+
41
+ botEvent.on('faqbot.create', function(bot) {
42
+ if (BOT_DIALOGFLOW_ENDPOINT) {
43
+
44
+ if (bot.type==="dialogflow") {
45
+ // bot.url = BOT_DIALOGFLOW_ENDPOINT;
46
+
47
+ Faq_kb.findByIdAndUpdate(bot.id, {"url":BOT_DIALOGFLOW_ENDPOINT}, { new: true, upsert: true }, function (err, savedFaq_kb) {
48
+
49
+ // bot.save(function (err, savedFaq_kb) {
50
+ if (err) {
51
+ return winston.error('error saving faqkb dialogflow ', err)
52
+ }
53
+ winston.verbose('Saved faqkb dialogflow', savedFaq_kb.toObject())
54
+ });
55
+ }
56
+ }
57
+ });
58
+
59
+ }
60
+
61
+ }
62
+
63
+ var listener = new Listener();
64
+
65
+
66
+ module.exports = listener;
@@ -41,6 +41,8 @@ class PubModulesManager {
41
41
  this.routingQueue = undefined;
42
42
 
43
43
  this.cache = undefined;
44
+
45
+ this.dialogFlow = undefined;
44
46
  }
45
47
 
46
48
 
@@ -55,6 +57,11 @@ class PubModulesManager {
55
57
  app.use('/modules/tilebot', this.tilebotRoute);
56
58
  winston.info("ModulesManager tilebot controller loaded");
57
59
  }
60
+
61
+ if (this.dialogFlow) {
62
+ app.use("/modules/dialogFlow", this.dialogFlow.dialogflowRoute);
63
+ winston.info("ModulesManager dialogFlow controller loaded");
64
+ }
58
65
 
59
66
  }
60
67
  useUnderProjects(app) {
@@ -335,7 +342,20 @@ class PubModulesManager {
335
342
  }
336
343
  }
337
344
 
345
+
338
346
 
347
+ try {
348
+ this.dialogFlow = require('./dialogflow');
349
+ winston.debug("this.dialogFlow:"+ this.dialogFlow);
350
+ this.dialogFlow.listener.listen(config);
351
+ winston.info("PubModulesManager dialogFlow initialized");
352
+ } catch(err) {
353
+ if (err.code == 'MODULE_NOT_FOUND') {
354
+ winston.info("PubModulesManager init dialogFlow module not found");
355
+ }else {
356
+ winston.error("PubModulesManager error initializing init dialogFlow module", err);
357
+ }
358
+ }
339
359
  }
340
360
 
341
361
  start() {
@@ -411,11 +431,20 @@ class PubModulesManager {
411
431
  }
412
432
  }
413
433
 
434
+ // if (this.dialogFlow) {
435
+ // try {
436
+ // this.dialogFlow.listen();
437
+ // winston.info("PubModulesManager dialogFlow started");
438
+ // } catch(err) {
439
+ // winston.info("PubModulesManager error starting dialogFlow module", err);
440
+ // }
441
+ // }
442
+
414
443
 
415
444
  }
416
445
 
417
446
 
418
-
447
+
419
448
  }
420
449
 
421
450
  var pubModulesManager = new PubModulesManager();
@@ -36,12 +36,8 @@ class ModulesManager {
36
36
  this.facebookRoute = undefined;
37
37
  this.jwthistoryArchiver = undefined;
38
38
  this.jwthistoryRoute = undefined;
39
- this.dialogflowListener = undefined;
40
39
  this.requestHistoryArchiver = undefined;
41
- this.requestHistoryRoute = undefined;
42
- // this.routingQueue = undefined;
43
- // this.queue = undefined;
44
- // this.cache = undefined;
40
+ this.requestHistoryRoute = undefined;
45
41
  this.visitorCounterRoute = undefined;
46
42
  this.visitorCounterMiddleware = undefined;
47
43
  this.widgetsRoute = undefined;
@@ -202,62 +198,19 @@ class ModulesManager {
202
198
 
203
199
 
204
200
 
205
- try {
206
- this.dialogflowListener = require('@tiledesk-ent/tiledesk-server-dialogflow').listener;
207
- // this.dialogflowListener.listen();
208
- winston.debug("this.dialogflowListener:"+ this.dialogflowListener);
209
-
210
- winston.info("ModulesManager dialogflow initialized");
211
- } catch(err) {
212
- if (err.code == 'MODULE_NOT_FOUND') {
213
- winston.info("ModulesManager init dialogflow module not found");
214
- }else {
215
- winston.error("ModulesManager error initializing init dialogflow module", err);
216
- }
217
- }
218
-
219
-
220
201
  // try {
221
- // this.routingQueue = require('@tiledesk-ent/tiledesk-server-routing-queue').listener;
222
- // // this.routingQueue.listen();
223
- // winston.debug("this.routingQueue:"+ this.routingQueue);
202
+ // this.dialogflowListener = require('@tiledesk-ent/tiledesk-server-dialogflow').listener;
203
+ // // this.dialogflowListener.listen();
204
+ // winston.debug("this.dialogflowListener:"+ this.dialogflowListener);
224
205
 
225
- // winston.info("ModulesManager routing queue initialized");
206
+ // winston.info("ModulesManager dialogflow initialized");
226
207
  // } catch(err) {
227
208
  // if (err.code == 'MODULE_NOT_FOUND') {
228
- // winston.info("ModulesManager init routing queue module not found");
209
+ // winston.info("ModulesManager init dialogflow module not found");
229
210
  // }else {
230
- // winston.error("ModulesManager error initializing init routing queue module", err);
211
+ // winston.error("ModulesManager error initializing init dialogflow module", err);
231
212
  // }
232
- // }
233
-
234
-
235
-
236
- // try {
237
- // this.queue = require('@tiledesk-ent/tiledesk-server-queue');
238
- // winston.debug("this.queue:"+ this.queue);
239
-
240
- // winston.info("ModulesManager queue initialized");
241
- // } catch(err) {
242
- // if (err.code == 'MODULE_NOT_FOUND') {
243
- // winston.info("ModulesManager init queue module not found");
244
- // }else {
245
- // winston.error("ModulesManager error initializing init queue module", err);
246
- // }
247
- // }
248
-
249
-
250
- // try {
251
- // this.cache = require('@tiledesk-ent/tiledesk-server-cache').cachegoose(config.mongoose);
252
- // winston.debug("this.cache:"+ this.cache);
253
- // winston.info("ModulesManager cache initialized");
254
- // } catch(err) {
255
- // if (err.code == 'MODULE_NOT_FOUND') {
256
- // winston.info("ModulesManager init cache module not found");
257
- // }else {
258
- // winston.error("ModulesManager error initializing init cache module", err);
259
- // }
260
- // }
213
+ // }
261
214
 
262
215
 
263
216
 
@@ -330,22 +283,15 @@ class ModulesManager {
330
283
  winston.info("ModulesManager error starting requestHistoryArchiver module", err);
331
284
  }
332
285
  }
333
- // if (this.routingQueue) {
286
+
287
+ // if (this.dialogflowListener) {
334
288
  // try {
335
- // this.routingQueue.listen();
336
- // winston.info("ModulesManager routingQueue started");
289
+ // this.dialogflowListener.listen();
290
+ // winston.info("ModulesManager dialogflowListener started");
337
291
  // } catch(err) {
338
- // winston.info("ModulesManager error starting routingQueue module", err);
292
+ // winston.info("ModulesManager error starting dialogflowListener module", err);
339
293
  // }
340
294
  // }
341
- if (this.dialogflowListener) {
342
- try {
343
- this.dialogflowListener.listen();
344
- winston.info("ModulesManager dialogflowListener started");
345
- } catch(err) {
346
- winston.info("ModulesManager error starting dialogflowListener module", err);
347
- }
348
- }
349
295
 
350
296
 
351
297