@tiledesk/tiledesk-server 2.3.19 → 2.3.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/event/messageEvent.js +82 -2
- package/package.json +1 -1
package/event/messageEvent.js
CHANGED
|
@@ -7,7 +7,7 @@ var MessageConstants = require("../models/messageConstants");
|
|
|
7
7
|
var message2Event = require("../event/message2Event");
|
|
8
8
|
|
|
9
9
|
var cacheUtil = require('../utils/cacheUtil');
|
|
10
|
-
|
|
10
|
+
// var requestService = require("../services/requestService");
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
class MessageEvent extends EventEmitter {
|
|
@@ -40,7 +40,8 @@ function populateMessageCreate(message) {
|
|
|
40
40
|
return populateMessageWithRequest(message, 'message.create');
|
|
41
41
|
}
|
|
42
42
|
function populateMessageUpdate(message) {
|
|
43
|
-
return populateMessageWithRequest(message, 'message.update');
|
|
43
|
+
// return populateMessageWithRequest(message, 'message.update');
|
|
44
|
+
return; // do not populate message.update it's not used by anyone. Not used by webhook. populate for message.update is slow.
|
|
44
45
|
}
|
|
45
46
|
|
|
46
47
|
|
|
@@ -48,6 +49,7 @@ function populateMessageWithRequest(message, eventPrefix) {
|
|
|
48
49
|
|
|
49
50
|
|
|
50
51
|
winston.debug("populateMessageWithRequest "+eventPrefix, message.toObject());
|
|
52
|
+
winston.debug("populateMessageWithRequest "+eventPrefix +" "+ message.text);
|
|
51
53
|
|
|
52
54
|
var messageJson = message.toJSON();
|
|
53
55
|
|
|
@@ -159,4 +161,82 @@ messageEvent.on('message.create.simple', populateMessageCreate);
|
|
|
159
161
|
messageEvent.on('message.update.simple', populateMessageUpdate);
|
|
160
162
|
|
|
161
163
|
|
|
164
|
+
|
|
165
|
+
// riattiva commentato per performance
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
// var messageCreateKey = 'message.create';
|
|
169
|
+
// if (messageEvent.queueEnabled) {
|
|
170
|
+
// messageCreateKey = 'message.create.queue';
|
|
171
|
+
// }
|
|
172
|
+
// winston.debug("messageEvent.queueEnabled: "+messageEvent.queueEnabled);
|
|
173
|
+
|
|
174
|
+
// winston.debug("messageCreateKey: "+messageCreateKey);
|
|
175
|
+
|
|
176
|
+
// messageEvent.on(messageCreateKey, function(message) {
|
|
177
|
+
// setImmediate(() => {
|
|
178
|
+
// winston.debug("message.create before");
|
|
179
|
+
// if (!message.request) {
|
|
180
|
+
// return;
|
|
181
|
+
// }
|
|
182
|
+
// let request_id = message.request.request_id;
|
|
183
|
+
// let id_project = message.request.id_project;
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
// //update waiitng time if write an agent (member of participants)
|
|
187
|
+
// let visitor_sent_last_message = false;
|
|
188
|
+
// // winston.info(" message.request.snapshot.lead.lead_id: "+ message.request.snapshot.lead.lead_id);
|
|
189
|
+
// // winston.info(" message.sender: "+ message.sender);
|
|
190
|
+
|
|
191
|
+
// if (message.request.snapshot && message.request.snapshot.lead.lead_id == message.sender) {
|
|
192
|
+
// visitor_sent_last_message = true;
|
|
193
|
+
// }
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
// // don't work for recursive call
|
|
198
|
+
// // requestService.incrementMessagesCountByRequestId(message.request._id, message.request.id_project).then(function (savedRequest) {
|
|
199
|
+
// // winston.info("incremented request", savedRequest);
|
|
200
|
+
// // });
|
|
201
|
+
// let clonedmessage = Object.assign({}, message);
|
|
202
|
+
// delete clonedmessage.request
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
// let data = {
|
|
206
|
+
// $push: {
|
|
207
|
+
// "snapshot.messages.data": {
|
|
208
|
+
// $each: [ clonedmessage ],
|
|
209
|
+
// $slice: -30
|
|
210
|
+
// }
|
|
211
|
+
// },
|
|
212
|
+
// $inc : {'snapshot.messages.messages_count' : 1},
|
|
213
|
+
// "snapshot.messages.visitor_sent_last_message": visitor_sent_last_message,
|
|
214
|
+
// "snapshot.messages.last_message_timestamp": message.createdAt
|
|
215
|
+
// };
|
|
216
|
+
|
|
217
|
+
// // db.getCollection('requests').find({"$expr": { "$gt": [ "$snapshot.messages.visitor_last_message_timestamp", "$snapshot.messages.agent_last_message_timestamp"]}})
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
// if (visitor_sent_last_message) {
|
|
221
|
+
// data["snapshot.messages.visitor_last_message_timestamp"]= message.createdAt;
|
|
222
|
+
// } else {
|
|
223
|
+
// data["snapshot.messages.agent_last_message_timestamp"]= message.createdAt;
|
|
224
|
+
// }
|
|
225
|
+
// // db.getCollection('requests').updateOne({"request_id":"support-group-630600bfaf7cd942116bc993-3da378ec63924bb9b4934b2835b37a7c"},{"$push":{"snapshot.messages.data":{"$each":["s"],"$slice":-5}}}}})
|
|
226
|
+
// winston.debug("data", data);
|
|
227
|
+
|
|
228
|
+
// return Request
|
|
229
|
+
// .findOneAndUpdate({request_id: request_id, id_project: id_project}, data, {new: true, upsert:false}, function(err, updatedRequest) {
|
|
230
|
+
// if (err) {
|
|
231
|
+
// winston.error(err);
|
|
232
|
+
// return reject(err);
|
|
233
|
+
// }
|
|
234
|
+
// winston.info("Message count +1");
|
|
235
|
+
|
|
236
|
+
// });
|
|
237
|
+
|
|
238
|
+
// });
|
|
239
|
+
// });
|
|
240
|
+
|
|
241
|
+
|
|
162
242
|
module.exports = messageEvent;
|