@sipgate/integration-bridge 0.30.5 → 1.0.0
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/dist/index.js +0 -5
- package/dist/index.js.map +1 -1
- package/dist/models/adapter.model.d.ts +1 -6
- package/dist/models/contact.model.d.ts +0 -4
- package/dist/models/controller.model.d.ts +2 -8
- package/dist/models/controller.model.js +26 -181
- package/dist/models/controller.model.js.map +1 -1
- package/dist/models/controller.model.test.js +295 -468
- package/dist/models/controller.model.test.js.map +1 -1
- package/dist/schemas/contacts.d.ts +160 -2
- package/dist/schemas/contacts.js +99 -65
- package/dist/schemas/contacts.js.map +1 -1
- package/dist/util/validate.d.ts +2 -3
- package/dist/util/validate.js +7 -13
- package/dist/util/validate.js.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -70,12 +70,7 @@ function start(adapter, customRouters = [], customRoutes = []) {
|
|
|
70
70
|
app.put('/contacts/:id', (req, res, next) => controller.updateContact(req, res, next));
|
|
71
71
|
app.delete('/contacts/:id', (req, res, next) => controller.deleteContact(req, res, next));
|
|
72
72
|
app.post('/contacts/stream', (req, res, next) => controller.streamContacts(req, res, next));
|
|
73
|
-
app.get('/contacts-delta', (req, res, next) => controller.getContactsDelta(req, res, next));
|
|
74
73
|
app.get('/entity/:type/:id', (req, res, next) => controller.getEntity(req, res, next));
|
|
75
|
-
app.get('/calendar', (req, res, next) => controller.getCalendarEvents(req, res, next));
|
|
76
|
-
app.post('/calendar', (req, res, next) => controller.createCalendarEvent(req, res, next));
|
|
77
|
-
app.put('/calendar/:id', (req, res, next) => controller.updateCalendarEvent(req, res, next));
|
|
78
|
-
app.delete('/calendar/:id', (req, res, next) => controller.deleteCalendarEvent(req, res, next));
|
|
79
74
|
app.post('/events/calls', (req, res, next) => controller.handleCallEvent(req, res, next));
|
|
80
75
|
app.put('/events/calls/:id', (req, res, next) => controller.updateCallEvent(req, res, next));
|
|
81
76
|
app.post('/events/connected', (req, res, next) => controller.handleConnectedEvent(req, res, next));
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uEAAwE;AAExE,IAAI,oCAAc,EAAE;IAClB,6BAAO,CAAC,KAAK,EAAE,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CAChC;KAAM;IACL,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;CACpC;AAED,8DAAqC;AACrC,8DAAsC;AACtC,gDAAwB;AACxB,sDAA8B;AAG9B,2EAAsE;AACtE,mEAA+D;AAC/D,+CAAgF;AAChF,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uEAAwE;AAExE,IAAI,oCAAc,EAAE;IAClB,6BAAO,CAAC,KAAK,EAAE,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CAChC;KAAM;IACL,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;CACpC;AAED,8DAAqC;AACrC,8DAAsC;AACtC,gDAAwB;AACxB,sDAA8B;AAG9B,2EAAsE;AACtE,mEAA+D;AAC/D,+CAAgF;AAChF,qCAKkB;AAGlB,iCAAgE;AAChE,gEAA2D;AAE3D,MAAM,IAAI,GAAW,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAEtD,MAAM,GAAG,GAAwB,IAAA,iBAAO,GAAE,CAAC;AAE3C,MAAM,cAAc,GAAG,IAAA,cAAI,EAAC;IAC1B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,IAAI;IACZ,cAAc,EAAE,GAAG;CACpB,CAAC,CAAC;AAEH,GAAG,CAAC,GAAG,CAAC,IAAA,qBAAW,GAAE,CAAC,CAAC;AACvB,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AACxB,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,EAAE,CAAC,CAAC;AAC3B,GAAG,CAAC,GAAG,CAAC,qCAAuB,CAAC,CAAC;AAEjC,IAAI,YAAY,GAAwB,IAAI,CAAC;AAClC,QAAA,UAAU,GAA6B,IAAI,CAAC;AAEvD,SAAgB,KAAK,CACnB,OAAgB,EAChB,gBAAgC,EAAE,EAClC,eAA8B,EAAE;IAEhC,YAAY,GAAG,IAAA,mCAAe,GAAE,CAAC;IACjC,kBAAU,GAAG,IAAA,oBAAa,GAAE,CAAC;IAE7B,MAAM,UAAU,GAAe,IAAI,mBAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACrE,MAAM,cAAc,GAAmB,IAAI,gCAAc,CAAC,OAAO,CAAC,CAAC;IACnE,MAAM,iBAAiB,GAAsB,IAAI,uCAAiB,CAAC,OAAO,CAAC,CAAC;IAE5E,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CACtC,UAAU,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACvC,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CACvC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACzC,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC1C,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACtC,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC1C,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACzC,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC7C,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACzC,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC9C,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAC1C,CAAC;IAEF,GAAG,CAAC,GAAG,CACL,mBAAmB,EACnB,CAAC,GAAmC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CACjD,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACvC,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC3C,UAAU,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAC3C,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC9C,UAAU,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAC3C,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC/C,UAAU,CAAC,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAChD,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAClD,UAAU,CAAC,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACnD,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CACtC,iBAAiB,CAAC,iCAAiC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACpE,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAClD,iBAAiB,CAAC,2BAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAC9D,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC/C,iBAAiB,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACrD,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAE7E,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC5C,UAAU,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACxC,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC7C,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAC1C,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACvC,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CACpC,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAEzE,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CACxC,UAAU,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACxC,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CACtC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACzC,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CACvC,cAAc,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACxC,CAAC;IAEF,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAE9E,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC3C,cAAc,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAC/C,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,oCAAsB,CAAC,CAAC;IAEhC,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAEnE,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE;QACrE,IAAA,iBAAU,EAAC,OAAO,EAAE,eAAe,IAAI,SAAS,EAAE,SAAS,CAAC,CAAC;QAE7D,MAAM,OAAO,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;YAChD,IAAI;gBACF,IAAA,iBAAU,EAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;gBAErC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBAE9B,IAAA,iBAAU,EAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;aACpC;YAAC,OAAO,KAAK,EAAE;gBACd,IAAA,kBAAW,EACT,IAAI,EACJ,oCAAoC,EACpC,SAAS,EACT,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,SAAS,CACnB,CAAC;gBACF,IAAI,CAAC,KAAK,CAAC,CAAC;aACb;QACH,CAAC,CAAC;QAEF,QAAQ,WAAW,EAAE;YACnB,KAAK,KAAK;gBACR,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACvB,MAAM;YACR,KAAK,MAAM;gBACT,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACxB,MAAM;YACR,KAAK,KAAK;gBACR,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACvB,MAAM;YACR,KAAK,QAAQ;gBACX,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC1B,MAAM;YAER;gBACE,MAAM,2BAA2B,WAAW,mBAAmB,CAAC;SACnE;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,CAAC;AAC1E,CAAC;AArJD,sBAqJC;AAEM,MAAM,sBAAsB,GAAG,CAAO,GAAW,EAAE,EAAE;IAC1D,MAAM,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,CAAC,GAAG,CAAC,CAAA,CAAC;AAClC,CAAC,CAAA,CAAC;AAFW,QAAA,sBAAsB,0BAEjC;AAEK,MAAM,mBAAmB,GAAG,CAAO,GAAW,EAAE,EAAE;IACvD,OAAO,CAAC,MAAM,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,GAAG,CAAC,GAAG,CAAC,CAAA,CAAC,IAAI,EAAE,CAAC;AAC9C,CAAC,CAAA,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAEF,2CAAyB;AACzB,yCAAuB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Request, Response } from 'express';
|
|
2
|
-
import {
|
|
2
|
+
import { CallEvent, CallEventWithIntegrationEntities, Config, Contact, ContactTemplate, ContactUpdate, FollowUpWithIntegrationEntities, IntegrationDefinedOptions, LabeledIntegrationEntity, LoggedIntegrationEntity, Task } from '.';
|
|
3
3
|
import { IntegrationEntityType } from './integration-entity.model';
|
|
4
4
|
import { IntegrationsEvent } from './integrations-event.model';
|
|
5
5
|
export interface Adapter {
|
|
@@ -10,15 +10,10 @@ export interface Adapter {
|
|
|
10
10
|
getAccountId?: (config: Config) => Promise<string>;
|
|
11
11
|
getContact?: (config: Config, id: string, type: IntegrationEntityType) => Promise<Contact>;
|
|
12
12
|
getContacts?: (config: Config) => Promise<Contact[]>;
|
|
13
|
-
getContactsDelta?: (config: Config, timestamp: number) => Promise<ContactDelta>;
|
|
14
13
|
streamContacts?: (config: Config) => AsyncGenerator<Contact[], void, unknown>;
|
|
15
14
|
createContact?: (config: Config, contact: ContactTemplate) => Promise<Contact>;
|
|
16
15
|
updateContact?: (config: Config, id: string, contact: ContactUpdate) => Promise<Contact>;
|
|
17
16
|
deleteContact?: (config: Config, id: string) => Promise<void>;
|
|
18
|
-
getCalendarEvents?: (config: Config, options?: CalendarFilterOptions | null) => Promise<CalendarEvent[]>;
|
|
19
|
-
createCalendarEvent?: (config: Config, event: CalendarEventTemplate) => Promise<CalendarEvent>;
|
|
20
|
-
updateCalendarEvent?: (config: Config, id: string, event: CalendarEventTemplate) => Promise<CalendarEvent>;
|
|
21
|
-
deleteCalendarEvent?: (config: Config, id: string) => Promise<void>;
|
|
22
17
|
/**
|
|
23
18
|
* @deprecated handleCallEvent should be replaced by createOrUpdateCallLogForEntities
|
|
24
19
|
*/
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { NextFunction, Request, Response } from 'express';
|
|
2
|
-
import { Adapter,
|
|
3
|
-
import { BridgeRequest,
|
|
2
|
+
import { Adapter, CallEvent, ContactCache, ContactTemplate, ContactUpdate } from '.';
|
|
3
|
+
import { BridgeRequest, IdBridgeRequest, IntegrationEntityBridgeRequest } from './bridge-request.model';
|
|
4
4
|
export declare class Controller {
|
|
5
5
|
private adapter;
|
|
6
6
|
private contactCache;
|
|
7
|
-
private ajv;
|
|
8
7
|
private pubSubContactStreamingClient;
|
|
9
8
|
private pubSubIntegrationEventsClient;
|
|
10
9
|
private additionalPubSubContactStreamingClient;
|
|
@@ -16,15 +15,10 @@ export declare class Controller {
|
|
|
16
15
|
isValidToken(req: BridgeRequest<unknown>, res: Response, next: NextFunction): Promise<void>;
|
|
17
16
|
getContacts(req: BridgeRequest<unknown>, res: Response, next: NextFunction): Promise<void>;
|
|
18
17
|
streamContacts(req: BridgeRequest<unknown>, res: Response, next: NextFunction): Promise<void>;
|
|
19
|
-
getContactsDelta(req: BridgeRequestWithTimestamp, res: Response, next: NextFunction): Promise<void>;
|
|
20
18
|
getContact(req: BridgeRequest<unknown>, res: Response, next: NextFunction): Promise<void>;
|
|
21
19
|
createContact(req: BridgeRequest<ContactTemplate>, res: Response, next: NextFunction): Promise<void>;
|
|
22
20
|
updateContact(req: IdBridgeRequest<ContactUpdate>, res: Response, next: NextFunction): Promise<void>;
|
|
23
21
|
deleteContact(req: IdBridgeRequest<unknown>, res: Response, next: NextFunction): Promise<void>;
|
|
24
|
-
getCalendarEvents(req: BridgeRequest<unknown>, res: Response, next: NextFunction): Promise<void>;
|
|
25
|
-
createCalendarEvent(req: BridgeRequest<CalendarEventTemplate>, res: Response, next: NextFunction): Promise<void>;
|
|
26
|
-
updateCalendarEvent(req: IdBridgeRequest<CalendarEventTemplate>, res: Response, next: NextFunction): Promise<void>;
|
|
27
|
-
deleteCalendarEvent(req: IdBridgeRequest<unknown>, res: Response, next: NextFunction): Promise<void>;
|
|
28
22
|
/**
|
|
29
23
|
* @deprecated Use createOrUpdateCallLogForEntities instead
|
|
30
24
|
* @param req
|
|
@@ -8,19 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
12
|
exports.Controller = void 0;
|
|
16
|
-
const ajv_1 = __importDefault(require("ajv"));
|
|
17
13
|
const lodash_1 = require("lodash");
|
|
18
14
|
const querystring_1 = require("querystring");
|
|
19
15
|
const _1 = require(".");
|
|
20
16
|
const schemas_1 = require("../schemas");
|
|
21
17
|
const call_event_util_1 = require("../util/call-event.util");
|
|
22
18
|
const logger_util_1 = require("../util/logger.util");
|
|
23
|
-
const validate_1 = require("../util/validate");
|
|
24
19
|
const cache_item_state_model_1 = require("./cache-item-state.model");
|
|
25
20
|
const integration_error_model_1 = require("./integration-error.model");
|
|
26
21
|
const contact_util_1 = require("../util/contact.util");
|
|
@@ -36,7 +31,6 @@ class Controller {
|
|
|
36
31
|
this.streamingPromises = new Map();
|
|
37
32
|
this.adapter = adapter;
|
|
38
33
|
this.contactCache = contactCache;
|
|
39
|
-
this.ajv = new ajv_1.default();
|
|
40
34
|
if (this.adapter.streamContacts) {
|
|
41
35
|
this.initContactStreaming();
|
|
42
36
|
}
|
|
@@ -116,10 +110,10 @@ class Controller {
|
|
|
116
110
|
}
|
|
117
111
|
(0, logger_util_1.infoLogger)('getContacts', `Fetching contacts…`, providerConfig.apiKey);
|
|
118
112
|
const fetchedContacts = yield this.adapter.getContacts(providerConfig);
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
return
|
|
113
|
+
const { error: parsingError, data: parsedContacts } = schemas_1.contactsGetSchema.safeParse(fetchedContacts);
|
|
114
|
+
if (parsingError)
|
|
115
|
+
throw new _1.ServerError(500, `Invalid contacts received: ${parsingError.message}`);
|
|
116
|
+
return parsedContacts.map((contact) => (0, contact_util_1.sanitizeContact)(contact, providerConfig.locale));
|
|
123
117
|
});
|
|
124
118
|
const fetcherPromise = this.contactCache
|
|
125
119
|
? this.contactCache.get(providerConfig.apiKey, fetchContacts)
|
|
@@ -180,13 +174,13 @@ class Controller {
|
|
|
180
174
|
const publishContacts = (contacts) => __awaiter(this, void 0, void 0, function* () {
|
|
181
175
|
var _a, _b;
|
|
182
176
|
try {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
177
|
+
const { error: parsingError, data: parsedContacts } = schemas_1.contactsGetSchema.safeParse(contacts);
|
|
178
|
+
if (parsingError)
|
|
179
|
+
throw new _1.ServerError(500, `Invalid contacts received: ${parsingError.message}`);
|
|
186
180
|
yield ((_a = this.pubSubContactStreamingClient) === null || _a === void 0 ? void 0 : _a.publishMessage({
|
|
187
181
|
userId,
|
|
188
182
|
timestamp,
|
|
189
|
-
contacts:
|
|
183
|
+
contacts: parsedContacts.map((contact) => (0, contact_util_1.sanitizeContact)(contact, providerConfig.locale)),
|
|
190
184
|
state: pubsub_contacts_message_model_1.PubSubContactsState.IN_PROGRESS,
|
|
191
185
|
integrationName: this.integrationName,
|
|
192
186
|
}, orderingKey));
|
|
@@ -282,44 +276,6 @@ class Controller {
|
|
|
282
276
|
}
|
|
283
277
|
});
|
|
284
278
|
}
|
|
285
|
-
getContactsDelta(req, res, next) {
|
|
286
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
287
|
-
const { providerConfig } = req;
|
|
288
|
-
try {
|
|
289
|
-
if (!providerConfig) {
|
|
290
|
-
throw new _1.ServerError(400, 'Missing parameters');
|
|
291
|
-
}
|
|
292
|
-
(0, logger_util_1.infoLogger)('getContactsDelta', 'START', providerConfig.apiKey);
|
|
293
|
-
const fetchContactsDelta = () => __awaiter(this, void 0, void 0, function* () {
|
|
294
|
-
if (!this.adapter.getContactsDelta) {
|
|
295
|
-
throw new _1.ServerError(501, 'Fetching contacts delta is not implemented');
|
|
296
|
-
}
|
|
297
|
-
const fetchedDelta = yield this.adapter.getContactsDelta(providerConfig, parseInt(req.params.timestamp));
|
|
298
|
-
if (!(0, validate_1.validate)(this.ajv, schemas_1.contactsSchema, fetchedDelta.contacts, providerConfig)) {
|
|
299
|
-
throw new _1.ServerError(500, 'Invalid contacts received');
|
|
300
|
-
}
|
|
301
|
-
return Object.assign(Object.assign({}, fetchedDelta), { contacts: fetchedDelta.contacts.map((x) => (0, contact_util_1.sanitizeContact)(x, providerConfig.locale)) });
|
|
302
|
-
});
|
|
303
|
-
const responseDelta = yield fetchContactsDelta();
|
|
304
|
-
if (this.adapter.getToken && req.providerConfig) {
|
|
305
|
-
const { apiKey } = yield this.adapter.getToken(req.providerConfig);
|
|
306
|
-
res.header('X-Provider-Key', apiKey);
|
|
307
|
-
}
|
|
308
|
-
(0, logger_util_1.infoLogger)('getContactsDelta', 'END', providerConfig.apiKey);
|
|
309
|
-
res.status(200).send(responseDelta);
|
|
310
|
-
}
|
|
311
|
-
catch (error) {
|
|
312
|
-
// prevent logging of refresh errors
|
|
313
|
-
if (error instanceof _1.ServerError &&
|
|
314
|
-
error.message === integration_error_model_1.IntegrationErrorType.INTEGRATION_REFRESH_ERROR) {
|
|
315
|
-
next(error);
|
|
316
|
-
return;
|
|
317
|
-
}
|
|
318
|
-
(0, logger_util_1.errorLogger)('getContacts', 'Could not get contacts:', providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.apiKey, error);
|
|
319
|
-
next(error);
|
|
320
|
-
}
|
|
321
|
-
});
|
|
322
|
-
}
|
|
323
279
|
getContact(req, res, next) {
|
|
324
280
|
return __awaiter(this, void 0, void 0, function* () {
|
|
325
281
|
const { providerConfig } = req;
|
|
@@ -364,15 +320,16 @@ class Controller {
|
|
|
364
320
|
if (!req.providerConfig) {
|
|
365
321
|
throw new _1.ServerError(400, 'Missing config parameters');
|
|
366
322
|
}
|
|
323
|
+
const parseResultContactCreate = schemas_1.contactCreateSchema.safeParse(req.body);
|
|
324
|
+
if (parseResultContactCreate.error)
|
|
325
|
+
throw new _1.ServerError(400, `Invalid contactCreate received: ${parseResultContactCreate.error.message}`);
|
|
367
326
|
(0, logger_util_1.infoLogger)('createContact', 'Creating contact', apiKey);
|
|
368
|
-
const contact = yield this.adapter.createContact(req.providerConfig,
|
|
369
|
-
const
|
|
370
|
-
if (
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
(0, logger_util_1.infoLogger)('createContact', `Contact with id ${contact.id} created`, apiKey);
|
|
375
|
-
const sanitizedContact = (0, contact_util_1.sanitizeContact)(contact, locale);
|
|
327
|
+
const contact = yield this.adapter.createContact(req.providerConfig, parseResultContactCreate.data);
|
|
328
|
+
const parseResultReturnContact = schemas_1.contactSchema.safeParse(contact);
|
|
329
|
+
if (parseResultReturnContact.error)
|
|
330
|
+
throw new _1.ServerError(500, `Invalid contact returned from bridge: ${parseResultReturnContact.error.message}`);
|
|
331
|
+
(0, logger_util_1.infoLogger)('createContact', `Contact with id ${parseResultReturnContact.data.id} created`, apiKey);
|
|
332
|
+
const sanitizedContact = (0, contact_util_1.sanitizeContact)(parseResultReturnContact.data, locale);
|
|
376
333
|
if (this.adapter.getToken && req.providerConfig) {
|
|
377
334
|
const { apiKey } = yield this.adapter.getToken(req.providerConfig);
|
|
378
335
|
res.header('X-Provider-Key', apiKey);
|
|
@@ -409,15 +366,16 @@ class Controller {
|
|
|
409
366
|
if (!req.providerConfig) {
|
|
410
367
|
throw new _1.ServerError(400, 'Missing config parameters');
|
|
411
368
|
}
|
|
369
|
+
const parseResultContactUpdate = schemas_1.contactCreateSchema.safeParse(req.body);
|
|
370
|
+
if (parseResultContactUpdate.error)
|
|
371
|
+
throw new _1.ServerError(400, `Invalid contactUpdate received: ${parseResultContactUpdate.error.message}`);
|
|
412
372
|
(0, logger_util_1.infoLogger)('updateContact', 'Updating contact', apiKey);
|
|
413
|
-
const contact = yield this.adapter.updateContact(req.providerConfig, req.params.id, req.
|
|
414
|
-
const
|
|
415
|
-
if (
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
(0, logger_util_1.infoLogger)('updateContact', `Contact with id ${contact.id} updated`, apiKey);
|
|
420
|
-
const sanitizedContact = (0, contact_util_1.sanitizeContact)(contact, locale);
|
|
373
|
+
const contact = yield this.adapter.updateContact(req.providerConfig, req.params.id, Object.assign(Object.assign({}, parseResultContactUpdate.data), { id: req.params.id }));
|
|
374
|
+
const parseResultReturnContact = schemas_1.contactSchema.safeParse(contact);
|
|
375
|
+
if (parseResultReturnContact.error)
|
|
376
|
+
throw new _1.ServerError(500, `Invalid contact returned from bridge: ${parseResultReturnContact.error.message}`);
|
|
377
|
+
(0, logger_util_1.infoLogger)('updateContact', `Contact with id ${parseResultReturnContact.data.id} updated`, apiKey);
|
|
378
|
+
const sanitizedContact = (0, contact_util_1.sanitizeContact)(parseResultReturnContact.data, locale);
|
|
421
379
|
if (this.adapter.getToken && req.providerConfig) {
|
|
422
380
|
const { apiKey } = yield this.adapter.getToken(req.providerConfig);
|
|
423
381
|
res.header('X-Provider-Key', apiKey);
|
|
@@ -486,119 +444,6 @@ class Controller {
|
|
|
486
444
|
}
|
|
487
445
|
});
|
|
488
446
|
}
|
|
489
|
-
getCalendarEvents(req, res, next) {
|
|
490
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
491
|
-
const { providerConfig: { apiKey = '' } = {}, query: { start, end }, } = req;
|
|
492
|
-
try {
|
|
493
|
-
(0, logger_util_1.infoLogger)('getCalendarEvents', 'START', apiKey);
|
|
494
|
-
if (!this.adapter.getCalendarEvents) {
|
|
495
|
-
throw new _1.ServerError(501, 'Fetching calendar events is not implemented');
|
|
496
|
-
}
|
|
497
|
-
if (!req.providerConfig) {
|
|
498
|
-
(0, logger_util_1.errorLogger)('getCalendarEvents', 'Missing config parameters', apiKey);
|
|
499
|
-
throw new _1.ServerError(400, 'Missing config parameters');
|
|
500
|
-
}
|
|
501
|
-
(0, logger_util_1.infoLogger)('getCalendarEvents', 'Fetching calendar events', apiKey);
|
|
502
|
-
const filter = typeof start === 'string' && typeof end === 'string'
|
|
503
|
-
? {
|
|
504
|
-
start: Number(start),
|
|
505
|
-
end: Number(end),
|
|
506
|
-
}
|
|
507
|
-
: null;
|
|
508
|
-
const calendarEvents = yield this.adapter.getCalendarEvents(req.providerConfig, filter);
|
|
509
|
-
const valid = (0, validate_1.validate)(this.ajv, schemas_1.calendarEventsSchema, calendarEvents, req.providerConfig);
|
|
510
|
-
if (!valid) {
|
|
511
|
-
(0, logger_util_1.errorLogger)('getCalendarEvents', `Invalid calendar events provided by adapter`, apiKey, this.ajv.errorsText());
|
|
512
|
-
throw new _1.ServerError(400, 'Invalid calendar events provided by adapter');
|
|
513
|
-
}
|
|
514
|
-
(0, logger_util_1.infoLogger)('getCalendarEvents', `Found ${calendarEvents.length} events`, apiKey);
|
|
515
|
-
res.status(200).send(calendarEvents);
|
|
516
|
-
(0, logger_util_1.infoLogger)('getCalendarEvents', `END`, apiKey);
|
|
517
|
-
}
|
|
518
|
-
catch (error) {
|
|
519
|
-
(0, logger_util_1.errorLogger)('getCalendarEvents', `Could not get calendar events:`, apiKey, error || 'Unknown');
|
|
520
|
-
next(error);
|
|
521
|
-
}
|
|
522
|
-
});
|
|
523
|
-
}
|
|
524
|
-
createCalendarEvent(req, res, next) {
|
|
525
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
526
|
-
const { providerConfig: { apiKey = '' } = {} } = req;
|
|
527
|
-
try {
|
|
528
|
-
(0, logger_util_1.infoLogger)('createCalendarEvent', `START`, apiKey);
|
|
529
|
-
if (!this.adapter.createCalendarEvent) {
|
|
530
|
-
throw new _1.ServerError(501, 'Creating calendar events is not implemented');
|
|
531
|
-
}
|
|
532
|
-
if (!req.providerConfig) {
|
|
533
|
-
throw new _1.ServerError(400, 'Missing config parameters');
|
|
534
|
-
}
|
|
535
|
-
(0, logger_util_1.infoLogger)('createCalendarEvent', `Creating calendar event`, apiKey);
|
|
536
|
-
const calendarEvent = yield this.adapter.createCalendarEvent(req.providerConfig, req.body);
|
|
537
|
-
const valid = (0, validate_1.validate)(this.ajv, schemas_1.calendarEventsSchema, [calendarEvent], req.providerConfig);
|
|
538
|
-
if (!valid) {
|
|
539
|
-
(0, logger_util_1.errorLogger)('createCalendarEvent', 'Invalid calendar event provided by adapter', apiKey, this.ajv.errorsText());
|
|
540
|
-
throw new _1.ServerError(400, 'Invalid calendar event provided by adapter');
|
|
541
|
-
}
|
|
542
|
-
(0, logger_util_1.infoLogger)('createCalendarEvent', `END`, apiKey);
|
|
543
|
-
res.status(200).send(calendarEvent);
|
|
544
|
-
}
|
|
545
|
-
catch (error) {
|
|
546
|
-
(0, logger_util_1.errorLogger)('createCalendarEvent', 'Could not create calendar event:', apiKey, error || 'Unknown');
|
|
547
|
-
(0, logger_util_1.errorLogger)('createCalendarEvent', 'Entity', apiKey, req.body);
|
|
548
|
-
next(error);
|
|
549
|
-
}
|
|
550
|
-
});
|
|
551
|
-
}
|
|
552
|
-
updateCalendarEvent(req, res, next) {
|
|
553
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
554
|
-
const { providerConfig: { apiKey = '' } = {} } = req;
|
|
555
|
-
try {
|
|
556
|
-
(0, logger_util_1.infoLogger)('updateCalendarEvent', `START`, apiKey);
|
|
557
|
-
if (!this.adapter.updateCalendarEvent) {
|
|
558
|
-
throw new _1.ServerError(501, 'Updating calendar events is not implemented');
|
|
559
|
-
}
|
|
560
|
-
if (!req.providerConfig) {
|
|
561
|
-
throw new _1.ServerError(400, 'Missing config parameters');
|
|
562
|
-
}
|
|
563
|
-
(0, logger_util_1.infoLogger)('updateCalendarEvent', `Updating calendar event`, apiKey);
|
|
564
|
-
const calendarEvent = yield this.adapter.updateCalendarEvent(req.providerConfig, req.params.id, req.body);
|
|
565
|
-
const valid = (0, validate_1.validate)(this.ajv, schemas_1.calendarEventsSchema, [calendarEvent], req.providerConfig);
|
|
566
|
-
if (!valid) {
|
|
567
|
-
(0, logger_util_1.errorLogger)('updateCalendarEvent', `Invalid calendar event provided by adapter`, apiKey, this.ajv.errorsText());
|
|
568
|
-
throw new _1.ServerError(400, 'Invalid calendar event provided by adapter');
|
|
569
|
-
}
|
|
570
|
-
(0, logger_util_1.infoLogger)('updateCalendarEvent', `END`, apiKey);
|
|
571
|
-
res.status(200).send(calendarEvent);
|
|
572
|
-
}
|
|
573
|
-
catch (error) {
|
|
574
|
-
(0, logger_util_1.errorLogger)('updateCalendarEvent', `Could not update calendar event:`, apiKey, error || 'Unknown');
|
|
575
|
-
(0, logger_util_1.errorLogger)('updateCalendarEvent', 'Entity', apiKey, req.body);
|
|
576
|
-
next(error);
|
|
577
|
-
}
|
|
578
|
-
});
|
|
579
|
-
}
|
|
580
|
-
deleteCalendarEvent(req, res, next) {
|
|
581
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
582
|
-
const { providerConfig: { apiKey = '' } = {} } = req;
|
|
583
|
-
try {
|
|
584
|
-
(0, logger_util_1.infoLogger)('deleteCalendarEvent', `START`, apiKey);
|
|
585
|
-
if (!this.adapter.deleteCalendarEvent) {
|
|
586
|
-
throw new _1.ServerError(501, 'Deleting calendar events is not implemented');
|
|
587
|
-
}
|
|
588
|
-
if (!req.providerConfig) {
|
|
589
|
-
throw new _1.ServerError(400, 'Missing config parameters');
|
|
590
|
-
}
|
|
591
|
-
(0, logger_util_1.infoLogger)('deleteCalendarEvent', `Deleting calendar event`, apiKey);
|
|
592
|
-
yield this.adapter.deleteCalendarEvent(req.providerConfig, req.params.id);
|
|
593
|
-
(0, logger_util_1.infoLogger)('deleteCalendarEvent', `END`, apiKey);
|
|
594
|
-
res.status(200).send();
|
|
595
|
-
}
|
|
596
|
-
catch (error) {
|
|
597
|
-
(0, logger_util_1.errorLogger)('deleteCalendarEvent', `Could not delete calendar event:`, apiKey, error || 'Unknown');
|
|
598
|
-
next(error);
|
|
599
|
-
}
|
|
600
|
-
});
|
|
601
|
-
}
|
|
602
447
|
/**
|
|
603
448
|
* @deprecated Use createOrUpdateCallLogForEntities instead
|
|
604
449
|
* @param req
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.model.js","sourceRoot":"","sources":["../../src/models/controller.model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"controller.model.js","sourceRoot":"","sources":["../../src/models/controller.model.ts"],"names":[],"mappings":"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"}
|