fiscalia_bo-nest-helpers 0.1.35 → 0.1.37
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.
- package/README.md +98 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -1
- package/dist/ms-whatsapp/index.d.ts +2 -0
- package/dist/ms-whatsapp/index.js +19 -0
- package/dist/ms-whatsapp/index.js.map +1 -0
- package/dist/ms-whatsapp/ms-whatsapp.module.d.ts +13 -0
- package/dist/ms-whatsapp/ms-whatsapp.module.js +81 -0
- package/dist/ms-whatsapp/ms-whatsapp.module.js.map +1 -0
- package/dist/ms-whatsapp/ms-whatsapp.service.d.ts +33 -0
- package/dist/ms-whatsapp/ms-whatsapp.service.js +103 -0
- package/dist/ms-whatsapp/ms-whatsapp.service.js.map +1 -0
- package/package.json +5 -1
package/README.md
CHANGED
@@ -138,6 +138,7 @@ ejempos de uso:
|
|
138
138
|
```
|
139
139
|
|
140
140
|
# USO DEL SERVICIO `MS-REDIS`
|
141
|
+
|
141
142
|
Antes de utilizar el módulo, asegúrese de tener las siguientes variables de entorno configuradas:
|
142
143
|
|
143
144
|
- `SERVICE_MS_REDIS_URL`: la URL del servidor de cacheo de redis a través de gRPC.
|
@@ -162,16 +163,19 @@ import { MsRedisModule } from 'fiscalia_bo-nest-helpers/seguridad';
|
|
162
163
|
})
|
163
164
|
export class AppModule {}
|
164
165
|
```
|
166
|
+
|
165
167
|
## Servicios disponibles
|
166
168
|
|
167
169
|
- MsRedisService
|
168
|
-
### Nomenclatura de asignacion de key para redis
|
169
170
|
|
171
|
+
### Nomenclatura de asignacion de key para redis
|
170
172
|
|
171
173
|
```txt
|
172
174
|
aplicacion-name:key_One-key_Two-key_Three-keyAcction
|
173
175
|
```
|
176
|
+
|
174
177
|
ejemplo de asignacion de key para redis
|
178
|
+
|
175
179
|
```js
|
176
180
|
const keyCache = `ms-seguridad:usuarioId_${usuarioId}-aplicacionId_${aplicacionId}-permisos`;
|
177
181
|
```
|
@@ -224,6 +228,99 @@ export class AppModule {}
|
|
224
228
|
|
225
229
|
En este ejemplo, estamos utilizando el método register para cargar la configuración de forma `síncrona`
|
226
230
|
|
231
|
+
# USO DEL MODULO `MS-PERSONAS`
|
232
|
+
|
233
|
+
## Configuracion
|
234
|
+
|
235
|
+
Configuracion de Paquete en el archivo app.module.ts
|
236
|
+
|
237
|
+
```typescript
|
238
|
+
import { MsRabbitModule } from 'fiscalia_bo-nest-helpers/dist/ms-rabbit';
|
239
|
+
|
240
|
+
@Module({
|
241
|
+
imports: [
|
242
|
+
// Register ms-rabbit module global
|
243
|
+
MsRabbitModule.register({
|
244
|
+
global: true,
|
245
|
+
urlRabbit: process.env.SERVICE_MS_RABBIT_URL,
|
246
|
+
}),
|
247
|
+
],
|
248
|
+
controllers: [],
|
249
|
+
providers: [],
|
250
|
+
})
|
251
|
+
export class AppModule {}
|
252
|
+
```
|
253
|
+
|
254
|
+
Configuracion de Paquete en el archivo my.montroller.ts
|
255
|
+
|
256
|
+
```typescript
|
257
|
+
import { RabbitInterceptor } from 'fiscalia_bo-nest-helpers/dist/ms-rabbit';
|
258
|
+
|
259
|
+
@Get('/my-rest-api')
|
260
|
+
@SetMetadata("data-rabbit", {virtualHost:"server_client"})
|
261
|
+
@UseInterceptors(RabbitInterceptor)
|
262
|
+
async myRestApi(@Res({}) res) {
|
263
|
+
try {
|
264
|
+
const getResponse = await this.appService.myService()
|
265
|
+
return getResponse
|
266
|
+
} catch (error) {
|
267
|
+
return res.status(HttpStatus.BAD_REQUEST).json(error);
|
268
|
+
}
|
269
|
+
}
|
270
|
+
```
|
271
|
+
|
272
|
+
## Propiedades del decorador @SetMetadata("data-rabbit")
|
273
|
+
|
274
|
+
Descripcion de los campos en "data-cache"
|
275
|
+
|
276
|
+
| Propiedad | Valor | Descripcion |
|
277
|
+
| --------------- | -------------- | ----------------------------------------------------------------------------------------------------- | --- |
|
278
|
+
| virtualHost | String (null) | Host Virtual donde creara una conexion, si este no existe lo creara automaticamete campo obligatorio |
|
279
|
+
| sendAll | Boolean (true) | TRUE si se enviara a todos los queues dentro del virtualHost |
|
280
|
+
| specifiedClient | String (null) | Si **sendAll** se establece en FALSO se debera ingresar de manera obligada el queue unico del cliente | |
|
281
|
+
|
282
|
+
Configuracion en la solicitud HTTP si se utilizara el interceptor
|
283
|
+
|
284
|
+
```curl
|
285
|
+
curl --location 'https://my-rest-api.com/rest-api-two?queue="queueUnique"
|
286
|
+
```
|
287
|
+
|
288
|
+
## Uso del Servicio
|
289
|
+
|
290
|
+
Se pueden utilizar el servicio
|
291
|
+
|
292
|
+
Debe realizar la configuracion de Paquete en su archivo my.service.ts
|
293
|
+
|
294
|
+
```typescript
|
295
|
+
import { MsRabbitService } from 'fiscalia_bo-nest-helpers/dist/ms-rabbit';
|
296
|
+
|
297
|
+
@Injectable()
|
298
|
+
export class AppService {
|
299
|
+
constructor(private rabbitServiceClient: MsRabbitService) {}
|
300
|
+
|
301
|
+
async getRestApiTWo(): Promise<Observable<AxiosResponse<any[]>>> {
|
302
|
+
try {
|
303
|
+
this.rabbitServiceClient.sendDataVirtualHost(
|
304
|
+
{ virtualHost: 'server_client', sendAll: true },
|
305
|
+
'queueUnique',
|
306
|
+
);
|
307
|
+
} catch (error) {
|
308
|
+
throw error;
|
309
|
+
}
|
310
|
+
}
|
311
|
+
}
|
312
|
+
```
|
313
|
+
|
314
|
+
Descripcion de los objecto para envio de datos
|
315
|
+
|
316
|
+
| Propiedad | Valor | Descripcion |
|
317
|
+
| --------------- | -------------- | ----------------------------------------------------------------------------------------------------- |
|
318
|
+
| virtualHost | String (null) | Host Virtual donde creara una conexion, si este no existe lo creara automaticamete campo obligatorio |
|
319
|
+
| sendAll | Boolean (true) | TRUE si se enviara a todos los queues dentro del virtualHost |
|
320
|
+
| specifiedClient | String (null) | Si **sendAll** se establece en FALSO se debera ingresar de manera obligada el queue unico del cliente |
|
321
|
+
|
322
|
+
**queueUnique** Se recomienda colocar algun identificador unico de usuario o de conexion del cliente Vue
|
323
|
+
|
227
324
|
# Información
|
228
325
|
|
229
326
|
- Author - [UTIC](mailto:informatica@fiscalia.gob.bo)
|
package/dist/index.d.ts
CHANGED
@@ -14,6 +14,7 @@ export * from './ms-seguridad/token-auth.guard';
|
|
14
14
|
export * from './types';
|
15
15
|
export * from './helpers/request.helper';
|
16
16
|
export * as MsPersonas from './ms-personas';
|
17
|
+
export * as MsWhatsApp from './ms-whatsapp';
|
17
18
|
export * as MsPdf from './ms-pdf';
|
18
19
|
export * as MsFiles from './ms-files';
|
19
20
|
export * as MsSkylogs from './ms-skylogs';
|
package/dist/index.js
CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
15
|
};
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
exports.Helpers = exports.MsRabbit = exports.RequestRestrict = exports.Dtos = exports.Decorators = exports.CustomValidators = exports.MsSkylogs = exports.MsFiles = exports.MsPdf = exports.MsPersonas = exports.PermissionsGuard = exports.MsSeguridadHttpError = void 0;
|
17
|
+
exports.Helpers = exports.MsRabbit = exports.RequestRestrict = exports.Dtos = exports.Decorators = exports.CustomValidators = exports.MsSkylogs = exports.MsFiles = exports.MsPdf = exports.MsWhatsApp = exports.MsPersonas = exports.PermissionsGuard = exports.MsSeguridadHttpError = void 0;
|
18
18
|
__exportStar(require("./ms-redis/ms-redis.module"), exports);
|
19
19
|
__exportStar(require("./ms-redis/ms-redis.service"), exports);
|
20
20
|
__exportStar(require("./ms-redis/datapass.interceptor"), exports);
|
@@ -33,6 +33,7 @@ __exportStar(require("./ms-seguridad/token-auth.guard"), exports);
|
|
33
33
|
__exportStar(require("./types"), exports);
|
34
34
|
__exportStar(require("./helpers/request.helper"), exports);
|
35
35
|
exports.MsPersonas = require("./ms-personas");
|
36
|
+
exports.MsWhatsApp = require("./ms-whatsapp");
|
36
37
|
exports.MsPdf = require("./ms-pdf");
|
37
38
|
exports.MsFiles = require("./ms-files");
|
38
39
|
exports.MsSkylogs = require("./ms-skylogs");
|
@@ -0,0 +1,19 @@
|
|
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("./ms-whatsapp.service"), exports);
|
18
|
+
__exportStar(require("./ms-whatsapp.module"), exports);
|
19
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ms-whatsapp/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,uDAAqC"}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { DynamicModule } from '@nestjs/common';
|
2
|
+
export type MsWhatsAppModuleOptions = {
|
3
|
+
appTag: string;
|
4
|
+
global?: boolean;
|
5
|
+
urlMsWhatsApp?: string | undefined;
|
6
|
+
maxBodyLength?: number;
|
7
|
+
timeout?: number;
|
8
|
+
maxContentLength?: number;
|
9
|
+
};
|
10
|
+
export declare class MsWhatsAppModule {
|
11
|
+
static register(options?: MsWhatsAppModuleOptions): DynamicModule;
|
12
|
+
static registerAsync(options: MsWhatsAppModuleOptions): Promise<DynamicModule>;
|
13
|
+
}
|
@@ -0,0 +1,81 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
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
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var MsWhatsAppModule_1;
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
10
|
+
exports.MsWhatsAppModule = void 0;
|
11
|
+
const axios_1 = require("@nestjs/axios");
|
12
|
+
const common_1 = require("@nestjs/common");
|
13
|
+
const chalk_1 = require("chalk");
|
14
|
+
const ms_whatsapp_service_1 = require("./ms-whatsapp.service");
|
15
|
+
let MsWhatsAppModule = MsWhatsAppModule_1 = class MsWhatsAppModule {
|
16
|
+
static register(options) {
|
17
|
+
const url = (options === null || options === void 0 ? void 0 : options.urlMsWhatsApp) || process.env.ENV_SERVICE_MS_WHATSAPP;
|
18
|
+
if (!url)
|
19
|
+
console.warn(chalk_1.bold.red(`ENV_SERVICE_MS_WHATSAPP no definido en variables de entorno`));
|
20
|
+
return {
|
21
|
+
global: options.global,
|
22
|
+
module: MsWhatsAppModule_1,
|
23
|
+
imports: [
|
24
|
+
axios_1.HttpModule.register({
|
25
|
+
baseURL: url,
|
26
|
+
timeout: options.timeout || 5000,
|
27
|
+
maxRedirects: 5,
|
28
|
+
maxBodyLength: options.maxBodyLength,
|
29
|
+
maxContentLength: options.maxContentLength,
|
30
|
+
}),
|
31
|
+
],
|
32
|
+
providers: [
|
33
|
+
ms_whatsapp_service_1.MsWhatsAppService,
|
34
|
+
{
|
35
|
+
provide: 'MS_WATSAPP_URL',
|
36
|
+
useValue: url,
|
37
|
+
},
|
38
|
+
{
|
39
|
+
provide: 'APP_TAG',
|
40
|
+
useValue: options.appTag,
|
41
|
+
},
|
42
|
+
],
|
43
|
+
exports: [ms_whatsapp_service_1.MsWhatsAppService],
|
44
|
+
};
|
45
|
+
}
|
46
|
+
static async registerAsync(options) {
|
47
|
+
const url = (options === null || options === void 0 ? void 0 : options.urlMsWhatsApp) || process.env.ENV_SERVICE_MS_WHATSAPP;
|
48
|
+
if (!url)
|
49
|
+
console.warn(chalk_1.bold.red(`ENV_SERVICE_MS_WHATSAPP no definido en variables de entorno`));
|
50
|
+
return {
|
51
|
+
global: options.global,
|
52
|
+
module: MsWhatsAppModule_1,
|
53
|
+
imports: [
|
54
|
+
axios_1.HttpModule.register({
|
55
|
+
baseURL: url,
|
56
|
+
timeout: 5000,
|
57
|
+
maxRedirects: 5,
|
58
|
+
maxBodyLength: options.maxBodyLength,
|
59
|
+
maxContentLength: options.maxContentLength,
|
60
|
+
}),
|
61
|
+
],
|
62
|
+
providers: [
|
63
|
+
ms_whatsapp_service_1.MsWhatsAppService,
|
64
|
+
{
|
65
|
+
provide: 'MS_WATSAPP_URL',
|
66
|
+
useValue: url,
|
67
|
+
},
|
68
|
+
{
|
69
|
+
provide: 'APP_TAG',
|
70
|
+
useValue: options.appTag,
|
71
|
+
},
|
72
|
+
],
|
73
|
+
exports: [ms_whatsapp_service_1.MsWhatsAppService],
|
74
|
+
};
|
75
|
+
}
|
76
|
+
};
|
77
|
+
MsWhatsAppModule = MsWhatsAppModule_1 = __decorate([
|
78
|
+
(0, common_1.Module)({})
|
79
|
+
], MsWhatsAppModule);
|
80
|
+
exports.MsWhatsAppModule = MsWhatsAppModule;
|
81
|
+
//# sourceMappingURL=ms-whatsapp.module.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ms-whatsapp.module.js","sourceRoot":"","sources":["../../src/ms-whatsapp/ms-whatsapp.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,yCAA2C;AAC3C,2CAAuD;AACvD,iCAA6B;AAC7B,+DAA0D;AAYnD,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAI3B,MAAM,CAAC,QAAQ,CAAC,OAAiC;QAC/C,MAAM,GAAG,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,KAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAC1E,IAAI,CAAC,GAAG;YAAE,OAAO,CAAC,IAAI,CAAC,YAAI,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC,CAAC;QAChG,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,kBAAgB;YACxB,OAAO,EAAE;gBACP,kBAAU,CAAC,QAAQ,CAAC;oBAClB,OAAO,EAAE,GAAG;oBACZ,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI;oBAChC,YAAY,EAAE,CAAC;oBACf,aAAa,EAAE,OAAO,CAAC,aAAa;oBACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;iBAC3C,CAAC;aACH;YACD,SAAS,EAAE;gBACT,uCAAiB;gBACjB;oBACE,OAAO,EAAE,gBAAgB;oBACzB,QAAQ,EAAE,GAAG;iBACd;gBACD;oBACE,OAAO,EAAE,SAAS;oBAClB,QAAQ,EAAE,OAAO,CAAC,MAAM;iBACzB;aACF;YACD,OAAO,EAAE,CAAC,uCAAiB,CAAC;SAC7B,CAAC;IACJ,CAAC;IAKD,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,OAAgC;QACzD,MAAM,GAAG,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,KAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAC1E,IAAI,CAAC,GAAG;YAAE,OAAO,CAAC,IAAI,CAAC,YAAI,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC,CAAC;QAEhG,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,kBAAgB;YACxB,OAAO,EAAE;gBACP,kBAAU,CAAC,QAAQ,CAAC;oBAClB,OAAO,EAAE,GAAG;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC;oBACf,aAAa,EAAE,OAAO,CAAC,aAAa;oBACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;iBAC3C,CAAC;aACH;YACD,SAAS,EAAE;gBACT,uCAAiB;gBACjB;oBACE,OAAO,EAAE,gBAAgB;oBACzB,QAAQ,EAAE,GAAG;iBACd;gBACD;oBACE,OAAO,EAAE,SAAS;oBAClB,QAAQ,EAAE,OAAO,CAAC,MAAM;iBACzB;aACF;YACD,OAAO,EAAE,CAAC,uCAAiB,CAAC;SAC7B,CAAC;IACJ,CAAC;CACF,CAAA;AAnEY,gBAAgB;IAD5B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gBAAgB,CAmE5B;AAnEY,4CAAgB"}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import { Method } from 'axios';
|
2
|
+
import { IResponseDTO } from 'src/types';
|
3
|
+
export interface RespHaveWhatsApp {
|
4
|
+
number: string;
|
5
|
+
whatsapp: boolean;
|
6
|
+
respuesta?: {
|
7
|
+
server: string;
|
8
|
+
user: string;
|
9
|
+
_serialized: string;
|
10
|
+
};
|
11
|
+
}
|
12
|
+
export interface RespSendWhatsApp {
|
13
|
+
number: string;
|
14
|
+
message: string;
|
15
|
+
}
|
16
|
+
export interface FileData {
|
17
|
+
filename: string;
|
18
|
+
mimeType: string;
|
19
|
+
fileB64: string;
|
20
|
+
}
|
21
|
+
export declare class MsWhatsAppService {
|
22
|
+
BASE_URL: string;
|
23
|
+
APP_NAME: string;
|
24
|
+
constructor(whatsappUrl: string, appTag: string);
|
25
|
+
request(req: {
|
26
|
+
url: string;
|
27
|
+
data?: any;
|
28
|
+
method: Method;
|
29
|
+
}): Promise<IResponseDTO<any>>;
|
30
|
+
haveWhatsapp(number: string): Promise<IResponseDTO<RespHaveWhatsApp>>;
|
31
|
+
sendMessage(number: string, message: string): Promise<IResponseDTO<RespSendWhatsApp>>;
|
32
|
+
senFileB64(number: string, fileData: FileData): Promise<IResponseDTO<RespSendWhatsApp>>;
|
33
|
+
}
|
@@ -0,0 +1,103 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
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
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.MsWhatsAppService = void 0;
|
16
|
+
const common_1 = require("@nestjs/common");
|
17
|
+
const axios_1 = require("axios");
|
18
|
+
let MsWhatsAppService = class MsWhatsAppService {
|
19
|
+
constructor(whatsappUrl, appTag) {
|
20
|
+
this.BASE_URL = whatsappUrl;
|
21
|
+
this.APP_NAME = appTag;
|
22
|
+
}
|
23
|
+
async request(req) {
|
24
|
+
let response = {
|
25
|
+
error: true,
|
26
|
+
message: 'Existe problemas con el servicio de SKYTEXT.',
|
27
|
+
response: {},
|
28
|
+
status: 422,
|
29
|
+
};
|
30
|
+
const headers = {
|
31
|
+
'Content-Type': 'application/json',
|
32
|
+
};
|
33
|
+
await (0, axios_1.default)({
|
34
|
+
url: `${this.BASE_URL}${req.url}`,
|
35
|
+
method: req.method,
|
36
|
+
data: req.data,
|
37
|
+
headers,
|
38
|
+
})
|
39
|
+
.then((resp) => {
|
40
|
+
response = resp.data;
|
41
|
+
if (!resp.data.response && resp.data.reponse) {
|
42
|
+
response.response = resp.data.reponse;
|
43
|
+
}
|
44
|
+
})
|
45
|
+
.catch((err) => {
|
46
|
+
response.message = `Existe problemas con el servicio de SKYTEXT: ${req.url} - ${req.url.toUpperCase()}.`;
|
47
|
+
if (err.response) {
|
48
|
+
if (err.response.data) {
|
49
|
+
response = err.response.data;
|
50
|
+
}
|
51
|
+
else {
|
52
|
+
response.response = err.response;
|
53
|
+
}
|
54
|
+
}
|
55
|
+
else {
|
56
|
+
response.response = err;
|
57
|
+
}
|
58
|
+
});
|
59
|
+
return response;
|
60
|
+
}
|
61
|
+
haveWhatsapp(number) {
|
62
|
+
return this.request({
|
63
|
+
url: '/have',
|
64
|
+
method: 'POST',
|
65
|
+
data: {
|
66
|
+
number,
|
67
|
+
},
|
68
|
+
});
|
69
|
+
}
|
70
|
+
sendMessage(number, message) {
|
71
|
+
const data = {
|
72
|
+
app_name: this.APP_NAME,
|
73
|
+
number: number.length == 8 ? `591${number}` : number,
|
74
|
+
message,
|
75
|
+
};
|
76
|
+
return this.request({
|
77
|
+
url: '/send',
|
78
|
+
method: 'POST',
|
79
|
+
data,
|
80
|
+
});
|
81
|
+
}
|
82
|
+
senFileB64(number, fileData) {
|
83
|
+
const data = {
|
84
|
+
app_name: this.APP_NAME,
|
85
|
+
number: number.length == 8 ? `591${number}` : number,
|
86
|
+
filename: fileData.filename,
|
87
|
+
fileb64: `data:${fileData.mimeType};base64,${fileData.fileB64}`,
|
88
|
+
};
|
89
|
+
return this.request({
|
90
|
+
url: '/sendb64',
|
91
|
+
method: 'POST',
|
92
|
+
data,
|
93
|
+
});
|
94
|
+
}
|
95
|
+
};
|
96
|
+
MsWhatsAppService = __decorate([
|
97
|
+
(0, common_1.Injectable)(),
|
98
|
+
__param(0, (0, common_1.Inject)('MS_WATSAPP_URL')),
|
99
|
+
__param(1, (0, common_1.Inject)('APP_TAG')),
|
100
|
+
__metadata("design:paramtypes", [String, String])
|
101
|
+
], MsWhatsAppService);
|
102
|
+
exports.MsWhatsAppService = MsWhatsAppService;
|
103
|
+
//# sourceMappingURL=ms-whatsapp.service.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ms-whatsapp.service.js","sourceRoot":"","sources":["../../src/ms-whatsapp/ms-whatsapp.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "fiscalia_bo-nest-helpers",
|
3
|
-
"version": "0.1.
|
3
|
+
"version": "0.1.37",
|
4
4
|
"description": "Helpers y servicios para NestJS",
|
5
5
|
"author": "UTIC - Ministerio Público",
|
6
6
|
"contact": {
|
@@ -13,6 +13,7 @@
|
|
13
13
|
"dist/ms-redis/*",
|
14
14
|
"dist/ms-files/*",
|
15
15
|
"dist/ms-personas/*",
|
16
|
+
"dist/ms-whatsapp/*",
|
16
17
|
"dist/ms-pdf/*",
|
17
18
|
"dist/ms-rabbit/*",
|
18
19
|
"dist/custom-validators/*",
|
@@ -61,6 +62,7 @@
|
|
61
62
|
"@nestjs/axios": "^2.0.0",
|
62
63
|
"@nestjs/microservices": "^9.3.12",
|
63
64
|
"@nestjs/throttler": "^4.0.0",
|
65
|
+
"amqplib": "^0.10.3",
|
64
66
|
"axios": "^1.3.4",
|
65
67
|
"class-transformer": "^0.5.1",
|
66
68
|
"class-validator": "^0.14.0",
|
@@ -69,6 +71,8 @@
|
|
69
71
|
"dependencies": {
|
70
72
|
"@nestjs/common": "^9.0.0",
|
71
73
|
"@turf/turf": "^6.5.0",
|
74
|
+
"amqp-connection-manager": "^4.1.13",
|
75
|
+
"amqplib": "^0.10.3",
|
72
76
|
"dotenv": "^16.0.3",
|
73
77
|
"file-type": "^18.5.0",
|
74
78
|
"hasha": "^5.2.2",
|