@tiledesk/tiledesk-server 2.14.1 → 2.14.2
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/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
🚀 IN PRODUCTION 🚀
|
|
6
6
|
(https://www.npmjs.com/package/@tiledesk/tiledesk-server/v/2.3.77)
|
|
7
7
|
|
|
8
|
+
# 2.14.2
|
|
9
|
+
- Updated updateRequestSnapshotQueued.js to update the snapshot only
|
|
10
|
+
|
|
8
11
|
# 2.14.1
|
|
9
12
|
- Fixed missing snapshot parameter in event request
|
|
10
13
|
- Updated twilio-connector to 0.1.28
|
package/package.json
CHANGED
|
@@ -80,7 +80,10 @@ devi mandare un messaggio welcome tu altrimenti il bot inserito successivamente
|
|
|
80
80
|
//apply only if the status is temp and no bot is available. with agent you must reroute to assign temp request to an agent
|
|
81
81
|
winston.debug("rerouting");
|
|
82
82
|
// reroute(request_id, id_project, nobot)
|
|
83
|
-
|
|
83
|
+
let t1 = Date.now();
|
|
84
|
+
requestService.reroute(message.request.request_id, message.request.id_project, false ).then(function() {
|
|
85
|
+
console.log("[Performance] (ConciergeBot) reroute time: " + (Date.now() - t1));
|
|
86
|
+
}).catch((err) => {
|
|
84
87
|
winston.error("ConciergeBot error reroute: " + err);
|
|
85
88
|
});
|
|
86
89
|
}
|
|
@@ -1164,8 +1164,9 @@ class RulesTrigger {
|
|
|
1164
1164
|
lead: createdLead, requester: puser
|
|
1165
1165
|
};
|
|
1166
1166
|
|
|
1167
|
+
let t1 = Date.now();
|
|
1167
1168
|
return requestService.create(new_request).then(function (savedRequest) {
|
|
1168
|
-
|
|
1169
|
+
console.log("[Performance] (rulesTrigger) requestService.create time: " + (Date.now() - t1));
|
|
1169
1170
|
// performance console log
|
|
1170
1171
|
// console.log("************* request created trigger: "+new Date().toISOString());
|
|
1171
1172
|
|
|
@@ -1176,8 +1177,11 @@ class RulesTrigger {
|
|
|
1176
1177
|
var senderFullname = fullname || 'Guest'; // guest_here
|
|
1177
1178
|
|
|
1178
1179
|
// create(sender, senderFullname, recipient, text, id_project, createdBy, status, attributes, type, metadata, language) {
|
|
1179
|
-
|
|
1180
|
-
|
|
1180
|
+
let t2 = Date.now();
|
|
1181
|
+
return messageService.create( id_user, senderFullname , savedRequest.request_id, text, id_project, id_user, MessageConstants.CHAT_MESSAGE_STATUS.SENDING, attributes, type, eventTrigger.event.metadata, language).then(function(savedMessage) {
|
|
1182
|
+
console.log("[Performance] (rulesTrigger) messageService.create time: " + (Date.now() - t2));
|
|
1183
|
+
return savedMessage;
|
|
1184
|
+
});
|
|
1181
1185
|
}).catch(function (err) {
|
|
1182
1186
|
winston.error("Error trigger requestService.create", err);
|
|
1183
1187
|
});
|
|
@@ -221,6 +221,8 @@ class RequestService {
|
|
|
221
221
|
request.assigned_at = assigned_at;
|
|
222
222
|
request.waiting_time = undefined //reset waiting_time on reroute
|
|
223
223
|
|
|
224
|
+
console.log("request.snapshot for ", request.request_id ," exists: ", request.snapshot ? "yes" : "no\n", new Date());
|
|
225
|
+
console.log("request.snapshot.agents for ", request.request_id ," exists: ", request.snapshot?.agents ? "yes" : "no\n", new Date());
|
|
224
226
|
if (!request.snapshot) { //if used other methods than .create
|
|
225
227
|
request.snapshot = {}
|
|
226
228
|
}
|
|
@@ -606,8 +608,6 @@ class RequestService {
|
|
|
606
608
|
if (dep_id) {
|
|
607
609
|
snapshot.department = result.department;
|
|
608
610
|
}
|
|
609
|
-
snapshot.agents = agents;
|
|
610
|
-
|
|
611
611
|
if (request.requester) {
|
|
612
612
|
snapshot.requester = request.requester;
|
|
613
613
|
}
|
|
@@ -644,7 +644,8 @@ class RequestService {
|
|
|
644
644
|
priority,
|
|
645
645
|
auto_close,
|
|
646
646
|
followers,
|
|
647
|
-
createdAt
|
|
647
|
+
createdAt,
|
|
648
|
+
snapshot
|
|
648
649
|
})
|
|
649
650
|
|
|
650
651
|
if (isTestConversation) {
|
|
@@ -669,6 +670,8 @@ class RequestService {
|
|
|
669
670
|
}
|
|
670
671
|
await q.exec();
|
|
671
672
|
|
|
673
|
+
snapshot.agents = agents;
|
|
674
|
+
snapshot.availableAgentsCount = this.getAvailableAgentsCount(agents);
|
|
672
675
|
requestEvent.emit("request.create.simple", savedRequest, snapshot);
|
|
673
676
|
|
|
674
677
|
if (isStandardConversation) {
|
|
@@ -16,7 +16,7 @@ class UpdateRequestSnapshotQueued {
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
updateRequestSnapshot() {
|
|
19
|
-
|
|
19
|
+
let snapshotUpdateKey = 'request.snapshot.update';
|
|
20
20
|
if (requestEvent.queueEnabled) {
|
|
21
21
|
snapshotUpdateKey = 'request.snapshot.update.queue';
|
|
22
22
|
}
|
|
@@ -25,35 +25,40 @@ class UpdateRequestSnapshotQueued {
|
|
|
25
25
|
requestEvent.on(snapshotUpdateKey, function (data) {
|
|
26
26
|
setImmediate(() => {
|
|
27
27
|
winston.debug("updateRequestSnapshot on request.snapshot.update ", data);
|
|
28
|
+
console.log("updateRequestSnapshot on request.snapshot.update ", data);
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
const request = data.request;
|
|
31
|
+
const snapshot = data.snapshot;
|
|
32
|
+
const agentsArray = snapshot?.agents || [];
|
|
33
|
+
console.log("(queue) updateRequestSnapshot snapshot agents length: ", agentsArray.length);
|
|
31
34
|
|
|
32
35
|
if (!request || !request.request_id || !request.id_project) {
|
|
33
36
|
winston.error("updateRequestSnapshot: Invalid request data", data);
|
|
34
37
|
return;
|
|
35
38
|
}
|
|
36
39
|
|
|
37
|
-
|
|
38
|
-
|
|
40
|
+
// If there is no agents array in snapshot or it's not actually an array, skip the update
|
|
41
|
+
if (!Array.isArray(agentsArray)) {
|
|
42
|
+
winston.error("updateRequestSnapshot: snapshot.agents is not an array.", snapshot);
|
|
39
43
|
return;
|
|
40
44
|
}
|
|
41
45
|
|
|
42
|
-
|
|
46
|
+
const query = { request_id: request.request_id, id_project: request.id_project };
|
|
43
47
|
winston.debug("updateRequestSnapshot query ", query);
|
|
44
48
|
|
|
49
|
+
// Update ONLY the snapshot.agents field, presupposing 'snapshot' document already exists
|
|
45
50
|
Request.findOneAndUpdate(
|
|
46
51
|
query,
|
|
47
|
-
{ "$set": { "snapshot":
|
|
52
|
+
{ "$set": { "snapshot.agents": agentsArray } },
|
|
48
53
|
{ new: true },
|
|
49
54
|
function (err, updatedRequest) {
|
|
50
55
|
if (err) {
|
|
51
|
-
winston.error("Error updating request snapshot updateRequestSnapshot", err);
|
|
56
|
+
winston.error("Error updating request snapshot.agents in updateRequestSnapshot", err);
|
|
52
57
|
return;
|
|
53
58
|
}
|
|
54
59
|
if (updatedRequest) {
|
|
55
|
-
|
|
56
|
-
|
|
60
|
+
console.log("updateRequestSnapshot updated snapshot.agents for request " + updatedRequest.request_id, new Date());
|
|
61
|
+
winston.debug("updateRequestSnapshot updated snapshot.agents for request " + updatedRequest.request_id);
|
|
57
62
|
} else {
|
|
58
63
|
winston.warn("updateRequestSnapshot: Request not found for " + request.request_id);
|
|
59
64
|
}
|