@tiledesk/tiledesk-tybot-connector 0.2.41 → 0.2.43
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,15 @@
|
|
|
5
5
|
available on:
|
|
6
6
|
▶️ https://www.npmjs.com/package/@tiledesk/tiledesk-tybot-connector
|
|
7
7
|
|
|
8
|
+
# v0.2.43
|
|
9
|
+
- DirCode: tiledeskVars renamed in "context"
|
|
10
|
+
- DirCode: tiledeskVars.setVar renamed in context.setAttribute()
|
|
11
|
+
- DirCode: tiledeskVars.delVar renamed in context.deleteAttribute()
|
|
12
|
+
- DirCode: added context.attributes property to access flow's attributes
|
|
13
|
+
|
|
14
|
+
# v0.2.42 (online)
|
|
15
|
+
- WebRequestV2 fix. Now you'll get the response payload (in the result) also on errors
|
|
16
|
+
|
|
8
17
|
# v0.2.41
|
|
9
18
|
- added attribute currentPhoneNumber
|
|
10
19
|
- added attribute tickeId
|
package/TiledeskExpression.js
CHANGED
|
@@ -213,6 +213,10 @@ class TiledeskExpression {
|
|
|
213
213
|
"JSONparse": {
|
|
214
214
|
name: "JSONparse",
|
|
215
215
|
applyPattern: "JSON.parse(String(#1))"
|
|
216
|
+
},
|
|
217
|
+
"JSONstringify": {
|
|
218
|
+
name: "JSONstringify",
|
|
219
|
+
applyPattern: "JSON.stringify(String(#1))"
|
|
216
220
|
}
|
|
217
221
|
}
|
|
218
222
|
|
|
@@ -247,7 +251,7 @@ class TiledeskExpression {
|
|
|
247
251
|
// console.log("res=", res)
|
|
248
252
|
}
|
|
249
253
|
catch (err) {
|
|
250
|
-
console.error("(evaluateJavascriptExpression) TiledeskExpression.evaluate() error:", err.message, "evaluating expression: '" + expression + "'");
|
|
254
|
+
console.error("(evaluateJavascriptExpression) TiledeskExpression.evaluate() error:", err.message, "- while evaluating the following expression: '" + expression + "'");
|
|
251
255
|
}
|
|
252
256
|
return res;
|
|
253
257
|
}
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@ class TiledeskRequestVariables {
|
|
|
5
5
|
constructor(requestId, tdcache, vars) {
|
|
6
6
|
this.requestId = requestId;
|
|
7
7
|
this.tdcache = tdcache;
|
|
8
|
-
this.
|
|
8
|
+
this.attributes = vars;
|
|
9
9
|
this.ops = {
|
|
10
10
|
set: {
|
|
11
11
|
},
|
|
@@ -49,16 +49,16 @@ class TiledeskRequestVariables {
|
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
setAttribute(key, value) {
|
|
53
53
|
this.ops.set[key] = value;
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
deleteAttribute(key) {
|
|
57
57
|
this.ops.del[key] = true;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
|
|
61
|
-
return this.
|
|
60
|
+
allAttributes() {
|
|
61
|
+
return this.attributes;
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -38,13 +38,13 @@ class DirCode {
|
|
|
38
38
|
let script_context = {
|
|
39
39
|
console: console
|
|
40
40
|
}
|
|
41
|
-
let
|
|
41
|
+
let attributes = null;
|
|
42
42
|
if (this.context.tdcache) {
|
|
43
|
-
|
|
43
|
+
attributes =
|
|
44
44
|
await TiledeskChatbot.allParametersStatic(
|
|
45
45
|
this.context.tdcache, this.context.requestId
|
|
46
46
|
);
|
|
47
|
-
if (this.log) {console.log("
|
|
47
|
+
if (this.log) {console.log("Attributes:", JSON.stringify(attributes))}
|
|
48
48
|
}
|
|
49
49
|
else {
|
|
50
50
|
console.error("(DirCode) No this.context.tdcache");
|
|
@@ -52,19 +52,19 @@ class DirCode {
|
|
|
52
52
|
return;
|
|
53
53
|
}
|
|
54
54
|
// console.log("before variables:", variables);
|
|
55
|
-
for (const [key, value] of Object.entries(
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
let variablesManager = new TiledeskRequestVariables(this.context.requestId, this.context.tdcache,
|
|
59
|
-
script_context.
|
|
60
|
-
|
|
55
|
+
// for (const [key, value] of Object.entries(attributes)) {
|
|
56
|
+
// script_context[key] = value;
|
|
57
|
+
// }
|
|
58
|
+
let variablesManager = new TiledeskRequestVariables(this.context.requestId, this.context.tdcache, attributes);
|
|
59
|
+
script_context.context = variablesManager;
|
|
60
|
+
console.log("script_context:", script_context);
|
|
61
61
|
const tdExpression = new TiledeskExpression();
|
|
62
62
|
//console.log("tdExpression:", tdExpression.evaluateJavascriptExpression);
|
|
63
63
|
try {
|
|
64
64
|
const result = new TiledeskExpression().evaluateJavascriptExpression(source_code, script_context);
|
|
65
65
|
// console.log("result:", result);
|
|
66
66
|
// console.log("script_context.tiledeskVars:", script_context.tiledeskVars);
|
|
67
|
-
for (const [key, value] of Object.entries(script_context.
|
|
67
|
+
for (const [key, value] of Object.entries(script_context.context.ops.set)) {
|
|
68
68
|
// await TiledeskChatbot.addParameterStatic(this.context.tdcache, this.context.requestId, key, value);
|
|
69
69
|
// await variablesManager.set(key, value);
|
|
70
70
|
await TiledeskChatbot.addParameterStatic(this.context.tdcache, this.context.requestId, key, value);
|
|
@@ -73,7 +73,7 @@ class DirCode {
|
|
|
73
73
|
// let newvars_set = await variablesManager.all();
|
|
74
74
|
// console.log("newvars_set:", newvars_set);
|
|
75
75
|
// }
|
|
76
|
-
for (const [key, value] of Object.entries(script_context.
|
|
76
|
+
for (const [key, value] of Object.entries(script_context.context.ops.del)) {
|
|
77
77
|
// await TiledeskChatbot.addParameterStatic(this.context.tdcache, this.context.requestId, key, value);
|
|
78
78
|
await variablesManager.delete(key);
|
|
79
79
|
}
|
|
@@ -226,6 +226,7 @@ class DirWebRequestV2 {
|
|
|
226
226
|
axios(axios_options)
|
|
227
227
|
.then((res) => {
|
|
228
228
|
if (this.log) {
|
|
229
|
+
console.log("Success Response:", res);
|
|
229
230
|
console.log("Response for url:", options.url);
|
|
230
231
|
console.log("Response headers:\n", JSON.stringify(res.headers));
|
|
231
232
|
}
|
|
@@ -250,6 +251,9 @@ class DirWebRequestV2 {
|
|
|
250
251
|
})
|
|
251
252
|
.catch( (err) => {
|
|
252
253
|
if (this.log) {
|
|
254
|
+
if (err.response) {
|
|
255
|
+
console.log("Error Response data:", err.response.data);
|
|
256
|
+
}
|
|
253
257
|
// FIX THE STRINGIFY OF CIRCULAR STRUCTURE BUG - START
|
|
254
258
|
let cache = [];
|
|
255
259
|
let error_log = JSON.stringify(err, function(key, value) { // try to use a separate function
|
|
@@ -285,10 +289,14 @@ class DirWebRequestV2 {
|
|
|
285
289
|
if (error.message) {
|
|
286
290
|
errorMessage = error.message;
|
|
287
291
|
}
|
|
292
|
+
let data = null;
|
|
293
|
+
if (err.response) {
|
|
294
|
+
data = err.response.data;
|
|
295
|
+
}
|
|
288
296
|
callback(
|
|
289
297
|
null, {
|
|
290
298
|
status: status,
|
|
291
|
-
data:
|
|
299
|
+
data: data,
|
|
292
300
|
error: errorMessage
|
|
293
301
|
}
|
|
294
302
|
);
|