rez_core 2.2.190 → 2.2.192

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 (36) hide show
  1. package/dist/module/communication/communication.module.js +4 -1
  2. package/dist/module/communication/communication.module.js.map +1 -1
  3. package/dist/module/communication/controller/calender-event.controller.d.ts +31 -0
  4. package/dist/module/communication/controller/calender-event.controller.js +51 -0
  5. package/dist/module/communication/controller/calender-event.controller.js.map +1 -0
  6. package/dist/module/communication/controller/communication.controller.d.ts +16 -1
  7. package/dist/module/communication/controller/communication.controller.js +62 -0
  8. package/dist/module/communication/controller/communication.controller.js.map +1 -1
  9. package/dist/module/communication/dto/create-config.dto.d.ts +40 -0
  10. package/dist/module/communication/dto/create-config.dto.js +24 -1
  11. package/dist/module/communication/dto/create-config.dto.js.map +1 -1
  12. package/dist/module/communication/factories/whatsapp.factory.d.ts +3 -1
  13. package/dist/module/communication/factories/whatsapp.factory.js +13 -3
  14. package/dist/module/communication/factories/whatsapp.factory.js.map +1 -1
  15. package/dist/module/communication/service/calendar-event.service.d.ts +32 -0
  16. package/dist/module/communication/service/calendar-event.service.js +115 -0
  17. package/dist/module/communication/service/calendar-event.service.js.map +1 -0
  18. package/dist/module/communication/service/communication.service.d.ts +13 -0
  19. package/dist/module/communication/service/communication.service.js +90 -1
  20. package/dist/module/communication/service/communication.service.js.map +1 -1
  21. package/dist/module/communication/strategies/whatsapp/whatsapp-cloud.strategy.d.ts +15 -0
  22. package/dist/module/communication/strategies/whatsapp/whatsapp-cloud.strategy.js +233 -16
  23. package/dist/module/communication/strategies/whatsapp/whatsapp-cloud.strategy.js.map +1 -1
  24. package/dist/module/workflow/service/task.service.js +0 -1
  25. package/dist/module/workflow/service/task.service.js.map +1 -1
  26. package/dist/tsconfig.build.tsbuildinfo +1 -1
  27. package/package.json +1 -1
  28. package/src/module/communication/communication.module.ts +5 -1
  29. package/src/module/communication/controller/calender-event.controller.ts +31 -0
  30. package/src/module/communication/controller/communication.controller.ts +62 -0
  31. package/src/module/communication/dto/create-config.dto.ts +71 -0
  32. package/src/module/communication/factories/whatsapp.factory.ts +13 -2
  33. package/src/module/communication/service/calendar-event.service.ts +123 -0
  34. package/src/module/communication/service/communication.service.ts +153 -2
  35. package/src/module/communication/strategies/whatsapp/whatsapp-cloud.strategy.ts +373 -19
  36. package/src/module/workflow/service/task.service.ts +1 -1
@@ -157,7 +157,7 @@ let CommunicationService = CommunicationService_1 = class CommunicationService {
157
157
  return this.communicationFactory.getAllSupportedCombinations();
158
158
  }
159
159
  async getLevelConfigs(levelId, levelType, filters) {
160
- const where = { level_id: levelId, level_type: levelType, status: 1 };
160
+ const where = { level_id: levelId, level_type: levelType };
161
161
  if (filters?.communication_config_type) {
162
162
  where.communication_config_type = filters.communication_config_type;
163
163
  }
@@ -396,6 +396,61 @@ let CommunicationService = CommunicationService_1 = class CommunicationService {
396
396
  await this.configRepository.delete(hub.config_id);
397
397
  this.logger.log(`Communication configuration deleted: Hub ${hubId}, Config ${hub.config_id}`);
398
398
  }
399
+ async updateConfiguration(hubId, updateData) {
400
+ const hub = await this.hubRepository.findOne({
401
+ where: { id: hubId },
402
+ });
403
+ if (!hub) {
404
+ throw new Error('Communication configuration not found');
405
+ }
406
+ if (updateData.config) {
407
+ const existingConfig = await this.configRepository.findOne({
408
+ where: { id: hub.config_id },
409
+ });
410
+ if (!existingConfig) {
411
+ throw new Error('Configuration record not found');
412
+ }
413
+ const updatedConfigJson = {
414
+ ...existingConfig.config_json,
415
+ ...updateData.config,
416
+ };
417
+ await this.configRepository.update(hub.config_id, {
418
+ config_json: updatedConfigJson,
419
+ });
420
+ }
421
+ if (updateData.is_default === true) {
422
+ await this.hubRepository.update({
423
+ level_id: hub.level_id,
424
+ level_type: hub.level_type,
425
+ communication_config_type: hub.communication_config_type,
426
+ id: (0, typeorm_2.Not)(hubId),
427
+ }, { is_default: false });
428
+ }
429
+ const hubUpdateData = {};
430
+ if (updateData.priority !== undefined) {
431
+ hubUpdateData.priority = updateData.priority;
432
+ }
433
+ if (updateData.is_default !== undefined) {
434
+ hubUpdateData.is_default = updateData.is_default;
435
+ }
436
+ if (updateData.status !== undefined) {
437
+ hubUpdateData.status = updateData.status;
438
+ }
439
+ if (Object.keys(hubUpdateData).length > 0) {
440
+ await this.hubRepository.update(hubId, hubUpdateData);
441
+ }
442
+ const updatedHub = await this.hubRepository.findOne({
443
+ where: { id: hubId },
444
+ });
445
+ const updatedConfig = await this.configRepository.findOne({
446
+ where: { id: hub.config_id },
447
+ });
448
+ this.logger.log(`Communication configuration updated: Hub ${hubId}, Type ${hub.communication_config_type}`);
449
+ return {
450
+ ...updatedHub,
451
+ config: updatedConfig?.config_json,
452
+ };
453
+ }
399
454
  async sendGenericMessage(messageDto) {
400
455
  try {
401
456
  const { levelId, levelType, to, message, type, priority = 'medium', subject, html, cc, bcc, attachments, mediaUrl, templateId, variables, } = messageDto;
@@ -999,6 +1054,40 @@ let CommunicationService = CommunicationService_1 = class CommunicationService {
999
1054
  throw new Error(`Failed to complete Outlook OAuth: ${error.message}`);
1000
1055
  }
1001
1056
  }
1057
+ async getCommunicationConfigById(hubId) {
1058
+ try {
1059
+ const hub = await this.hubRepository.findOne({
1060
+ where: { id: hubId },
1061
+ });
1062
+ if (!hub) {
1063
+ return null;
1064
+ }
1065
+ const config = await this.configRepository.findOne({
1066
+ where: { id: hub.config_id },
1067
+ });
1068
+ if (!config) {
1069
+ this.logger.warn(`Configuration not found for hub ${hubId} with config_id ${hub.config_id}`);
1070
+ return {
1071
+ ...hub,
1072
+ config: null,
1073
+ linkedSource: 'Configuration not found',
1074
+ configDetails: null,
1075
+ };
1076
+ }
1077
+ const linkedSource = this.extractLinkedSource(hub.communication_config_type, hub.service, hub.provider, config.config_json);
1078
+ const configDetails = this.extractConfigDetails(hub.communication_config_type, hub.service, hub.provider, config.config_json);
1079
+ return {
1080
+ ...hub,
1081
+ config,
1082
+ linkedSource,
1083
+ configDetails,
1084
+ };
1085
+ }
1086
+ catch (error) {
1087
+ this.logger.error(`Error fetching communication config by ID ${hubId}:`, error.message);
1088
+ throw new Error(`Failed to fetch communication configuration: ${error.message}`);
1089
+ }
1090
+ }
1002
1091
  };
1003
1092
  exports.CommunicationService = CommunicationService;
1004
1093
  exports.CommunicationService = CommunicationService = CommunicationService_1 = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"communication.service.js","sourceRoot":"","sources":["../../../../src/module/communication/service/communication.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"communication.service.js","sourceRoot":"","sources":["../../../../src/module/communication/service/communication.service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,20 @@
1
1
  import { CommunicationStrategy, CommunicationResult } from '../communication.strategy';
2
+ interface WhatsAppConfig {
3
+ accessToken: string;
4
+ phoneNumberId: string;
5
+ apiVersion?: string;
6
+ businessAccountId?: string;
7
+ }
2
8
  export declare class WhatsAppCloudStrategy implements CommunicationStrategy {
9
+ private readonly logger;
10
+ private readonly baseUrl;
3
11
  sendMessage(to: string, message: string, config: any): Promise<CommunicationResult>;
12
+ private prepareMessagePayload;
13
+ private formatPhoneNumber;
14
+ private extractErrorMessage;
4
15
  validateConfig(config: any): boolean;
16
+ getPhoneNumberInfo(config: WhatsAppConfig): Promise<any>;
17
+ getBusinessProfile(config: WhatsAppConfig): Promise<any>;
18
+ updateBusinessProfile(config: WhatsAppConfig, profileData: any): Promise<any>;
5
19
  }
20
+ export {};
@@ -5,43 +5,260 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var WhatsAppCloudStrategy_1;
8
9
  Object.defineProperty(exports, "__esModule", { value: true });
9
10
  exports.WhatsAppCloudStrategy = void 0;
10
11
  const common_1 = require("@nestjs/common");
11
- let WhatsAppCloudStrategy = class WhatsAppCloudStrategy {
12
+ const axios_1 = require("axios");
13
+ let WhatsAppCloudStrategy = WhatsAppCloudStrategy_1 = class WhatsAppCloudStrategy {
14
+ constructor() {
15
+ this.logger = new common_1.Logger(WhatsAppCloudStrategy_1.name);
16
+ this.baseUrl = 'https://graph.facebook.com';
17
+ }
12
18
  async sendMessage(to, message, config) {
13
19
  try {
14
20
  if (!this.validateConfig(config)) {
15
21
  throw new Error('Invalid WhatsApp Cloud API configuration');
16
22
  }
17
- console.log('Sending WhatsApp message via Cloud API to:', to);
18
- return {
19
- success: true,
20
- messageId: `whatsapp-${Date.now()}`,
21
- provider: 'whatsapp',
22
- service: 'API',
23
- timestamp: new Date(),
24
- };
23
+ const whatsappConfig = config;
24
+ const apiVersion = whatsappConfig.apiVersion || 'v18.0';
25
+ const url = `${this.baseUrl}/${apiVersion}/${whatsappConfig.phoneNumberId}/messages`;
26
+ const payload = this.prepareMessagePayload(to, message, config);
27
+ const response = await axios_1.default.post(url, payload, {
28
+ headers: {
29
+ Authorization: `Bearer ${whatsappConfig.accessToken}`,
30
+ 'Content-Type': 'application/json',
31
+ },
32
+ timeout: 30000,
33
+ });
34
+ if (response.data?.messages?.[0]?.id) {
35
+ this.logger.log(`WhatsApp message sent successfully to ${to}, messageId: ${response.data.messages[0].id}`);
36
+ return {
37
+ success: true,
38
+ messageId: response.data.messages[0].id,
39
+ provider: 'whatsapp-cloud',
40
+ service: 'API',
41
+ timestamp: new Date(),
42
+ };
43
+ }
44
+ else {
45
+ throw new Error('Invalid response from WhatsApp API');
46
+ }
25
47
  }
26
48
  catch (error) {
49
+ this.logger.error(`Failed to send WhatsApp message to ${to}`, error.response?.data || error.message);
27
50
  return {
28
51
  success: false,
29
- provider: 'whatsapp',
52
+ provider: 'whatsapp-cloud',
30
53
  service: 'API',
31
- error: error.message,
54
+ error: this.extractErrorMessage(error),
32
55
  timestamp: new Date(),
33
56
  };
34
57
  }
35
58
  }
59
+ prepareMessagePayload(to, message, config) {
60
+ const basePayload = {
61
+ messaging_product: 'whatsapp',
62
+ to: this.formatPhoneNumber(to),
63
+ type: 'text',
64
+ };
65
+ if (config.messageType) {
66
+ switch (config.messageType) {
67
+ case 'template':
68
+ return {
69
+ ...basePayload,
70
+ type: 'template',
71
+ template: {
72
+ name: config.templateName || 'hello_world',
73
+ language: {
74
+ code: config.languageCode || 'en_US',
75
+ },
76
+ components: config.templateComponents || [],
77
+ },
78
+ };
79
+ case 'image':
80
+ return {
81
+ ...basePayload,
82
+ type: 'image',
83
+ image: {
84
+ link: config.mediaUrl,
85
+ caption: message || config.caption,
86
+ },
87
+ };
88
+ case 'document':
89
+ return {
90
+ ...basePayload,
91
+ type: 'document',
92
+ document: {
93
+ link: config.mediaUrl,
94
+ caption: message || config.caption,
95
+ filename: config.filename,
96
+ },
97
+ };
98
+ case 'audio':
99
+ return {
100
+ ...basePayload,
101
+ type: 'audio',
102
+ audio: {
103
+ link: config.mediaUrl,
104
+ },
105
+ };
106
+ case 'video':
107
+ return {
108
+ ...basePayload,
109
+ type: 'video',
110
+ video: {
111
+ link: config.mediaUrl,
112
+ caption: message || config.caption,
113
+ },
114
+ };
115
+ case 'location':
116
+ return {
117
+ ...basePayload,
118
+ type: 'location',
119
+ location: {
120
+ latitude: config.latitude,
121
+ longitude: config.longitude,
122
+ name: config.locationName,
123
+ address: config.locationAddress,
124
+ },
125
+ };
126
+ case 'interactive':
127
+ return {
128
+ ...basePayload,
129
+ type: 'interactive',
130
+ interactive: {
131
+ type: config.interactiveType || 'button',
132
+ body: {
133
+ text: message,
134
+ },
135
+ footer: config.footer ? { text: config.footer } : undefined,
136
+ action: config.interactiveAction,
137
+ },
138
+ };
139
+ default:
140
+ break;
141
+ }
142
+ }
143
+ return {
144
+ ...basePayload,
145
+ text: {
146
+ body: message,
147
+ preview_url: config.previewUrl !== false,
148
+ },
149
+ };
150
+ }
151
+ formatPhoneNumber(phoneNumber) {
152
+ let formatted = phoneNumber.replace(/[^\d+]/g, '');
153
+ if (!formatted.startsWith('+')) {
154
+ formatted = `+${formatted}`;
155
+ }
156
+ return formatted.substring(1);
157
+ }
158
+ extractErrorMessage(error) {
159
+ if (error.response?.data?.error?.message) {
160
+ return error.response.data.error.message;
161
+ }
162
+ if (error.response?.data?.error?.error_user_msg) {
163
+ return error.response.data.error.error_user_msg;
164
+ }
165
+ if (error.response?.data?.message) {
166
+ return error.response.data.message;
167
+ }
168
+ if (error.message) {
169
+ return error.message;
170
+ }
171
+ return 'Unknown WhatsApp API error';
172
+ }
36
173
  validateConfig(config) {
37
- return (config &&
38
- config.accessToken &&
39
- config.phoneNumberId &&
40
- config.businessAccountId);
174
+ if (!config || typeof config !== 'object') {
175
+ return false;
176
+ }
177
+ if (!config.accessToken || !config.phoneNumberId) {
178
+ return false;
179
+ }
180
+ if (config.messageType) {
181
+ switch (config.messageType) {
182
+ case 'template':
183
+ if (!config.templateName) {
184
+ return false;
185
+ }
186
+ break;
187
+ case 'image':
188
+ case 'document':
189
+ case 'audio':
190
+ case 'video':
191
+ if (!config.mediaUrl) {
192
+ return false;
193
+ }
194
+ break;
195
+ case 'location':
196
+ if (typeof config.latitude !== 'number' ||
197
+ typeof config.longitude !== 'number') {
198
+ return false;
199
+ }
200
+ break;
201
+ case 'interactive':
202
+ if (!config.interactiveAction) {
203
+ return false;
204
+ }
205
+ break;
206
+ }
207
+ }
208
+ return true;
209
+ }
210
+ async getPhoneNumberInfo(config) {
211
+ try {
212
+ const apiVersion = config.apiVersion || 'v18.0';
213
+ const url = `${this.baseUrl}/${apiVersion}/${config.phoneNumberId}`;
214
+ const response = await axios_1.default.get(url, {
215
+ headers: {
216
+ Authorization: `Bearer ${config.accessToken}`,
217
+ },
218
+ });
219
+ return response.data;
220
+ }
221
+ catch (error) {
222
+ this.logger.error('Failed to get phone number info', error.response?.data || error.message);
223
+ throw new Error(`Failed to get phone number info: ${this.extractErrorMessage(error)}`);
224
+ }
225
+ }
226
+ async getBusinessProfile(config) {
227
+ try {
228
+ const apiVersion = config.apiVersion || 'v18.0';
229
+ const url = `${this.baseUrl}/${apiVersion}/${config.phoneNumberId}/whatsapp_business_profile`;
230
+ const response = await axios_1.default.get(url, {
231
+ headers: {
232
+ Authorization: `Bearer ${config.accessToken}`,
233
+ },
234
+ });
235
+ return response.data;
236
+ }
237
+ catch (error) {
238
+ this.logger.error('Failed to get business profile', error.response?.data || error.message);
239
+ throw new Error(`Failed to get business profile: ${this.extractErrorMessage(error)}`);
240
+ }
241
+ }
242
+ async updateBusinessProfile(config, profileData) {
243
+ try {
244
+ const apiVersion = config.apiVersion || 'v18.0';
245
+ const url = `${this.baseUrl}/${apiVersion}/${config.phoneNumberId}/whatsapp_business_profile`;
246
+ const response = await axios_1.default.post(url, profileData, {
247
+ headers: {
248
+ Authorization: `Bearer ${config.accessToken}`,
249
+ 'Content-Type': 'application/json',
250
+ },
251
+ });
252
+ return response.data;
253
+ }
254
+ catch (error) {
255
+ this.logger.error('Failed to update business profile', error.response?.data || error.message);
256
+ throw new Error(`Failed to update business profile: ${this.extractErrorMessage(error)}`);
257
+ }
41
258
  }
42
259
  };
43
260
  exports.WhatsAppCloudStrategy = WhatsAppCloudStrategy;
44
- exports.WhatsAppCloudStrategy = WhatsAppCloudStrategy = __decorate([
261
+ exports.WhatsAppCloudStrategy = WhatsAppCloudStrategy = WhatsAppCloudStrategy_1 = __decorate([
45
262
  (0, common_1.Injectable)()
46
263
  ], WhatsAppCloudStrategy);
47
264
  //# sourceMappingURL=whatsapp-cloud.strategy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp-cloud.strategy.js","sourceRoot":"","sources":["../../../../../src/module/communication/strategies/whatsapp/whatsapp-cloud.strategy.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAOrC,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAChC,KAAK,CAAC,WAAW,CACf,EAAU,EACV,OAAe,EACf,MAAW;QAEX,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;YAID,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE,EAAE,CAAC,CAAC;YAE9D,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,EAAE;gBACnC,QAAQ,EAAE,UAAU;gBACpB,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,UAAU;gBACpB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,cAAc,CAAC,MAAW;QACxB,OAAO,CACL,MAAM;YACN,MAAM,CAAC,WAAW;YAClB,MAAM,CAAC,aAAa;YACpB,MAAM,CAAC,iBAAiB,CACzB,CAAC;IACJ,CAAC;CACF,CAAA;AAzCY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAU,GAAE;GACA,qBAAqB,CAyCjC"}
1
+ {"version":3,"file":"whatsapp-cloud.strategy.js","sourceRoot":"","sources":["../../../../../src/module/communication/strategies/whatsapp/whatsapp-cloud.strategy.ts"],"names":[],"mappings":"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"}
@@ -285,7 +285,6 @@ let TaskService = class TaskService extends entity_service_impl_service_1.Entity
285
285
  AND TIMESTAMP(due_date, due_time) BETWEEN ? AND ?
286
286
  `, [completedId, now, in30Min]);
287
287
  if (!tasks.length) {
288
- console.log('No tasks due in 30 mins');
289
288
  return;
290
289
  }
291
290
  for (const task of tasks) {