@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.
Files changed (50) hide show
  1. package/CHANGELOG.md +28 -3
  2. package/Logger.js +13 -3
  3. package/engine/mock/MockBotsDataSource.js +1 -2
  4. package/index.js +3 -0
  5. package/logs/app.log +1162 -0
  6. package/package.json +2 -2
  7. package/tiledeskChatbotPlugs/DirectivesChatbotPlug.js +29 -11
  8. package/tiledeskChatbotPlugs/directives/DirAddKbContent.js +20 -21
  9. package/tiledeskChatbotPlugs/directives/DirAddTags.js +5 -6
  10. package/tiledeskChatbotPlugs/directives/DirAiPrompt.js +7 -8
  11. package/tiledeskChatbotPlugs/directives/DirAskGPTV2.js +53 -21
  12. package/tiledeskChatbotPlugs/directives/DirAssistant.js +1 -2
  13. package/tiledeskChatbotPlugs/directives/DirBrevo.js +1 -2
  14. package/tiledeskChatbotPlugs/directives/DirCaptureUserReply.js +4 -5
  15. package/tiledeskChatbotPlugs/directives/DirClearTranscript.js +1 -2
  16. package/tiledeskChatbotPlugs/directives/DirClose.js +2 -3
  17. package/tiledeskChatbotPlugs/directives/DirCode.js +1 -2
  18. package/tiledeskChatbotPlugs/directives/DirCondition.js +3 -4
  19. package/tiledeskChatbotPlugs/directives/DirContactUpdate.js +1 -2
  20. package/tiledeskChatbotPlugs/directives/DirCustomerio.js +1 -2
  21. package/tiledeskChatbotPlugs/directives/DirDeleteVariable.js +1 -2
  22. package/tiledeskChatbotPlugs/directives/DirDepartment.js +3 -4
  23. package/tiledeskChatbotPlugs/directives/DirFlowLog.js +7 -7
  24. package/tiledeskChatbotPlugs/directives/DirGptTask.js +4 -5
  25. package/tiledeskChatbotPlugs/directives/DirHubspot.js +1 -2
  26. package/tiledeskChatbotPlugs/directives/DirIfOnlineAgentsV2.js +1 -2
  27. package/tiledeskChatbotPlugs/directives/DirIfOpenHours.js +3 -4
  28. package/tiledeskChatbotPlugs/directives/DirIntent.js +1 -0
  29. package/tiledeskChatbotPlugs/directives/DirJSONCondition.js +4 -5
  30. package/tiledeskChatbotPlugs/directives/DirMake.js +1 -2
  31. package/tiledeskChatbotPlugs/directives/DirMoveToAgent.js +1 -2
  32. package/tiledeskChatbotPlugs/directives/DirMoveToUnassigned.js +1 -2
  33. package/tiledeskChatbotPlugs/directives/DirQapla.js +1 -2
  34. package/tiledeskChatbotPlugs/directives/DirRandomReply.js +1 -2
  35. package/tiledeskChatbotPlugs/directives/DirReplaceBot.js +1 -2
  36. package/tiledeskChatbotPlugs/directives/DirReplaceBotV2.js +1 -2
  37. package/tiledeskChatbotPlugs/directives/DirReplaceBotV3.js +1 -2
  38. package/tiledeskChatbotPlugs/directives/DirReply.js +4 -5
  39. package/tiledeskChatbotPlugs/directives/DirReplyV2.js +1 -2
  40. package/tiledeskChatbotPlugs/directives/DirSendEmail.js +1 -2
  41. package/tiledeskChatbotPlugs/directives/DirSendWhatsapp.js +1 -2
  42. package/tiledeskChatbotPlugs/directives/DirSetAttributeV2.js +1 -2
  43. package/tiledeskChatbotPlugs/directives/DirWait.js +2 -3
  44. package/tiledeskChatbotPlugs/directives/DirWebRequestV2.js +8 -9
  45. package/tiledeskChatbotPlugs/directives/DirWebResponse.js +2 -3
  46. package/tiledeskChatbotPlugs/directives/DirWhatsappByAttribute.js +1 -2
  47. package/tiledeskChatbotPlugs/directives/Directives.js +1 -0
  48. package/utils/TiledeskChatbotUtil.js +2 -21
  49. package/TdCache copy.js +0 -242
  50. 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.info("[Web Response] Action completed");
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.debug("[Web Response] payload: ", webResponse);
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.info("[Whatsapp by Attribute] Action completed");
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 };