@tiledesk/tiledesk-server 2.2.15 → 2.2.18
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +17 -2
- package/README.md +1 -1
- package/app.js +46 -4
- package/config/labels/widget.json +14 -14
- package/models/request.js +1 -1
- package/models/routerLogger.js +57 -0
- package/package.json +3 -3
- package/pubmodules/events/eventRoute.js +2 -2
- package/pubmodules/messageTransformer/index.js +4 -1
- package/pubmodules/messageTransformer/messageHandlebarsTransformerInterceptor.js +83 -0
- package/pubmodules/pubModulesManager.js +1 -0
- package/routes/email.js +32 -0
- package/routes/project.js +108 -1
- package/routes/request.js +10 -4
- package/routes/user-request.js +3 -1
- package/services/emailService.js +14 -12
- package/services/faqBotHandler.js +6 -6
- package/services/{faqBotSupport copy.js → faqBotSupport copy.js_consplit} +0 -0
- package/services/faqBotSupport.js +6 -5
- package/services/requestService.js +36 -19
- package/test/departmentService.js +10 -9
- package/test/messageRoute.js +4 -4
- package/test/requestRoute.js +26 -16
- package/test/requestService.js +90 -74
- package/test-int/bot copy.js +0 -2074
package/services/emailService.js
CHANGED
@@ -119,6 +119,7 @@ class EmailService {
|
|
119
119
|
}
|
120
120
|
|
121
121
|
readTemplate(templateName, settings) {
|
122
|
+
// aggiunsta questo
|
122
123
|
var that = this;
|
123
124
|
winston.debug('EmailService readTemplate: '+ templateName + ' ' + JSON.stringify(settings));
|
124
125
|
|
@@ -246,11 +247,19 @@ class EmailService {
|
|
246
247
|
|
247
248
|
// send mail with defined transport object
|
248
249
|
this.getTransport(mail.config).sendMail(mailOptions, (error, info) => {
|
249
|
-
if (error) {
|
250
|
+
if (error) {
|
251
|
+
if (mail.callback){
|
252
|
+
mail.callback(error, {info:info});
|
253
|
+
}
|
250
254
|
return winston.error("Error sending email ", {error:error, mailOptions:mailOptions});
|
251
255
|
}
|
252
256
|
winston.verbose('Email sent:', {info: info});
|
253
257
|
winston.debug('Email sent:', {info: info, mailOptions: mailOptions});
|
258
|
+
|
259
|
+
if (mail.callback){
|
260
|
+
mail.callback(error, {info:info});
|
261
|
+
}
|
262
|
+
|
254
263
|
// Preview only available when sending through an Ethereal account
|
255
264
|
// winston.debug('Preview URL: %s', nodemailer.getTestMessageUrl(info));
|
256
265
|
|
@@ -260,7 +269,7 @@ class EmailService {
|
|
260
269
|
}
|
261
270
|
|
262
271
|
|
263
|
-
async sendTest(to) {
|
272
|
+
async sendTest(to, configEmail, callback) {
|
264
273
|
|
265
274
|
var that = this;
|
266
275
|
|
@@ -268,19 +277,12 @@ class EmailService {
|
|
268
277
|
|
269
278
|
var template = handlebars.compile(html);
|
270
279
|
|
271
|
-
var replacements = {
|
272
|
-
user: {name: "andrea"},
|
273
|
-
enabled: true
|
280
|
+
var replacements = {
|
274
281
|
};
|
275
282
|
|
276
283
|
var html = template(replacements);
|
277
|
-
|
278
|
-
that.send({to:to, subject:`TileDesk test email`,html: html});
|
279
|
-
|
280
|
-
//that.send(that.bcc, `TileDesk test email - notification`, html);
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
+
|
285
|
+
return that.send({to:to, subject:`TileDesk test email`, config: configEmail, html: html, callback: callback});
|
284
286
|
|
285
287
|
}
|
286
288
|
|
@@ -264,10 +264,10 @@ class FaqBotHandler {
|
|
264
264
|
|
265
265
|
|
266
266
|
var url = faq_kb.url+"/parse";
|
267
|
-
winston.
|
267
|
+
winston.debug("fulltext search external url " + url);
|
268
268
|
|
269
269
|
var json = {text: message.text, language: faq_kb.language, id_project: message.id_project, id_faq_kb: faq_kb._id};
|
270
|
-
winston.
|
270
|
+
winston.debug("fulltext search external json", json);
|
271
271
|
|
272
272
|
var headers = {
|
273
273
|
'Content-Type' : 'application/json',
|
@@ -276,14 +276,14 @@ class FaqBotHandler {
|
|
276
276
|
};
|
277
277
|
|
278
278
|
var res = await httpUtil.call(url, headers, json, "POST")
|
279
|
-
winston.
|
279
|
+
winston.debug("res", res);
|
280
280
|
|
281
281
|
if (res && res.intent && res.intent.name) {
|
282
282
|
var intent_name = res.intent.name;
|
283
|
-
winston.
|
283
|
+
winston.debug("intent_name", intent_name);
|
284
284
|
//filtra su intent name
|
285
285
|
query.intent_display_name = intent_name;
|
286
|
-
winston.
|
286
|
+
winston.debug("query",query);
|
287
287
|
|
288
288
|
}
|
289
289
|
} else {
|
@@ -294,7 +294,7 @@ class FaqBotHandler {
|
|
294
294
|
search_obj["$language"] = faq_kb.language;
|
295
295
|
}
|
296
296
|
query.$text = search_obj;
|
297
|
-
winston.
|
297
|
+
winston.debug("fulltext search query", query);
|
298
298
|
|
299
299
|
mongoproject = {score: { $meta: "textScore" } };
|
300
300
|
sort = { score: { $meta: "textScore" } } //https://docs.mongodb.com/manual/reference/operator/query/text/#sort-by-text-search-score
|
File without changes
|
@@ -368,7 +368,8 @@ class FaqBotSupport {
|
|
368
368
|
// found = true;
|
369
369
|
// return resolve(bot_answer);
|
370
370
|
|
371
|
-
|
371
|
+
// problem with
|
372
|
+
// if (message.channel.name == "chat21") { //why this contition on chat21 channel? bacause only chat21 support parsed replies?
|
372
373
|
winston.debug("faqBotSupport message.channel.name is chat21",message);
|
373
374
|
that.getParsedMessage(bot_answer.text,message, bot, faqs[0]).then(function(bot_answerres) {
|
374
375
|
|
@@ -377,10 +378,10 @@ class FaqBotSupport {
|
|
377
378
|
return resolve(bot_answerres);
|
378
379
|
});
|
379
380
|
|
380
|
-
} else {
|
381
|
-
|
382
|
-
|
383
|
-
}
|
381
|
+
// } else {
|
382
|
+
// winston.debug("faqBotSupport message.channel.name is not chat21 returning default",message);
|
383
|
+
// return resolve(bot_answer);
|
384
|
+
// }
|
384
385
|
|
385
386
|
} else {
|
386
387
|
var message_key = "DEFAULT_NOTFOUND_NOBOT_SENTENCE_REPLY_MESSAGE";
|
@@ -284,7 +284,9 @@ class RequestService {
|
|
284
284
|
|
285
285
|
|
286
286
|
requestEvent.emit('request.update',requestComplete);
|
287
|
-
requestEvent.emit("request.update.comment", {comment:"REROUTE",request:requestComplete})
|
287
|
+
requestEvent.emit("request.update.comment", {comment:"REROUTE",request:requestComplete});//Deprecated
|
288
|
+
requestEvent.emit("request.updated", {comment:"REROUTE",request:requestComplete, patch:{removedParticipants: removedParticipants, addedParticipants:addedParticipants}});
|
289
|
+
|
288
290
|
requestEvent.emit('request.participants.update', {beforeRequest:request,
|
289
291
|
removedParticipants:removedParticipants,
|
290
292
|
addedParticipants:addedParticipants,
|
@@ -726,8 +728,10 @@ class RequestService {
|
|
726
728
|
winston.error(err);
|
727
729
|
return reject(err);
|
728
730
|
}
|
729
|
-
|
730
|
-
requestEvent.emit(
|
731
|
+
|
732
|
+
requestEvent.emit('request.update',updatedRequest); //deprecated
|
733
|
+
requestEvent.emit("request.update.comment", {comment:"STATUS_CHANGE",request:updatedRequest});//Deprecated
|
734
|
+
requestEvent.emit("request.updated", {comment:"STATUS_CHANGE",request:updatedRequest, patch:{status: newstatus}});
|
731
735
|
//TODO emit request.clone or reopen also
|
732
736
|
|
733
737
|
return resolve(updatedRequest);
|
@@ -765,7 +769,9 @@ class RequestService {
|
|
765
769
|
|
766
770
|
requestEvent.emit('request.update.preflight',updatedRequest); //archive to audit log
|
767
771
|
requestEvent.emit('request.update',updatedRequest);
|
768
|
-
requestEvent.emit("request.update.comment", {comment:"FIRSTTEXT_PREFLIGHT_CHANGE",request:updatedRequest})
|
772
|
+
requestEvent.emit("request.update.comment", {comment:"FIRSTTEXT_PREFLIGHT_CHANGE",request:updatedRequest});//Deprecated
|
773
|
+
requestEvent.emit("request.updated", {comment:"FIRSTTEXT_PREFLIGHT_CHANGE",request:updatedRequest, patch: {first_text: first_text, preflight: preflight}});
|
774
|
+
|
769
775
|
//TODO emit request.clone or reopen also
|
770
776
|
|
771
777
|
return resolve(updatedRequest);
|
@@ -794,7 +800,9 @@ class RequestService {
|
|
794
800
|
return reject(err);
|
795
801
|
}
|
796
802
|
requestEvent.emit('request.update',updatedRequest);
|
797
|
-
requestEvent.emit("request.update.comment", {comment:"FIRSTTEXT_CHANGE",request:updatedRequest})
|
803
|
+
requestEvent.emit("request.update.comment", {comment:"FIRSTTEXT_CHANGE",request:updatedRequest});//Deprecated
|
804
|
+
requestEvent.emit("request.updated", {comment:"FIRSTTEXT_CHANGE",request:updatedRequest, patch: {first_text: first_text}});
|
805
|
+
|
798
806
|
//TODO emit request.clone or reopen also
|
799
807
|
|
800
808
|
return resolve(updatedRequest);
|
@@ -825,7 +833,8 @@ class RequestService {
|
|
825
833
|
return reject(err);
|
826
834
|
}
|
827
835
|
requestEvent.emit('request.update',updatedRequest);
|
828
|
-
requestEvent.emit("request.update.comment", {comment:"PREFLIGHT_CHANGE",request:updatedRequest})
|
836
|
+
requestEvent.emit("request.update.comment", {comment:"PREFLIGHT_CHANGE",request:updatedRequest});//Deprecated
|
837
|
+
requestEvent.emit("request.updated", {comment:"PREFLIGHT_CHANGE",request:updatedRequest, patch: {preflight: preflight}});
|
829
838
|
|
830
839
|
return resolve(updatedRequest);
|
831
840
|
});
|
@@ -1058,7 +1067,9 @@ class RequestService {
|
|
1058
1067
|
}
|
1059
1068
|
|
1060
1069
|
requestEvent.emit('request.update', savedRequest);
|
1061
|
-
requestEvent.emit("request.update.comment", {comment:"REOPEN",request:savedRequest})
|
1070
|
+
requestEvent.emit("request.update.comment", {comment:"REOPEN",request:savedRequest});//Deprecated
|
1071
|
+
requestEvent.emit("request.updated", {comment:"REOPEN",request:savedRequest, patch: {status: savedRequest.status}});
|
1072
|
+
|
1062
1073
|
requestEvent.emit('request.reopen', savedRequest);
|
1063
1074
|
|
1064
1075
|
winston.verbose("Request reopened", savedRequest);
|
@@ -1223,10 +1234,6 @@ class RequestService {
|
|
1223
1234
|
return reject(err);
|
1224
1235
|
}
|
1225
1236
|
|
1226
|
-
requestEvent.emit('request.update', requestComplete);
|
1227
|
-
requestEvent.emit("request.update.comment", {comment:"PARTICIPANTS_SET",request:requestComplete});
|
1228
|
-
|
1229
|
-
|
1230
1237
|
winston.debug("oldParticipants ", oldParticipants);
|
1231
1238
|
|
1232
1239
|
let newParticipants = requestComplete.participants;
|
@@ -1238,6 +1245,11 @@ class RequestService {
|
|
1238
1245
|
var addedParticipants = newParticipants.filter(d => !oldParticipants.includes(d));
|
1239
1246
|
winston.debug("addedParticipants ", addedParticipants);
|
1240
1247
|
|
1248
|
+
|
1249
|
+
requestEvent.emit('request.update', requestComplete);
|
1250
|
+
requestEvent.emit("request.update.comment", {comment:"PARTICIPANTS_SET",request:requestComplete});//Deprecated
|
1251
|
+
requestEvent.emit("request.updated", {comment:"PARTICIPANTS_SET",request:requestComplete, patch: {removedParticipants:removedParticipants, addedParticipants:addedParticipants}});
|
1252
|
+
|
1241
1253
|
requestEvent.emit('request.participants.update', {beforeRequest:request,
|
1242
1254
|
removedParticipants:removedParticipants,
|
1243
1255
|
addedParticipants:addedParticipants,
|
@@ -1338,9 +1350,9 @@ class RequestService {
|
|
1338
1350
|
winston.debug("populated", requestComplete);
|
1339
1351
|
|
1340
1352
|
requestEvent.emit('request.update', requestComplete);
|
1341
|
-
requestEvent.emit("request.update.comment", {comment:"PARTICIPANT_ADD",request:requestComplete})
|
1353
|
+
requestEvent.emit("request.update.comment", {comment:"PARTICIPANT_ADD",request:requestComplete});//Deprecated
|
1354
|
+
requestEvent.emit("request.updated", {comment:"PARTICIPANT_ADD",request:requestComplete, patch: {member:member}});
|
1342
1355
|
requestEvent.emit('request.participants.join', {member:member, request: requestComplete});
|
1343
|
-
// requestEvent.emit('request.participants.update', {beforeRequest:request, request:savedRequest});
|
1344
1356
|
|
1345
1357
|
return resolve(requestComplete);
|
1346
1358
|
});
|
@@ -1487,9 +1499,9 @@ class RequestService {
|
|
1487
1499
|
|
1488
1500
|
|
1489
1501
|
requestEvent.emit('request.update', requestComplete);
|
1490
|
-
requestEvent.emit("request.update.comment", {comment:"PARTICIPANT_REMOVE",request:requestComplete})
|
1502
|
+
requestEvent.emit("request.update.comment", {comment:"PARTICIPANT_REMOVE",request:requestComplete});//Deprecated
|
1503
|
+
requestEvent.emit("request.updated", {comment:"PARTICIPANT_REMOVE",request:requestComplete, patch: {member:member}});
|
1491
1504
|
requestEvent.emit('request.participants.leave', {member:member, request: requestComplete});
|
1492
|
-
// requestEvent.emit('request.participants.update', {beforeRequest: request, request:savedRequest});
|
1493
1505
|
|
1494
1506
|
|
1495
1507
|
return resolve(requestComplete);
|
@@ -1562,7 +1574,9 @@ class RequestService {
|
|
1562
1574
|
}
|
1563
1575
|
winston.verbose(" saved request attributes",savedRequest.toObject())
|
1564
1576
|
requestEvent.emit("request.update", savedRequest);
|
1565
|
-
requestEvent.emit("request.update.comment", {comment:"ATTRIBUTES_UPDATE",request:savedRequest})
|
1577
|
+
requestEvent.emit("request.update.comment", {comment:"ATTRIBUTES_UPDATE",request:savedRequest});//Deprecated
|
1578
|
+
requestEvent.emit("request.updated", {comment:"ATTRIBUTES_UPDATE",request:savedRequest, patch: {attributes:data}});
|
1579
|
+
|
1566
1580
|
requestEvent.emit("request.attributes.update", savedRequest);
|
1567
1581
|
// allora neanche qui participatingAgent è ok?
|
1568
1582
|
return resolve(savedRequest);
|
@@ -1621,8 +1635,9 @@ class RequestService {
|
|
1621
1635
|
}
|
1622
1636
|
|
1623
1637
|
requestEvent.emit('request.update', savedRequest);
|
1624
|
-
requestEvent.emit("request.update.comment", {comment:"TAG_ADD",request:savedRequest});
|
1625
|
-
|
1638
|
+
requestEvent.emit("request.update.comment", {comment:"TAG_ADD",request:savedRequest}); //Deprecated
|
1639
|
+
requestEvent.emit("request.updated", {comment:"TAG_ADD",request:savedRequest, patch: {tags:tag}});
|
1640
|
+
|
1626
1641
|
|
1627
1642
|
// allora neanche qui participatingAgent è ok?
|
1628
1643
|
return resolve(savedRequest);
|
@@ -1688,7 +1703,9 @@ class RequestService {
|
|
1688
1703
|
|
1689
1704
|
if (!err) {
|
1690
1705
|
requestEvent.emit('request.update', savedRequest);
|
1691
|
-
requestEvent.emit("request.update.comment", {comment:"TAG_REMOVE",request:savedRequest})
|
1706
|
+
requestEvent.emit("request.update.comment", {comment:"TAG_REMOVE",request:savedRequest});//Deprecated
|
1707
|
+
requestEvent.emit("request.updated", {comment:"TAG_REMOVE",request:savedRequest, patch: {tags:tag}});
|
1708
|
+
|
1692
1709
|
}
|
1693
1710
|
|
1694
1711
|
// allora neanche qui participatingAgent è ok?
|
@@ -162,8 +162,9 @@ describe('DepartmentService()', function () {
|
|
162
162
|
|
163
163
|
// winston.info("createdLead", createdLead.toObject());
|
164
164
|
// createWithIdAndRequester(request_id, project_user_id, lead_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status, createdBy, attributes, subject, preflight, channel, location) {
|
165
|
-
|
166
|
-
|
165
|
+
var now = Date.now();
|
166
|
+
|
167
|
+
requestService.createWithIdAndRequester("request_id1-"+now, savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest) {
|
167
168
|
|
168
169
|
// requestService.createWithId("request_id1", "requester_id1", savedProject._id, "first_text", createdDepartment._id).then(function(savedRequest) {
|
169
170
|
|
@@ -172,7 +173,7 @@ describe('DepartmentService()', function () {
|
|
172
173
|
winston.debug("resolve operatorsResult0", operatorsResult0); //time invariant?
|
173
174
|
|
174
175
|
// requestService.createWithId("request_id2", "requester_id1", savedProject._id, "first_text", createdDepartment._id).then(function(savedRequest2) {
|
175
|
-
requestService.createWithIdAndRequester("request_id2", savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest2) {
|
176
|
+
requestService.createWithIdAndRequester("request_id2-"+now, savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest2) {
|
176
177
|
|
177
178
|
departmentService.getOperators(createdDepartment._id, savedProject._id, false).then(function(operatorsResult) {
|
178
179
|
winston.info("resolve operatorsResult", operatorsResult);
|
@@ -288,8 +289,8 @@ describe('DepartmentService()', function () {
|
|
288
289
|
|
289
290
|
// winston.info("createdLead", createdLead.toObject());
|
290
291
|
// createWithIdAndRequester(request_id, project_user_id, lead_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status, createdBy, attributes, subject, preflight, channel, location) {
|
291
|
-
|
292
|
-
requestService.createWithIdAndRequester("request_id1", savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest) {
|
292
|
+
var now = Date.now();
|
293
|
+
requestService.createWithIdAndRequester("request_id1-"+now, savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest) {
|
293
294
|
|
294
295
|
|
295
296
|
// getOperators(departmentid, projectid, nobot) {
|
@@ -297,7 +298,7 @@ describe('DepartmentService()', function () {
|
|
297
298
|
winston.debug("resolve operatorsResult0", operatorsResult0); //time invariant?
|
298
299
|
|
299
300
|
// requestService.createWithId("request_id2", "requester_id1", savedProject._id, "first_text", createdDepartment._id).then(function(savedRequest2) {
|
300
|
-
requestService.createWithIdAndRequester("request_id2", savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest2) {
|
301
|
+
requestService.createWithIdAndRequester("request_id2-"+now, savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest2) {
|
301
302
|
|
302
303
|
departmentService.getOperators(createdDepartment._id, savedProject._id, false).then(function(operatorsResult) {
|
303
304
|
winston.info("resolve operatorsResult", operatorsResult);
|
@@ -371,9 +372,9 @@ describe('DepartmentService()', function () {
|
|
371
372
|
|
372
373
|
|
373
374
|
departmentService.create("PooledDepartment-for-createWithIdWith-createRoundRobinWithAssignedLastOperatorNotAvailableAndOtherNotAvailableDepartment", savedProject._id, routingConstants.ASSIGNED, savedUser._id).then(function(createdDepartment) {
|
374
|
-
|
375
|
+
var now = Date.now();
|
375
376
|
leadService.createIfNotExists("request_id1-getallWithLoLead", "email@getallWithLoLead.com", savedProject._id).then(function(createdLead) {
|
376
|
-
requestService.createWithIdAndRequester("request_id1", savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest) {
|
377
|
+
requestService.createWithIdAndRequester("request_id1-"+now, savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest) {
|
377
378
|
|
378
379
|
// requestService.createWithId("request_id1", "requester_id1", savedProject._id, "first_text", createdDepartment._id).then(function(savedRequest) {
|
379
380
|
|
@@ -387,7 +388,7 @@ describe('DepartmentService()', function () {
|
|
387
388
|
|
388
389
|
|
389
390
|
// requestService.createWithId("request_id2", "requester_id1", savedProject._id, "first_text", createdDepartment._id).then(function(savedRequest2) {
|
390
|
-
requestService.createWithIdAndRequester("request_id2", savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest2) {
|
391
|
+
requestService.createWithIdAndRequester("request_id2-"+now, savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text",createdDepartment._id).then(function(savedRequest2) {
|
391
392
|
|
392
393
|
departmentService.getOperators(createdDepartment._id, savedProject._id, false).then(function(operatorsResult) {
|
393
394
|
winston.info("resolve operatorsResult", operatorsResult);
|
package/test/messageRoute.js
CHANGED
@@ -277,9 +277,9 @@ it('createWithSenderFromLead', function (done) {
|
|
277
277
|
leadService.createIfNotExistsWithLeadId(uid,"leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
|
278
278
|
// console.log("createdLead",createdLead);
|
279
279
|
|
280
|
-
|
280
|
+
var now = Date.now();
|
281
281
|
chai.request(server)
|
282
|
-
.post('/'+ savedProject._id + '/requests/req123-createwithsender/messages')
|
282
|
+
.post('/'+ savedProject._id + '/requests/req123-createwithsender-'+now+'/messages')
|
283
283
|
.auth(email, pwd)
|
284
284
|
.set('content-type', 'application/json')
|
285
285
|
.send({"text":"text", "sender": uid})
|
@@ -292,13 +292,13 @@ it('createWithSenderFromLead', function (done) {
|
|
292
292
|
expect(res.body.sender).to.equal(uid);
|
293
293
|
// expect(res.body.sender).to.equal(savedProjectAndPU.project_user._id.toString());
|
294
294
|
expect(res.body.senderFullname).to.equal("leadfullname");
|
295
|
-
expect(res.body.recipient).to.equal("req123-createwithsender");
|
295
|
+
expect(res.body.recipient).to.equal("req123-createwithsender-"+now);
|
296
296
|
expect(res.body.text).to.equal("text");
|
297
297
|
expect(res.body.id_project).to.equal(savedProject._id.toString());
|
298
298
|
expect(res.body.createdBy).to.equal(savedUser._id.toString());
|
299
299
|
expect(res.body.status).to.equal(0);
|
300
300
|
|
301
|
-
expect(res.body.request.request_id).to.equal("req123-createwithsender");
|
301
|
+
expect(res.body.request.request_id).to.equal("req123-createwithsender-"+now);
|
302
302
|
expect(res.body.request.requester._id).to.equal(savedProject_user._id.toString());
|
303
303
|
expect(res.body.request.requester.uuid_user).to.equal(uid);
|
304
304
|
// expect(res.body.request.requester.id_user.firstname).to.equal("Test Firstname22");
|
package/test/requestRoute.js
CHANGED
@@ -151,12 +151,12 @@ it('createUpperCaseEmail', function (done) {
|
|
151
151
|
userService.signup( email ,pwd, "Test Firstname", "Test lastname").then(function(savedUser) {
|
152
152
|
projectService.createAndReturnProjectAndProjectUser("createWithId", savedUser._id).then(function(savedProjectAndPU) {
|
153
153
|
var savedProject = savedProjectAndPU.project;
|
154
|
-
|
154
|
+
var now = Date.now();
|
155
155
|
|
156
156
|
// leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
|
157
157
|
// createWithId(request_id, requester_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status) {
|
158
158
|
// requestService.createWithId("request_id1", createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
|
159
|
-
requestService.createWithIdAndRequester("request_requestroute-getbyid", savedProjectAndPU.project_user._id,null, savedProject._id, "first_text").then(function(savedRequest) {
|
159
|
+
requestService.createWithIdAndRequester("request_requestroute-getbyid-"+now, savedProjectAndPU.project_user._id,null, savedProject._id, "first_text").then(function(savedRequest) {
|
160
160
|
winston.debug("resolve", savedRequest.toObject());
|
161
161
|
|
162
162
|
|
@@ -173,7 +173,7 @@ it('createUpperCaseEmail', function (done) {
|
|
173
173
|
|
174
174
|
res.body.should.have.property('department').not.eql(null);
|
175
175
|
// res.body.should.have.property('lead').eql(null);
|
176
|
-
res.body.should.have.property('request_id').eql("request_requestroute-getbyid");
|
176
|
+
res.body.should.have.property('request_id').eql("request_requestroute-getbyid-"+now);
|
177
177
|
res.body.should.have.property('requester').not.eql(null);
|
178
178
|
|
179
179
|
expect(res.body.participantsAgents.length).to.equal(1);
|
@@ -224,12 +224,13 @@ it('getbyidWithPartecipatingBots', function (done) {
|
|
224
224
|
|
225
225
|
winston.error("err", err);
|
226
226
|
winston.info("updatedDepartment", updatedDepartment.toObject());
|
227
|
+
var now = Date.now();
|
227
228
|
|
228
229
|
|
229
230
|
// leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
|
230
231
|
// createWithId(request_id, requester_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status) {
|
231
232
|
// requestService.createWithId("request_id1", createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
|
232
|
-
requestService.createWithIdAndRequester("request_requestroute-getbyidWithPartecipatingBots", savedProjectAndPU.project_user._id,null, savedProject._id, "first_text").then(function(savedRequest) {
|
233
|
+
requestService.createWithIdAndRequester("request_requestroute-getbyidWithPartecipatingBots-"+now, savedProjectAndPU.project_user._id,null, savedProject._id, "first_text").then(function(savedRequest) {
|
233
234
|
winston.debug("resolve", savedRequest.toObject());
|
234
235
|
|
235
236
|
|
@@ -247,7 +248,7 @@ it('getbyidWithPartecipatingBots', function (done) {
|
|
247
248
|
res.body.should.have.property('department').not.eql(null);
|
248
249
|
|
249
250
|
// res.body.should.have.property('lead').eql(null);
|
250
|
-
res.body.should.have.property('request_id').eql("request_requestroute-getbyidWithPartecipatingBots");
|
251
|
+
res.body.should.have.property('request_id').eql("request_requestroute-getbyidWithPartecipatingBots-"+now);
|
251
252
|
res.body.should.have.property('requester').not.eql(null);
|
252
253
|
expect(res.body.requester._id).to.not.equal(savedProjectAndPU.project_user._id);
|
253
254
|
|
@@ -299,9 +300,10 @@ it('getbyidWithPartecipatingBots', function (done) {
|
|
299
300
|
|
300
301
|
console.log("createdLead", createdLead);
|
301
302
|
|
303
|
+
var now = Date.now();
|
302
304
|
|
303
305
|
var new_request = {
|
304
|
-
request_id: "
|
306
|
+
request_id: "request_id-getallSimple-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
|
305
307
|
id_project:savedProject._id, first_text: "first_text",
|
306
308
|
lead:createdLead, requester: savedProjectAndPU.project_user
|
307
309
|
};
|
@@ -378,9 +380,10 @@ it('getallNoPopulate', function (done) {
|
|
378
380
|
leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
|
379
381
|
// createWithId(request_id, requester_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status) {
|
380
382
|
// requestService.createWithId("request_id1", createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
|
383
|
+
var now = Date.now();
|
381
384
|
|
382
385
|
var request = {
|
383
|
-
request_id:"
|
386
|
+
request_id:"request_getallNoPopulate-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
|
384
387
|
id_project:savedProject._id, first_text: "first_text",
|
385
388
|
lead:createdLead, requester: savedProjectAndPU.project_user };
|
386
389
|
|
@@ -460,10 +463,11 @@ it('getallFilter-snap_department_routing', function (done) {
|
|
460
463
|
leadService.createIfNotExists("leadfullname", "email-getallfilter@email.com", savedProject._id).then(function(createdLead) {
|
461
464
|
|
462
465
|
console.log("createdLead", createdLead);
|
466
|
+
var now = Date.now();
|
463
467
|
|
464
468
|
|
465
469
|
var new_request = {
|
466
|
-
request_id: "
|
470
|
+
request_id: "request_id-getallFilter-snap_department_routing-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
|
467
471
|
id_project:savedProject._id, first_text: "first_text",
|
468
472
|
lead:createdLead, requester: savedProjectAndPU.project_user
|
469
473
|
};
|
@@ -546,9 +550,10 @@ it('getallFilter-snap_department_default', function (done) {
|
|
546
550
|
|
547
551
|
console.log("createdLead", createdLead);
|
548
552
|
|
553
|
+
var now = Date.now();
|
549
554
|
|
550
555
|
var new_request = {
|
551
|
-
request_id: "
|
556
|
+
request_id: "request_id-getallFilter-snap_department_routing-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
|
552
557
|
id_project:savedProject._id, first_text: "first_text",
|
553
558
|
lead:createdLead, requester: savedProjectAndPU.project_user
|
554
559
|
};
|
@@ -631,9 +636,10 @@ it('getallFilter-snap_department_id_bot_exists', function (done) {
|
|
631
636
|
|
632
637
|
console.log("createdLead", createdLead);
|
633
638
|
|
639
|
+
var now = Date.now();
|
634
640
|
|
635
641
|
var new_request = {
|
636
|
-
request_id: "
|
642
|
+
request_id: "request_id-getallFilter-snap_department_id_bot_exists-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
|
637
643
|
id_project:savedProject._id, first_text: "first_text",
|
638
644
|
lead:createdLead, requester: savedProjectAndPU.project_user
|
639
645
|
};
|
@@ -708,8 +714,9 @@ it('getallcsv', function (done) {
|
|
708
714
|
|
709
715
|
winston.info("createdLead", createdLead.toObject());
|
710
716
|
// createWithIdAndRequester(request_id, project_user_id, lead_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status, createdBy, attributes, subject, preflight, channel, location) {
|
717
|
+
var now = Date.now();
|
711
718
|
|
712
|
-
requestService.create({request_id: "
|
719
|
+
requestService.create({request_id: "request_id-getallcsv-"+now, project_user_id: savedProjectAndPU.project_user._id, lead_id: createdLead._id, id_project: savedProject._id,
|
713
720
|
first_text: "first_text", tags: [{tag: "tag1"},{tag: "tag2"}]}).then(function(savedRequest) {
|
714
721
|
winston.info("resolve", savedRequest.toObject());
|
715
722
|
|
@@ -757,8 +764,9 @@ it('getallWithLoLead', function (done) {
|
|
757
764
|
|
758
765
|
winston.info("createdLead", createdLead.toObject());
|
759
766
|
// createWithIdAndRequester(request_id, project_user_id, lead_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status, createdBy, attributes, subject, preflight, channel, location) {
|
760
|
-
|
761
|
-
|
767
|
+
var now = Date.now();
|
768
|
+
|
769
|
+
requestService.createWithIdAndRequester("request_id-getallWithLoLead-"+now, savedProjectAndPU.project_user._id,createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
|
762
770
|
|
763
771
|
winston.debug("resolve", savedRequest.toObject());
|
764
772
|
|
@@ -1044,19 +1052,21 @@ it('removeParticipant', function (done) {
|
|
1044
1052
|
leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
|
1045
1053
|
winston.info("savedProjectAndPU.project_user._id:" +savedProjectAndPU.project_user._id);
|
1046
1054
|
|
1055
|
+
var now = Date.now();
|
1056
|
+
|
1047
1057
|
// projectService.create("request-removeParticipant", savedUser._id).then(function(savedProject) {
|
1048
1058
|
// requestService.removeParticipantByRequestId(savedRequest.request_id, savedProject._id, userid).then(function(savedRequestParticipant) {
|
1049
1059
|
var request = {
|
1050
|
-
request_id:"request_id1-removeParticipant", project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
|
1060
|
+
request_id:"request_id1-removeParticipant-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
|
1051
1061
|
id_project:savedProject._id, first_text: "first_text",
|
1052
1062
|
lead:createdLead, requester: savedProjectAndPU.project_user };
|
1053
1063
|
|
1054
1064
|
requestService.create(request).then(function(savedRequest) {
|
1055
1065
|
winston.info("savedRequest", savedRequest.toObject());
|
1056
|
-
expect(savedRequest.request_id).to.equal("request_id1-removeParticipant");
|
1066
|
+
expect(savedRequest.request_id).to.equal("request_id1-removeParticipant-"+now);
|
1057
1067
|
|
1058
1068
|
chai.request(server)
|
1059
|
-
.delete('/'+ savedProject._id + '/requests/'+'request_id1-removeParticipant'+"/participants/"+savedUser._id)
|
1069
|
+
.delete('/'+ savedProject._id + '/requests/'+'request_id1-removeParticipant-'+now+"/participants/"+savedUser._id)
|
1060
1070
|
.auth(email, pwd)
|
1061
1071
|
.set('content-type', 'application/json')
|
1062
1072
|
.send({"text":"first_text"})
|