@tiledesk/tiledesk-tybot-connector 2.0.15 → 2.0.16-rc2
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 +28 -3
- package/Logger.js +13 -3
- package/engine/mock/MockBotsDataSource.js +1 -2
- package/index.js +3 -0
- package/logs/app.log +1162 -0
- package/package.json +2 -2
- package/tiledeskChatbotPlugs/DirectivesChatbotPlug.js +29 -11
- package/tiledeskChatbotPlugs/directives/DirAddKbContent.js +20 -21
- package/tiledeskChatbotPlugs/directives/DirAddTags.js +5 -6
- package/tiledeskChatbotPlugs/directives/DirAiPrompt.js +7 -8
- package/tiledeskChatbotPlugs/directives/DirAskGPTV2.js +53 -21
- package/tiledeskChatbotPlugs/directives/DirAssistant.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirBrevo.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirCaptureUserReply.js +4 -5
- package/tiledeskChatbotPlugs/directives/DirClearTranscript.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirClose.js +2 -3
- package/tiledeskChatbotPlugs/directives/DirCode.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirCondition.js +3 -4
- package/tiledeskChatbotPlugs/directives/DirContactUpdate.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirCustomerio.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirDeleteVariable.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirDepartment.js +3 -4
- package/tiledeskChatbotPlugs/directives/DirFlowLog.js +7 -7
- package/tiledeskChatbotPlugs/directives/DirGptTask.js +4 -5
- package/tiledeskChatbotPlugs/directives/DirHubspot.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirIfOnlineAgentsV2.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirIfOpenHours.js +3 -4
- package/tiledeskChatbotPlugs/directives/DirIntent.js +1 -0
- package/tiledeskChatbotPlugs/directives/DirJSONCondition.js +4 -5
- package/tiledeskChatbotPlugs/directives/DirMake.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirMoveToAgent.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirMoveToUnassigned.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirQapla.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirRandomReply.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirReplaceBot.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirReplaceBotV2.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirReplaceBotV3.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirReply.js +4 -5
- package/tiledeskChatbotPlugs/directives/DirReplyV2.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirSendEmail.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirSendWhatsapp.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirSetAttributeV2.js +1 -2
- package/tiledeskChatbotPlugs/directives/DirWait.js +2 -3
- package/tiledeskChatbotPlugs/directives/DirWebRequestV2.js +8 -9
- package/tiledeskChatbotPlugs/directives/DirWebResponse.js +2 -3
- package/tiledeskChatbotPlugs/directives/DirWhatsappByAttribute.js +1 -2
- package/tiledeskChatbotPlugs/directives/Directives.js +1 -0
- package/utils/TiledeskChatbotUtil.js +2 -21
- package/TdCache copy.js +0 -242
- package/tiledeskChatbotPlugs/directives/DirWebRequestV2_old.js +0 -418
|
@@ -21,7 +21,6 @@ class DirWebResponse {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
execute(directive, callback) {
|
|
24
|
-
this.logger.info("[Web Response] Executing action");
|
|
25
24
|
winston.debug("Execute WebResponse directive: ", directive);
|
|
26
25
|
let action;
|
|
27
26
|
if (directive.action) {
|
|
@@ -34,7 +33,7 @@ class DirWebResponse {
|
|
|
34
33
|
return;
|
|
35
34
|
}
|
|
36
35
|
this.go(action, () => {
|
|
37
|
-
this.logger.
|
|
36
|
+
this.logger.native("[Web Response] Executed");
|
|
38
37
|
callback();
|
|
39
38
|
});
|
|
40
39
|
}
|
|
@@ -63,7 +62,7 @@ class DirWebResponse {
|
|
|
63
62
|
payload: json
|
|
64
63
|
}
|
|
65
64
|
|
|
66
|
-
this.logger.
|
|
65
|
+
this.logger.native("[Web Response] payload: ", webResponse);
|
|
67
66
|
|
|
68
67
|
const topic = `/webhooks/${this.requestId}`;
|
|
69
68
|
|
|
@@ -20,7 +20,6 @@ class DirWhatsappByAttribute {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
execute(directive, callback) {
|
|
23
|
-
this.logger.info("[Whatsapp by Attribute] Executing action");
|
|
24
23
|
winston.verbose("Execute WhatsappByAttribute directive");
|
|
25
24
|
let action;
|
|
26
25
|
if (directive.action) {
|
|
@@ -33,7 +32,7 @@ class DirWhatsappByAttribute {
|
|
|
33
32
|
return;
|
|
34
33
|
}
|
|
35
34
|
this.go(action, () => {
|
|
36
|
-
this.logger.
|
|
35
|
+
this.logger.native("[Whatsapp by Attribute] Executed");
|
|
37
36
|
callback();
|
|
38
37
|
})
|
|
39
38
|
}
|
|
@@ -58,6 +58,7 @@ class Directives {
|
|
|
58
58
|
static MOVE_TO_UNASSIGNED = "move_to_unassigned";
|
|
59
59
|
static CONNECT_BLOCK = "connect_block";
|
|
60
60
|
static ADD_TAGS = 'add_tags'
|
|
61
|
+
static WEBHOOK = 'webhook';
|
|
61
62
|
static WEB_RESPONSE = "web_response";
|
|
62
63
|
static FLOW_LOG = "flow_log";
|
|
63
64
|
static ADD_KB_CONTENT = "add_kb_content";
|
|
@@ -333,27 +333,6 @@ class TiledeskChatbotUtil {
|
|
|
333
333
|
}
|
|
334
334
|
});
|
|
335
335
|
}
|
|
336
|
-
|
|
337
|
-
// "buttons": [
|
|
338
|
-
// {
|
|
339
|
-
// "type": "action",
|
|
340
|
-
// "value": "Button1", // obbligatorio sempre
|
|
341
|
-
// "action": "#bb347206-d639-4926-94c9-e94930623dce", // mandatory
|
|
342
|
-
// "show_echo": true, // lo inserisco sempre
|
|
343
|
-
// "alias": "button1 alias"
|
|
344
|
-
// },
|
|
345
|
-
// {
|
|
346
|
-
// "type": "text",
|
|
347
|
-
// "value": "Button2 text", // obbligatorio sempre
|
|
348
|
-
// "show_echo": true // lo inserisco sempre
|
|
349
|
-
// },
|
|
350
|
-
// {
|
|
351
|
-
// "type": "url",
|
|
352
|
-
// "value": "Button3 link", // obbligatorio sempre
|
|
353
|
-
// "link": "http://", // obbligatorio
|
|
354
|
-
// "show_echo": true // lo inserisco sempre
|
|
355
|
-
// }
|
|
356
|
-
// ]
|
|
357
336
|
}
|
|
358
337
|
catch(error) {
|
|
359
338
|
winston.warn("Invalid json_buttons:", error)
|
|
@@ -602,8 +581,10 @@ class TiledeskChatbotUtil {
|
|
|
602
581
|
}
|
|
603
582
|
let currentLeadName = await chatbot.getParameter(TiledeskChatbotConst.REQ_LEAD_USERFULLNAME_KEY);
|
|
604
583
|
winston.debug("(TiledeskChatbotUtil) You lead email from attributes: " + currentLeadEmail);
|
|
584
|
+
console.log("currentLeadName: ", currentLeadName)
|
|
605
585
|
if (message.request.lead.fullname && !currentLeadName) {
|
|
606
586
|
// worth saving
|
|
587
|
+
console.log("inside if")
|
|
607
588
|
winston.debug("(TiledeskChatbotUtil) worth saving email");
|
|
608
589
|
try {
|
|
609
590
|
await chatbot.addParameter(TiledeskChatbotConst.REQ_LEAD_USERFULLNAME_KEY, message.request.lead.fullname);
|
package/TdCache copy.js
DELETED
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
const redis = require('redis');
|
|
2
|
-
|
|
3
|
-
class TdCache {
|
|
4
|
-
|
|
5
|
-
constructor(config) {
|
|
6
|
-
this.redis_host = config.host;
|
|
7
|
-
this.redis_port = config.port;
|
|
8
|
-
this.redis_password = config.password;
|
|
9
|
-
this.client = null;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
async connect(callback) {
|
|
13
|
-
// client = redis.createClient();
|
|
14
|
-
return new Promise( async (resolve, reject) => {
|
|
15
|
-
this.client = redis.createClient(
|
|
16
|
-
{
|
|
17
|
-
host: this.redis_host,
|
|
18
|
-
port: this.redis_port,
|
|
19
|
-
password: this.redis_password
|
|
20
|
-
});
|
|
21
|
-
this.client.on('error', err => {
|
|
22
|
-
reject(err);
|
|
23
|
-
if (callback) {
|
|
24
|
-
callback(err);
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
// this.client.on('connect', function() {
|
|
28
|
-
// console.log('Redis Connected!');
|
|
29
|
-
// });
|
|
30
|
-
this.client.on('ready',function() {
|
|
31
|
-
console.log("connected")
|
|
32
|
-
resolve();
|
|
33
|
-
if (callback) {
|
|
34
|
-
callback();
|
|
35
|
-
}
|
|
36
|
-
//console.log("Redis is ready.");
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
async set(key, value, options) {
|
|
42
|
-
//console.log("setting key value", key, value)
|
|
43
|
-
if (!options) {
|
|
44
|
-
options = {EX: 86400}
|
|
45
|
-
}
|
|
46
|
-
return new Promise( async (resolve, reject) => {
|
|
47
|
-
if (options && options.EX) {
|
|
48
|
-
//console.log("expires:", options.EX)
|
|
49
|
-
try {
|
|
50
|
-
await this.client.set(
|
|
51
|
-
key,
|
|
52
|
-
value,
|
|
53
|
-
'EX', options.EX);
|
|
54
|
-
}
|
|
55
|
-
catch(error) {
|
|
56
|
-
reject(error)
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
try {
|
|
61
|
-
//console.log("setting here...key", key, value)
|
|
62
|
-
await this.client.set(
|
|
63
|
-
key,
|
|
64
|
-
value);
|
|
65
|
-
}
|
|
66
|
-
catch(error) {
|
|
67
|
-
console.error("Error", error);
|
|
68
|
-
reject(error)
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
if (options && options.callback) {
|
|
72
|
-
options.callback();
|
|
73
|
-
}
|
|
74
|
-
//console.log("resolving...", key);
|
|
75
|
-
return resolve();
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
async incr(key) {
|
|
80
|
-
// console.log("incr key:", key)
|
|
81
|
-
return new Promise( async (resolve, reject) => {
|
|
82
|
-
try {
|
|
83
|
-
// console.log("incr here...key", key)
|
|
84
|
-
await this.client.incr(key);
|
|
85
|
-
}
|
|
86
|
-
catch(error) {
|
|
87
|
-
console.error("Error on incr:", error);
|
|
88
|
-
reject(error)
|
|
89
|
-
}
|
|
90
|
-
return resolve();
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
async hset(dict_key, key, value, options) {
|
|
95
|
-
//console.log("hsetting dict_key key value", dict_key, key, value)
|
|
96
|
-
return new Promise( async (resolve, reject) => {
|
|
97
|
-
if (options && options.EX) {
|
|
98
|
-
//console.log("expires:", options.EX)
|
|
99
|
-
try {
|
|
100
|
-
await this.client.hset(
|
|
101
|
-
dict_key,
|
|
102
|
-
key,
|
|
103
|
-
value,
|
|
104
|
-
'EX', options.EX);
|
|
105
|
-
}
|
|
106
|
-
catch(error) {
|
|
107
|
-
reject(error)
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
try {
|
|
112
|
-
//console.log("setting here...key", key, value)
|
|
113
|
-
await this.client.hset(
|
|
114
|
-
dict_key,
|
|
115
|
-
key,
|
|
116
|
-
value);
|
|
117
|
-
}
|
|
118
|
-
catch(error) {
|
|
119
|
-
console.error("Error", error);
|
|
120
|
-
reject(error)
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
if (options && options.callback) {
|
|
124
|
-
options.callback();
|
|
125
|
-
}
|
|
126
|
-
return resolve();
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
async hdel(dict_key, key, options) {
|
|
131
|
-
//console.log("hsetting dict_key key value", dict_key, key, value)
|
|
132
|
-
return new Promise( async (resolve, reject) => {
|
|
133
|
-
if (options && options.EX) {
|
|
134
|
-
//console.log("expires:", options.EX)
|
|
135
|
-
try {
|
|
136
|
-
await this.client.hdel(
|
|
137
|
-
dict_key,
|
|
138
|
-
key,
|
|
139
|
-
'EX', options.EX);
|
|
140
|
-
}
|
|
141
|
-
catch(error) {
|
|
142
|
-
reject(error)
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
else {
|
|
146
|
-
try {
|
|
147
|
-
//console.log("setting here...key", key, value)
|
|
148
|
-
await this.client.hdel(
|
|
149
|
-
dict_key,
|
|
150
|
-
key);
|
|
151
|
-
}
|
|
152
|
-
catch(error) {
|
|
153
|
-
console.error("Error", error);
|
|
154
|
-
reject(error);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
if (options && options.callback) {
|
|
158
|
-
options.callback();
|
|
159
|
-
}
|
|
160
|
-
return resolve();
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
async setJSON(key, value, options) {
|
|
165
|
-
const _string = JSON.stringify(value);
|
|
166
|
-
return await this.set(key, _string, options);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
async get(key, callback) {
|
|
170
|
-
//console.log("getting key", key)
|
|
171
|
-
return new Promise( async (resolve, reject) => {
|
|
172
|
-
this.client.get(key, (err, value) => {
|
|
173
|
-
if (err) {
|
|
174
|
-
reject(err);
|
|
175
|
-
}
|
|
176
|
-
else {
|
|
177
|
-
if (callback) {
|
|
178
|
-
callback(value);
|
|
179
|
-
}
|
|
180
|
-
return resolve(value);
|
|
181
|
-
}
|
|
182
|
-
});
|
|
183
|
-
});
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
async hgetall(dict_key, callback) {
|
|
187
|
-
//console.log("hgetting dics", dict_key);
|
|
188
|
-
return new Promise( async (resolve, reject) => {
|
|
189
|
-
this.client.hgetall(dict_key, (err, value) => {
|
|
190
|
-
if (err) {
|
|
191
|
-
reject(err);
|
|
192
|
-
if (callback) {
|
|
193
|
-
callback(err, null);
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
else {
|
|
197
|
-
if (callback) {
|
|
198
|
-
callback(null, value);
|
|
199
|
-
}
|
|
200
|
-
resolve(value);
|
|
201
|
-
}
|
|
202
|
-
});
|
|
203
|
-
});
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
async hget(dict_key, key, callback) {
|
|
207
|
-
//console.log("hgetting dics", dict_key);
|
|
208
|
-
return new Promise( async (resolve, reject) => {
|
|
209
|
-
this.client.hget(dict_key, key, (err, value) => {
|
|
210
|
-
if (err) {
|
|
211
|
-
reject(err);
|
|
212
|
-
if (callback) {
|
|
213
|
-
callback(err, null);
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
else {
|
|
217
|
-
if (callback) {
|
|
218
|
-
callback(null, value);
|
|
219
|
-
}
|
|
220
|
-
resolve(value);
|
|
221
|
-
}
|
|
222
|
-
});
|
|
223
|
-
});
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
async getJSON(key, callback) {
|
|
227
|
-
const value = await this.get(key);
|
|
228
|
-
return JSON.parse(value);
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
async del(key, callback) {
|
|
232
|
-
return new Promise( async (resolve, reject) => {
|
|
233
|
-
await this.client.del(key);
|
|
234
|
-
if (callback) {
|
|
235
|
-
callback();
|
|
236
|
-
}
|
|
237
|
-
return resolve();
|
|
238
|
-
})
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
module.exports = { TdCache };
|