@tiledesk/tiledesk-server 2.2.23 → 2.2.28
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +22 -1
- package/README.md +6 -0
- package/app.js +73 -3
- package/bin/www +4 -1
- package/channels/chat21/chat21WebHook.js +1 -1
- package/config/email.js +1 -1
- package/config/global.js +2 -0
- package/config/labels/widget.json +781 -611
- package/event/messageEvent.js +4 -4
- package/middleware/has-role.js +1 -1
- package/middleware/passport.js +3 -3
- package/models/project.js +10 -0
- package/models/project_user.js +2 -0
- package/models/request.js +1 -1
- package/package.json +4 -3
- package/pubmodules/emailNotification/requestNotification.js +4 -4
- package/pubmodules/messageTransformer/messageHandlebarsTransformerInterceptor.js +3 -3
- package/pubmodules/messageTransformer/messageTransformerInterceptor.js +3 -3
- package/pubmodules/rules/conciergeBot.js +5 -2
- package/pubmodules/scheduler/tasks/closeBotUnresponsiveRequestTask.js +12 -3
- package/routes/department.js +1 -1
- package/routes/faq_kb.js +2 -3
- package/routes/labels.js +2 -0
- package/routes/message.js +1 -1
- package/routes/project.js +73 -1
- package/routes/project_user.js +11 -4
- package/routes/request.js +15 -0
- package/routes/user-request.js +15 -0
- package/routes/widget.js +1 -1
- package/services/departmentService.js +5 -4
- package/services/faqBotHandler.js +1 -1
- package/services/faqService.js +62 -29
- package/services/labelService-no-default.js +2 -2
- package/services/labelService.js +1 -1
- package/services/leadService.js +2 -2
- package/services/operatingHoursService.js +1 -1
- package/services/requestService.js +3 -3
- package/utils/orgUtil.js +74 -0
- package/utils/sendMessageUtil.js +2 -2
- package/websocket/webSocketServer.js +10 -10
- package/services/faqBotSupport copy.js_consplit +0 -453
package/services/faqService.js
CHANGED
@@ -8,7 +8,7 @@ const ActionsConstants = require('../models/actionsConstants');
|
|
8
8
|
class FaqService {
|
9
9
|
|
10
10
|
|
11
|
-
create(name, url, projectid, user_id, type, description, webhook_url, webhook_enabled, language) {
|
11
|
+
create(name, url, projectid, user_id, type, description, webhook_url, webhook_enabled, language, template) {
|
12
12
|
var that = this;
|
13
13
|
return new Promise(function (resolve, reject) {
|
14
14
|
|
@@ -37,8 +37,15 @@ class FaqService {
|
|
37
37
|
|
38
38
|
botEvent.emit('faqbot.create', savedFaq_kb);
|
39
39
|
|
40
|
+
winston.debug('type '+ type)
|
41
|
+
|
40
42
|
if (type==="internal") {
|
41
|
-
|
43
|
+
|
44
|
+
if (!template) {
|
45
|
+
template = "example";
|
46
|
+
}
|
47
|
+
winston.debug('template '+ template);
|
48
|
+
that.createGreetingsAndOperationalsFaqs(savedFaq_kb._id, savedFaq_kb.createdBy, savedFaq_kb.id_project, template);
|
42
49
|
} else {
|
43
50
|
winston.debug('external bot: ', savedFaq_kb);
|
44
51
|
}
|
@@ -50,33 +57,63 @@ class FaqService {
|
|
50
57
|
});
|
51
58
|
}
|
52
59
|
|
53
|
-
createGreetingsAndOperationalsFaqs(faq_kb_id, created_by, projectid,
|
60
|
+
createGreetingsAndOperationalsFaqs(faq_kb_id, created_by, projectid, template) {
|
54
61
|
var that = this;
|
55
62
|
return new Promise(function (resolve, reject) {
|
56
63
|
|
57
64
|
// aggiungi esempio tdAction con intent_id
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
65
|
+
|
66
|
+
winston.debug('template: '+ template);
|
67
|
+
|
68
|
+
var faqsArray;
|
69
|
+
|
70
|
+
if (template==="example") {
|
71
|
+
|
72
|
+
faqsArray = [
|
73
|
+
{ 'question': 'Hi', 'answer': 'Hi', 'topic': 'greetings' },
|
74
|
+
{ 'question': 'Hello', 'answer': 'Hello', 'topic': 'greetings' },
|
75
|
+
{ 'question': 'Who are you?', 'answer': 'Hi, I\'m a bot 🤖. You can find more about me [here](https://tiledesk.com/chatbot-for-customer-service).\ntdImage:https://console.tiledesk.com/assets/images/tily-welcomebot.gif\n* See the website https://tiledesk.com/\n* Back to start tdAction:start', 'topic': 'greetings' },
|
76
|
+
{ 'question': '👨🏻🦰 I want an agent', 'answer': 'We are looking for an operator.. '+ActionsConstants.CHAT_ACTION_MESSAGE.AGENT, 'intent_display_name': 'agent_handoff', 'topic': 'internal' },
|
77
|
+
{ 'question': 'Close\nResolved', 'answer': ActionsConstants.CHAT_ACTION_MESSAGE.CLOSE, 'topic': 'internal' },
|
78
|
+
{ 'question': '\\start', 'answer': 'Hello 👋. I\'m a bot 🤖.\n\nChoose one of the options below or write a message to reach our staff.\n* Who are you?\n* Where are you?\n* What can you do?\n* 👨🏻🦰 I want an agent', 'intent_display_name': 'start', 'topic': 'internal' },
|
79
|
+
{ 'question': 'defaultFallback', 'answer': 'I can not provide an adequate answer. Write a new question or talk to a human agent.\n* Back to start tdAction:start\n* See the docs https://docs.tiledesk.com/\n* 👨🏻🦰 I want an agent', 'intent_display_name': 'defaultFallback', 'topic': 'internal' }, //TODO se metto spazio n * nn va
|
80
|
+
{ 'question': 'What can you do?', 'answer': 'Using natural language processing, I\'m able to find the best answer for your users. I also support images, videos etc.. Let\'s try:\n* Sample Image\n* Sample Video\n* Sample Action tdAction:action1\n* Sample Frame\n* Back to start tdAction:start', 'topic': 'sample' },
|
81
|
+
{ 'question': 'Sample Image', 'answer': 'tdImage:https://tiledesk.com/tiledesk-logo-x1.png\n* What can you do?\n* Back to start tdAction:start', 'topic': 'sample' },
|
82
|
+
{ 'question': 'Sample Frame', 'answer': 'tdFrame:https://www.emanueleferonato.com/wp-content/uploads/2019/02/runner/\n* What can you do?\n* Back to start tdAction:start', 'topic': 'sample' },
|
83
|
+
{ 'question': 'Sample Video', 'answer': 'tdVideo:https://www.youtube.com/embed/EngW7tLk6R8\n* What can you do?\n* Back to start tdAction:start', 'topic': 'sample' },
|
84
|
+
{ 'question': 'Where are you?', 'answer': 'We are here ❤️\ntdFrame:https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d6087916.923447935!2d8.234804542117423!3d41.836572992140624!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x12d4fe82448dd203%3A0xe22cf55c24635e6f!2sItaly!5e0!3m2!1sen!2sit!4v1613657475377!5m2!1sen!2sit\n* Back to start tdAction:start', 'topic': 'sample' },
|
85
|
+
|
86
|
+
// { 'question': 'Sample Webhook', 'answer': 'tdWebhook:https://tiledesk-bot-webhook.tiledesk.repl.co', 'topic': 'sample' },
|
87
|
+
{ 'question': 'Sample Action', 'answer': 'Hello 👋 Would you like to take a closer look at our offer?\n* Yes, please tdAction:yes_action\n* No tdAction:no_action','intent_display_name': 'action1', 'topic': 'sample' },
|
88
|
+
{ 'question': 'Yes Action', 'answer': 'Great! Take a look here:\n* Tiledesk Pricing https://tiledesk.com/pricing-cloud/', 'intent_display_name': 'yes_action','topic': 'sample' },
|
89
|
+
{ 'question': 'No Action', 'answer': 'All right! If you need anything, let us know.', 'intent_display_name': 'no_action','topic': 'sample' },
|
90
|
+
|
91
|
+
|
92
|
+
// action button nn si può fare perche gli id cambiano
|
93
|
+
]
|
94
|
+
|
95
|
+
}
|
96
|
+
|
97
|
+
if (template==="blank") {
|
98
|
+
|
99
|
+
faqsArray = [
|
100
|
+
{ 'question': '\\start', 'answer': 'Hello', 'intent_display_name': 'start', 'topic': 'internal' },
|
101
|
+
{ 'question': 'defaultFallback', 'answer': 'I can not provide an adequate answer. Write a new question or talk to a human agent.\n* Back to start tdAction:start\n* See the docs https://docs.tiledesk.com/\n* 👨🏻🦰 I want an agent', 'intent_display_name': 'defaultFallback', 'topic': 'internal' }, //TODO se metto spazio n * nn va
|
102
|
+
]
|
103
|
+
|
104
|
+
}
|
105
|
+
|
106
|
+
|
107
|
+
if (template==="handoff") {
|
108
|
+
|
109
|
+
faqsArray = [
|
110
|
+
{ 'question': '\\start', 'answer': 'Hello', 'intent_display_name': 'start', 'topic': 'internal' },
|
111
|
+
{ 'question': '👨🏻🦰 I want an agent', 'answer': 'We are looking for an operator.. '+ActionsConstants.CHAT_ACTION_MESSAGE.AGENT, 'intent_display_name': 'agent_handoff', 'topic': 'internal' },
|
112
|
+
{ 'question': 'defaultFallback', 'answer': 'I can not provide an adequate answer. Write a new question or talk to a human agent.\n* Back to start tdAction:start\n* See the docs https://docs.tiledesk.com/\n* 👨🏻🦰 I want an agent', 'intent_display_name': 'defaultFallback', 'topic': 'internal' }, //TODO se metto spazio n * nn va
|
113
|
+
]
|
114
|
+
|
115
|
+
}
|
116
|
+
|
80
117
|
|
81
118
|
faqsArray.forEach(faq => {
|
82
119
|
|
@@ -101,10 +138,6 @@ class FaqService {
|
|
101
138
|
winston.debug('FAQ SERVICE (save new faq) - QUESTION OF THE NEW GREETINGS FAQ CREATED ', savedFaq.question)
|
102
139
|
winston.debug('FAQ SERVICE (save new faq) - ANSWER OF THE NEW GREETINGS FAQ CREATED ', savedFaq.answer)
|
103
140
|
winston.debug('FAQ SERVICE (save new faq) - ID FAQKB GET IN THE OBJECT OF NEW FAQ CREATED ', savedFaq.id_faq_kb)
|
104
|
-
// res.json({ 'Greetings Faqs': savedFaq });
|
105
|
-
// return resolve(savedFaq);
|
106
|
-
|
107
|
-
// that.createRemoteFaq(remote_faqkb_key, savedFaq);
|
108
141
|
|
109
142
|
})
|
110
143
|
});
|
@@ -122,7 +122,7 @@ getAllMerged(id_project) {
|
|
122
122
|
|
123
123
|
|
124
124
|
return Label.findOne(query).lean()
|
125
|
-
.cache(cacheUtil.longTTL, id_project+":labels:query:all")
|
125
|
+
//@DISABLED_CACHE .cache(cacheUtil.longTTL, id_project+":labels:query:all")
|
126
126
|
.exec(function (err, labels) {
|
127
127
|
if (err) {
|
128
128
|
winston.error('Label ROUTE - REQUEST FIND ERR ', err)
|
@@ -167,7 +167,7 @@ getAll(id_project) {
|
|
167
167
|
|
168
168
|
|
169
169
|
return Label.findOne(query).lean()
|
170
|
-
.cache(cacheUtil.longTTL, id_project+":labels:query:all")
|
170
|
+
//@DISABLED_CACHE .cache(cacheUtil.longTTL, id_project+":labels:query:all")
|
171
171
|
.exec(function (err, labels) {
|
172
172
|
if (err) {
|
173
173
|
winston.error('Label ROUTE - REQUEST FIND ERR ', err)
|
package/services/labelService.js
CHANGED
@@ -74,7 +74,7 @@ getAll(id_project) {
|
|
74
74
|
|
75
75
|
|
76
76
|
return Label.findOne(query).lean()
|
77
|
-
.cache(cacheUtil.longTTL, id_project+":labels:query:all")
|
77
|
+
//@DISABLED_CACHE .cache(cacheUtil.longTTL, id_project+":labels:query:all")
|
78
78
|
.exec(function (err, labels) {
|
79
79
|
if (err) {
|
80
80
|
winston.error('Label ROUTE - REQUEST FIND ERR ', err)
|
package/services/leadService.js
CHANGED
@@ -14,7 +14,7 @@ class LeadService {
|
|
14
14
|
var that = this;
|
15
15
|
return new Promise(function (resolve, reject) {
|
16
16
|
return Lead.findOne({email: email, id_project: id_project})
|
17
|
-
.cache(cacheUtil.defaultTTL, id_project+":leads:email:"+email)
|
17
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, id_project+":leads:email:"+email)
|
18
18
|
.exec(function(err, lead) {
|
19
19
|
if (err) {
|
20
20
|
return reject(err);
|
@@ -58,7 +58,7 @@ class LeadService {
|
|
58
58
|
var that = this;
|
59
59
|
return new Promise(function (resolve, reject) {
|
60
60
|
return Lead.findOne({lead_id: lead_id, id_project: id_project})
|
61
|
-
.cache(cacheUtil.defaultTTL, id_project+":leads:lead_id:"+lead_id)
|
61
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, id_project+":leads:lead_id:"+lead_id)
|
62
62
|
.exec(function(err, lead) {
|
63
63
|
if (err) {
|
64
64
|
winston.error("Error createIfNotExistsWithLeadId", err);
|
@@ -12,7 +12,7 @@ class OperatingHoursService {
|
|
12
12
|
|
13
13
|
// winston.debug('O ---> [ OHS ] -> PROJECT ID ', projectId)
|
14
14
|
Project.findOne({_id: projectId, status: 100})
|
15
|
-
.cache(cacheUtil.defaultTTL, "projects:id:"+projectId)
|
15
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, "projects:id:"+projectId)
|
16
16
|
.exec(function (err, project) {
|
17
17
|
// winston.debug("XXXXXXXX project", project);
|
18
18
|
if (err) {
|
@@ -170,7 +170,7 @@ class RequestService {
|
|
170
170
|
|
171
171
|
return Request
|
172
172
|
.findOne({request_id: request_id, id_project: id_project})
|
173
|
-
.cache(cacheUtil.defaultTTL, id_project+":requests:request_id:"+request_id)
|
173
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, id_project+":requests:request_id:"+request_id)
|
174
174
|
.exec( function(err, request) {
|
175
175
|
|
176
176
|
if (err) {
|
@@ -322,7 +322,7 @@ class RequestService {
|
|
322
322
|
|
323
323
|
return Request
|
324
324
|
.findOne({request_id: request_id, id_project: id_project})
|
325
|
-
.cache(cacheUtil.defaultTTL, id_project+":requests:request_id:"+request_id)
|
325
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, id_project+":requests:request_id:"+request_id)
|
326
326
|
.exec( function(err, request) {
|
327
327
|
|
328
328
|
if (err) {
|
@@ -901,7 +901,7 @@ class RequestService {
|
|
901
901
|
.populate('participatingBots')
|
902
902
|
.populate('participatingAgents')
|
903
903
|
.populate({path:'requester',populate:{path:'id_user'}})
|
904
|
-
.cache(cacheUtil.defaultTTL, id_project+":requests:request_id:"+request_id)
|
904
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, id_project+":requests:request_id:"+request_id)
|
905
905
|
.exec(function(err, request) {
|
906
906
|
if (err) {
|
907
907
|
winston.error(err);
|
package/utils/orgUtil.js
ADDED
@@ -0,0 +1,74 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
'use strict';
|
4
|
+
var global = require('../config/global');
|
5
|
+
var email = require('../config/email');
|
6
|
+
var winston = require('../config/winston');
|
7
|
+
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
class OrgUtil {
|
12
|
+
|
13
|
+
constructor() {
|
14
|
+
this.ORGANIZATION_ENABLED = process.env.ORGANIZATION_ENABLED || global.organizationEnabled;
|
15
|
+
if (this.ORGANIZATION_ENABLED===true || this.ORGANIZATION_ENABLED === "true") {
|
16
|
+
this.ORGANIZATION_ENABLED = true;
|
17
|
+
}else {
|
18
|
+
this.ORGANIZATION_ENABLED = false;
|
19
|
+
}
|
20
|
+
|
21
|
+
winston.info("Organization enabled: "+ this.ORGANIZATION_ENABLED );
|
22
|
+
|
23
|
+
this.ORGANIZATION_BASE_URL = process.env.ORGANIZATION_BASE_URL || global.organizationBaseUrl;
|
24
|
+
winston.info("Organization base url: "+ this.ORGANIZATION_BASE_URL );
|
25
|
+
|
26
|
+
}
|
27
|
+
|
28
|
+
getOrg(req) {
|
29
|
+
|
30
|
+
// if (this.ORGANIZATION_ENABLED===false) {
|
31
|
+
// return undefined;
|
32
|
+
// }
|
33
|
+
|
34
|
+
|
35
|
+
// let host = req.get('host');
|
36
|
+
// winston.info("host: "+ host );
|
37
|
+
|
38
|
+
let origin = req.get('origin');
|
39
|
+
winston.info("origin: "+ origin );
|
40
|
+
|
41
|
+
// winston.info("email: " + email.baseUrl);
|
42
|
+
winston.info("this.ORGANIZATION_BASE_URL: " + this.ORGANIZATION_BASE_URL);
|
43
|
+
// global.organizationBaseUrl
|
44
|
+
// if (host !=email.baseUrl ) {
|
45
|
+
if (origin && origin.indexOf(this.ORGANIZATION_BASE_URL)>-1) {
|
46
|
+
// if (origin!=this.ORGANIZATION_BASE_URL) {
|
47
|
+
// winston.info("host found: "+ host );
|
48
|
+
// return host;
|
49
|
+
winston.info("origin found: "+ origin );
|
50
|
+
return origin;
|
51
|
+
}
|
52
|
+
winston.info("origin not found: "+ origin );
|
53
|
+
|
54
|
+
// winston.info("host not found: "+ host );
|
55
|
+
// if (host.indexOf("localhost1")>-1) {
|
56
|
+
// console.log("host found: "+ host );
|
57
|
+
// return "localhost";
|
58
|
+
// }
|
59
|
+
return undefined;
|
60
|
+
|
61
|
+
}
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
}
|
69
|
+
|
70
|
+
|
71
|
+
var orgUtil = new OrgUtil();
|
72
|
+
|
73
|
+
|
74
|
+
module.exports = orgUtil;
|
package/utils/sendMessageUtil.js
CHANGED
@@ -23,14 +23,14 @@ async send(sender, senderFullname, recipient, text, id_project, createdBy, attri
|
|
23
23
|
winston.debug("bot id: "+id);
|
24
24
|
sender = id; //change sender removing bot_
|
25
25
|
var bot = await Faq_kb.findById(id)
|
26
|
-
.cache(cacheUtil.defaultTTL, id_project+":faq_kbs:id:"+id)
|
26
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, id_project+":faq_kbs:id:"+id)
|
27
27
|
.exec();
|
28
28
|
winston.debug("bot",bot);
|
29
29
|
senderFullname = bot.name;
|
30
30
|
} else {
|
31
31
|
winston.debug("user id: "+sender);
|
32
32
|
var user = await User.findById(sender)
|
33
|
-
.cache(cacheUtil.defaultTTL, "users:id:"+sender)
|
33
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, "users:id:"+sender)
|
34
34
|
.exec()
|
35
35
|
winston.debug("user", user);
|
36
36
|
senderFullname = user.fullName;
|
@@ -93,7 +93,7 @@ class WebSocketServer {
|
|
93
93
|
// winston.debug('ok websocket');
|
94
94
|
|
95
95
|
User.findOne({_id: identifier, status: 100}, 'email firstname lastname emailverified id')
|
96
|
-
.cache(cacheUtil.defaultTTL, "users:id:"+identifier)
|
96
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, "users:id:"+identifier)
|
97
97
|
.exec(function (err, user) {
|
98
98
|
|
99
99
|
|
@@ -176,7 +176,7 @@ class WebSocketServer {
|
|
176
176
|
|
177
177
|
|
178
178
|
return Project.findOne({ _id: projectId, status: 100})
|
179
|
-
.cache(cacheUtil.defaultTTL, "projects:id:"+projectId)
|
179
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, "projects:id:"+projectId)
|
180
180
|
.exec(function(err, project) {
|
181
181
|
if (err) {
|
182
182
|
winston.error('WebSocket - Error getting Project', err);
|
@@ -197,7 +197,7 @@ class WebSocketServer {
|
|
197
197
|
|
198
198
|
|
199
199
|
Project_user.findOne({ id_project: projectId, id_user: req.user._id, $or:[ {"role": "agent"}, {"role": "admin"}, {"role": "owner"}], status: "active" })
|
200
|
-
.cache(cacheUtil.defaultTTL, projectId+":project_users:role:teammate:"+req.user._id)
|
200
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, projectId+":project_users:role:teammate:"+req.user._id)
|
201
201
|
.exec(function (err, projectuser) {
|
202
202
|
if (err) {
|
203
203
|
winston.error('WebSocket error getting Project_user', err);
|
@@ -266,7 +266,7 @@ class WebSocketServer {
|
|
266
266
|
|
267
267
|
|
268
268
|
Project_user.findOne({ id_project: projectId, id_user: req.user._id, $or:[ {"role": "agent"}, {"role": "admin"}, {"role": "owner"}], status: "active"})
|
269
|
-
.cache(cacheUtil.defaultTTL, projectId+":project_users:role:teammate:"+req.user._id)
|
269
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, projectId+":project_users:role:teammate:"+req.user._id)
|
270
270
|
.exec(function (err, projectuser) {
|
271
271
|
if (err) {
|
272
272
|
winston.error('WebSocket error getting Project_user', err);
|
@@ -315,7 +315,7 @@ class WebSocketServer {
|
|
315
315
|
.limit(lastRequestsLimit)
|
316
316
|
// DISABLED 23Marzo2021 per problema request.snapshot.requester.isAuthenticated = undefined
|
317
317
|
.lean() //https://www.tothenew.com/blog/high-performance-find-query-using-lean-in-mongoose-2/ https://stackoverflow.com/questions/33104136/mongodb-mongoose-slow-query-when-fetching-10k-documents
|
318
|
-
.cache(cacheUtil.queryTTL, projectId+":requests:query:status-50-1000:preflight-false:select_snapshot_agents:"+cacheUserId)
|
318
|
+
//@DISABLED_CACHE .cache(cacheUtil.queryTTL, projectId+":requests:query:status-50-1000:preflight-false:select_snapshot_agents:"+cacheUserId)
|
319
319
|
.exec(function(err, requests) {
|
320
320
|
|
321
321
|
if (err) {
|
@@ -381,7 +381,7 @@ class WebSocketServer {
|
|
381
381
|
|
382
382
|
//check if current user can see the data
|
383
383
|
Project_user.findOne({ id_project: projectId, id_user: req.user._id, $or:[ {"role": "agent"}, {"role": "admin"}, {"role": "owner"}], status: "active"})
|
384
|
-
.cache(cacheUtil.defaultTTL, projectId+":project_users:role:teammate:"+req.user._id)
|
384
|
+
//@DISABLED_CACHE .cache(cacheUtil.defaultTTL, projectId+":project_users:role:teammate:"+req.user._id)
|
385
385
|
.exec(function (err, currentProjectuser) {
|
386
386
|
if (err) {
|
387
387
|
winston.error('WebSocket error getting Project_user', err);
|
@@ -407,7 +407,7 @@ class WebSocketServer {
|
|
407
407
|
}
|
408
408
|
|
409
409
|
Project_user.findOne(query)
|
410
|
-
.cache(cacheUtil.defaultTTL, projectId+":project_users:users:"+userId)
|
410
|
+
// @DISABLED_CACHE .cache(cacheUtil.defaultTTL, projectId+":project_users:users:"+userId)
|
411
411
|
.exec(function (err, projectuser) {
|
412
412
|
if (err) {
|
413
413
|
winston.error('WebSocket error getting Project_user', err);
|
@@ -451,7 +451,7 @@ class WebSocketServer {
|
|
451
451
|
winston.debug(' query: ',query);
|
452
452
|
|
453
453
|
Project_user.findOne(query)
|
454
|
-
.cache(cacheUtil.defaultTTL, projectId+":project_users:"+puId)
|
454
|
+
// @DISABLED_CACHE .cache(cacheUtil.defaultTTL, projectId+":project_users:"+puId)
|
455
455
|
.exec(function (err, projectuser) {
|
456
456
|
if (err) {
|
457
457
|
winston.error('WebSocket error getting Project_user', err);
|
@@ -491,7 +491,7 @@ class WebSocketServer {
|
|
491
491
|
winston.debug(' query: ',query);
|
492
492
|
|
493
493
|
EventModel.find(query)
|
494
|
-
.cache(cacheUtil.defaultTTL, projectId+":events:"+puId)
|
494
|
+
// @DISABLED_CACHE .cache(cacheUtil.defaultTTL, projectId+":events:"+puId)
|
495
495
|
.sort({createdAt: 'desc'})
|
496
496
|
.limit(lastEventsLimit)
|
497
497
|
.exec(function(err, events) {
|
@@ -518,7 +518,7 @@ class WebSocketServer {
|
|
518
518
|
winston.debug('recipientId: '+recipientId);
|
519
519
|
|
520
520
|
Project_user.findOne({ id_project: projectId, id_user: req.user._id, $or:[ {"role": "agent"}, {"role": "admin"}, {"role": "owner"}], status: "active" })
|
521
|
-
.cache(cacheUtil.defaultTTL, projectId+":project_users:role:teammate:"+req.user._id)
|
521
|
+
// @DISABLED_CACHE .cache(cacheUtil.defaultTTL, projectId+":project_users:role:teammate:"+req.user._id)
|
522
522
|
.exec(function (err, projectuser) {
|
523
523
|
if (err) {
|
524
524
|
winston.error('WebSocket error getting Project_user', err);
|