@tiledesk/tiledesk-server 2.2.13 → 2.2.17

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.
@@ -49,15 +49,15 @@ describe('RequestService', function () {
49
49
  var savedProject = savedProjectAndPU.project;
50
50
 
51
51
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
52
-
52
+ var now = Date.now();
53
53
  var request = {
54
- request_id:"request_id1", project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
54
+ request_id:"request_id-createObjSimple-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
55
55
  id_project:savedProject._id, first_text: "first_text",
56
56
  lead:createdLead, requester: savedProjectAndPU.project_user };
57
57
 
58
58
  requestService.create(request).then(function(savedRequest) {
59
59
  winston.info("resolve", savedRequest.toObject());
60
- expect(savedRequest.request_id).to.equal("request_id1");
60
+ expect(savedRequest.request_id).to.equal("request_id-createObjSimple-"+now);
61
61
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
62
62
  expect(savedRequest.first_text).to.equal("first_text");
63
63
  expect(savedRequest.department).to.not.equal(null);
@@ -96,10 +96,10 @@ describe('RequestService', function () {
96
96
  requestService.create(request).then(function(savedRequest) {
97
97
  // assert.isNotOk('No duplicate check index');
98
98
  console.log("no index check ???");
99
- done();
99
+ // done();
100
100
  }).catch(function(err) {
101
101
  console.log("ok duplicate check index ", err);
102
- // done();
102
+ done();
103
103
  });
104
104
  }).catch(function(err) {
105
105
  console.log("test reject",err);
@@ -128,15 +128,15 @@ describe('RequestService', function () {
128
128
  var savedProject = savedProjectAndPU.project;
129
129
 
130
130
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
131
-
131
+ var now = Date.now();
132
132
  var request = {
133
- request_id:"request_id1", project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
133
+ request_id:"request_idcreateObjSimpleUpdateLeadUpdateSnapshot-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
134
134
  id_project:savedProject._id, first_text: "first_text",
135
135
  lead:createdLead, requester: savedProjectAndPU.project_user };
136
136
 
137
137
  requestService.create(request).then(function(savedRequest) {
138
138
  winston.info("resolve", savedRequest.toObject());
139
- expect(savedRequest.request_id).to.equal("request_id1");
139
+ expect(savedRequest.request_id).to.equal("request_idcreateObjSimpleUpdateLeadUpdateSnapshot-"+now);
140
140
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
141
141
  expect(savedRequest.first_text).to.equal("first_text");
142
142
  expect(savedRequest.department).to.not.equal(null);
@@ -179,7 +179,7 @@ describe('RequestService', function () {
179
179
 
180
180
  Request.findById(savedRequest._id, function(err, request) {
181
181
  console.log("err",err);
182
- expect(request.request_id).to.equal("request_id1");
182
+ expect(request.request_id).to.equal("request_idcreateObjSimpleUpdateLeadUpdateSnapshot-"+now);
183
183
  expect(request.snapshot.lead.fullname).to.equal("fullname2");
184
184
  done();
185
185
  });
@@ -218,16 +218,16 @@ describe('RequestService', function () {
218
218
  var savedProject = savedProjectAndPU.project;
219
219
 
220
220
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
221
-
221
+ var now = Date.now();
222
222
  var request = {
223
- request_id:"request_id1", project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
223
+ request_id:"request_id-createObjParticipantsAgent-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
224
224
  id_project:savedProject._id, first_text: "first_text",
225
225
  lead:createdLead, requester: savedProjectAndPU.project_user,
226
226
  participants: [userid.toString()] };
227
227
 
228
228
  requestService.create(request).then(function(savedRequest) {
229
229
  winston.debug("resolve", savedRequest.toObject());
230
- expect(savedRequest.request_id).to.equal("request_id1");
230
+ expect(savedRequest.request_id).to.equal("request_id-createObjParticipantsAgent-"+now);
231
231
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
232
232
  expect(savedRequest.first_text).to.equal("first_text");
233
233
  expect(savedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -289,16 +289,16 @@ describe('RequestService', function () {
289
289
  var savedProject = savedProjectAndPU.project;
290
290
 
291
291
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
292
-
292
+ var now = Date.now();
293
293
  var request = {
294
- request_id:"request_id1", project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
294
+ request_id:"request_id-createObjTemp-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
295
295
  id_project:savedProject._id, first_text: "first_text",
296
296
  lead:createdLead, requester: savedProjectAndPU.project_user,
297
297
  status:50 };
298
298
 
299
299
  requestService.create(request).then(function(savedRequest) {
300
300
  winston.debug("resolve", savedRequest.toObject());
301
- expect(savedRequest.request_id).to.equal("request_id1");
301
+ expect(savedRequest.request_id).to.equal("request_id-createObjTemp-"+now);
302
302
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
303
303
  expect(savedRequest.first_text).to.equal("first_text");
304
304
  expect(savedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -349,9 +349,10 @@ describe('RequestService', function () {
349
349
  var savedProject = savedProjectAndPU.project;
350
350
 
351
351
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
352
- requestService.createWithIdAndRequester("request_id1", savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
352
+ var now = Date.now();
353
+ requestService.createWithIdAndRequester("request_id-createWithIdAndCreateNewLead-"+now, savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
353
354
  winston.debug("resolve", savedRequest.toObject());
354
- expect(savedRequest.request_id).to.equal("request_id1");
355
+ expect(savedRequest.request_id).to.equal("request_id-createWithIdAndCreateNewLead-"+now);
355
356
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
356
357
  expect(savedRequest.first_text).to.equal("first_text");
357
358
  expect(savedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -404,18 +405,18 @@ describe('RequestService', function () {
404
405
 
405
406
  projectService.createAndReturnProjectAndProjectUser("createWithId", userid).then(function(savedProjectAndPU) {
406
407
  var savedProject = savedProjectAndPU.project;
407
-
408
+ var now = Date.now();
408
409
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
409
410
 
410
411
  requestEvent.on('request.create', function(savedRequest) {
411
412
 
412
- if (savedRequest.request_id === "createWithIdAndCreateNewLeadAndCheckRequestEvent" ) {
413
+ if (savedRequest.request_id === "createWithIdAndCreateNewLeadAndCheckRequestEvent-"+now ) {
413
414
 
414
415
 
415
416
  console.log("savedRequest",savedRequest.toJSON());
416
417
 
417
418
  winston.debug("resolve", savedRequest.toObject());
418
- expect(savedRequest.request_id).to.equal("createWithIdAndCreateNewLeadAndCheckRequestEvent");
419
+ expect(savedRequest.request_id).to.equal("createWithIdAndCreateNewLeadAndCheckRequestEvent-"+now);
419
420
  expect(savedRequest.requester._id.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
420
421
  expect(savedRequest.first_text).to.equal("first_text");
421
422
  expect(savedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -445,7 +446,7 @@ describe('RequestService', function () {
445
446
  }
446
447
 
447
448
  });
448
- requestService.createWithIdAndRequester("createWithIdAndCreateNewLeadAndCheckRequestEvent", savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
449
+ requestService.createWithIdAndRequester("createWithIdAndCreateNewLeadAndCheckRequestEvent-"+now, savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
449
450
 
450
451
  }).catch(function(err) {
451
452
  console.log("test reject",err);
@@ -512,10 +513,11 @@ describe('RequestService', function () {
512
513
  var userid = savedUser.id;
513
514
  projectService.createAndReturnProjectAndProjectUser("createWithIdAndCreatedBy", userid).then(function(savedProjectAndPU) {
514
515
  var savedProject = savedProjectAndPU.project;
516
+ var now = Date.now();
515
517
  // createWithIdAndRequester(request_id, project_user_id, lead_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status, createdBy, attributes) {
516
- requestService.createWithIdAndRequester("request_id1", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text", null, null, null,null,null, "user1").then(function(savedRequest) {
518
+ requestService.createWithIdAndRequester("request_id-createWithIdAndCreatedBy-"+now,savedProjectAndPU.project_user._id, null, savedProject._id, "first_text", null, null, null,null,null, "user1").then(function(savedRequest) {
517
519
  console.log("test resolve");
518
- expect(savedRequest.request_id).to.equal("request_id1");
520
+ expect(savedRequest.request_id).to.equal("request_id-createWithIdAndCreatedBy-"+now);
519
521
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
520
522
  expect(savedRequest.first_text).to.equal("first_text");
521
523
  expect(savedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -558,8 +560,9 @@ describe('RequestService', function () {
558
560
  var userid = savedUser.id;
559
561
  projectService.createAndReturnProjectAndProjectUser("createWithWrongDepartmentId", userid).then(function(savedProjectAndPU) {
560
562
  var savedProject = savedProjectAndPU.project;
563
+ var now = Date.now();
561
564
  // createWithIdAndRequester(request_id, project_user_id, lead_id, id_project, first_text, departmentid, sourcePage, language, userAgent, status, createdBy, attributes) {
562
- requestService.createWithIdAndRequester("request_id1", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text", "5ebd890b3f2702001915c89e", null, null,null,null, "user1").then(function(savedRequest) {
565
+ requestService.createWithIdAndRequester("request_idcreateWithWrongDepartmentId-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text", "5ebd890b3f2702001915c89e", null, null,null,null, "user1").then(function(savedRequest) {
563
566
 
564
567
  })
565
568
  .catch(function(err) {
@@ -584,9 +587,10 @@ describe('RequestService', function () {
584
587
  projectService.createAndReturnProjectAndProjectUser("createWithIdWithPooledDepartment", userid).then(function(savedProjectAndPU) {
585
588
  var savedProject = savedProjectAndPU.project;
586
589
  departmentService.create("PooledDepartment-for-createWithIdWith-createWithIdWithPooledDepartment", savedProject._id, 'pooled', userid).then(function(createdDepartment) {
587
- requestService.createWithIdAndRequester("request_id1", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text", createdDepartment._id).then(function(savedRequest) {
590
+ var now = Date.now();
591
+ requestService.createWithIdAndRequester("request_id-createWithIdWithPooledDepartment-"+now,savedProjectAndPU.project_user._id, null, savedProject._id, "first_text", createdDepartment._id).then(function(savedRequest) {
588
592
  winston.debug("resolve savedRequest");
589
- expect(savedRequest.request_id).to.equal("request_id1");
593
+ expect(savedRequest.request_id).to.equal("request_id-createWithIdWithPooledDepartment-"+now);
590
594
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
591
595
  expect(savedRequest.first_text).to.equal("first_text");
592
596
  expect(savedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -621,7 +625,8 @@ describe('RequestService', function () {
621
625
  var messageSender = "5badfe5d553d1844ad654072";
622
626
  projectService.createAndReturnProjectAndProjectUser("test1", userid).then(function(savedProjectAndPU) {
623
627
  var savedProject = savedProjectAndPU.project;
624
- requestService.createWithIdAndRequester("request_id-waitingTimeRequest", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
628
+ var now = Date.now();
629
+ requestService.createWithIdAndRequester("request_id-waitingTimeRequest-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
625
630
  setTimeout(function () {
626
631
  Promise.all([
627
632
  messageService.create(messageSender, "test sender", savedRequest.request_id, "hello1",
@@ -674,7 +679,8 @@ describe('RequestService', function () {
674
679
 
675
680
  projectService.createAndReturnProjectAndProjectUser("test1", userid).then(function(savedProjectAndPU) {
676
681
  var savedProject = savedProjectAndPU.project;
677
- requestService.createWithIdAndRequester("request_id-closeRequest",savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
682
+ var now = Date.now();
683
+ requestService.createWithIdAndRequester("request_id-closeRequest-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
678
684
  Promise.all([
679
685
  messageService.create("5badfe5d553d1844ad654072", "test sender", savedRequest.request_id, "hello1",
680
686
  savedProject._id, "5badfe5d553d1844ad654072"),
@@ -714,7 +720,8 @@ describe('RequestService', function () {
714
720
  var savedProject = savedProjectAndPU.project;
715
721
 
716
722
  leadService.createIfNotExists("leadfullname", "andrea.leo@frontiere21.it", savedProject._id).then(function(createdLead) {
717
- requestService.createWithIdAndRequester("request_id-closeRequest", savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
723
+ var now = Date.now();
724
+ requestService.createWithIdAndRequester("request_id-closeRequestAndSendTranscript-"+now, savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
718
725
  Promise.all([
719
726
  messageService.create("5badfe5d553d1844ad654072", "test sender", savedRequest.request_id, "hello1",
720
727
  savedProject._id, "5badfe5d553d1844ad654072"),
@@ -753,8 +760,9 @@ describe('RequestService', function () {
753
760
 
754
761
  projectService.createAndReturnProjectAndProjectUser("test1", userid).then(function(savedProjectAndPU) {
755
762
  var savedProject = savedProjectAndPU.project;
763
+ var now = Date.now();
756
764
 
757
- requestService.createWithIdAndRequester("request_id-reopenRequest", savedProjectAndPU.project_user._id, null,savedProject._id, "first_text").then(function(savedRequest) {
765
+ requestService.createWithIdAndRequester("request_id-reopenRequest-"+now, savedProjectAndPU.project_user._id, null,savedProject._id, "first_text").then(function(savedRequest) {
758
766
 
759
767
  requestService.closeRequestByRequestId(savedRequest.request_id, savedProject._id).then(function(closedRequest) {
760
768
  requestService.reopenRequestByRequestId(savedRequest.request_id, savedProject._id).then(function(reopenedRequest) {
@@ -820,8 +828,8 @@ describe('RequestService', function () {
820
828
  console.log("err",err)
821
829
  }
822
830
 
823
-
824
- requestService.createWithIdAndRequester("request_id1", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
831
+ var now = Date.now();
832
+ requestService.createWithIdAndRequester("request_id-addparticipant-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
825
833
  // inserisci id valido
826
834
  // var member = 'agent1';
827
835
  var member = savedUser2._id.toString();
@@ -829,7 +837,7 @@ describe('RequestService', function () {
829
837
  // addParticipantByRequestId(request_id, id_project, member) {
830
838
  requestService.addParticipantByRequestId(savedRequest.request_id, savedProject._id, member).then(function(savedRequestParticipant) {
831
839
  winston.info("resolve addParticipantByRequestId", savedRequestParticipant.toObject());
832
- expect(savedRequestParticipant.request_id).to.equal("request_id1");
840
+ expect(savedRequestParticipant.request_id).to.equal("request_id-addparticipant-"+now);
833
841
 
834
842
  winston.info("savedProjectAndPU.project_user._id.toString():"+savedProjectAndPU.project_user._id.toString());
835
843
  expect(savedRequestParticipant.requester._id.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
@@ -903,9 +911,9 @@ projectService.createAndReturnProjectAndProjectUser("setParticipantsByRequestId-
903
911
  if (err) {
904
912
  console.log("err",err)
905
913
  }
914
+ var now = Date.now();
906
915
 
907
-
908
- requestService.createWithIdAndRequester("request_id1-setParticipantsByRequestId", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
916
+ requestService.createWithIdAndRequester("request_id1-setParticipantsByRequestId-"+now,savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
909
917
  expect(savedRequest.participants).to.contains(userid);
910
918
  expect(savedRequest.participantsAgents).to.contains(userid);
911
919
 
@@ -916,7 +924,7 @@ projectService.createAndReturnProjectAndProjectUser("setParticipantsByRequestId-
916
924
  // setParticipantsByRequestId(request_id, id_project, newparticipants) {
917
925
  requestService.setParticipantsByRequestId(savedRequest.request_id, savedProject._id, [member]).then(function(savedRequestParticipant) {
918
926
  winston.info("resolve setParticipantsByRequestId", savedRequestParticipant.toObject());
919
- expect(savedRequestParticipant.request_id).to.equal("request_id1-setParticipantsByRequestId");
927
+ expect(savedRequestParticipant.request_id).to.equal("request_id1-setParticipantsByRequestId-"+now);
920
928
 
921
929
  winston.info("savedProjectAndPU.project_user._id.toString():"+savedProjectAndPU.project_user._id.toString());
922
930
  expect(savedRequestParticipant.requester._id.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
@@ -963,8 +971,8 @@ it('removeparticipant', function (done) {
963
971
 
964
972
  projectService.createAndReturnProjectAndProjectUser("removeparticipant-project", userid).then(function(savedProjectAndPU) {
965
973
  var savedProject = savedProjectAndPU.project;
966
-
967
- requestService.createWithIdAndRequester("request_id1", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
974
+ var now = Date.now();
975
+ requestService.createWithIdAndRequester("request_id-removeparticipant-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
968
976
  requestService.removeParticipantByRequestId(savedRequest.request_id, savedProject._id, userid).then(function(savedRequestParticipant) {
969
977
  winston.info("resolve", savedRequestParticipant.toObject());
970
978
 
@@ -972,7 +980,7 @@ it('removeparticipant', function (done) {
972
980
  expect(savedRequest.status).to.equal(200);
973
981
 
974
982
  //savedRequestParticipant is UNASSIGNED -> 100
975
- expect(savedRequestParticipant.request_id).to.equal("request_id1");
983
+ expect(savedRequestParticipant.request_id).to.equal("request_id-removeparticipant-"+now);
976
984
  // expect(savedRequestParticipant.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
977
985
  expect(savedRequestParticipant.first_text).to.equal("first_text");
978
986
  // expect(savedRequestParticipant.snapshot.agents).to.have.lengthOf(1);
@@ -1012,10 +1020,10 @@ it('removeparticipant', function (done) {
1012
1020
 
1013
1021
  projectService.createAndReturnProjectAndProjectUser("routeDepartmentSameAgentSameDepartmentSkipUpdate", userid).then(function(savedProjectAndPU) {
1014
1022
  var savedProject = savedProjectAndPU.project;
1015
-
1016
- requestService.createWithIdAndRequester("routeDepartmentSameAgentSameDepartmentSkipUpdate", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1023
+ var now = Date.now();
1024
+ requestService.createWithIdAndRequester("routeDepartmentSameAgentSameDepartmentSkipUpdate-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1017
1025
  winston.debug("resolve savedRequest");
1018
- expect(savedRequest.request_id).to.equal("routeDepartmentSameAgentSameDepartmentSkipUpdate");
1026
+ expect(savedRequest.request_id).to.equal("routeDepartmentSameAgentSameDepartmentSkipUpdate-"+now);
1019
1027
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
1020
1028
  expect(savedRequest.first_text).to.equal("first_text");
1021
1029
  expect(savedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -1033,9 +1041,9 @@ it('removeparticipant', function (done) {
1033
1041
  let dep = savedRequest.department;
1034
1042
 
1035
1043
  // route(request_id, departmentid, id_project, nobot, no_populate) {
1036
- requestService.route("routeDepartmentSameAgentSameDepartmentSkipUpdate", dep, savedProject._id, false).then(function(routedRequest) {
1044
+ requestService.route("routeDepartmentSameAgentSameDepartmentSkipUpdate-"+now, dep, savedProject._id, false).then(function(routedRequest) {
1037
1045
 
1038
- expect(routedRequest.request_id).to.equal("routeDepartmentSameAgentSameDepartmentSkipUpdate");
1046
+ expect(routedRequest.request_id).to.equal("routeDepartmentSameAgentSameDepartmentSkipUpdate-"+now);
1039
1047
  expect(routedRequest.requester._id.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
1040
1048
  expect(routedRequest.first_text).to.equal("first_text");
1041
1049
  expect(routedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -1077,10 +1085,11 @@ it('routeDepartmentSameAgentDifferentDepartment', function (done) {
1077
1085
 
1078
1086
  projectService.createAndReturnProjectAndProjectUser("routeDepartmentSameAgentDifferentDepartment", userid).then(function(savedProjectAndPU) {
1079
1087
  var savedProject = savedProjectAndPU.project;
1088
+ var now = Date.now();
1080
1089
 
1081
- requestService.createWithIdAndRequester("routeDepartmentSameAgentDifferentDepartment", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1090
+ requestService.createWithIdAndRequester("routeDepartmentSameAgentDifferentDepartment-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1082
1091
  winston.debug("resolve savedRequest");
1083
- expect(savedRequest.request_id).to.equal("routeDepartmentSameAgentDifferentDepartment");
1092
+ expect(savedRequest.request_id).to.equal("routeDepartmentSameAgentDifferentDepartment-"+now);
1084
1093
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
1085
1094
  expect(savedRequest.first_text).to.equal("first_text");
1086
1095
  expect(savedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -1097,9 +1106,9 @@ it('routeDepartmentSameAgentDifferentDepartment', function (done) {
1097
1106
  departmentService.create("AssignedDepartment-for-routeDepartmentSameAgentDifferentDepartment", savedProject._id, 'assigned', userid).then(function(createdDepartment) {
1098
1107
 
1099
1108
  // route(request_id, departmentid, id_project, nobot, no_populate) {
1100
- requestService.route("routeDepartmentSameAgentDifferentDepartment", createdDepartment._id, savedProject._id, false).then(function(routedRequest) {
1109
+ requestService.route("routeDepartmentSameAgentDifferentDepartment-"+now, createdDepartment._id, savedProject._id, false).then(function(routedRequest) {
1101
1110
 
1102
- expect(routedRequest.request_id).to.equal("routeDepartmentSameAgentDifferentDepartment");
1111
+ expect(routedRequest.request_id).to.equal("routeDepartmentSameAgentDifferentDepartment-"+now);
1103
1112
  expect(routedRequest.requester._id.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
1104
1113
  expect(routedRequest.first_text).to.equal("first_text");
1105
1114
  expect(routedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -1169,10 +1178,11 @@ it('routeDepartmentSameAgentDifferentDepartment', function (done) {
1169
1178
  if (err) {
1170
1179
  console.log("err",err)
1171
1180
  }
1172
-
1173
- requestService.createWithIdAndRequester("routeDepartmentDifferentAgentDifferentDepartment", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1181
+ var now = Date.now();
1182
+
1183
+ requestService.createWithIdAndRequester("routeDepartmentDifferentAgentDifferentDepartment-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1174
1184
  winston.debug("resolve savedRequest");
1175
- expect(savedRequest.request_id).to.equal("routeDepartmentDifferentAgentDifferentDepartment");
1185
+ expect(savedRequest.request_id).to.equal("routeDepartmentDifferentAgentDifferentDepartment-"+now);
1176
1186
  expect(savedRequest.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
1177
1187
  expect(savedRequest.first_text).to.equal("first_text");
1178
1188
  expect(savedRequest.snapshot.agents).to.have.lengthOf(2);
@@ -1210,9 +1220,9 @@ it('routeDepartmentSameAgentDifferentDepartment', function (done) {
1210
1220
 
1211
1221
 
1212
1222
  // route(request_id, departmentid, id_project, nobot, no_populate) {
1213
- requestService.route("routeDepartmentDifferentAgentDifferentDepartment", createdDepartment._id, savedProject._id, false).then(function(routedRequest) {
1223
+ requestService.route("routeDepartmentDifferentAgentDifferentDepartment-"+now, createdDepartment._id, savedProject._id, false).then(function(routedRequest) {
1214
1224
 
1215
- expect(routedRequest.request_id).to.equal("routeDepartmentDifferentAgentDifferentDepartment");
1225
+ expect(routedRequest.request_id).to.equal("routeDepartmentDifferentAgentDifferentDepartment-"+now);
1216
1226
  expect(routedRequest.requester._id.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
1217
1227
  expect(routedRequest.first_text).to.equal("first_text");
1218
1228
  expect(routedRequest.snapshot.agents).to.have.lengthOf(1);
@@ -1260,8 +1270,8 @@ it('reroute', function (done) {
1260
1270
 
1261
1271
  projectService.createAndReturnProjectAndProjectUser("reroute-project", userid).then(function(savedProjectAndPU) {
1262
1272
  var savedProject = savedProjectAndPU.project;
1263
-
1264
- requestService.createWithIdAndRequester("request_id1-reroute", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1273
+ var now = Date.now();
1274
+ requestService.createWithIdAndRequester("request_id1-reroute-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1265
1275
 
1266
1276
  // reroute(request_id, id_project, nobot) {
1267
1277
  requestService.reroute(savedRequest.request_id, savedProject._id, true).then(function(savedRequestParticipant) {
@@ -1271,7 +1281,7 @@ it('reroute', function (done) {
1271
1281
  expect(savedRequest.status).to.equal(200);
1272
1282
 
1273
1283
  //savedRequestParticipant is UNASSIGNED -> 100
1274
- expect(savedRequestParticipant.request_id).to.equal("request_id1-reroute");
1284
+ expect(savedRequestParticipant.request_id).to.equal("request_id1-reroute-"+now);
1275
1285
  // expect(savedRequestParticipant.requester.toString()).to.equal(savedProjectAndPU.project_user._id.toString());
1276
1286
  expect(savedRequestParticipant.first_text).to.equal("first_text");
1277
1287
  expect(savedRequestParticipant.snapshot.agents).to.have.lengthOf(1);
@@ -1313,8 +1323,8 @@ it('closeRequestAndRemoveParticipant', function (done) {
1313
1323
 
1314
1324
  projectService.createAndReturnProjectAndProjectUser("test1", userid).then(function(savedProjectAndPU) {
1315
1325
  var savedProject = savedProjectAndPU.project;
1316
-
1317
- requestService.createWithIdAndRequester("request_id-closeRequestAndRemoveParticipant", savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1326
+ var now = Date.now();
1327
+ requestService.createWithIdAndRequester("request_id-closeRequestAndRemoveParticipant-"+now, savedProjectAndPU.project_user._id, null, savedProject._id, "first_text").then(function(savedRequest) {
1318
1328
  Promise.all([
1319
1329
  messageService.create("5badfe5d553d1844ad654072", "test sender", savedRequest.request_id, "hello1",
1320
1330
  savedProject._id, "5badfe5d553d1844ad654072"),
@@ -1356,15 +1366,15 @@ it('addTag', function (done) {
1356
1366
  var savedProject = savedProjectAndPU.project;
1357
1367
 
1358
1368
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
1359
-
1360
- requestService.createWithIdAndRequester("request_id1-addTag", savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
1369
+ var now = Date.now();
1370
+ requestService.createWithIdAndRequester("request_id1-addTag-"+now, savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
1361
1371
  winston.debug("resolve", savedRequest.toObject());
1362
- expect(savedRequest.request_id).to.equal("request_id1-addTag");
1372
+ expect(savedRequest.request_id).to.equal("request_id1-addTag-"+now);
1363
1373
  expect(savedRequest.tags.length).to.equal(0);
1364
1374
 
1365
1375
  var tag = {tag:"tag1"};
1366
- requestService.addTagByRequestId("request_id1-addTag", savedProject._id, tag).then(function(savedReqTag) {
1367
- expect(savedReqTag.request_id).to.equal("request_id1-addTag");
1376
+ requestService.addTagByRequestId("request_id1-addTag-"+now, savedProject._id, tag).then(function(savedReqTag) {
1377
+ expect(savedReqTag.request_id).to.equal("request_id1-addTag-"+now);
1368
1378
  expect(savedReqTag.tags.length).to.equal(1);
1369
1379
  expect(savedReqTag.tags[0].tag).to.equal("tag1");
1370
1380
  done();
@@ -1394,20 +1404,20 @@ it('removeTag', function (done) {
1394
1404
  var savedProject = savedProjectAndPU.project;
1395
1405
 
1396
1406
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
1397
-
1398
- requestService.createWithIdAndRequester("request_id1-addTag", savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
1407
+ var now = Date.now();
1408
+ requestService.createWithIdAndRequester("request_id1-addTag-"+now, savedProjectAndPU.project_user._id, createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
1399
1409
  winston.debug("resolve", savedRequest.toObject());
1400
- expect(savedRequest.request_id).to.equal("request_id1-addTag");
1410
+ expect(savedRequest.request_id).to.equal("request_id1-addTag-"+now);
1401
1411
  expect(savedRequest.tags.length).to.equal(0);
1402
1412
 
1403
1413
  var tag = {tag:"tag1"};
1404
- requestService.addTagByRequestId("request_id1-addTag", savedProject._id, tag).then(function(savedReqTag) {
1405
- expect(savedReqTag.request_id).to.equal("request_id1-addTag");
1414
+ requestService.addTagByRequestId("request_id1-addTag-"+now, savedProject._id, tag).then(function(savedReqTag) {
1415
+ expect(savedReqTag.request_id).to.equal("request_id1-addTag-"+now);
1406
1416
  expect(savedReqTag.tags.length).to.equal(1);
1407
1417
  expect(savedReqTag.tags[0].tag).to.equal("tag1");
1408
1418
 
1409
- requestService.removeTagByRequestId("request_id1-addTag", savedProject._id, "tag1").then(function(savedReqTagRem) {
1410
- expect(savedReqTagRem.request_id).to.equal("request_id1-addTag");
1419
+ requestService.removeTagByRequestId("request_id1-addTag-"+now, savedProject._id, "tag1").then(function(savedReqTagRem) {
1420
+ expect(savedReqTagRem.request_id).to.equal("request_id1-addTag-"+now);
1411
1421
  expect(savedReqTagRem.tags.length).to.equal(0);
1412
1422
  done();
1413
1423
  });
@@ -1455,9 +1465,9 @@ it('removeTag', function (done) {
1455
1465
  var savedProject = savedProjectAndPU.project;
1456
1466
 
1457
1467
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
1458
-
1468
+ var now = Date.now();
1459
1469
  var request = {
1460
- request_id:"request_id1", project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
1470
+ request_id:"request_idcreateMessageMicroLanguageAttributes-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
1461
1471
  id_project:savedProject._id, first_text: "first_text",
1462
1472
  participants: [userid],
1463
1473
  lead:createdLead, requester: savedProjectAndPU.project_user };
@@ -1522,12 +1532,16 @@ it('removeTag', function (done) {
1522
1532
 
1523
1533
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
1524
1534
 
1535
+ var now = Date.now();
1536
+
1537
+
1525
1538
  var request = {
1526
- request_id:"request_id1", project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
1539
+ request_id:"request_idcreateMessageMicroLanguageFromBot-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
1527
1540
  id_project:savedProject._id, first_text: "first_text",
1528
1541
  participants: ["bot_"+userid],
1529
1542
  lead:createdLead, requester: savedProjectAndPU.project_user };
1530
1543
 
1544
+
1531
1545
  requestService.create(request).then(function(savedRequest) {
1532
1546
  winston.info("resolve", savedRequest.toObject());
1533
1547
 
@@ -1572,8 +1586,10 @@ it('removeTag', function (done) {
1572
1586
 
1573
1587
  leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function(createdLead) {
1574
1588
 
1589
+ var now = Date.now();
1590
+
1575
1591
  var request = {
1576
- request_id:"request_id1", project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
1592
+ request_id:"request_idselectSnapshot-"+now, project_user_id:savedProjectAndPU.project_user._id, lead_id:createdLead._id,
1577
1593
  id_project:savedProject._id, first_text: "first_text",
1578
1594
  participants: ["bot_"+userid],
1579
1595
  lead:createdLead, requester: savedProjectAndPU.project_user };
package/test-int/bot.js CHANGED
@@ -372,6 +372,7 @@ describe('bot', () => {
372
372
 
373
373
 
374
374
 
375
+
375
376
  // mocha test-int/bot.js --grep 'createSimpleFulltext'
376
377
  it('createSimpleFulltext', (done) => {
377
378
 
@@ -383,7 +384,100 @@ describe('bot', () => {
383
384
  userService.signup( email ,pwd, "Test Firstname", "Test lastname").then(function(savedUser) {
384
385
  projectService.create("test-bot", savedUser._id).then(function(savedProject) {
385
386
  // create(name, url, projectid, user_id, type)
386
- faqService.create("testbot", null, savedProject._id, savedUser._id, "internal").then(function(savedBot) {
387
+ faqService.create("testbot", undefined, savedProject._id, savedUser._id, "internal").then(function(savedBot) {
388
+
389
+ var newFaq = new Faq({
390
+ id_faq_kb: savedBot._id,
391
+ question: 'question number one',
392
+ answer: 'answer',
393
+ id_project: savedProject._id,
394
+ createdBy: savedUser._id,
395
+ updatedBy: savedUser._id
396
+ });
397
+
398
+ newFaq.save(function (err, savedFaq) {
399
+
400
+
401
+ Department.findOneAndUpdate({id_project: savedProject._id, default:true}, {id_bot:savedBot._id}, function (err, updatedDepartment) {
402
+
403
+ chai.request(server)
404
+ .post('/'+ savedProject._id + '/subscriptions')
405
+ .auth(email, pwd)
406
+ .set('content-type', 'application/json')
407
+ .send({"event":"message.create", "target":"http://localhost:3010/"})
408
+ .end((err, res) => {
409
+ console.log("res.body", JSON.stringify(res.body));
410
+ // console.dir("res.body 1", res.body);
411
+ console.log("res.headers", res.headers);
412
+ res.should.have.status(200);
413
+ res.body.should.be.a('object');
414
+ expect(res.body.event).to.equal("message.create");
415
+ var secret = res.body.secret;
416
+ expect(secret).to.not.equal(null);
417
+ expect(res.headers["x-hook-secret"]).to.equal(secret);
418
+
419
+
420
+ let messageReceived = 0;
421
+ var serverClient = express();
422
+ serverClient.use(bodyParser.json());
423
+ serverClient.post('/', function (req, res) {
424
+ console.log('serverClient req', JSON.stringify(req.body));
425
+ console.log("serverClient.headers", JSON.stringify(req.headers));
426
+ messageReceived = messageReceived+1;
427
+ expect(req.body.hook.event).to.equal("message.create");
428
+ expect(req.body.payload.request.request_id).to.equal("request_id-subscription-message-sending");
429
+ expect(req.body.payload.request.department).to.not.equal(null);
430
+ expect(req.body.payload.request.department.bot).to.not.equal(null);
431
+ expect(req.body.payload.request.department.bot.name).to.equal("testbot");
432
+
433
+ expect(req.headers["x-hook-secret"]).to.equal(secret);
434
+ res.send('POST request to the homepage');
435
+ expect(req.body.payload.text).to.equal("answer");
436
+ // console.log("savedFaq",savedFaq);
437
+ expect(req.body.payload.sender).to.equal("bot_"+savedBot.id);
438
+ expect(req.body.payload.recipient).to.equal("request_id-subscription-message-sending");
439
+ // expect(req.body.payload.attributes._answer._id.toString()).to.equal(savedFaq._id.toString());
440
+ expect(req.body.payload.attributes._answerid.toString()).to.equal(savedFaq._id.toString());
441
+ done();
442
+
443
+
444
+
445
+
446
+ });
447
+ var listener = serverClient.listen(3010, '0.0.0.0', function(){ console.log('Node js Express started', listener.address());});
448
+
449
+
450
+ leadService.createIfNotExists("leadfullname-subscription-message-sending", "andrea.leo@-subscription-message-sending.it", savedProject._id).then(function(createdLead) {
451
+ requestService.createWithId("request_id-subscription-message-sending", createdLead._id, savedProject._id, "first_text").then(function(savedRequest) {
452
+ messageService.create(savedUser._id, "test sender", savedRequest.request_id, "question",
453
+ savedProject._id, savedUser._id).then(function(savedMessage){
454
+ expect(savedMessage.text).to.equal("question");
455
+ // expect(savedMessage.sender).to.equal("question");
456
+ });
457
+ });
458
+ });
459
+ });
460
+ });
461
+ });
462
+ });
463
+
464
+ });
465
+ });
466
+ }).timeout(20000);
467
+
468
+
469
+ // mocha test-int/bot.js --grep 'createSimpleExternalSearcherBot'
470
+ it('createSimpleExternalSearcherBot', (done) => {
471
+
472
+ var email = "test-bot-" + Date.now() + "@email.com";
473
+ var pwd = "pwd";
474
+
475
+
476
+
477
+ userService.signup( email ,pwd, "Test Firstname", "Test lastname").then(function(savedUser) {
478
+ projectService.create("test-bot", savedUser._id).then(function(savedProject) {
479
+ // create(name, url, projectid, user_id, type)
480
+ faqService.create("testbot", "http://localhost:3001/samples/bot/external/searcher", savedProject._id, savedUser._id, "internal").then(function(savedBot) {
387
481
 
388
482
  var newFaq = new Faq({
389
483
  id_faq_kb: savedBot._id,
@@ -0,0 +1,42 @@
1
+
2
+ 'use strict';
3
+
4
+ var request = require('retry-request', {
5
+ request: require('request')
6
+ });
7
+
8
+
9
+ class HttpUtil {
10
+
11
+ call(url, headers, json, method) {
12
+ return new Promise(function (resolve, reject) {
13
+ request({
14
+ url: url,
15
+ headers: headers,
16
+ json: json,
17
+ method: method
18
+ }, function(err, result, json){
19
+ //console.log("SENT notify for bot with url " + url + " with err " + err);
20
+ if (err) {
21
+ //console.log("Error sending notify for bot with url " + url + " with err " + err);
22
+ return reject(err);
23
+ }
24
+ return resolve(json);
25
+ });
26
+ });
27
+ }
28
+ }
29
+
30
+
31
+ var httpUtil = new HttpUtil();
32
+
33
+ /*
34
+ async function ciao() {
35
+ var res = await httpUtil.call("https://webhook.site/bd710929-9b43-4065-88db-78ee17f84aec", undefined, {c:1}, "POST")
36
+ console.log("res", res);
37
+
38
+ }
39
+ ciao();
40
+ */
41
+
42
+ module.exports = httpUtil;