@tiledesk/tiledesk-server 2.10.51 → 2.10.53
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 +7 -0
- package/app.js +2 -7
- package/jobs.js +0 -5
- package/models/kb_setting.js +8 -0
- package/package.json +2 -3
- package/routes/faq.js +31 -20
- package/routes/kb.js +14 -16
- package/routes/kbsettings.js +4 -4
- package/routes/openai.js +2 -2
- package/routes/request.js +1 -1
- package/routes/webhook.js +134 -1
- package/services/QuoteManager.js +37 -10
- package/services/aiReindexService.js +151 -0
- package/services/{openaiService.js → aiService.js} +3 -3
- package/services/requestService.js +449 -435
- package/test/faqRoute.js +865 -746
- package/test/kbRoute.js +74 -2
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
var winston = require('../config/winston');
|
|
2
|
+
const axios = require("axios").default;
|
|
3
|
+
require('dotenv').config();
|
|
4
|
+
|
|
5
|
+
class AiReindexService {
|
|
6
|
+
|
|
7
|
+
constructor() {
|
|
8
|
+
|
|
9
|
+
this.BASE_URL = process.env.SCHEDULER_BASEURL;
|
|
10
|
+
winston.verbose("(ReindexScheduler) BASE_URL: " + this.BASE_URL)
|
|
11
|
+
if (!this.BASE_URL) {
|
|
12
|
+
throw new Error("Missing paramter BASE_URL");
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
this.TOKEN = process.env.SCHEDULER_TOKEN;
|
|
16
|
+
winston.verbose("(ReindexScheduler) TOKEN: " + this.TOKEN)
|
|
17
|
+
if (!this.TOKEN) {
|
|
18
|
+
throw new Error("Missing paramter TOKEN");
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
this.PROJECT = process.env.SCHEDULER_PROJECT;
|
|
22
|
+
winston.verbose("(ReindexScheduler) PROJECT: " + this.PROJECT)
|
|
23
|
+
if (!this.PROJECT) {
|
|
24
|
+
throw new Error("Missing paramter PROJECT");
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
async delete(content_id) {
|
|
30
|
+
|
|
31
|
+
return new Promise( async (resolve, reject) => {
|
|
32
|
+
|
|
33
|
+
let scheduler = await this.findScheduler(content_id).catch((err) => {
|
|
34
|
+
reject(err);
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
winston.verbose("(AiReindexService) delete() - scheduler: ", scheduler);
|
|
38
|
+
|
|
39
|
+
if (!scheduler) {
|
|
40
|
+
reject("Scheduler not found for content id " + content_id);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
let isOfflineS = await this.offlineScheduler(scheduler.id).catch((err) => {
|
|
44
|
+
reject(err);
|
|
45
|
+
})
|
|
46
|
+
|
|
47
|
+
winston.verbose("(AiReindexService) delete() - isOfflineS: ", isOfflineS)
|
|
48
|
+
|
|
49
|
+
let isOffline = await this.offlineWorkflow(scheduler.processDefinitionCode).catch((err) => {
|
|
50
|
+
reject(err);
|
|
51
|
+
})
|
|
52
|
+
|
|
53
|
+
winston.verbose("(AiReindexService) delete() - isOffline: ", isOffline)
|
|
54
|
+
|
|
55
|
+
let deleteResponse = await this.deleteWorkflow(scheduler.processDefinitionCode).catch((err) => {
|
|
56
|
+
reject(err);
|
|
57
|
+
})
|
|
58
|
+
|
|
59
|
+
winston.verbose("(AiReindexService) delete() - deleteResponse: ", deleteResponse)
|
|
60
|
+
|
|
61
|
+
resolve(deleteResponse);
|
|
62
|
+
})
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
async findScheduler(id) {
|
|
66
|
+
|
|
67
|
+
return new Promise( async (resolve, reject) => {
|
|
68
|
+
await axios({
|
|
69
|
+
url: `${this.BASE_URL}/projects/${this.PROJECT}/schedules/list`,
|
|
70
|
+
method: 'POST',
|
|
71
|
+
headers: {
|
|
72
|
+
token: this.TOKEN
|
|
73
|
+
}
|
|
74
|
+
}).then((response) => {
|
|
75
|
+
|
|
76
|
+
let scheduler = response.data.data.find(s => s.processDefinitionName === "auto-reindex-" + id);
|
|
77
|
+
if (!scheduler) {
|
|
78
|
+
resolve(null);
|
|
79
|
+
} else {
|
|
80
|
+
resolve(scheduler);
|
|
81
|
+
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
}).catch((err) => {
|
|
85
|
+
reject(err);
|
|
86
|
+
})
|
|
87
|
+
})
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
async offlineScheduler(id) {
|
|
91
|
+
|
|
92
|
+
return new Promise( async (resolve, reject) => {
|
|
93
|
+
await axios({
|
|
94
|
+
url: `${this.BASE_URL}/projects/${this.PROJECT}/schedules/${id}/offline`,
|
|
95
|
+
method: 'POST',
|
|
96
|
+
headers: {
|
|
97
|
+
token: this.TOKEN
|
|
98
|
+
}
|
|
99
|
+
}).then((response) => {
|
|
100
|
+
resolve(response.data);
|
|
101
|
+
}).catch((err) => {
|
|
102
|
+
reject(err);
|
|
103
|
+
})
|
|
104
|
+
})
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
async offlineWorkflow(code) {
|
|
108
|
+
|
|
109
|
+
return new Promise( async (resolve, reject) => {
|
|
110
|
+
|
|
111
|
+
const queryParams = {
|
|
112
|
+
releaseState: "OFFLINE"
|
|
113
|
+
}
|
|
114
|
+
await axios({
|
|
115
|
+
url: `${this.BASE_URL}/projects/${this.PROJECT}/process-definition/${code}/release`,
|
|
116
|
+
method: 'POST',
|
|
117
|
+
headers: {
|
|
118
|
+
token: this.TOKEN
|
|
119
|
+
},
|
|
120
|
+
params: queryParams
|
|
121
|
+
}).then((response) => {
|
|
122
|
+
resolve(response.data);
|
|
123
|
+
}).catch((err) => {
|
|
124
|
+
reject(err);
|
|
125
|
+
})
|
|
126
|
+
})
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
async deleteWorkflow(code) {
|
|
130
|
+
|
|
131
|
+
return new Promise( async (resolve, reject) => {
|
|
132
|
+
|
|
133
|
+
const queryParams = {
|
|
134
|
+
releaseState: "OFFLINE"
|
|
135
|
+
}
|
|
136
|
+
await axios({
|
|
137
|
+
url: `${this.BASE_URL}/projects/${this.PROJECT}/process-definition/${code}`,
|
|
138
|
+
method: 'DELETE',
|
|
139
|
+
headers: {
|
|
140
|
+
token: this.TOKEN
|
|
141
|
+
}
|
|
142
|
+
}).then((response) => {
|
|
143
|
+
resolve(response.data);
|
|
144
|
+
}).catch((err) => {
|
|
145
|
+
reject(err);
|
|
146
|
+
})
|
|
147
|
+
})
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
module.exports = { AiReindexService };
|
|
@@ -9,7 +9,7 @@ let kb_endpoint_train = process.env.KB_ENDPOINT_TRAIN;
|
|
|
9
9
|
let kb_endpoint_qa = process.env.KB_ENDPOINT_QA;
|
|
10
10
|
let secret = process.env.JWT_SECRET_KEY;
|
|
11
11
|
|
|
12
|
-
class
|
|
12
|
+
class AiService {
|
|
13
13
|
|
|
14
14
|
// OPEN AI
|
|
15
15
|
completions(data, gptkey) {
|
|
@@ -228,6 +228,6 @@ class OpenaiService {
|
|
|
228
228
|
|
|
229
229
|
}
|
|
230
230
|
|
|
231
|
-
var
|
|
231
|
+
var aiService = new AiService();
|
|
232
232
|
|
|
233
|
-
module.exports =
|
|
233
|
+
module.exports = aiService;
|