crisp-api 9.13.0 → 10.0.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 (116) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +2 -2
  3. package/dist/crisp.d.ts +167 -0
  4. package/dist/crisp.js +764 -0
  5. package/dist/resources/BaseResource.d.ts +15 -0
  6. package/dist/resources/BaseResource.js +20 -0
  7. package/dist/resources/BucketURL.d.ts +28 -0
  8. package/dist/resources/BucketURL.js +29 -0
  9. package/dist/resources/MediaAnimation.d.ts +14 -0
  10. package/dist/resources/MediaAnimation.js +32 -0
  11. package/dist/resources/PluginConnect.d.ts +50 -0
  12. package/dist/resources/PluginConnect.js +73 -0
  13. package/dist/resources/PluginSubscription.d.ts +103 -0
  14. package/dist/resources/PluginSubscription.js +122 -0
  15. package/dist/resources/WebsiteAnalytics.d.ts +14 -0
  16. package/dist/resources/WebsiteAnalytics.js +29 -0
  17. package/dist/resources/WebsiteAvailability.d.ts +31 -0
  18. package/dist/resources/WebsiteAvailability.js +36 -0
  19. package/dist/resources/WebsiteBase.d.ts +60 -0
  20. package/dist/resources/WebsiteBase.js +71 -0
  21. package/dist/resources/WebsiteBatch.d.ts +52 -0
  22. package/dist/resources/WebsiteBatch.js +70 -0
  23. package/dist/resources/WebsiteCampaign.d.ts +199 -0
  24. package/dist/resources/WebsiteCampaign.js +194 -0
  25. package/dist/resources/WebsiteConversation.d.ts +701 -0
  26. package/dist/resources/WebsiteConversation.js +595 -0
  27. package/dist/resources/WebsiteHelpdesk.d.ts +347 -0
  28. package/dist/resources/WebsiteHelpdesk.js +587 -0
  29. package/dist/resources/WebsiteOperator.d.ts +79 -0
  30. package/dist/resources/WebsiteOperator.js +93 -0
  31. package/dist/resources/WebsitePeople.d.ts +248 -0
  32. package/dist/resources/WebsitePeople.js +276 -0
  33. package/dist/resources/WebsiteSettings.d.ts +159 -0
  34. package/dist/resources/WebsiteSettings.js +36 -0
  35. package/dist/resources/WebsiteVerify.d.ts +38 -0
  36. package/dist/resources/WebsiteVerify.js +50 -0
  37. package/dist/resources/WebsiteVisitors.d.ts +113 -0
  38. package/dist/resources/WebsiteVisitors.js +88 -0
  39. package/dist/resources/index.d.ts +17 -0
  40. package/dist/resources/index.js +40 -0
  41. package/dist/services/bucket.d.ts +13 -0
  42. package/dist/services/bucket.js +28 -0
  43. package/dist/services/media.d.ts +13 -0
  44. package/dist/services/media.js +28 -0
  45. package/dist/services/plugin.d.ts +14 -0
  46. package/dist/services/plugin.js +30 -0
  47. package/dist/services/website.d.ts +24 -0
  48. package/dist/services/website.js +50 -0
  49. package/eslint.config.mjs +208 -0
  50. package/lib/crisp.ts +957 -0
  51. package/lib/resources/BaseResource.ts +29 -0
  52. package/lib/resources/BucketURL.ts +49 -0
  53. package/lib/resources/MediaAnimation.ts +34 -0
  54. package/lib/resources/PluginConnect.ts +128 -0
  55. package/lib/resources/PluginSubscription.ts +208 -0
  56. package/lib/resources/WebsiteAnalytics.ts +31 -0
  57. package/lib/resources/WebsiteAvailability.ts +54 -0
  58. package/lib/resources/WebsiteBase.ts +108 -0
  59. package/lib/resources/WebsiteBatch.ts +96 -0
  60. package/lib/resources/WebsiteCampaign.ts +399 -0
  61. package/lib/resources/WebsiteConversation.ts +1416 -0
  62. package/lib/resources/WebsiteHelpdesk.ts +982 -0
  63. package/lib/resources/WebsiteOperator.ts +161 -0
  64. package/lib/resources/WebsitePeople.ts +527 -0
  65. package/lib/resources/WebsiteSettings.ts +192 -0
  66. package/lib/resources/WebsiteVerify.ts +76 -0
  67. package/lib/resources/WebsiteVisitors.ts +196 -0
  68. package/lib/resources/index.ts +25 -0
  69. package/lib/services/bucket.ts +28 -0
  70. package/lib/services/media.ts +28 -0
  71. package/lib/services/plugin.ts +32 -0
  72. package/lib/services/website.ts +62 -0
  73. package/package.json +16 -11
  74. package/tsconfig.json +12 -5
  75. package/lib/crisp.js +0 -1171
  76. package/lib/resources/BucketURL.js +0 -34
  77. package/lib/resources/MediaAnimation.js +0 -41
  78. package/lib/resources/PluginConnect.js +0 -119
  79. package/lib/resources/PluginSubscription.js +0 -234
  80. package/lib/resources/WebsiteAnalytics.js +0 -37
  81. package/lib/resources/WebsiteAvailability.js +0 -48
  82. package/lib/resources/WebsiteBase.js +0 -100
  83. package/lib/resources/WebsiteBatch.js +0 -92
  84. package/lib/resources/WebsiteCampaign.js +0 -396
  85. package/lib/resources/WebsiteConversation.js +0 -1261
  86. package/lib/resources/WebsiteHelpdesk.js +0 -1198
  87. package/lib/resources/WebsiteOperator.js +0 -167
  88. package/lib/resources/WebsitePeople.js +0 -516
  89. package/lib/resources/WebsiteSettings.js +0 -50
  90. package/lib/resources/WebsiteVerify.js +0 -79
  91. package/lib/resources/WebsiteVisitors.js +0 -148
  92. package/lib/services/Bucket.js +0 -28
  93. package/lib/services/Media.js +0 -28
  94. package/lib/services/Plugin.js +0 -29
  95. package/lib/services/Website.js +0 -39
  96. package/types/crisp.d.ts +0 -151
  97. package/types/resources/BucketURL.d.ts +0 -15
  98. package/types/resources/MediaAnimation.d.ts +0 -15
  99. package/types/resources/PluginConnect.d.ts +0 -15
  100. package/types/resources/PluginSubscription.d.ts +0 -15
  101. package/types/resources/WebsiteAnalytics.d.ts +0 -15
  102. package/types/resources/WebsiteAvailability.d.ts +0 -15
  103. package/types/resources/WebsiteBase.d.ts +0 -15
  104. package/types/resources/WebsiteBatch.d.ts +0 -15
  105. package/types/resources/WebsiteCampaign.d.ts +0 -15
  106. package/types/resources/WebsiteConversation.d.ts +0 -15
  107. package/types/resources/WebsiteHelpdesk.d.ts +0 -15
  108. package/types/resources/WebsiteOperator.d.ts +0 -15
  109. package/types/resources/WebsitePeople.d.ts +0 -15
  110. package/types/resources/WebsiteSettings.d.ts +0 -15
  111. package/types/resources/WebsiteVerify.d.ts +0 -15
  112. package/types/resources/WebsiteVisitors.d.ts +0 -15
  113. package/types/services/Bucket.d.ts +0 -14
  114. package/types/services/Media.d.ts +0 -14
  115. package/types/services/Plugin.d.ts +0 -14
  116. package/types/services/Website.d.ts +0 -14
@@ -1,1261 +0,0 @@
1
- /*
2
- * node-crisp-api
3
- *
4
- * Copyright 2022, Crisp IM SAS
5
- * Author: Baptiste Jamin <baptiste@crisp.chat>
6
- */
7
-
8
-
9
- "use strict";
10
-
11
-
12
- /**
13
- * Crisp WebsiteConversation Resource
14
- * @class
15
- * @classdesc This is the Crisp Website Conversation Resource
16
- */
17
- function WebsiteConversation(service, crisp) {
18
- /**
19
- * List Conversations
20
- * @memberof WebsiteConversation
21
- * @public
22
- * @method listConversations
23
- * @param {string} websiteID
24
- * @param {number} pageNumber
25
- * @return {Promise}
26
- */
27
- service.listConversations = function(websiteID, pageNumber) {
28
- return crisp.get(
29
- crisp._prepareRestUrl(["website", websiteID, "conversations", pageNumber])
30
- );
31
- };
32
-
33
- /**
34
- * List Suggested Conversation Segments
35
- * @memberof WebsiteConversation
36
- * @public
37
- * @method listSuggestedConversationSegments
38
- * @param {string} websiteID
39
- * @param {number} pageNumber
40
- * @return {Promise}
41
- */
42
- service.listSuggestedConversationSegments = function(websiteID, pageNumber) {
43
- return crisp.get(
44
- crisp._prepareRestUrl([
45
- "website", websiteID, "conversations", "suggest", "segments", pageNumber
46
- ])
47
- );
48
- };
49
-
50
- /**
51
- * Delete Suggested Conversation Segment
52
- * @memberof WebsiteConversation
53
- * @public
54
- * @method deleteSuggestedConversationSegment
55
- * @param {string} websiteID
56
- * @param {string} segment
57
- * @return {Promise}
58
- */
59
- service.deleteSuggestedConversationSegment = function(websiteID, segment) {
60
- return crisp.delete(
61
- crisp._prepareRestUrl([
62
- "website", websiteID, "conversations", "suggest", "segment"
63
- ]),
64
-
65
- null,
66
-
67
- {
68
- segment : segment
69
- }
70
- );
71
- };
72
-
73
- /**
74
- * List Suggested Conversation Data Keys
75
- * @memberof WebsiteConversation
76
- * @public
77
- * @method listSuggestedConversationDataKeys
78
- * @param {string} websiteID
79
- * @param {number} pageNumber
80
- * @return {Promise}
81
- */
82
- service.listSuggestedConversationDataKeys = function(websiteID, pageNumber) {
83
- return crisp.get(
84
- crisp._prepareRestUrl([
85
- "website", websiteID, "conversations", "suggest", "data", pageNumber
86
- ])
87
- );
88
- };
89
-
90
- /**
91
- * Delete Suggested Conversation Data Key
92
- * @memberof WebsiteConversation
93
- * @public
94
- * @method deleteSuggestedConversationDataKey
95
- * @param {string} websiteID
96
- * @param {string} key
97
- * @return {Promise}
98
- */
99
- service.deleteSuggestedConversationDataKey = function(websiteID, key) {
100
- return crisp.delete(
101
- crisp._prepareRestUrl([
102
- "website", websiteID, "conversations", "suggest", "data"
103
- ]),
104
-
105
- null,
106
-
107
- {
108
- key : key
109
- }
110
- );
111
- };
112
-
113
- /**
114
- * List Spam Conversations
115
- * @memberof WebsiteConversation
116
- * @public
117
- * @method listSpamConversations
118
- * @param {string} websiteID
119
- * @param {number} pageNumber
120
- * @return {Promise}
121
- */
122
- service.listSpamConversations = function(websiteID, pageNumber) {
123
- return crisp.get(
124
- crisp._prepareRestUrl([
125
- "website", websiteID, "conversations", "spams", pageNumber
126
- ])
127
- );
128
- };
129
-
130
- /**
131
- * Resolve Spam Conversation Content
132
- * @memberof WebsiteConversation
133
- * @public
134
- * @method resolveSpamConversationContent
135
- * @param {string} websiteID
136
- * @param {string} spamID
137
- * @return {Promise}
138
- */
139
- service.resolveSpamConversationContent = function(websiteID, spamID) {
140
- return crisp.get(
141
- crisp._prepareRestUrl([
142
- "website", websiteID, "conversations", "spam", spamID, "content"
143
- ])
144
- );
145
- };
146
-
147
- /**
148
- * Submit Spam Conversation Decision
149
- * @memberof WebsiteConversation
150
- * @public
151
- * @method submitSpamConversationDecision
152
- * @param {string} websiteID
153
- * @param {string} spamID
154
- * @param {string} action
155
- * @return {Promise}
156
- */
157
- service.submitSpamConversationDecision = function(websiteID, spamID, action) {
158
- return crisp.post(
159
- crisp._prepareRestUrl([
160
- "website", websiteID, "conversations", "spam", spamID, "decision"
161
- ]),
162
-
163
- null,
164
-
165
- {
166
- action : action
167
- }
168
- );
169
- };
170
-
171
- /**
172
- * Create A New Conversation
173
- * @memberof WebsiteConversation
174
- * @public
175
- * @method createNewConversation
176
- * @param {string} websiteID
177
- * @return {Promise}
178
- */
179
- service.createNewConversation = function(websiteID) {
180
- return crisp.post(
181
- crisp._prepareRestUrl(["website", websiteID, "conversation"])
182
- );
183
- };
184
-
185
- /**
186
- * Check If Conversation Exists
187
- * @memberof WebsiteConversation
188
- * @public
189
- * @method checkConversationExists
190
- * @param {string} websiteID
191
- * @param {string} sessionID
192
- * @return {Promise}
193
- */
194
- service.checkConversationExists = function(websiteID, sessionID) {
195
- return crisp.head(
196
- crisp._prepareRestUrl(["website", websiteID, "conversation", sessionID])
197
- );
198
- };
199
-
200
- /**
201
- * Get A Conversation
202
- * @memberof WebsiteConversation
203
- * @public
204
- * @method getConversation
205
- * @param {string} websiteID
206
- * @param {string} sessionID
207
- * @return {Promise}
208
- */
209
- service.getConversation = function(websiteID, sessionID) {
210
- return crisp.get(
211
- crisp._prepareRestUrl(["website", websiteID, "conversation", sessionID])
212
- );
213
- };
214
-
215
- /**
216
- * Remove A Conversation
217
- * @memberof WebsiteConversation
218
- * @public
219
- * @method removeConversation
220
- * @param {string} websiteID
221
- * @param {string} sessionID
222
- * @return {Promise}
223
- */
224
- service.removeConversation = function(websiteID, sessionID) {
225
- return crisp.delete(
226
- crisp._prepareRestUrl(["website", websiteID, "conversation", sessionID])
227
- );
228
- };
229
-
230
- /**
231
- * Initiate A Conversation With Existing Session
232
- * @memberof WebsiteConversation
233
- * @public
234
- * @method initiateConversationWithExistingSession
235
- * @param {string} websiteID
236
- * @param {string} sessionID
237
- * @return {Promise}
238
- */
239
- service.initiateConversationWithExistingSession = function(
240
- websiteID, sessionID
241
- ) {
242
- return crisp.post(
243
- crisp._prepareRestUrl([
244
- "website", websiteID, "conversation", sessionID, "initiate"
245
- ])
246
- );
247
- };
248
-
249
- /**
250
- * Get Messages In Conversation
251
- * @memberof WebsiteConversation
252
- * @public
253
- * @method getMessagesInConversation
254
- * @param {string} websiteID
255
- * @param {string} sessionID
256
- * @param {string} [timestampBefore]
257
- * @return {Promise}
258
- */
259
- service.getMessagesInConversation = function(
260
- websiteID, sessionID, timestampBefore
261
- ) {
262
- // Generate query
263
- var _query = {};
264
-
265
- if (timestampBefore) {
266
- _query.timestamp_before = timestampBefore;
267
- }
268
-
269
- return crisp.get(
270
- crisp._prepareRestUrl([
271
- "website", websiteID, "conversation", sessionID, "messages"
272
- ]),
273
-
274
- _query
275
- );
276
- };
277
-
278
- /**
279
- * Send A Message In Conversation
280
- * @memberof WebsiteConversation
281
- * @public
282
- * @method sendMessageInConversation
283
- * @param {string} websiteID
284
- * @param {string} sessionID
285
- * @param {object} message
286
- * @return {Promise}
287
- */
288
- service.sendMessageInConversation = function(websiteID, sessionID, message) {
289
- return crisp.post(
290
- crisp._prepareRestUrl([
291
- "website", websiteID, "conversation", sessionID, "message"
292
- ]),
293
-
294
- null, message
295
- );
296
- };
297
-
298
- /**
299
- * Get A Message In Conversation
300
- * @memberof WebsiteConversation
301
- * @public
302
- * @method getMessageInConversation
303
- * @param {string} websiteID
304
- * @param {string} sessionID
305
- * @param {number} fingerprint
306
- * @return {Promise}
307
- */
308
- service.getMessageInConversation = function(
309
- websiteID, sessionID, fingerprint
310
- ) {
311
- return crisp.get(
312
- crisp._prepareRestUrl([
313
- "website", websiteID, "conversation", sessionID, "message", fingerprint
314
- ])
315
- );
316
- };
317
-
318
- /**
319
- * Update A Message In Conversation
320
- * @memberof WebsiteConversation
321
- * @public
322
- * @method updateMessageInConversation
323
- * @param {string} websiteID
324
- * @param {string} sessionID
325
- * @param {number} fingerprint
326
- * @param {object} content
327
- * @return {Promise}
328
- */
329
- service.updateMessageInConversation = function(
330
- websiteID, sessionID, fingerprint, content
331
- ) {
332
- return crisp.patch(
333
- crisp._prepareRestUrl([
334
- "website", websiteID, "conversation", sessionID, "message", fingerprint
335
- ]),
336
-
337
- null,
338
-
339
- {
340
- content : content
341
- }
342
- );
343
- };
344
-
345
- /**
346
- * Remove A Message In Conversation
347
- * @memberof WebsiteConversation
348
- * @public
349
- * @method removeMessageInConversation
350
- * @param {string} websiteID
351
- * @param {string} sessionID
352
- * @param {number} fingerprint
353
- * @return {Promise}
354
- */
355
- service.removeMessageInConversation = function(
356
- websiteID, sessionID, fingerprint
357
- ) {
358
- return crisp.delete(
359
- crisp._prepareRestUrl([
360
- "website", websiteID, "conversation", sessionID, "message", fingerprint
361
- ])
362
- );
363
- };
364
-
365
- /**
366
- * Compose A Message In Conversation
367
- * @memberof WebsiteConversation
368
- * @public
369
- * @method composeMessageInConversation
370
- * @param {string} websiteID
371
- * @param {string} sessionID
372
- * @param {object} compose
373
- * @return {Promise}
374
- */
375
- service.composeMessageInConversation = function(
376
- websiteID, sessionID, compose
377
- ) {
378
- return crisp.patch(
379
- crisp._prepareRestUrl([
380
- "website", websiteID, "conversation", sessionID, "compose"
381
- ]),
382
-
383
- null, compose
384
- );
385
- };
386
-
387
- /**
388
- * Mark Messages As Read In Conversation
389
- * @memberof WebsiteConversation
390
- * @public
391
- * @method markMessagesReadInConversation
392
- * @param {string} websiteID
393
- * @param {string} sessionID
394
- * @param {object} read
395
- * @return {Promise}
396
- */
397
- service.markMessagesReadInConversation = function(
398
- websiteID, sessionID, read
399
- ) {
400
- return crisp.patch(
401
- crisp._prepareRestUrl([
402
- "website", websiteID, "conversation", sessionID, "read"
403
- ]),
404
-
405
- null, read
406
- );
407
- };
408
-
409
- /**
410
- * Mark Conversation As Unread
411
- * @memberof WebsiteConversation
412
- * @public
413
- * @method markConversationAsUnread
414
- * @param {string} websiteID
415
- * @param {string} sessionID
416
- * @param {object} unread
417
- * @return {Promise}
418
- */
419
- service.markConversationAsUnread = function(websiteID, sessionID, unread) {
420
- return crisp.patch(
421
- crisp._prepareRestUrl([
422
- "website", websiteID, "conversation", sessionID, "unread"
423
- ]),
424
-
425
- null, unread
426
- );
427
- };
428
-
429
- /**
430
- * Mark Messages As Delivered In Conversation
431
- * @memberof WebsiteConversation
432
- * @public
433
- * @method markMessagesDeliveredInConversation
434
- * @param {string} websiteID
435
- * @param {string} sessionID
436
- * @param {object} delivered
437
- * @return {Promise}
438
- */
439
- service.markMessagesDeliveredInConversation = function(
440
- websiteID, sessionID, delivered
441
- ) {
442
- return crisp.patch(
443
- crisp._prepareRestUrl([
444
- "website", websiteID, "conversation", sessionID, "delivered"
445
- ]),
446
-
447
- null, delivered
448
- );
449
- };
450
-
451
- /**
452
- * Update Conversation Open State
453
- * @memberof WebsiteConversation
454
- * @public
455
- * @method updateConversationOpenState
456
- * @param {string} websiteID
457
- * @param {string} sessionID
458
- * @param {boolean} [opened]
459
- * @return {Promise}
460
- */
461
- service.updateConversationOpenState = function(websiteID, sessionID, opened) {
462
- return crisp.patch(
463
- crisp._prepareRestUrl([
464
- "website", websiteID, "conversation", sessionID, "open"
465
- ]),
466
-
467
- null,
468
-
469
- {
470
- opened : (opened || false)
471
- }
472
- );
473
- };
474
-
475
- /**
476
- * Get Conversation Routing Assign
477
- * @memberof WebsiteConversation
478
- * @public
479
- * @method getConversationRoutingAssign
480
- * @param {string} websiteID
481
- * @param {string} sessionID
482
- * @return {Promise}
483
- */
484
- service.getConversationRoutingAssign = function(websiteID, sessionID) {
485
- return crisp.get(
486
- crisp._prepareRestUrl([
487
- "website", websiteID, "conversation", sessionID, "routing"
488
- ])
489
- );
490
- };
491
-
492
- /**
493
- * Assign Conversation Routing
494
- * @memberof WebsiteConversation
495
- * @public
496
- * @method assignConversationRouting
497
- * @param {string} websiteID
498
- * @param {string} sessionID
499
- * @param {object} assign
500
- * @return {Promise}
501
- */
502
- service.assignConversationRouting = function(websiteID, sessionID, assign) {
503
- return crisp.patch(
504
- crisp._prepareRestUrl([
505
- "website", websiteID, "conversation", sessionID, "routing"
506
- ]),
507
-
508
- null, assign
509
- );
510
- };
511
-
512
- /**
513
- * Update Conversation Inbox
514
- * @memberof WebsiteConversation
515
- * @public
516
- * @method updateConversationInbox
517
- * @param {string} websiteID
518
- * @param {string} sessionID
519
- * @param {string} inboxID
520
- * @return {Promise}
521
- */
522
- service.updateConversationInbox = function(websiteID, sessionID, inboxID) {
523
- return crisp.patch(
524
- crisp._prepareRestUrl([
525
- "website", websiteID, "conversation", sessionID, "inbox"
526
- ]),
527
-
528
- null,
529
-
530
- {
531
- inbox_id : inboxID
532
- }
533
- );
534
- };
535
-
536
- /**
537
- * Get Conversation Metas
538
- * @memberof WebsiteConversation
539
- * @public
540
- * @method getConversationMetas
541
- * @param {string} websiteID
542
- * @param {string} sessionID
543
- * @return {Promise}
544
- */
545
- service.getConversationMetas = function(websiteID, sessionID) {
546
- return crisp.get(
547
- crisp._prepareRestUrl([
548
- "website", websiteID, "conversation", sessionID, "meta"
549
- ])
550
- );
551
- };
552
-
553
- /**
554
- * Update Conversation Metas
555
- * @memberof WebsiteConversation
556
- * @public
557
- * @method updateConversationMetas
558
- * @param {string} websiteID
559
- * @param {string} sessionID
560
- * @param {object} metas
561
- * @return {Promise}
562
- */
563
- service.updateConversationMetas = function(websiteID, sessionID, metas) {
564
- return crisp.patch(
565
- crisp._prepareRestUrl([
566
- "website", websiteID, "conversation", sessionID, "meta"
567
- ]),
568
-
569
- null, metas
570
- );
571
- };
572
-
573
- /**
574
- * Get An Original Message In Conversation
575
- * @memberof WebsiteConversation
576
- * @public
577
- * @method getOriginalMessageInConversation
578
- * @param {string} websiteID
579
- * @param {string} sessionID
580
- * @param {string} originalID
581
- * @return {Promise}
582
- */
583
- service.getOriginalMessageInConversation = function(
584
- websiteID, sessionID, originalID
585
- ) {
586
- return crisp.get(
587
- crisp._prepareRestUrl([
588
- "website", websiteID, "conversation", sessionID, "original", originalID
589
- ])
590
- );
591
- };
592
-
593
- /**
594
- * List Conversation Pages
595
- * @memberof WebsiteConversation
596
- * @public
597
- * @method listConversationPages
598
- * @param {string} websiteID
599
- * @param {string} sessionID
600
- * @param {number} pageNumber
601
- * @return {Promise}
602
- */
603
- service.listConversationPages = function(websiteID, sessionID, pageNumber) {
604
- return crisp.get(
605
- crisp._prepareRestUrl([
606
- "website", websiteID, "conversation", sessionID, "pages", pageNumber
607
- ])
608
- );
609
- };
610
-
611
- /**
612
- * List Conversation Events
613
- * @memberof WebsiteConversation
614
- * @public
615
- * @method listConversationEvents
616
- * @param {string} websiteID
617
- * @param {string} sessionID
618
- * @param {number} pageNumber
619
- * @return {Promise}
620
- */
621
- service.listConversationEvents = function(websiteID, sessionID, pageNumber) {
622
- return crisp.get(
623
- crisp._prepareRestUrl([
624
- "website", websiteID, "conversation", sessionID, "events", pageNumber
625
- ])
626
- );
627
- };
628
-
629
- /**
630
- * List Conversation Files
631
- * @memberof WebsiteConversation
632
- * @public
633
- * @method listConversationFiles
634
- * @param {string} websiteID
635
- * @param {string} sessionID
636
- * @param {number} pageNumber
637
- * @return {Promise}
638
- */
639
- service.listConversationFiles = function(websiteID, sessionID, pageNumber) {
640
- return crisp.get(
641
- crisp._prepareRestUrl([
642
- "website", websiteID, "conversation", sessionID, "files", pageNumber
643
- ])
644
- );
645
- };
646
-
647
- /**
648
- * Get Conversation State
649
- * @memberof WebsiteConversation
650
- * @public
651
- * @method getConversationState
652
- * @param {string} websiteID
653
- * @param {string} sessionID
654
- * @return {Promise}
655
- */
656
- service.getConversationState = function(websiteID, sessionID) {
657
- return crisp.get(
658
- crisp._prepareRestUrl([
659
- "website", websiteID, "conversation", sessionID, "state"
660
- ])
661
- );
662
- };
663
-
664
- /**
665
- * Change Conversation State
666
- * @memberof WebsiteConversation
667
- * @public
668
- * @method changeConversationState
669
- * @param {string} websiteID
670
- * @param {string} sessionID
671
- * @param {string} state
672
- * @return {Promise}
673
- */
674
- service.changeConversationState = function(websiteID, sessionID, state) {
675
- return crisp.patch(
676
- crisp._prepareRestUrl([
677
- "website", websiteID, "conversation", sessionID, "state"
678
- ]),
679
-
680
- null,
681
-
682
- {
683
- state : state
684
- }
685
- );
686
- };
687
-
688
- /**
689
- * Get Conversation Participants
690
- * @memberof WebsiteConversation
691
- * @public
692
- * @method getConversationParticipants
693
- * @param {string} websiteID
694
- * @param {string} sessionID
695
- * @return {Promise}
696
- */
697
- service.getConversationParticipants = function(websiteID, sessionID) {
698
- return crisp.get(
699
- crisp._prepareRestUrl([
700
- "website", websiteID, "conversation", sessionID, "participants"
701
- ])
702
- );
703
- };
704
-
705
- /**
706
- * Save Conversation Participants
707
- * @memberof WebsiteConversation
708
- * @public
709
- * @method saveConversationParticipants
710
- * @param {string} websiteID
711
- * @param {string} sessionID
712
- * @param {object} participants
713
- * @return {Promise}
714
- */
715
- service.saveConversationParticipants = function(
716
- websiteID, sessionID, participants
717
- ) {
718
- return crisp.put(
719
- crisp._prepareRestUrl([
720
- "website", websiteID, "conversation", sessionID, "participants"
721
- ]),
722
-
723
- null, participants
724
- );
725
- };
726
-
727
- /**
728
- * Get Block Status For Conversation
729
- * @memberof WebsiteConversation
730
- * @public
731
- * @method getBlockStatusForConversation
732
- * @param {string} websiteID
733
- * @param {string} sessionID
734
- * @return {Promise}
735
- */
736
- service.getBlockStatusForConversation = function(websiteID, sessionID) {
737
- return crisp.get(
738
- crisp._prepareRestUrl([
739
- "website", websiteID, "conversation", sessionID, "block"
740
- ])
741
- );
742
- };
743
-
744
- /**
745
- * Block Incoming Messages For Conversation
746
- * @memberof WebsiteConversation
747
- * @public
748
- * @method blockIncomingMessagesForConversation
749
- * @param {string} websiteID
750
- * @param {string} sessionID
751
- * @param {boolean} [blocked]
752
- * @return {Promise}
753
- */
754
- service.blockIncomingMessagesForConversation = function(
755
- websiteID, sessionID, blocked
756
- ) {
757
- return crisp.patch(
758
- crisp._prepareRestUrl([
759
- "website", websiteID, "conversation", sessionID, "block"
760
- ]),
761
-
762
- null,
763
-
764
- {
765
- blocked : (blocked || false)
766
- }
767
- );
768
- };
769
-
770
- /**
771
- * Get Verify Status For Conversation
772
- * @memberof WebsiteConversation
773
- * @public
774
- * @method getVerifyStatusForConversation
775
- * @param {string} websiteID
776
- * @param {string} sessionID
777
- * @return {Promise}
778
- */
779
- service.getVerifyStatusForConversation = function(websiteID, sessionID) {
780
- return crisp.get(
781
- crisp._prepareRestUrl([
782
- "website", websiteID, "conversation", sessionID, "verify"
783
- ])
784
- );
785
- };
786
-
787
- /**
788
- * Update Verify Status For Conversation
789
- * @memberof WebsiteConversation
790
- * @public
791
- * @method updateVerifyStatusForConversation
792
- * @param {string} websiteID
793
- * @param {string} sessionID
794
- * @param {boolean} [verified]
795
- * @return {Promise}
796
- */
797
- service.updateVerifyStatusForConversation = function(
798
- websiteID, sessionID, verified
799
- ) {
800
- return crisp.patch(
801
- crisp._prepareRestUrl([
802
- "website", websiteID, "conversation", sessionID, "verify"
803
- ]),
804
-
805
- null,
806
-
807
- {
808
- verified : (verified || false)
809
- }
810
- );
811
- };
812
-
813
- /**
814
- * Request Identity Verification For Conversation
815
- * @memberof WebsiteConversation
816
- * @public
817
- * @method requestIdentityVerificationForConversation
818
- * @param {string} websiteID
819
- * @param {string} sessionID
820
- * @param {object} verification
821
- * @return {Promise}
822
- */
823
- service.requestIdentityVerificationForConversation = function(
824
- websiteID, sessionID, verification
825
- ) {
826
- return crisp.post(
827
- crisp._prepareRestUrl([
828
- "website", websiteID, "conversation", sessionID, "verify", "identity"
829
- ]),
830
-
831
- null, verification
832
- );
833
- };
834
-
835
- /**
836
- * Redeem Identity Verification Link For Conversation
837
- * @memberof WebsiteConversation
838
- * @public
839
- * @method redeemIdentityVerificationLinkForConversation
840
- * @param {string} websiteID
841
- * @param {string} sessionID
842
- * @param {object} verification
843
- * @return {Promise}
844
- */
845
- service.redeemIdentityVerificationLinkForConversation = function(
846
- websiteID, sessionID, verification
847
- ) {
848
- return crisp.put(
849
- crisp._prepareRestUrl([
850
- "website", websiteID, "conversation", sessionID, "verify", "identity",
851
- "link"
852
- ]),
853
-
854
- null, verification
855
- );
856
- };
857
-
858
- /**
859
- * Request Email Transcript For Conversation
860
- * @memberof WebsiteConversation
861
- * @public
862
- * @method requestEmailTranscriptForConversation
863
- * @param {string} websiteID
864
- * @param {string} sessionID
865
- * @param {string} to
866
- * @param {string} [email]
867
- * @return {Promise}
868
- */
869
- service.requestEmailTranscriptForConversation = function(
870
- websiteID, sessionID, to, email
871
- ) {
872
- // Generate body
873
- var _body = {
874
- to : to
875
- };
876
-
877
- if (email) {
878
- _body.email = email;
879
- }
880
-
881
- return crisp.post(
882
- crisp._prepareRestUrl([
883
- "website", websiteID, "conversation", sessionID, "transcript"
884
- ]),
885
-
886
- null, _body
887
- );
888
- };
889
-
890
- /**
891
- * Request Chatbox Binding Purge For Conversation
892
- * @memberof WebsiteConversation
893
- * @public
894
- * @method requestChatboxBindingPurgeForConversation
895
- * @param {string} websiteID
896
- * @param {string} sessionID
897
- * @return {Promise}
898
- */
899
- service.requestChatboxBindingPurgeForConversation = function(
900
- websiteID, sessionID
901
- ) {
902
- return crisp.post(
903
- crisp._prepareRestUrl([
904
- "website", websiteID, "conversation", sessionID, "purge"
905
- ])
906
- );
907
- };
908
-
909
- /**
910
- * Request User Feedback For Conversation
911
- * @memberof WebsiteConversation
912
- * @public
913
- * @method requestUserFeedbackForConversation
914
- * @param {string} websiteID
915
- * @param {string} sessionID
916
- * @return {Promise}
917
- */
918
- service.requestUserFeedbackForConversation = function(
919
- websiteID, sessionID
920
- ) {
921
- return crisp.post(
922
- crisp._prepareRestUrl([
923
- "website", websiteID, "conversation", sessionID, "feedback"
924
- ])
925
- );
926
- };
927
-
928
- /**
929
- * List Browsing Sessions For Conversation
930
- * @memberof WebsiteConversation
931
- * @public
932
- * @method listBrowsingSessionsForConversation
933
- * @param {string} websiteID
934
- * @param {string} sessionID
935
- * @return {Promise}
936
- */
937
- service.listBrowsingSessionsForConversation = function(websiteID, sessionID) {
938
- return crisp.get(
939
- crisp._prepareRestUrl([
940
- "website", websiteID, "conversation", sessionID, "browsing"
941
- ])
942
- );
943
- };
944
-
945
- /**
946
- * Initiate Browsing Session For Conversation
947
- * @memberof WebsiteConversation
948
- * @public
949
- * @method initiateBrowsingSessionForConversation
950
- * @param {string} websiteID
951
- * @param {string} sessionID
952
- * @return {Promise}
953
- */
954
- service.initiateBrowsingSessionForConversation = function(
955
- websiteID, sessionID
956
- ) {
957
- return crisp.post(
958
- crisp._prepareRestUrl([
959
- "website", websiteID, "conversation", sessionID, "browsing"
960
- ])
961
- );
962
- };
963
-
964
- /**
965
- * Send Action To An Existing Browsing Session
966
- * @memberof WebsiteConversation
967
- * @public
968
- * @method sendActionToExistingBrowsingSession
969
- * @param {string} websiteID
970
- * @param {string} sessionID
971
- * @param {object} browsingID
972
- * @param {string} action
973
- * @return {Promise}
974
- */
975
- service.sendActionToExistingBrowsingSession = function(
976
- websiteID, sessionID, browsingID, action
977
- ) {
978
- return crisp.patch(
979
- crisp._prepareRestUrl([
980
- "website", websiteID, "conversation", sessionID, "browsing", browsingID
981
- ]),
982
-
983
- null,
984
-
985
- {
986
- action : action
987
- }
988
- );
989
- };
990
-
991
- /**
992
- * Assist Existing Browsing Session
993
- * @memberof WebsiteConversation
994
- * @public
995
- * @method assistExistingBrowsingSession
996
- * @param {string} websiteID
997
- * @param {string} sessionID
998
- * @param {object} browsingID
999
- * @param {object} assist
1000
- * @return {Promise}
1001
- */
1002
- service.assistExistingBrowsingSession = function(
1003
- websiteID, sessionID, browsingID, assist
1004
- ) {
1005
- return crisp.patch(
1006
- crisp._prepareRestUrl([
1007
- "website", websiteID, "conversation", sessionID, "browsing", browsingID,
1008
- "assist"
1009
- ]),
1010
-
1011
- null, assist
1012
- );
1013
- };
1014
-
1015
- /**
1016
- * Initiate New Call Session For Conversation
1017
- * @memberof WebsiteConversation
1018
- * @public
1019
- * @method initiateNewCallSessionForConversation
1020
- * @param {string} websiteID
1021
- * @param {string} sessionID
1022
- * @param {string} mode
1023
- * @return {Promise}
1024
- */
1025
- service.initiateNewCallSessionForConversation = function(
1026
- websiteID, sessionID, mode
1027
- ) {
1028
- return crisp.post(
1029
- crisp._prepareRestUrl([
1030
- "website", websiteID, "conversation", sessionID, "call"
1031
- ]),
1032
-
1033
- null,
1034
-
1035
- {
1036
- mode : (mode || "audio")
1037
- }
1038
- );
1039
- };
1040
-
1041
- /**
1042
- * Get Ongoing Call Session For Conversation
1043
- * @memberof WebsiteConversation
1044
- * @public
1045
- * @method getOngoingCallSessionForConversation
1046
- * @param {string} websiteID
1047
- * @param {string} sessionID
1048
- * @return {Promise}
1049
- */
1050
- service.getOngoingCallSessionForConversation = function(
1051
- websiteID, sessionID
1052
- ) {
1053
- return crisp.get(
1054
- crisp._prepareRestUrl([
1055
- "website", websiteID, "conversation", sessionID, "call"
1056
- ])
1057
- );
1058
- };
1059
-
1060
- /**
1061
- * Abort Ongoing Call Session For Conversation
1062
- * @memberof WebsiteConversation
1063
- * @public
1064
- * @method abortOngoingCallSessionForConversation
1065
- * @param {string} websiteID
1066
- * @param {string} sessionID
1067
- * @param {string} callID
1068
- * @return {Promise}
1069
- */
1070
- service.abortOngoingCallSessionForConversation = function(
1071
- websiteID, sessionID, callID
1072
- ) {
1073
- return crisp.delete(
1074
- crisp._prepareRestUrl([
1075
- "website", websiteID, "conversation", sessionID, "call", callID
1076
- ])
1077
- );
1078
- };
1079
-
1080
- /**
1081
- * Transmit Signaling On Ongoing Call Session
1082
- * @memberof WebsiteConversation
1083
- * @public
1084
- * @method transmitSignalingOnOngoingCallSession
1085
- * @param {string} websiteID
1086
- * @param {string} sessionID
1087
- * @param {string} callID
1088
- * @param {object} payload
1089
- * @return {Promise}
1090
- */
1091
- service.transmitSignalingOnOngoingCallSession = function(
1092
- websiteID, sessionID, callID, payload
1093
- ) {
1094
- return crisp.patch(
1095
- crisp._prepareRestUrl([
1096
- "website", websiteID, "conversation", sessionID, "call", callID
1097
- ]),
1098
-
1099
- null, payload
1100
- );
1101
- };
1102
-
1103
- /**
1104
- * Deliver Widget Button Action For Conversation
1105
- * @memberof WebsiteConversation
1106
- * @public
1107
- * @method deliverWidgetButtonActionForConversation
1108
- * @param {string} websiteID
1109
- * @param {string} sessionID
1110
- * @param {string} pluginID
1111
- * @param {string} sectionID
1112
- * @param {string} itemID
1113
- * @param {object} data
1114
- * @param {object} value
1115
- * @return {Promise}
1116
- */
1117
- service.deliverWidgetButtonActionForConversation = function(
1118
- websiteID, sessionID, pluginID, sectionID, itemID, data, value
1119
- ) {
1120
- // Generate body
1121
- var _body = {
1122
- section_id : sectionID,
1123
- item_id : itemID,
1124
- data : data
1125
- };
1126
-
1127
- if (typeof value !== "undefined") {
1128
- _body.value = value;
1129
- }
1130
-
1131
- return crisp.post(
1132
- crisp._prepareRestUrl([
1133
- "website", websiteID, "conversation", sessionID, "widget", pluginID,
1134
- "button"
1135
- ]),
1136
-
1137
- null, _body
1138
- );
1139
- };
1140
-
1141
- /**
1142
- * Deliver Widget Data Fetch Action For Conversation
1143
- * @memberof WebsiteConversation
1144
- * @public
1145
- * @method deliverWidgetDataFetchActionForConversation
1146
- * @param {string} websiteID
1147
- * @param {string} sessionID
1148
- * @param {string} pluginID
1149
- * @param {string} sectionID
1150
- * @param {string} itemID
1151
- * @param {object} data
1152
- * @return {Promise}
1153
- */
1154
- service.deliverWidgetDataFetchActionForConversation = function(
1155
- websiteID, sessionID, pluginID, sectionID, itemID, data
1156
- ) {
1157
- return crisp.post(
1158
- crisp._prepareRestUrl([
1159
- "website", websiteID, "conversation", sessionID, "widget", pluginID,
1160
- "data"
1161
- ]),
1162
-
1163
- null,
1164
-
1165
- {
1166
- section_id : sectionID,
1167
- item_id : itemID,
1168
- data : data
1169
- }
1170
- );
1171
- };
1172
-
1173
- /**
1174
- * Deliver Widget Data Edit Action For Conversation
1175
- * @memberof WebsiteConversation
1176
- * @public
1177
- * @method deliverWidgetDataEditActionForConversation
1178
- * @param {string} websiteID
1179
- * @param {string} sessionID
1180
- * @param {string} pluginID
1181
- * @param {string} sectionID
1182
- * @param {string} itemID
1183
- * @param {string} value
1184
- * @return {Promise}
1185
- */
1186
- service.deliverWidgetDataEditActionForConversation = function(
1187
- websiteID, sessionID, pluginID, sectionID, itemID, value
1188
- ) {
1189
- return crisp.post(
1190
- crisp._prepareRestUrl([
1191
- "website", websiteID, "conversation", sessionID, "widget", pluginID,
1192
- "data"
1193
- ]),
1194
-
1195
- null,
1196
-
1197
- {
1198
- section_id : sectionID,
1199
- item_id : itemID,
1200
- value : value
1201
- }
1202
- );
1203
- };
1204
-
1205
- /**
1206
- * Schedule A Reminder For Conversation
1207
- * @memberof WebsiteConversation
1208
- * @public
1209
- * @method scheduleReminderForConversation
1210
- * @param {string} websiteID
1211
- * @param {string} sessionID
1212
- * @param {string} date
1213
- * @param {string} note
1214
- * @return {Promise}
1215
- */
1216
- service.scheduleReminderForConversation = function(
1217
- websiteID, sessionID, date, note
1218
- ) {
1219
- return crisp.post(
1220
- crisp._prepareRestUrl([
1221
- "website", websiteID, "conversation", sessionID, "reminder"
1222
- ]),
1223
-
1224
- null,
1225
-
1226
- {
1227
- date : date,
1228
- note : note
1229
- }
1230
- );
1231
- };
1232
-
1233
- /**
1234
- * Report Conversation
1235
- * @memberof WebsiteConversation
1236
- * @public
1237
- * @method reportConversation
1238
- * @param {string} websiteID
1239
- * @param {string} sessionID
1240
- * @param {string} flag
1241
- * @return {Promise}
1242
- */
1243
- service.reportConversation = function(
1244
- websiteID, sessionID, flag
1245
- ) {
1246
- return crisp.post(
1247
- crisp._prepareRestUrl([
1248
- "website", websiteID, "conversation", sessionID, "report"
1249
- ]),
1250
-
1251
- null,
1252
-
1253
- {
1254
- flag : flag
1255
- }
1256
- );
1257
- };
1258
- }
1259
-
1260
-
1261
- module.exports = WebsiteConversation;