@whitewall/blip-sdk 0.0.19 → 0.0.21

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 (181) hide show
  1. package/dist/cjs/client.js +36 -0
  2. package/dist/cjs/client.js.map +1 -0
  3. package/dist/cjs/index.js +24 -0
  4. package/dist/cjs/index.js.map +1 -0
  5. package/dist/cjs/namespaces/account.js +217 -0
  6. package/dist/cjs/namespaces/account.js.map +1 -0
  7. package/dist/cjs/namespaces/analytics.js +27 -0
  8. package/dist/cjs/namespaces/analytics.js.map +1 -0
  9. package/dist/cjs/namespaces/builder.js +27 -0
  10. package/dist/cjs/namespaces/builder.js.map +1 -0
  11. package/dist/cjs/namespaces/desk.js +198 -0
  12. package/dist/cjs/namespaces/desk.js.map +1 -0
  13. package/dist/cjs/namespaces/media.js +18 -0
  14. package/dist/cjs/namespaces/media.js.map +1 -0
  15. package/dist/cjs/namespaces/namespace.js +64 -0
  16. package/dist/cjs/namespaces/namespace.js.map +1 -0
  17. package/dist/cjs/namespaces/scheduler.js +41 -0
  18. package/dist/cjs/namespaces/scheduler.js.map +1 -0
  19. package/dist/cjs/namespaces/whatsapp.js +114 -0
  20. package/dist/cjs/namespaces/whatsapp.js.map +1 -0
  21. package/dist/cjs/sender/bliperror.js +14 -0
  22. package/dist/cjs/sender/bliperror.js.map +1 -0
  23. package/dist/cjs/sender/httpsender.js +56 -0
  24. package/dist/cjs/sender/httpsender.js.map +1 -0
  25. package/dist/cjs/sender/sender.js +3 -0
  26. package/dist/{sender → cjs/sender}/sender.js.map +1 -1
  27. package/dist/cjs/types/account.js +3 -0
  28. package/dist/{types → cjs/types}/account.js.map +1 -1
  29. package/dist/cjs/types/command.js +3 -0
  30. package/dist/{types → cjs/types}/command.js.map +1 -1
  31. package/dist/cjs/types/desk.js +14 -0
  32. package/dist/cjs/types/desk.js.map +1 -0
  33. package/dist/cjs/types/envelope.js +3 -0
  34. package/dist/{types → cjs/types}/envelope.js.map +1 -1
  35. package/dist/cjs/types/index.js +23 -0
  36. package/dist/cjs/types/index.js.map +1 -0
  37. package/dist/cjs/types/message.js +13 -0
  38. package/dist/cjs/types/message.js.map +1 -0
  39. package/dist/cjs/types/node.js +65 -0
  40. package/dist/cjs/types/node.js.map +1 -0
  41. package/dist/cjs/utils/odata.js +85 -0
  42. package/dist/cjs/utils/odata.js.map +1 -0
  43. package/dist/cjs/utils/random.js +8 -0
  44. package/dist/cjs/utils/random.js.map +1 -0
  45. package/dist/cjs/utils/uri.js +45 -0
  46. package/dist/cjs/utils/uri.js.map +1 -0
  47. package/dist/esm/client.js +32 -0
  48. package/dist/esm/client.js.map +1 -0
  49. package/dist/{index.d.ts → esm/index.js} +1 -0
  50. package/dist/esm/index.js.map +1 -0
  51. package/dist/esm/namespaces/account.js +213 -0
  52. package/dist/esm/namespaces/account.js.map +1 -0
  53. package/dist/esm/namespaces/analytics.js +23 -0
  54. package/dist/esm/namespaces/analytics.js.map +1 -0
  55. package/dist/esm/namespaces/builder.js +23 -0
  56. package/dist/esm/namespaces/builder.js.map +1 -0
  57. package/dist/esm/namespaces/desk.js +194 -0
  58. package/dist/esm/namespaces/desk.js.map +1 -0
  59. package/dist/esm/namespaces/media.js +14 -0
  60. package/dist/esm/namespaces/media.js.map +1 -0
  61. package/dist/esm/namespaces/namespace.js +60 -0
  62. package/dist/esm/namespaces/namespace.js.map +1 -0
  63. package/dist/esm/namespaces/scheduler.js +37 -0
  64. package/dist/esm/namespaces/scheduler.js.map +1 -0
  65. package/dist/esm/namespaces/whatsapp.js +110 -0
  66. package/dist/esm/namespaces/whatsapp.js.map +1 -0
  67. package/dist/esm/sender/bliperror.js +10 -0
  68. package/dist/esm/sender/bliperror.js.map +1 -0
  69. package/dist/esm/sender/httpsender.js +52 -0
  70. package/dist/esm/sender/httpsender.js.map +1 -0
  71. package/dist/esm/sender/sender.js +2 -0
  72. package/dist/esm/sender/sender.js.map +1 -0
  73. package/dist/esm/types/account.js +2 -0
  74. package/dist/esm/types/account.js.map +1 -0
  75. package/dist/esm/types/command.js +2 -0
  76. package/dist/esm/types/command.js.map +1 -0
  77. package/dist/esm/types/desk.js +11 -0
  78. package/dist/esm/types/desk.js.map +1 -0
  79. package/dist/esm/types/envelope.js +2 -0
  80. package/dist/esm/types/envelope.js.map +1 -0
  81. package/dist/esm/types/index.js +7 -0
  82. package/dist/esm/types/index.js.map +1 -0
  83. package/dist/esm/types/message.js +7 -0
  84. package/dist/esm/types/message.js.map +1 -0
  85. package/dist/esm/types/node.js +61 -0
  86. package/dist/esm/types/node.js.map +1 -0
  87. package/dist/esm/utils/odata.js +80 -0
  88. package/dist/esm/utils/odata.js.map +1 -0
  89. package/dist/esm/utils/random.js +4 -0
  90. package/dist/esm/utils/random.js.map +1 -0
  91. package/dist/esm/utils/uri.js +40 -0
  92. package/dist/esm/utils/uri.js.map +1 -0
  93. package/dist/{client.d.ts → types/client.d.ts} +1 -0
  94. package/dist/types/client.d.ts.map +1 -0
  95. package/dist/types/index.d.ts +8 -6
  96. package/dist/types/index.d.ts.map +1 -0
  97. package/dist/{namespaces → types/namespaces}/account.d.ts +1 -0
  98. package/dist/types/namespaces/account.d.ts.map +1 -0
  99. package/dist/{namespaces → types/namespaces}/analytics.d.ts +1 -0
  100. package/dist/types/namespaces/analytics.d.ts.map +1 -0
  101. package/dist/{namespaces → types/namespaces}/builder.d.ts +1 -0
  102. package/dist/types/namespaces/builder.d.ts.map +1 -0
  103. package/dist/{namespaces → types/namespaces}/desk.d.ts +12 -2
  104. package/dist/types/namespaces/desk.d.ts.map +1 -0
  105. package/dist/{namespaces → types/namespaces}/media.d.ts +1 -0
  106. package/dist/types/namespaces/media.d.ts.map +1 -0
  107. package/dist/{namespaces → types/namespaces}/namespace.d.ts +4 -2
  108. package/dist/types/namespaces/namespace.d.ts.map +1 -0
  109. package/dist/{namespaces → types/namespaces}/scheduler.d.ts +1 -0
  110. package/dist/types/namespaces/scheduler.d.ts.map +1 -0
  111. package/dist/{namespaces → types/namespaces}/whatsapp.d.ts +1 -0
  112. package/dist/types/namespaces/whatsapp.d.ts.map +1 -0
  113. package/dist/{sender → types/sender}/bliperror.d.ts +1 -0
  114. package/dist/types/sender/bliperror.d.ts.map +1 -0
  115. package/dist/{sender → types/sender}/httpsender.d.ts +1 -0
  116. package/dist/types/sender/httpsender.d.ts.map +1 -0
  117. package/dist/{sender → types/sender}/sender.d.ts +1 -0
  118. package/dist/types/sender/sender.d.ts.map +1 -0
  119. package/dist/types/{account.d.ts → types/account.d.ts} +1 -0
  120. package/dist/types/types/account.d.ts.map +1 -0
  121. package/dist/types/{command.d.ts → types/command.d.ts} +1 -0
  122. package/dist/types/types/command.d.ts.map +1 -0
  123. package/dist/types/{desk.d.ts → types/desk.d.ts} +1 -0
  124. package/dist/types/types/desk.d.ts.map +1 -0
  125. package/dist/types/{envelope.d.ts → types/envelope.d.ts} +1 -0
  126. package/dist/types/types/envelope.d.ts.map +1 -0
  127. package/dist/types/types/index.d.ts +7 -0
  128. package/dist/types/types/index.d.ts.map +1 -0
  129. package/dist/types/{message.d.ts → types/message.d.ts} +1 -0
  130. package/dist/types/types/message.d.ts.map +1 -0
  131. package/dist/types/{node.d.ts → types/node.d.ts} +2 -0
  132. package/dist/types/types/node.d.ts.map +1 -0
  133. package/dist/{utils → types/utils}/odata.d.ts +1 -0
  134. package/dist/types/utils/odata.d.ts.map +1 -0
  135. package/dist/{utils → types/utils}/random.d.ts +1 -0
  136. package/dist/types/utils/random.d.ts.map +1 -0
  137. package/dist/{utils → types/utils}/uri.d.ts +1 -0
  138. package/dist/types/utils/uri.d.ts.map +1 -0
  139. package/package.json +13 -7
  140. package/dist/client.js +0 -46
  141. package/dist/client.js.map +0 -1
  142. package/dist/index.js +0 -34
  143. package/dist/index.js.map +0 -1
  144. package/dist/namespaces/account.js +0 -227
  145. package/dist/namespaces/account.js.map +0 -1
  146. package/dist/namespaces/analytics.js +0 -37
  147. package/dist/namespaces/analytics.js.map +0 -1
  148. package/dist/namespaces/builder.js +0 -37
  149. package/dist/namespaces/builder.js.map +0 -1
  150. package/dist/namespaces/desk.js +0 -184
  151. package/dist/namespaces/desk.js.map +0 -1
  152. package/dist/namespaces/media.js +0 -28
  153. package/dist/namespaces/media.js.map +0 -1
  154. package/dist/namespaces/namespace.js +0 -72
  155. package/dist/namespaces/namespace.js.map +0 -1
  156. package/dist/namespaces/scheduler.js +0 -51
  157. package/dist/namespaces/scheduler.js.map +0 -1
  158. package/dist/namespaces/whatsapp.js +0 -124
  159. package/dist/namespaces/whatsapp.js.map +0 -1
  160. package/dist/sender/bliperror.js +0 -24
  161. package/dist/sender/bliperror.js.map +0 -1
  162. package/dist/sender/httpsender.js +0 -66
  163. package/dist/sender/httpsender.js.map +0 -1
  164. package/dist/sender/sender.js +0 -13
  165. package/dist/types/account.js +0 -13
  166. package/dist/types/command.js +0 -13
  167. package/dist/types/desk.js +0 -24
  168. package/dist/types/desk.js.map +0 -1
  169. package/dist/types/envelope.js +0 -13
  170. package/dist/types/index.js +0 -33
  171. package/dist/types/index.js.map +0 -1
  172. package/dist/types/message.js +0 -23
  173. package/dist/types/message.js.map +0 -1
  174. package/dist/types/node.js +0 -43
  175. package/dist/types/node.js.map +0 -1
  176. package/dist/utils/odata.js +0 -95
  177. package/dist/utils/odata.js.map +0 -1
  178. package/dist/utils/random.js +0 -18
  179. package/dist/utils/random.js.map +0 -1
  180. package/dist/utils/uri.js +0 -55
  181. package/dist/utils/uri.js.map +0 -1
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BlipClient = void 0;
4
+ const account_js_1 = require("./namespaces/account.js");
5
+ const analytics_js_1 = require("./namespaces/analytics.js");
6
+ const builder_js_1 = require("./namespaces/builder.js");
7
+ const desk_js_1 = require("./namespaces/desk.js");
8
+ const media_js_1 = require("./namespaces/media.js");
9
+ const scheduler_js_1 = require("./namespaces/scheduler.js");
10
+ const whatsapp_js_1 = require("./namespaces/whatsapp.js");
11
+ const httpsender_js_1 = require("./sender/httpsender.js");
12
+ class BlipClient {
13
+ sender;
14
+ constructor(sender) {
15
+ this.sender = sender;
16
+ this.account = new account_js_1.AccountNamespace(sender);
17
+ this.builder = new builder_js_1.BuilderNamespace(sender);
18
+ this.desk = new desk_js_1.DeskNamespace(sender);
19
+ this.media = new media_js_1.MediaNamespace(sender);
20
+ this.whatsapp = new whatsapp_js_1.WhatsAppNamespace(sender);
21
+ this.scheduler = new scheduler_js_1.SchedulerNamespace(sender);
22
+ this.analytics = new analytics_js_1.AnalyticsNamespace(sender);
23
+ }
24
+ account;
25
+ builder;
26
+ desk;
27
+ media;
28
+ whatsapp;
29
+ scheduler;
30
+ analytics;
31
+ static http(botIdentityOrIdentifier, accessKey, tenantId) {
32
+ return new BlipClient(httpsender_js_1.HttpSender.login(botIdentityOrIdentifier, accessKey, tenantId));
33
+ }
34
+ }
35
+ exports.BlipClient = BlipClient;
36
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAC1D,4DAA8D;AAC9D,wDAA0D;AAC1D,kDAAoD;AACpD,oDAAsD;AACtD,4DAA8D;AAC9D,0DAA4D;AAC5D,0DAAmD;AAInD,MAAa,UAAU;IACS;IAA5B,YAA4B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,6BAAgB,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,CAAC,OAAO,GAAG,IAAI,6BAAgB,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,uBAAa,CAAC,MAAM,CAAC,CAAA;QACrC,IAAI,CAAC,KAAK,GAAG,IAAI,yBAAc,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,+BAAiB,CAAC,MAAM,CAAC,CAAA;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,iCAAkB,CAAC,MAAM,CAAC,CAAA;QAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,iCAAkB,CAAC,MAAM,CAAC,CAAA;IACnD,CAAC;IAEe,OAAO,CAAmB;IAC1B,OAAO,CAAmB;IAC1B,IAAI,CAAgB;IACpB,KAAK,CAAiB;IACtB,QAAQ,CAAoB;IAC5B,SAAS,CAAqB;IAC9B,SAAS,CAAqB;IAEvC,MAAM,CAAC,IAAI,CAAC,uBAA0C,EAAE,SAAiB,EAAE,QAAgB;QAC9F,OAAO,IAAI,UAAU,CAAC,0BAAU,CAAC,KAAK,CAAC,uBAAuB,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;IACzF,CAAC;CACJ;AAtBD,gCAsBC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./client.js"), exports);
18
+ __exportStar(require("./utils/uri.js"), exports);
19
+ __exportStar(require("./utils/odata.js"), exports);
20
+ __exportStar(require("./types/index.js"), exports);
21
+ __exportStar(require("./sender/sender.js"), exports);
22
+ __exportStar(require("./sender/bliperror.js"), exports);
23
+ __exportStar(require("./sender/httpsender.js"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,iDAA8B;AAC9B,mDAAgC;AAChC,mDAAgC;AAChC,qDAAkC;AAClC,wDAAqC;AACrC,yDAAsC"}
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AccountNamespace = void 0;
4
+ const bliperror_js_1 = require("../sender/bliperror.js");
5
+ const uri_js_1 = require("../utils/uri.js");
6
+ const namespace_js_1 = require("./namespace.js");
7
+ class AccountNamespace extends namespace_js_1.Namespace {
8
+ constructor(sender) {
9
+ super(sender, '');
10
+ }
11
+ async getAccount(opts) {
12
+ return this.sendCommand({
13
+ method: 'get',
14
+ uri: (0, uri_js_1.uri) `/account`,
15
+ }, opts);
16
+ }
17
+ async getContexts(contact, opts) {
18
+ return this.sendCommand({
19
+ method: 'get',
20
+ uri: (0, uri_js_1.uri) `/contexts/${contact}`,
21
+ }, {
22
+ collection: true,
23
+ ...opts,
24
+ });
25
+ }
26
+ async getContextsWithValues(contact, opts) {
27
+ return this.sendCommand({
28
+ method: 'get',
29
+ uri: (0, uri_js_1.uri) `/contexts/${contact}?withContextValues=true`,
30
+ }, {
31
+ collection: true,
32
+ ...opts,
33
+ });
34
+ }
35
+ async getContext(contact, key, opts) {
36
+ try {
37
+ return await this.sendCommand({
38
+ method: 'get',
39
+ uri: (0, uri_js_1.uri) `/contexts/${contact}/${key}`,
40
+ }, opts);
41
+ }
42
+ catch (err) {
43
+ if (err instanceof bliperror_js_1.BlipError && err.code === 67) {
44
+ return undefined;
45
+ }
46
+ throw err;
47
+ }
48
+ }
49
+ async setContext(contact, key, value, ttlSeconds, opts) {
50
+ return this.sendCommand({
51
+ method: 'set',
52
+ uri: (0, uri_js_1.uri) `/contexts/${contact}/${key}?${{
53
+ expiration: ttlSeconds ? ttlSeconds * 1000 : undefined,
54
+ }}`,
55
+ type: 'text/plain',
56
+ resource: value,
57
+ }, opts);
58
+ }
59
+ async deleteContext(contact, key, opts) {
60
+ return this.sendCommand({
61
+ method: 'delete',
62
+ uri: (0, uri_js_1.uri) `/contexts/${contact}/${key}`,
63
+ }, opts);
64
+ }
65
+ async getContacts(filter, opts) {
66
+ return this.sendCommand({
67
+ method: 'get',
68
+ uri: (0, uri_js_1.uri) `/contacts?${{ $filter: filter?.toString() }}`,
69
+ }, {
70
+ collection: true,
71
+ ...opts,
72
+ });
73
+ }
74
+ async getContact(contact, opts) {
75
+ return this.sendCommand({
76
+ method: 'get',
77
+ uri: (0, uri_js_1.uri) `/contacts/${contact}`,
78
+ }, opts);
79
+ }
80
+ async setContact(contact, opts) {
81
+ return this.sendCommand({
82
+ method: 'set',
83
+ uri: (0, uri_js_1.uri) `/contacts`,
84
+ type: 'application/vnd.lime.contact+json',
85
+ resource: contact,
86
+ }, opts);
87
+ }
88
+ async mergeContact(contact, opts) {
89
+ return this.sendCommand({
90
+ method: 'merge',
91
+ uri: (0, uri_js_1.uri) `/contacts`,
92
+ type: 'application/vnd.lime.contact+json',
93
+ resource: contact,
94
+ }, opts);
95
+ }
96
+ async deleteContact(contact, opts) {
97
+ return this.sendCommand({
98
+ method: 'delete',
99
+ uri: (0, uri_js_1.uri) `/contacts/${contact}`,
100
+ }, opts);
101
+ }
102
+ async getBuckets(opts) {
103
+ return this.sendCommand({
104
+ method: 'get',
105
+ uri: (0, uri_js_1.uri) `/buckets`,
106
+ }, {
107
+ collection: true,
108
+ ...opts,
109
+ });
110
+ }
111
+ async getBucket(key, opts) {
112
+ try {
113
+ return await this.sendCommand({
114
+ method: 'get',
115
+ uri: (0, uri_js_1.uri) `/buckets/${key}`,
116
+ }, opts);
117
+ }
118
+ catch (err) {
119
+ if (err instanceof bliperror_js_1.BlipError && err.code === 67) {
120
+ return undefined;
121
+ }
122
+ throw err;
123
+ }
124
+ }
125
+ async setBucket(key, value, ttlSeconds, opts) {
126
+ return this.sendCommand({
127
+ method: 'set',
128
+ uri: (0, uri_js_1.uri) `/buckets/${key}?${{
129
+ expiration: ttlSeconds ? ttlSeconds * 1000 : undefined,
130
+ }}`,
131
+ type: typeof value === 'string' ? 'text/plain' : 'application/json',
132
+ resource: value,
133
+ }, opts);
134
+ }
135
+ async deleteBucket(key, opts) {
136
+ return this.sendCommand({
137
+ method: 'delete',
138
+ uri: (0, uri_js_1.uri) `/buckets/${key}`,
139
+ }, opts);
140
+ }
141
+ async getCallerConfigurations(opts) {
142
+ return this.sendCommand({
143
+ method: 'get',
144
+ uri: (0, uri_js_1.uri) `/configuration/caller`,
145
+ }, {
146
+ collection: true,
147
+ ...opts,
148
+ });
149
+ }
150
+ async getConfigurations(opts) {
151
+ return this.sendCommand({
152
+ method: 'get',
153
+ uri: (0, uri_js_1.uri) `/configuration`,
154
+ }, opts);
155
+ }
156
+ async setConfigurations(caller, configuration, opts) {
157
+ return this.sendCommand({
158
+ method: 'set',
159
+ type: 'application/json',
160
+ uri: (0, uri_js_1.uri) `/configuration?${{ caller }}`,
161
+ resource: configuration,
162
+ }, opts);
163
+ }
164
+ async getThread(contact, query, opts) {
165
+ let thread = [];
166
+ let lastMessage = query?.messageId;
167
+ let hasMore = true;
168
+ do {
169
+ const take = Math.min(opts?.take ?? 100, opts?.max ? opts.max - thread.length : Infinity);
170
+ const threadItems = await this.sendCommand({
171
+ method: 'get',
172
+ uri: (0, uri_js_1.uri) `/threads/${contact}?${{
173
+ ...query,
174
+ messageId: lastMessage,
175
+ direction: 'desc',
176
+ }}`,
177
+ }, {
178
+ collection: true,
179
+ ...opts,
180
+ take,
181
+ fetchall: false,
182
+ });
183
+ thread = [...thread, ...threadItems];
184
+ hasMore = threadItems.length === take;
185
+ lastMessage = threadItems[threadItems.length - 1]?.id;
186
+ } while (hasMore && opts?.fetchall && (!opts?.max || thread.length < opts.max));
187
+ return thread;
188
+ }
189
+ async getMergedThreads(contact, query, opts) {
190
+ let thread = [];
191
+ let lastMessage = query?.messageId;
192
+ let hasMore = true;
193
+ do {
194
+ const take = Math.min(opts?.take ?? 100, opts?.max ? opts.max - thread.length : Infinity);
195
+ const threadItems = await this.sendCommand({
196
+ method: 'get',
197
+ uri: (0, uri_js_1.uri) `/threads-merged/${contact}?${{
198
+ ...query,
199
+ messageId: lastMessage,
200
+ getFromOriginator: true,
201
+ direction: 'desc',
202
+ }}`,
203
+ }, {
204
+ collection: true,
205
+ ...opts,
206
+ take,
207
+ fetchall: false,
208
+ });
209
+ thread = [...thread, ...threadItems];
210
+ hasMore = threadItems.length === take;
211
+ lastMessage = threadItems[threadItems.length - 1]?.id;
212
+ } while (hasMore && opts?.fetchall && (!opts?.max || thread.length < opts.max));
213
+ return thread;
214
+ }
215
+ }
216
+ exports.AccountNamespace = AccountNamespace;
217
+ //# sourceMappingURL=account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../../src/namespaces/account.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AnalyticsNamespace = void 0;
4
+ const uri_js_1 = require("../utils/uri.js");
5
+ const namespace_js_1 = require("./namespace.js");
6
+ class AnalyticsNamespace extends namespace_js_1.Namespace {
7
+ constructor(sender) {
8
+ super(sender, 'analytics');
9
+ }
10
+ async track(contact, category, action, extras = {}, opts) {
11
+ return this.sendCommand({
12
+ method: 'observe',
13
+ uri: (0, uri_js_1.uri) `/event-track`,
14
+ type: 'application/vnd.iris.eventTrack+json',
15
+ resource: {
16
+ category,
17
+ action,
18
+ contact: {
19
+ identity: contact,
20
+ },
21
+ ...extras,
22
+ },
23
+ }, opts);
24
+ }
25
+ }
26
+ exports.AnalyticsNamespace = AnalyticsNamespace;
27
+ //# sourceMappingURL=analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../../src/namespaces/analytics.ts"],"names":[],"mappings":";;;AAEA,4CAAqC;AACrC,iDAA0D;AAE1D,MAAa,kBAAmB,SAAQ,wBAAS;IAC7C,YAAY,MAAc;QACtB,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAC9B,CAAC;IAEM,KAAK,CAAC,KAAK,CACd,OAAiB,EACjB,QAAgB,EAChB,MAAc,EACd,SAAiC,EAAE,EACnC,IAAqB;QAErB,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,SAAS;YACjB,GAAG,EAAE,IAAA,YAAG,EAAA,cAAc;YACtB,IAAI,EAAE,sCAAsC;YAC5C,QAAQ,EAAE;gBACN,QAAQ;gBACR,MAAM;gBACN,OAAO,EAAE;oBACL,QAAQ,EAAE,OAAO;iBACpB;gBACD,GAAG,MAAM;aACZ;SACJ,EACD,IAAI,CACP,CAAA;IACL,CAAC;CACJ;AA7BD,gDA6BC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BuilderNamespace = void 0;
4
+ const uri_js_1 = require("../utils/uri.js");
5
+ const namespace_js_1 = require("./namespace.js");
6
+ class BuilderNamespace extends namespace_js_1.Namespace {
7
+ constructor(sender) {
8
+ super(sender, 'builder');
9
+ }
10
+ async getFlowId(botIdentifier, opts) {
11
+ return this.sendCommand({
12
+ method: 'get',
13
+ uri: (0, uri_js_1.uri) `/flow-id?${{ shortName: botIdentifier }}`,
14
+ }, opts);
15
+ }
16
+ async getFlowStates(botIdentifier, opts) {
17
+ return this.sendCommand({
18
+ method: 'get',
19
+ uri: (0, uri_js_1.uri) `/flow/states?${{ shortName: botIdentifier }}`,
20
+ }, {
21
+ collection: true,
22
+ ...opts,
23
+ });
24
+ }
25
+ }
26
+ exports.BuilderNamespace = BuilderNamespace;
27
+ //# sourceMappingURL=builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/namespaces/builder.ts"],"names":[],"mappings":";;;AACA,4CAAqC;AACrC,iDAA0D;AAE1D,MAAa,gBAAiB,SAAQ,wBAAS;IAC3C,YAAY,MAAc;QACtB,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,aAAsB,EAAE,IAAqB;QAChE,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,IAAA,YAAG,EAAA,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE;SACrD,EACD,IAAI,CACP,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,aAAqB,EAAE,IAAqB;QACnE,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,IAAA,YAAG,EAAA,gBAAgB,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE;SACzD,EACD;YACI,UAAU,EAAE,IAAI;YAChB,GAAG,IAAI;SACV,CACJ,CAAA;IACL,CAAC;CACJ;AA3BD,4CA2BC"}
@@ -0,0 +1,198 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeskNamespace = void 0;
4
+ const bliperror_js_1 = require("../sender/bliperror.js");
5
+ const uri_js_1 = require("../utils/uri.js");
6
+ const namespace_js_1 = require("./namespace.js");
7
+ class DeskNamespace extends namespace_js_1.Namespace {
8
+ constructor(sender) {
9
+ super(sender, 'desk');
10
+ }
11
+ async getTicket(ticket, opts) {
12
+ return this.sendCommand({
13
+ method: 'get',
14
+ uri: (0, uri_js_1.uri) `/ticket/${ticket}`,
15
+ }, opts);
16
+ }
17
+ async getTicketsMetrics(opts) {
18
+ return this.sendCommand({
19
+ method: 'get',
20
+ uri: (0, uri_js_1.uri) `/monitoring/ticket-metrics?${{ version: 2 }}`,
21
+ }, opts);
22
+ }
23
+ async getWaitingTicketsMetrics(filters, opts) {
24
+ return this.sendCommand({
25
+ method: 'get',
26
+ uri: (0, uri_js_1.uri) `/monitoring/waiting-tickets?${{
27
+ teams: filters?.teams?.join(','),
28
+ tags: filters?.tags?.join(','),
29
+ operators: filters?.operators?.join(','),
30
+ }}`,
31
+ }, {
32
+ collection: true,
33
+ ...opts,
34
+ });
35
+ }
36
+ async getTickets(filter, opts) {
37
+ return this.sendCommand({
38
+ method: 'get',
39
+ uri: (0, uri_js_1.uri) `/tickets?${{ $filter: filter?.toString() }}`,
40
+ }, {
41
+ collection: true,
42
+ ...opts,
43
+ });
44
+ }
45
+ async changeTicketStatus(ticket, status, settings, opts) {
46
+ try {
47
+ return await this.sendCommand({
48
+ method: 'set',
49
+ uri: (0, uri_js_1.uri) `/tickets/change-status`,
50
+ type: 'application/vnd.iris.ticket+json',
51
+ resource: {
52
+ id: ticket,
53
+ status,
54
+ tags: settings?.tags,
55
+ agentIdentity: settings?.agent,
56
+ },
57
+ }, opts);
58
+ }
59
+ catch (err) {
60
+ if (err instanceof bliperror_js_1.BlipError && err.code === 64) {
61
+ return;
62
+ }
63
+ throw err;
64
+ }
65
+ }
66
+ async isOnAttendanceTime(queueIdOrName = 'Default', timezone = -3) {
67
+ const attendanceHours = await this.sendCommand({
68
+ method: 'get',
69
+ uri: (0, uri_js_1.uri) `/attendance-hour`,
70
+ }, { collection: true });
71
+ const orderedAttendanceHours = attendanceHours
72
+ .sort((a, b) => Number(a.isMain) - Number(b.isMain));
73
+ for (const attendanceHour of orderedAttendanceHours) {
74
+ const detailedAttendanceHour = await this.sendCommand({
75
+ method: 'get',
76
+ uri: (0, uri_js_1.uri) `/attendance-hour-container/${attendanceHour.id}`,
77
+ });
78
+ if (detailedAttendanceHour.queues.every((queue) => queue.id !== queueIdOrName && queue.description !== queueIdOrName) &&
79
+ !detailedAttendanceHour.attendanceHour.isMain) {
80
+ continue;
81
+ }
82
+ const now = new Date(Date.now() + timezone * 60 * 60 * 1000);
83
+ const isInsideOffTime = detailedAttendanceHour.attendanceHourOffItems.some((offItem) => {
84
+ const startDate = new Date(offItem.startDate);
85
+ const endDate = new Date(offItem.endDate);
86
+ return now.getTime() >= startDate.getTime() && now.getTime() <= endDate.getTime();
87
+ });
88
+ if (isInsideOffTime) {
89
+ return false;
90
+ }
91
+ const nowDayOfWeek = now.getDay();
92
+ const daysOfWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
93
+ const todaySchedule = detailedAttendanceHour.attendanceHourScheduleItems.find((schedule) => schedule.dayOfWeek === daysOfWeek[nowDayOfWeek]);
94
+ if (!todaySchedule) {
95
+ return false;
96
+ }
97
+ const startTime = new Date(now);
98
+ const endTime = new Date(now);
99
+ const [startHours, startMinutes] = todaySchedule.startTime.split(':');
100
+ startTime.setHours(Number(startHours));
101
+ startTime.setMinutes(Number(startMinutes));
102
+ const [endHours, endMinutes] = todaySchedule.endTime.split(':');
103
+ endTime.setHours(Number(endHours));
104
+ endTime.setMinutes(Number(endMinutes));
105
+ if (now.getTime() >= startTime.getTime() && now.getTime() <= endTime.getTime()) {
106
+ return true;
107
+ }
108
+ }
109
+ return false;
110
+ }
111
+ async getAttendants(opts) {
112
+ return this.sendCommand({
113
+ method: 'get',
114
+ uri: (0, uri_js_1.uri) `/attendants`,
115
+ }, {
116
+ collection: true,
117
+ ...opts,
118
+ });
119
+ }
120
+ async getApprovedMessageTemplates(opts) {
121
+ return this.sendCommand({
122
+ method: 'get',
123
+ uri: (0, uri_js_1.uri) `/active-message/approved-message-templates`,
124
+ }, {
125
+ collection: true,
126
+ ...opts,
127
+ });
128
+ }
129
+ async getMessageTemplateParams(opts) {
130
+ const params = await this.sendCommand({
131
+ method: 'get',
132
+ uri: (0, uri_js_1.uri) `/active-message/message-templates-params`,
133
+ }, {
134
+ collection: true,
135
+ ...opts,
136
+ });
137
+ return params.map((param) => ({
138
+ template: param.template.Name,
139
+ category: param.template.Category,
140
+ language: param.template.Language,
141
+ status: param.template.Status,
142
+ ownerIdentity: param.params?.ownerIdentity,
143
+ stateId: param.params?.stateId,
144
+ isEnabled: param.params?.isEnabled,
145
+ components: param.template.Components.map((c) => ({
146
+ type: c.Type,
147
+ text: c.Text,
148
+ })),
149
+ }));
150
+ }
151
+ async sendIndividualActiveMessage(phoneNumber, message, sender, opts) {
152
+ await this.sendCommand({
153
+ method: 'set',
154
+ uri: (0, uri_js_1.uri) `/active-message/send-active-message`,
155
+ type: 'application/vnd.iris.activecampaign.full-campaign+json',
156
+ resource: {
157
+ campaign: {
158
+ campaignType: 'Individual',
159
+ CampaignSender: sender,
160
+ attendanceRedirect: sender,
161
+ },
162
+ audience: {
163
+ recipient: phoneNumber,
164
+ recipientType: 'phoneNumber',
165
+ channelType: 'whatsApp',
166
+ messageParams: { ...message.variables },
167
+ },
168
+ message: {
169
+ messageTemplate: message.template,
170
+ channelType: 'whatsapp',
171
+ messageParams: message.variables.length ? Object.keys(message.variables).map(Number) : '',
172
+ messageTemplateLanguage: message.language,
173
+ },
174
+ },
175
+ }, opts);
176
+ }
177
+ async getTeamsAgentsOnline(opts) {
178
+ return this.sendCommand({
179
+ method: 'get',
180
+ uri: (0, uri_js_1.uri) `/teams/agents-online`,
181
+ }, {
182
+ collection: true,
183
+ ...opts,
184
+ });
185
+ }
186
+ async transferTicket(ticket, team, opts) {
187
+ return this.sendCommand({
188
+ method: 'set',
189
+ uri: (0, uri_js_1.uri) `/tickets/${ticket}/transfer`,
190
+ type: 'application/vnd.iris.ticket+json',
191
+ resource: {
192
+ team,
193
+ },
194
+ }, opts);
195
+ }
196
+ }
197
+ exports.DeskNamespace = DeskNamespace;
198
+ //# sourceMappingURL=desk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"desk.js","sourceRoot":"","sources":["../../../src/namespaces/desk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MediaNamespace = void 0;
4
+ const uri_js_1 = require("../utils/uri.js");
5
+ const namespace_js_1 = require("./namespace.js");
6
+ class MediaNamespace extends namespace_js_1.Namespace {
7
+ constructor(sender) {
8
+ super(sender, 'media');
9
+ }
10
+ async getMediaUploadUrl() {
11
+ return this.sendCommand({
12
+ method: 'get',
13
+ uri: (0, uri_js_1.uri) `/upload-media-uri`,
14
+ });
15
+ }
16
+ }
17
+ exports.MediaNamespace = MediaNamespace;
18
+ //# sourceMappingURL=media.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../../../src/namespaces/media.ts"],"names":[],"mappings":";;;AACA,4CAAqC;AACrC,iDAA0C;AAE1C,MAAa,cAAe,SAAQ,wBAAS;IACzC,YAAY,MAAc;QACtB,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1B,CAAC;IAEM,KAAK,CAAC,iBAAiB;QAC1B,OAAO,IAAI,CAAC,WAAW,CAAC;YACpB,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,IAAA,YAAG,EAAA,mBAAmB;SAC9B,CAAC,CAAA;IACN,CAAC;CACJ;AAXD,wCAWC"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Namespace = void 0;
4
+ const random_js_1 = require("../utils/random.js");
5
+ const uri_js_1 = require("../utils/uri.js");
6
+ const index_js_1 = require("../types/index.js");
7
+ class Namespace {
8
+ sender;
9
+ ownerSubdomain;
10
+ constructor(sender, ownerSubdomain) {
11
+ this.sender = sender;
12
+ this.ownerSubdomain = ownerSubdomain;
13
+ }
14
+ async sendCommand(command, opts) {
15
+ let uri = command.uri.path;
16
+ let query = command.uri.query;
17
+ const take = opts?.take || 100;
18
+ if (opts?.collection) {
19
+ query.set('$take', take.toString());
20
+ }
21
+ if (opts?.ownerIdentity) {
22
+ uri = `lime://${opts.ownerIdentity}${uri}`;
23
+ }
24
+ if (uri.endsWith('?')) {
25
+ uri = uri.slice(0, -1);
26
+ }
27
+ const buildUri = () => (query.size > 0 ? uri + '?' + (0, uri_js_1.mapToQuery)(query) : uri);
28
+ const owner = new index_js_1.Node('postmaster', `${this.ownerSubdomain ? `${this.ownerSubdomain}.` : ''}${opts?.domain || 'msging.net'}`);
29
+ const send = async (acc = [], skip = 0) => {
30
+ if (opts?.collection) {
31
+ query.set('$skip', skip.toString());
32
+ const commandToSend = {
33
+ id: (0, random_js_1.randomId)(),
34
+ to: owner,
35
+ ...command,
36
+ uri: buildUri(),
37
+ };
38
+ const response = (await this.sender.sendCommand(commandToSend));
39
+ const items = 'items' in response ? response.items : response.data;
40
+ acc = acc.concat(items);
41
+ if (!opts.fetchall || items.length < take || (opts.max && acc.length >= opts.max)) {
42
+ return acc;
43
+ }
44
+ else {
45
+ return send(acc, skip + take);
46
+ }
47
+ }
48
+ else {
49
+ const commandToSend = {
50
+ id: (0, random_js_1.randomId)(),
51
+ to: owner,
52
+ ...command,
53
+ uri: buildUri(),
54
+ };
55
+ const response = await this.sender.sendCommand(commandToSend);
56
+ return [response];
57
+ }
58
+ };
59
+ const items = await send([], opts?.skip || 0);
60
+ return opts?.collection ? items : items[0];
61
+ }
62
+ }
63
+ exports.Namespace = Namespace;
64
+ //# sourceMappingURL=namespace.js.map