@itleanchatbot/shared-models-js-postgres 2.1.0 → 2.1.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.
Files changed (79) hide show
  1. package/package.json +1 -1
  2. package/src/seeders/test/20200924195050-create-ibmprovider.js +38 -0
  3. package/src/seeders/test/20200924195050-create-itlean-provider.js +40 -0
  4. package/src/seeders/test/20200924195050-seed-enterprises.js +24 -0
  5. package/src/seeders/test/20200925184253-seed-skils-itlean-provider.js +37 -0
  6. package/src/seeders/test/20200925184253-seed-skils.js +41 -0
  7. package/src/seeders/test/20200925184254-seed-Intention.js +39 -0
  8. package/src/seeders/test/20200925184258-seed-Intention-values.js +41 -0
  9. package/src/seeders/test/20200925191642-seed-entity-skill-itlean.js +23 -0
  10. package/src/seeders/test/20200925191642-seed-entity.js +23 -0
  11. package/src/seeders/test/20200925191643-seed-entity-values-skill-itlean.js +32 -0
  12. package/src/seeders/test/20200925191643-seed-entity-values.js +33 -0
  13. package/src/seeders/test/20200929132705-seed-dialog-node.js +128 -0
  14. package/src/seeders/test/20201016200600-seed-responses.js +563 -0
  15. package/src/seeders/test/20201104183653-seed-create-ype-skill.js +42 -0
  16. package/src/seeders/test/20201104183700-seed-create-ype-intention.js +26 -0
  17. package/src/seeders/test/20201104183706-seed-create-ype-intention-values.js +70 -0
  18. package/src/seeders/test/20201104183714-seed-create-ype-entity.js +38 -0
  19. package/src/seeders/test/20201104183723-seed-create-ype-entity-values.js +243 -0
  20. package/src/seeders/test/20201104183727-seed-create-ype-synonyms.js +253 -0
  21. package/src/seeders/test/20201104202534-seed-create-ype-node-saudacao.js +124 -0
  22. package/src/seeders/test/20210224171409-create-apiResource.js +114 -0
  23. package/src/seeders/test/20210422144458-seed-context-test.js +175 -0
  24. package/src/seeders/test/20210422181114-seed-jump-node.js +123 -0
  25. package/src/seeders/test/20210422182413-seed-jump-skill.js +123 -0
  26. package/src/seeders/test/20210426100156-seed-api-test.js +138 -0
  27. package/src/seeders/test/20210426103704-seed-multiple-response-test.js +272 -0
  28. package/src/seeders/test/20210426190844-seed-entity-search-test.js +160 -0
  29. package/src/seeders/test/20210427172150-seed-test-with-input-test-fisrt.js +160 -0
  30. package/src/seeders/test/20210428105402-seed-test-condition-1.js +190 -0
  31. package/src/seeders/test/20210430181906-seed-test-input-text-zero.js +120 -0
  32. package/src/seeders/test/20210430183204-seed-ype-test-condition.js +557 -0
  33. package/src/seeders/test/20210503172321-seed-invalid-condition.js +119 -0
  34. package/src/seeders/test/20210505140225-insert-skills.js +41 -0
  35. package/src/seeders/test/20210505183810-seed-chain-with-context.js +147 -0
  36. package/src/seeders/test/20210506125701-seed-with-intention-and-entity-same-name.js +188 -0
  37. package/src/seeders/test/20210507204437-seed-condition-igual-true.js +119 -0
  38. package/src/seeders/test/20210511181006-seed-using-internal-functions.js +274 -0
  39. package/src/seeders/test/20210512140152-seed-ype-real-bot.js +2578 -0
  40. package/src/seeders/test/20210519162746-seed-response-with-context.js +186 -0
  41. package/src/seeders/test/20210524141819-seed-dialog-node-faq.js +244 -0
  42. package/src/seeders/test/20210525180523-seed-regex.js +173 -0
  43. package/src/seeders/test/20210602111930-insert-dialogNodes.js +200 -0
  44. package/src/seeders/test/20210610152534-seed-test-internal-function-in-context.js +216 -0
  45. package/src/seeders/test/20210610181308-seed-test-find-in-array-internal-function.js +147 -0
  46. package/src/seeders/test/20210611101042-bot-example-internal-functions.js +985 -0
  47. package/src/seeders/test/20210613111900-bot-example-api.js +420 -0
  48. package/src/seeders/test/20210614113654-miltiple-response-with-research.js +387 -0
  49. package/src/seeders/test/20210616212102-api-authentication-and-list.js +422 -0
  50. package/src/seeders/test/20210624172310-seed-api-duble-request.js +424 -0
  51. package/src/seeders/test/20210628135630-test-branches.js +224 -0
  52. package/src/seeders/test/20210629141030-test-departments.js +225 -0
  53. package/src/seeders/test/20210630105430-test-subDepartments.js +223 -0
  54. package/src/seeders/test/20210630114011-test-contact.js +178 -0
  55. package/src/seeders/test/20210701130630-test-channels.js +381 -0
  56. package/src/seeders/test/20210702191230-seed-test-counter-in-context.js +122 -0
  57. package/src/seeders/test/20210705061313-test-fields.js +152 -0
  58. package/src/seeders/test/20210705080813-test-groups.js +122 -0
  59. package/src/seeders/test/20210705105918-seed-test-function-slice.js +161 -0
  60. package/src/seeders/test/20210706105508-seed-node-without-condition.js +254 -0
  61. package/src/seeders/test/20210706112906-seed-1.0-on-response.js +172 -0
  62. package/src/seeders/test/20210706145547-seed-clean-context.js +132 -0
  63. package/src/seeders/test/20210707151538-seed-test-response-break-line.js +161 -0
  64. package/src/seeders/test/20210713155530-seed-test-itl0079-875.js +129 -0
  65. package/src/seeders/test/20210715125619-seed-multiple-response-with-several-jumps.js +764 -0
  66. package/src/seeders/test/20210715163606-seed-test-multiple-response-with-jump.js +250 -0
  67. package/src/seeders/test/20210719154025-seed-2-contexts-together.js +133 -0
  68. package/src/seeders/test/20210802144227-seed-end-session-trigger.js +163 -0
  69. package/src/seeders/test/20210803103030-tests-dialogNodes.js +406 -0
  70. package/src/seeders/test/20210804094630-tests-lines.js +487 -0
  71. package/src/seeders/test/20210805104130-tests-lineConfigurations.js +106 -0
  72. package/src/seeders/test/20210805133330-tests-systemUsers.js +507 -0
  73. package/src/seeders/test/20210813124630-tests-getMessagesBySession.js +333 -0
  74. package/src/seeders/test/20210816151830-testes-inactivityTriggers.js +196 -0
  75. package/src/seeders/test/20210830134230-tests-sessionReports.js +254 -0
  76. package/src/seeders/test/20210830165830-tests-attendancesHistory.js +181 -0
  77. package/src/seeders/test/20210927115821-skill-test-open-faq.js +37 -0
  78. package/src/seeders/test/20211004131813-true-and-context-with-parent.js +190 -0
  79. package/src/seeders/test/20211006210203-context-concat-with-text.js +193 -0
@@ -0,0 +1,557 @@
1
+ 'use strict'
2
+ const SkillId = 'c97957f1-b1b9-45b6-beaf-32278e253b98'
3
+
4
+ const dialogNode1Id = '67fc4f9b-41f0-49eb-88a7-0be4fd7cda00'
5
+ const dialogNode2Id = 'bfd4a3ce-7369-4889-bf41-2d102adcea5f'
6
+
7
+ const dialogNodeFolder1Id = '7c60a533-3138-4557-b4db-00f1f028cc1c'
8
+ const dialogNodeFolder2Id = 'b30f9d1d-e341-4220-9b68-54b931b34959'
9
+ const dialogNodeFolder3Id = 'c3b577f1-4e09-4b00-bd26-06579ed18f1e'
10
+ const dialogNodeFolder4Id = 'bed9f706-25ca-4cb7-8df5-6f80f4fa275e'
11
+ const dialogNodeFolder5Id = '924e5d35-8f07-4992-b44b-fdd7331b6048'
12
+
13
+ const responseId1 = '989ba797-ec59-45ad-8418-daadaf021942'
14
+
15
+ const IntentionId = '61503c99-cc41-4afa-968d-87739a4574dd'
16
+
17
+ const EntityProductId = '6aabcd30-08f8-4ac3-8c66-c51241961c8e'
18
+ const EntityHowToUseId = '4c8c6059-a5a8-4936-b67c-6307d22fb589'
19
+
20
+ const EntityProduct1_1Id = '0479ac01-92c0-44c2-b555-be7d389ad4d5'
21
+ const EntityProduct1_2Id = '73d94f6c-2750-4134-b257-28df0211ac4f'
22
+ const EntityProduct1_3Id = '3132aa1f-5fcd-4b25-bb60-4f7869232305'
23
+ const EntityProduct1_4Id = 'cf8f77a7-782a-4ffa-9e86-7f61eb9d24e0'
24
+ const EntityProduct1_5Id = '84721b74-c767-42c4-b1fb-5ac862123bed'
25
+
26
+ const EntityHowToUse1_1Id = '015cde08-a43a-454d-b50b-c664d8f49369'
27
+
28
+ module.exports = {
29
+ up: async (queryInterface, Sequelize) => {
30
+ const ibmIntelligenceId = await queryInterface.rawSelect(
31
+ 'Intelligences',
32
+ {
33
+ where: {
34
+ providerType: 'ibm',
35
+ },
36
+ },
37
+ ['id']
38
+ )
39
+
40
+ const channelTypeId = await queryInterface.rawSelect(
41
+ 'ChannelTypes',
42
+ {
43
+ where: {
44
+ channelName: 'webchat',
45
+ },
46
+ },
47
+ ['id']
48
+ )
49
+
50
+ const ibmProviderId = 'f5cc3829-e441-452f-9bea-70581bde9eff'
51
+ await queryInterface.bulkInsert(
52
+ 'Skills',
53
+ [
54
+ {
55
+ id: SkillId,
56
+ IntelligenceId: ibmIntelligenceId,
57
+ AwsProviderId: null,
58
+ ItleanProviderId: null,
59
+ IbmProviderId: ibmProviderId,
60
+ name: 'Skill ype',
61
+ description: 'ype',
62
+ lang: 'pt-br',
63
+ createdAt: Sequelize.literal('now()'),
64
+ updatedAt: Sequelize.literal('now()'),
65
+ },
66
+ ],
67
+ {}
68
+ )
69
+
70
+ await queryInterface.bulkInsert(
71
+ 'Intentions',
72
+ [
73
+ {
74
+ id: IntentionId,
75
+ name: 'modo_de_usar_produtos',
76
+ description: '',
77
+ SkillId,
78
+ createdAt: Sequelize.literal('now()'),
79
+ updatedAt: Sequelize.literal('now()'),
80
+ },
81
+ ],
82
+ {}
83
+ )
84
+
85
+ await queryInterface.bulkInsert(
86
+ 'IntentionValues',
87
+ [
88
+ {
89
+ name: 'modo de uso',
90
+ IntentionId,
91
+ createdAt: Sequelize.literal('now()'),
92
+ updatedAt: Sequelize.literal('now()'),
93
+ },
94
+ {
95
+ name: 'modo de usar',
96
+ IntentionId,
97
+ createdAt: Sequelize.literal('now()'),
98
+ updatedAt: Sequelize.literal('now()'),
99
+ },
100
+ {
101
+ name: 'Com o que devo utilizar',
102
+ IntentionId,
103
+ createdAt: Sequelize.literal('now()'),
104
+ updatedAt: Sequelize.literal('now()'),
105
+ },
106
+ {
107
+ name: 'Com devo utilizar',
108
+ IntentionId,
109
+ createdAt: Sequelize.literal('now()'),
110
+ updatedAt: Sequelize.literal('now()'),
111
+ },
112
+ {
113
+ name: 'Como faço para utilizar',
114
+ IntentionId,
115
+ createdAt: Sequelize.literal('now()'),
116
+ updatedAt: Sequelize.literal('now()'),
117
+ },
118
+ {
119
+ name: 'Como posso utilizar',
120
+ IntentionId,
121
+ createdAt: Sequelize.literal('now()'),
122
+ updatedAt: Sequelize.literal('now()'),
123
+ },
124
+ {
125
+ name: 'Como usar',
126
+ IntentionId,
127
+ createdAt: Sequelize.literal('now()'),
128
+ updatedAt: Sequelize.literal('now()'),
129
+ },
130
+ {
131
+ name: 'Como utilizar',
132
+ IntentionId,
133
+ createdAt: Sequelize.literal('now()'),
134
+ updatedAt: Sequelize.literal('now()'),
135
+ },
136
+ {
137
+ name: 'CONHEÇA A LINHA COMPLETA',
138
+ IntentionId,
139
+ createdAt: Sequelize.literal('now()'),
140
+ updatedAt: Sequelize.literal('now()'),
141
+ },
142
+ {
143
+ name: 'Desisnfecção utilizando',
144
+ IntentionId,
145
+ createdAt: Sequelize.literal('now()'),
146
+ updatedAt: Sequelize.literal('now()'),
147
+ },
148
+ ],
149
+ {}
150
+ )
151
+
152
+ await queryInterface.bulkInsert(
153
+ 'Entities',
154
+ [
155
+ {
156
+ id: EntityProductId,
157
+ name: 'produtos',
158
+ SkillId,
159
+ createdAt: Sequelize.literal('now()'),
160
+ updatedAt: Sequelize.literal('now()'),
161
+ },
162
+ {
163
+ id: EntityHowToUseId,
164
+ name: 'modo_usar',
165
+ SkillId,
166
+ createdAt: Sequelize.literal('now()'),
167
+ updatedAt: Sequelize.literal('now()'),
168
+ },
169
+ ],
170
+ {}
171
+ )
172
+
173
+ await queryInterface.bulkInsert(
174
+ 'EntityValues',
175
+ [
176
+ {
177
+ id: EntityProduct1_1Id,
178
+ EntityId: EntityProductId,
179
+ name: 'detergente_tradicional_ype',
180
+ synonyms:
181
+ 'Detergente Tradicional, Detergente, detergente tradicional',
182
+ type: 'synonyms',
183
+ createdAt: Sequelize.literal('now()'),
184
+ updatedAt: Sequelize.literal('now()'),
185
+ },
186
+ {
187
+ id: EntityProduct1_2Id,
188
+ EntityId: EntityProductId,
189
+ name: 'sabao_em_po',
190
+ type: 'synonyms',
191
+ synonyms: 'Sabão em pó, Sabão, Sabao em po',
192
+ createdAt: Sequelize.literal('now()'),
193
+ updatedAt: Sequelize.literal('now()'),
194
+ },
195
+ {
196
+ id: EntityProduct1_3Id,
197
+ EntityId: EntityProductId,
198
+ name: 'amaciante',
199
+ type: 'synonyms',
200
+ synonyms: 'Amaciante Ypê, Amaciante',
201
+ createdAt: Sequelize.literal('now()'),
202
+ updatedAt: Sequelize.literal('now()'),
203
+ },
204
+ {
205
+ id: EntityProduct1_4Id,
206
+ EntityId: EntityProductId,
207
+ name: 'agua_sanitaria',
208
+ type: 'synonyms',
209
+ synonyms: 'Água Sanitária Ypê, agua sanitaria ype, Água Sanitária',
210
+ createdAt: Sequelize.literal('now()'),
211
+ updatedAt: Sequelize.literal('now()'),
212
+ },
213
+ {
214
+ id: EntityProduct1_5Id,
215
+ EntityId: EntityProductId,
216
+ name: 'multiuso_premium',
217
+ type: 'synonyms',
218
+ synonyms:
219
+ 'Multiuso Premium Ypê, Multiuso Premium, Multiuso Premium Ype',
220
+ createdAt: Sequelize.literal('now()'),
221
+ updatedAt: Sequelize.literal('now()'),
222
+ },
223
+ {
224
+ id: EntityHowToUse1_1Id,
225
+ EntityId: EntityHowToUseId,
226
+ name: 'modo de usar',
227
+ type: 'synonyms',
228
+ synonyms: 'modo de usar, modo de uso, como usar',
229
+ createdAt: Sequelize.literal('now()'),
230
+ updatedAt: Sequelize.literal('now()'),
231
+ },
232
+ ],
233
+ {}
234
+ )
235
+ await queryInterface.bulkInsert(
236
+ 'Synonyms',
237
+ [
238
+ {
239
+ EntityId: EntityProductId,
240
+ EntityValueId: EntityProduct1_1Id,
241
+ name: 'Detergente Tradicional',
242
+ type: 'synonyms',
243
+ createdAt: Sequelize.literal('now()'),
244
+ updatedAt: Sequelize.literal('now()'),
245
+ },
246
+ {
247
+ EntityId: EntityProductId,
248
+ EntityValueId: EntityProduct1_1Id,
249
+ name: 'Detergente',
250
+ type: 'synonyms',
251
+ createdAt: Sequelize.literal('now()'),
252
+ updatedAt: Sequelize.literal('now()'),
253
+ },
254
+ {
255
+ EntityId: EntityProductId,
256
+ EntityValueId: EntityProduct1_1Id,
257
+ name: 'detergente tradicional',
258
+ type: 'synonyms',
259
+ createdAt: Sequelize.literal('now()'),
260
+ updatedAt: Sequelize.literal('now()'),
261
+ },
262
+ {
263
+ EntityId: EntityHowToUseId,
264
+ EntityValueId: EntityProduct1_2Id,
265
+ name: 'Sabão em pó',
266
+ type: 'synonyms',
267
+ createdAt: Sequelize.literal('now()'),
268
+ updatedAt: Sequelize.literal('now()'),
269
+ },
270
+ {
271
+ EntityId: EntityHowToUseId,
272
+ EntityValueId: EntityProduct1_3Id,
273
+ name: 'Amaciante Ypê',
274
+ type: 'synonyms',
275
+ createdAt: Sequelize.literal('now()'),
276
+ updatedAt: Sequelize.literal('now()'),
277
+ },
278
+ {
279
+ EntityId: EntityHowToUseId,
280
+ EntityValueId: EntityProduct1_3Id,
281
+ name: 'Amaciante',
282
+ type: 'synonyms',
283
+ createdAt: Sequelize.literal('now()'),
284
+ updatedAt: Sequelize.literal('now()'),
285
+ },
286
+ {
287
+ EntityId: EntityHowToUseId,
288
+ EntityValueId: EntityProduct1_4Id,
289
+ name: 'Água Sanitária Ypê',
290
+ type: 'synonyms',
291
+ createdAt: Sequelize.literal('now()'),
292
+ updatedAt: Sequelize.literal('now()'),
293
+ },
294
+ {
295
+ EntityId: EntityHowToUseId,
296
+ EntityValueId: EntityProduct1_4Id,
297
+ name: 'agua sanitaria ype',
298
+ type: 'synonyms',
299
+ createdAt: Sequelize.literal('now()'),
300
+ updatedAt: Sequelize.literal('now()'),
301
+ },
302
+ {
303
+ EntityId: EntityHowToUseId,
304
+ EntityValueId: EntityProduct1_4Id,
305
+ name: 'Água Sanitária',
306
+ type: 'synonyms',
307
+ createdAt: Sequelize.literal('now()'),
308
+ updatedAt: Sequelize.literal('now()'),
309
+ },
310
+ {
311
+ EntityId: EntityHowToUseId,
312
+ EntityValueId: EntityProduct1_5Id,
313
+ name: 'Multiuso Premium Ypê',
314
+ type: 'synonyms',
315
+ createdAt: Sequelize.literal('now()'),
316
+ updatedAt: Sequelize.literal('now()'),
317
+ },
318
+ {
319
+ EntityId: EntityHowToUseId,
320
+ EntityValueId: EntityProduct1_5Id,
321
+ name: 'Multiuso Premium',
322
+ type: 'synonyms',
323
+ createdAt: Sequelize.literal('now()'),
324
+ updatedAt: Sequelize.literal('now()'),
325
+ },
326
+ {
327
+ EntityId: EntityHowToUseId,
328
+ EntityValueId: EntityProduct1_5Id,
329
+ name: 'Multiuso Premium Ype',
330
+ type: 'synonyms',
331
+ createdAt: Sequelize.literal('now()'),
332
+ updatedAt: Sequelize.literal('now()'),
333
+ },
334
+ {
335
+ EntityId: EntityHowToUseId,
336
+ EntityValueId: EntityProduct1_2Id,
337
+ name: 'Sabao em po',
338
+ type: 'synonyms',
339
+ createdAt: Sequelize.literal('now()'),
340
+ updatedAt: Sequelize.literal('now()'),
341
+ },
342
+ {
343
+ EntityId: EntityHowToUseId,
344
+ EntityValueId: EntityHowToUse1_1Id,
345
+ name: 'modo de usar',
346
+ type: 'synonyms',
347
+ createdAt: Sequelize.literal('now()'),
348
+ updatedAt: Sequelize.literal('now()'),
349
+ },
350
+ {
351
+ EntityId: EntityHowToUseId,
352
+ EntityValueId: EntityHowToUse1_1Id,
353
+ name: 'modo de uso',
354
+ type: 'synonyms',
355
+ createdAt: Sequelize.literal('now()'),
356
+ updatedAt: Sequelize.literal('now()'),
357
+ },
358
+ ],
359
+ {}
360
+ )
361
+ await queryInterface.bulkInsert(
362
+ 'DialogNodes',
363
+ [
364
+ {
365
+ id: dialogNodeFolder1Id,
366
+ name: 'Ype Folder 1',
367
+ condition: '',
368
+ SkillId,
369
+ contexts: '{}',
370
+ step: 1,
371
+ replayWait: true,
372
+ type: 'folder',
373
+ isMultipleResponse: false,
374
+ JumpToDialogNodeId: null,
375
+ JumpToSkillId: null,
376
+ DialogNodeFolderId: null,
377
+ createdAt: Sequelize.literal('now()'),
378
+ updatedAt: Sequelize.literal('now()'),
379
+ },
380
+ {
381
+ id: dialogNodeFolder2Id,
382
+ name: 'Ype Folder 2',
383
+ condition: '',
384
+ SkillId,
385
+ contexts: '{}',
386
+ step: 1,
387
+ replayWait: true,
388
+ type: 'folder',
389
+ isMultipleResponse: false,
390
+ JumpToDialogNodeId: null,
391
+ JumpToSkillId: null,
392
+ DialogNodeFolderId: dialogNodeFolder1Id,
393
+ createdAt: Sequelize.literal('now()'),
394
+ updatedAt: Sequelize.literal('now()'),
395
+ },
396
+ {
397
+ id: dialogNodeFolder3Id,
398
+ name: 'Ype Folder 3',
399
+ condition: '',
400
+ SkillId,
401
+ contexts: '{}',
402
+ step: 1,
403
+ replayWait: true,
404
+ type: 'folder',
405
+ isMultipleResponse: false,
406
+ JumpToDialogNodeId: null,
407
+ JumpToSkillId: null,
408
+ DialogNodeFolderId: dialogNodeFolder2Id,
409
+ createdAt: Sequelize.literal('now()'),
410
+ updatedAt: Sequelize.literal('now()'),
411
+ },
412
+ {
413
+ id: dialogNodeFolder4Id,
414
+ name: 'Ype Folder 4',
415
+ condition: '',
416
+ SkillId,
417
+ contexts: '{}',
418
+ step: 1,
419
+ replayWait: true,
420
+ type: 'folder',
421
+ isMultipleResponse: false,
422
+ JumpToDialogNodeId: null,
423
+ JumpToSkillId: null,
424
+ DialogNodeFolderId: dialogNodeFolder3Id,
425
+ createdAt: Sequelize.literal('now()'),
426
+ updatedAt: Sequelize.literal('now()'),
427
+ },
428
+ {
429
+ id: dialogNodeFolder5Id,
430
+ name: 'Ype Folder 5',
431
+ condition: '',
432
+ SkillId,
433
+ contexts: '{}',
434
+ step: 1,
435
+ replayWait: true,
436
+ type: 'folder',
437
+ isMultipleResponse: false,
438
+ JumpToDialogNodeId: null,
439
+ JumpToSkillId: null,
440
+ DialogNodeFolderId: dialogNodeFolder3Id,
441
+ createdAt: Sequelize.literal('now()'),
442
+ updatedAt: Sequelize.literal('now()'),
443
+ },
444
+ {
445
+ id: dialogNode1Id,
446
+ name: 'Ype Conditions test Detergente',
447
+ condition:
448
+ '#modo_de_usar_produtos && @produtos:detergente_tradicional_ype || input.text == menu_prod_deter_ype_ModoUsar || $nivel_2 == menu_prod_deter_ype && @modo_usar',
449
+ SkillId,
450
+ contexts: JSON.stringify({
451
+ nivel_2: 'menu_prod_deter_ype',
452
+ }),
453
+ step: 1,
454
+ replayWait: true,
455
+ type: 'node',
456
+ isMultipleResponse: false,
457
+ JumpToDialogNodeId: null,
458
+ JumpToSkillId: null,
459
+ DialogNodeFolderId: dialogNodeFolder4Id,
460
+ createdAt: Sequelize.literal('now()'),
461
+ updatedAt: Sequelize.literal('now()'),
462
+ },
463
+ {
464
+ id: dialogNode2Id,
465
+ name: 'Ype Conditions test Sabão',
466
+ condition:
467
+ '#modo_usar_produtos && @produtos:sabao_em_po || input.text == produtos_sabaopotixan_ModoUsar || $nivel_2 == produtos_sabaopotixan && @modo_usar',
468
+ SkillId,
469
+ contexts: JSON.stringify({
470
+ nivel_2: 'produtos_sabaopotixan',
471
+ }),
472
+ step: 1,
473
+ replayWait: true,
474
+ type: 'node',
475
+ isMultipleResponse: false,
476
+ JumpToDialogNodeId: null,
477
+ JumpToSkillId: null,
478
+ DialogNodeFolderId: dialogNodeFolder5Id,
479
+ createdAt: Sequelize.literal('now()'),
480
+ updatedAt: Sequelize.literal('now()'),
481
+ },
482
+ ],
483
+ {}
484
+ )
485
+
486
+ await queryInterface.bulkInsert(
487
+ 'Responses',
488
+ [
489
+ {
490
+ id: responseId1,
491
+ name: 'Oi! Minha condição é input.text == 0',
492
+ SkillId,
493
+ createdAt: Sequelize.literal('now()'),
494
+ updatedAt: Sequelize.literal('now()'),
495
+ },
496
+ ],
497
+ {}
498
+ )
499
+
500
+ await queryInterface.bulkInsert(
501
+ 'ResponsesBoxes',
502
+ [
503
+ {
504
+ ResponseId: responseId1,
505
+ ChannelTypeId: channelTypeId,
506
+ type: 'flow',
507
+ payload: '',
508
+ createdAt: Sequelize.literal('now()'),
509
+ updatedAt: Sequelize.literal('now()'),
510
+ },
511
+ ],
512
+ {}
513
+ )
514
+
515
+ await queryInterface.bulkInsert('Response_DialogNodes', [
516
+ {
517
+ DialogNodeId: dialogNode1Id,
518
+ ResponseId: responseId1,
519
+ createdAt: Sequelize.literal('now()'),
520
+ updatedAt: Sequelize.literal('now()'),
521
+ },
522
+
523
+ {
524
+ DialogNodeId: dialogNode2Id,
525
+ ResponseId: responseId1,
526
+ createdAt: Sequelize.literal('now()'),
527
+ updatedAt: Sequelize.literal('now()'),
528
+ },
529
+ ])
530
+ },
531
+
532
+ down: async (queryInterface) => {
533
+ await queryInterface.bulkDelete('Response_DialogNodes', [
534
+ { ResponseId: responseId1 },
535
+ ])
536
+ await queryInterface.bulkDelete('ResponsesBoxes', [
537
+ { ResponseId: responseId1 },
538
+ ])
539
+ await queryInterface.bulkDelete('Responses', [{ id: responseId1 }])
540
+ await queryInterface.bulkDelete('DialogNodes', [{ SkillId }])
541
+
542
+ await queryInterface.bulkDelete('IntentionValues', [{ IntentionId }])
543
+ await queryInterface.bulkDelete('Intentions', [{ SkillId }])
544
+ await queryInterface.bulkDelete('Entities', [{ SkillId }])
545
+ await queryInterface.bulkDelete('Synonyms', [{ EntityId: EntityProductId }])
546
+ await queryInterface.bulkDelete('Synonyms', [
547
+ { EntityId: EntityHowToUseId },
548
+ ])
549
+ await queryInterface.bulkDelete('EntityValues', [
550
+ { EntityId: EntityProductId },
551
+ ])
552
+ await queryInterface.bulkDelete('EntityValues', [
553
+ { EntityId: EntityHowToUseId },
554
+ ])
555
+ await queryInterface.bulkDelete('Skills', [{ id: SkillId }])
556
+ },
557
+ }
@@ -0,0 +1,119 @@
1
+ 'use strict'
2
+ const SkillId = '7f0dca03-e97a-42c0-aa7e-352372491e58'
3
+
4
+ const dialogNode1Id = '8f3441bb-8a53-4bca-840e-21db0d41418f'
5
+
6
+ const responseId1 = '9244ff98-1b04-4a4b-a52b-96c0d08affa6'
7
+
8
+ module.exports = {
9
+ up: async (queryInterface, Sequelize) => {
10
+ const ibmIntelligenceId = await queryInterface.rawSelect(
11
+ 'Intelligences',
12
+ {
13
+ where: {
14
+ providerType: 'ibm',
15
+ },
16
+ },
17
+ ['id']
18
+ )
19
+
20
+ const ibmProviderId = 'f5cc3829-e441-452f-9bea-70581bde9eff'
21
+ await queryInterface.bulkInsert(
22
+ 'Skills',
23
+ [
24
+ {
25
+ id: SkillId,
26
+ IntelligenceId: ibmIntelligenceId,
27
+ AwsProviderId: null,
28
+ ItleanProviderId: null,
29
+ IbmProviderId: ibmProviderId,
30
+ name: 'Skill without condition',
31
+ description: 'without condition',
32
+ lang: 'pt-br',
33
+ createdAt: Sequelize.literal('now()'),
34
+ updatedAt: Sequelize.literal('now()'),
35
+ },
36
+ ],
37
+ {}
38
+ )
39
+
40
+ await queryInterface.bulkInsert(
41
+ 'DialogNodes',
42
+ [
43
+ {
44
+ id: dialogNode1Id,
45
+ name: 'without condition',
46
+ condition: '',
47
+ SkillId,
48
+ contexts: '[]',
49
+ step: 1,
50
+ replayWait: true,
51
+ type: 'node',
52
+ isMultipleResponse: false,
53
+ JumpToDialogNodeId: null,
54
+ JumpToSkillId: '69f6c36c-5e97-4d4b-88f5-aa27ae67c738',
55
+ DialogNodeFolderId: null,
56
+ createdAt: Sequelize.literal('now()'),
57
+ updatedAt: Sequelize.literal('now()'),
58
+ },
59
+ ],
60
+ {}
61
+ )
62
+
63
+ await queryInterface.bulkInsert(
64
+ 'Responses',
65
+ [
66
+ {
67
+ id: responseId1,
68
+ name: 'Oi! Eu não tenho condição',
69
+ SkillId,
70
+ createdAt: Sequelize.literal('now()'),
71
+ updatedAt: Sequelize.literal('now()'),
72
+ },
73
+ ],
74
+ {}
75
+ )
76
+
77
+ await queryInterface.bulkInsert(
78
+ 'ResponsesBoxes',
79
+ [
80
+ {
81
+ ResponseId: responseId1,
82
+ ChannelTypeId: null,
83
+ type: 'flow',
84
+ payload: JSON.stringify([
85
+ {
86
+ id: '',
87
+ type: 'text',
88
+ messages: [{ message: 'Mensagem de teste! 😍' }],
89
+ },
90
+ ]),
91
+ createdAt: Sequelize.literal('now()'),
92
+ updatedAt: Sequelize.literal('now()'),
93
+ },
94
+ ],
95
+ {}
96
+ )
97
+
98
+ await queryInterface.bulkInsert('Response_DialogNodes', [
99
+ {
100
+ DialogNodeId: dialogNode1Id,
101
+ ResponseId: responseId1,
102
+ createdAt: Sequelize.literal('now()'),
103
+ updatedAt: Sequelize.literal('now()'),
104
+ },
105
+ ])
106
+ },
107
+
108
+ down: async (queryInterface) => {
109
+ await queryInterface.bulkDelete('Response_DialogNodes', [
110
+ { ResponseId: responseId1 },
111
+ ])
112
+ await queryInterface.bulkDelete('ResponsesBoxes', [
113
+ { ResponseId: responseId1 },
114
+ ])
115
+ await queryInterface.bulkDelete('Responses', [{ id: responseId1 }])
116
+ await queryInterface.bulkDelete('DialogNodes', [{ id: dialogNode1Id }])
117
+ await queryInterface.bulkDelete('Skills', [{ id: SkillId }])
118
+ },
119
+ }
@@ -0,0 +1,41 @@
1
+ 'use strict'
2
+ const { PROVIDER_TYPES } = require('./../../models/intelligence')
3
+
4
+ module.exports = {
5
+ up: async (queryInterface) => {
6
+ const EnterpriseId = await queryInterface.rawSelect(
7
+ 'Enterprises',
8
+ { where: { cnpj: process.env.ENTERPRISE_CNPJ } },
9
+ ['id']
10
+ )
11
+ const ItleanProviderId = await queryInterface.rawSelect(
12
+ 'ItleanProviders',
13
+ { where: { EnterpriseId } },
14
+ ['id']
15
+ )
16
+ const IntelligenceId = await queryInterface.rawSelect(
17
+ 'Intelligences',
18
+ { where: { providerType: PROVIDER_TYPES.ITLEAN } },
19
+ ['id']
20
+ )
21
+ await queryInterface.bulkInsert(
22
+ 'Skills',
23
+ [
24
+ {
25
+ name: `Test${Date.now()}`,
26
+ lang: 'pt-br',
27
+ description: `fake-description-test${Date.now()}`,
28
+ IntelligenceId,
29
+ ItleanProviderId,
30
+ createdAt: new Date(),
31
+ updatedAt: new Date(),
32
+ },
33
+ ],
34
+ {}
35
+ )
36
+ },
37
+
38
+ down: async (queryInterface) => {
39
+ await queryInterface.bulkDelete('Skills', null, {})
40
+ },
41
+ }